软件技术课程学习简介.ppt
《软件技术课程学习简介.ppt》由会员分享,可在线阅读,更多相关《软件技术课程学习简介.ppt(54页珍藏版)》请在三一文库上搜索。
1、软件技术课程学习简介,一、课程理论学习内容 1VB程序设计语言 2数据库原理 3VB数据库设计 4网络编程基础,补充内容ASP技术 二、课程实验学习内容 1要求掌握科研课题开题报告的一般写作方法 2完成一个微小型的微机应用系统的软件设计。课题按照小组为单位进行,每个课题组13名同学。 3学习科研课题结题报告的一般写作方法,软件技术课程学习简介,三、课程理论学习要求 VB程序设计语言、数据库原理、VB数据库设计、网络编程基础各章的基本概念和基本操作方法。 考核方式:机考 四、课程实验学习要求 1学习科研课题开题报告的一般写作方法,开题报告每个课题小组写一份。 2学习一个在可视化软件平台下,设计一
2、个微小型的微机应用系统。 3学习科研课题结题报告的一般写作方法,结题报告每个同学写一份。,软件技术课程学习简介,考核内容:检查一个微小型的微机应用系统软件设计的完成情况。 1评价标准 创新性、合理性(5) 难度、复杂性(15) 完整性(20) 完成情况(20) 界面可操作性(20) 开题报告和结题报告(20),软件技术课程学习简介,考核内容:检查一个微小型的微机应用系统软件设计的完成情况。 2考核方法 为了最终成绩的公平性,由课题小组组长组成的评议小组,给出一个平时成绩。 每次实验课,由实验老师检查进度,并进行记录。 课题完成答辩,每个同学当堂演示你完成的内容检查内容,并对于你所使用平台工具的
3、基本技术理论、课题中使用技术,以及功能和性能等方面的问题进行提问。,第1章 概论,11 程序设计语言 12 程序的基本概念 13 软件的基本概念 14 应用系统软件的开发,11 程序设计语言 程序设计语言的分类 程序设计语言可以从不同的角度进行分类。 从发展过程分,第一代语言(机器语言)、第二代语言(汇编语言)、第三代语言(高级语言)、第四代与第五代计算机语言(可视化、面向对象、网络) 从应用范围来分,分为通用语言与专用语言;再可细分为系统程序设计语言、科学计算语言、事务处理语言、实时控制语言、脚本语言、教学用语言以及用于解决非确定性问题的语言等。 从程序设计方法上来分,分为结构化语言、模块化
4、语言与面向对象语言。,113 程序设计语言的评价标准 程序设计语言7种基本评价标准: (1)用户界面好,操作简便; (2)对硬件、软件环境要求低; (3)对硬件资源利用的程度高; (4)代码质量高,目标程序运行速度快,可靠性高,结构化性能高,可读性好; (5)应用范围广泛; (6)调用其它软件容易; (7)自身发展快。 如果一种程序设计语言,能在上述7个方面都有较高的得分,那它就是一种比较理想的语言。,114程序设计语言的选择标准 开发软件时的程序设计语言4个选择标准: 1)应用范围 各种程序设计语言都有自己的适用范围。 在科学计算领域,FORTRAN常常是首选语言。 在事务处理方面,Visu
5、al Basic语言是较理想的选择 在实时处理方面,选择汇编语言及C语言比较合适。 在开发系统软件方面,可选择Visual C+、Visual J+、Borland C+、Visual Basic、JBuilder、Delphi及C+ Builder等语言。,如果开发的软件中含有大量的数据操作,则可采用SQL、Visual Foxpro等数据库语言。 在网络开发中, Web服务器软件可以选择Microsoft公司的IIS、Apache组织开发的Apache服务器等。 2)算法及计算复杂性 FORTRAN、Pascal、C、C+等语言都能支持较复杂的算法与计算。 而绝大多数数据库语言都只能支持较
6、简单的算法与计算。,3)数据结构 C、C+、Pascal语言都提供了数组、记录数据结构及带指针的动态数据结构。它们适合于设计系统程序以及需要复杂数据结构的应用程序。 4)效率 有些实时应用系统要求具有很快的响应速度,可以选择汇编语言或C语言。有时应用系统中只是某一部分要求具有很快的响应速度,在这种情况下,可以选用汇编语言来编写这一部分程序.,12 程序的基本概念 1. 程序是由程序设计语言的抽象符号的集合 程序设计语言有面向机器的汇编语言,以及面向过程和面向对象的高级程序设计语言。 2程序是对数据施行算法的过程 算法决定了程序的质量:同样的数据用不同的算法实现,其所需的时空开销大不相同。要达到
7、时间和空间性能的最佳,需要遵循一定的算法来编写程序。在不同情况下需要选用不同算法来达到效率、质量的最佳。,面向对象的程序也需要算法:从对象的角度来看,程序是对对象的行为和状态及对象间关系的描述。在面向对象的程序里,同样需要算法,因为,状态和属性是用数据表示的,状态改变的方法就包含了算法。只是面向对象语言提供了更高抽象的对象概念。,13 软件的基本概念 软件的定义:计算机程序、方法、规则、程序有关的各种文档以及在计算机上运行所必需的数据的总称。 软件不仅是程序,还包括其功能和性能的说明性信息。软件不仅有功能和性能要求,还有质量、成本、交货期、使用寿命要求。,1 软件质量的评价标准 软件的质量10
8、条主要的标准。 1)可理解性(Understandablity) 一个软件产品具有可理解性,主要指的是该软件的用途对用户来说是十分清楚的。除了软件的功能之外,软件各部分之间、各子系统之间的分工,及其相互关系也应该是清楚的。当用户按规定调用软件的某个部分时,软件应能按用户的要求作出明确的响应,解决用户的问题。,2)可靠性(Reliablity) 软件产品的可靠性主要是指在软件整个生命周期内,它能否按照设计的要求,实现所需要的各功能。即软件设计的功能是否能正确实现,运行中会有多少隐藏的错误出现,错误出现的后果是什么等。 3)效率(Efficiency) 软件产品的效率指的是完成给定功能时所需占用的
9、资源(时间和空间)。在这里,资源主要指的是存储空间、CPU时间、接口占用等等。,4)可维护性(Maintainablity) 软件产品的可维护性是指为了满足新的要求,软件产品应该是很容易修改和维护的。 5)完整性(Completencess) 完整性要求软件自成体系,即软件应该具备问题处理的全部环节(如输入、编辑、处理、输出等等)。此外,完整性还要求软件应具有相应的容错能力,即自动排除错误和恢复工作的能力。,6)简明性(concisess) 软件的简明性指的是其本身和其表现形式的“能见度“,使用户对发生的事情一目了然,知道是否出了问题,问题出在什么地方,以及如何解决问题;简明性的另一层含义是指
10、用软件书写的程序具有较少的命令行数。 7)可移植性(Portability) 可移植性是指软件在多种类型的计算机配置上都能容易而有效地操作。广义地说,软件应在任何硬件配置与操作系统下都能正常有效地运行。,8)可测试性(Testablity) 软件的可测试性是指对该软件的技术性能及质量是否能够确定测试的手段和方法。一个可测试性好的软件,能够比较容易地对它确定出测试的方法,以便对它的技术性能作出评价。 9)结构性(Structuredness) 软件相互依赖的部分,其结构应具有确定的形式。一般所说的结构性指的是模块化的程度,其编制是否符合结构化和模块化的原则等。当然,在追求高可靠性,高运行效率时可
11、能会使结构性能变差。,10)友好性(Friendliness) 一个优秀的软件产品应该具有友好的用户界面。有丰富的操作提示和联机帮助信息,使用户能够随时得到提示和帮助。,2 软件的特征 软件主要包括程序和相关文档。 从静态角度来看,程序是求解客观问题的逻辑描述,需检查程序的语法是否符合规则形式要求; 从动态角度来看,需要验证程序的所有逻辑流结构和数据结构是否正确。是否能够完成特定的操作和数据处理。 软件的核心是其运行过程中动态变化的处理过程。 软件生产属于资金密集和人力密集的行业。大型软件开发投入人力较多,时间长,费用高。,1)软件是一种逻辑产品 软件和硬件是截然不同的两种产品和概念。软件是一
12、种逻辑产品,具有无形性,是脑力劳动的结晶。 软件产品在设计和生产过程中,首先要抽象出问题求解的数学模型或逻辑模型,再把这些模型转化为求解模型,然后根据求解模型写出程序,经过调试和运行程序,最后得到求解的结果。 整个开发过程是通过人脑进行的逻辑思维完成的,其无形化的特征给软件的开发、生产过程的管理带来不便,进度难以控制,开发质量难以评价和保证。,如果在软件运行中发现错误,很可能是一个在开发阶段隐藏的、在测试阶段没能检测出来的故障。因此,软件维护通常意味着修改原来的设计,这就在客观上决定了软件维护是相当复杂的工作。 2)软件产品的质量需通过实践来验证 软件产品在设计、编程和实现过程中的各个阶段其质
13、量难以保证和检验,只有在实际问题求解过程中被证实是可行的,才能成为产品。,3)软件产品的成本构成具有上升的趋势 在软件产品生存周期中,其成本构成中人力资源占了相当大的比重。这其中,设计和生产只占很小比重,而维护却占了很大比重,据统计数据表明,软件维护的费用占软件总费用的55%70%。 软件的费用具有上升的趋势。这是因为实际问题的复杂性决定了实用软件的系统规模庞大,软件结构复杂。例如,庞大系统中各个模块之间逻辑接口的定义、数据结构的描述、所有开发人员的协调和组织等等。,4)软件产品的故障率随着软件维护而下降 在软件产品生存周期中,软件在其生命周期的初始阶段存在较高的故障率,当开发过程中的错误被纠
14、正后,其故障率下降到一定的水平并保持相对稳定,直到该软件被废弃不用。 软件是只有过时而无“磨损”的商品。所谓过时往往是它所在的硬件环境升级,导致配套软件必须做相应的升级,否则不能再用;或者同类软件产品功已更新换代,使得本产品不具备竞争力。 3软件的分类 按软件功能划分和按软件规模划分。,1)按软件的功能划分 按功能划分,软件通常可以分为系统软件和应用软件两大类。如下图所示。,(1)系统软件: 系统软件定义:是为计算机系统提供基本功能服务的程序集合; 系统软件的功能:支持计算机系统的正常运行,并实现用户提交的各种操作。 系统软件的主要特征:与计算机硬件系统有很强的交互性,能对共享资源进行调度管理
15、,能解决并发性操作处理中存在的协调问题。 系统软件的用户接口:一般为用户提供多样化的外部接口,便于用户管理和使用系统资源。,系统软件主要包括:操作系统、网络系统、计算机语言编译(解释)系统以及实用工具软件系统等。 操作系统是计算机软件系统的核心,是对计算机系统的全部硬、软件资源(如CPU、内存、硬盘、打印机等外部设备和各种软件)进行统一管理、调度和分配的软件系统,并向上层软件提供服务,各种应用程序都是在操作系统的支持下运行的,用户是通过操作系统对计算机进行操作的。 操作系统:包括CPU及进程管理、内存管理、外设管理、文件系统管理。,网络系统:承担着整个网络范围内的任务管理和资源管理,帮助用户共
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件技术 课程 学习 简介
链接地址:https://www.31doc.com/p-2604126.html