软件工程与软件测试基础(第一讲).ppt
《软件工程与软件测试基础(第一讲).ppt》由会员分享,可在线阅读,更多相关《软件工程与软件测试基础(第一讲).ppt(42页珍藏版)》请在三一办公上搜索。
1、软件工程与软件测试基础,主讲人:张伟,课程介绍1/2,讲授内容分为两部分:软件工程基础(简)软件测试基础(重)软件测试基础是后续测试系列课程软件测试提高和软件测试综合应用的基础。,课程介绍2/2,本课程的讲授以理论教学为主,大家要了解和熟悉软件工程的学科意义、原理以及过程等,重点掌握软件测试的基本概念、原理和方法。实践教学:软件工程过程中有多个重要的说明和设计文档,熟悉这些文档对大家将来从事软件开发和测试工作非常用用,本课程将利用实训课讲授如何去设计这些文档,重点是软件测试的相关文档,比如测试计划,测试用例,测试问题报告单,测试报告等等。,课程要求,理论方面:每次课对前一次课讲授的重点内容随机
2、抽取同学进行提问,回答情况与平时成绩挂钩。实践方面:本课程会配带几次实训课,实训内容:练习和设计软件测试相关文档。每次要提交实训文档和报告,实训结果与平时成绩挂钩。,课程安排,本门课视大家学习情况安排四次以上的实训内容,实训课上课地点课前通知课代表。其他课程在多媒体教室讲授。,综合成绩算法,按照学校规定旷课超过学期课程的1/3不得参与期末考试,迟到三次算一次旷课。考勤和平时表现20%+实验20%+期末考试60%,第一部分 软件工程,软件工程在很多本科院校是一门单独的学科,是软件开发工程师,尤其是中、高级软件开发工程师(系统分析师)必备的专业知识。本课程只是抽取软件工程中比较简单的知识给大家讲授
3、下,大家对软件工程的定义、解决的问题、方法以及软件过程有个清楚的了解即可。,软件工程与软件测试的关系,软件工程与软件测试的关系:软件工程顾名思义,它是一个工程,既然是一个工程它就有若干个环节去构建这个软件工程。而软件测试就是这个工程的一个环节,也即软件测试是软件工程的一个组成部分。随着社会对软件质量的重视,软件测试的作用越来越大,它是软件工程里最热也是最有前途的一个部分。关于软件测试的课程介绍,就业现状以及职业发展将在软件测试部分详细说明。,软件工程教材,有志在将来从事软件开发工作的同学可以深入的学习下软件工程,尤其是学习下建模工具的使用,例如rational rose等,相关书籍和知识可在图
4、书馆查阅。其他同学掌握我上课讲授的内容即可。参考教材:软件工程导论(第5版)张海藩软件工程案例教程 韩万江软件工程(第3版)Pfleeger等,软件工程部分 提纲,1、软件的概念2、引入软件工程的原因?2.1软件危机介绍2.2软件危机的具体表现2.3软件危机产生的原因2.4消除的途径3、软件工程3.1软件工程的本质特征3.2软件工程的基本原理,4、软件生命周期4.1软件生命周期每阶段的基本任务4.2软件生命周期5、软件过程,1、什么是软件?,问题:软件=程序?说说你所认为的软件是什么?软件的定义 软件(Software)是计算机系统中与硬件相互依存的另一部分,它是包括程序、数据及其相关文档的完
5、整集合。也就是说一个开发项目中的编码,数据库数据以及相关的说明文档都属于软件的范畴。,2、为什么要引入软件工程?,为什么要引入软件工程?软件工程这个学科有什么意义?现如今软件应用面越来越广,人们对软件的要求越来越高,因此软件开发的复杂性非常大。软件开发的复杂性大了,就会使软件的调试、修改、升级以及复用困难加大,成本骤增,引起一系列的软件危机。如何去应对软件危机,从而设计出健康、持久、可维护性和可重用性强的系统就是软件工程研究的内容。,硬、软件成本比例的变化,2.1软件危机介绍,软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。这些问题绝不仅仅是不能正常运行的软件才具有的,实际上
6、,几乎所有软件都不同程度地存在这些问题,而且很多问题我们只能去改善不能完全避免。软件危机包含下述两方面的问题:1、如何开发软件,以满足对软件日益增长的需求 2、如何维护数量不断膨胀的已有软件。,2.2 软件危机具体表现1/3,(1)对软件开发成本和进度的估计常常很不准确。实际成本比估计成本有可能高出一个数量级,实际进度比预期进度拖延几个月甚至几年的现象并不罕见。这种现象降低了软件开发组织的信誉。而为了赶进度和节约成本所采取的一些权宜之计又往往损害了软件产品的质量,从而不可避免地会引起用户的不满。(2)用户对“已完成的”软件系统不满意的现象经常发生。软件开发人员常常在对用户要求只有模糊的了解,甚
7、至对所要解决的问题还没有确切认识的情况下,就匆忙着手编写程序。软件开发人员和用户之间的信息交流往往很不充分,“闭门造车”必然导致最终的产品不符合用户的实际需要。,软件危机具体表现2/3,(3)软件产品的质量往往靠不住。软件可靠性和质量保证的确切的定量概念刚刚出现不久,软件质量保证技术(审查、复审和测试)还没有坚持不懈地应用到软件开发的全过程中,这些都导致软件产品发生质量问题。(4)软件常常是不可维护的。很多程序中的错误是非常难改正的,实际上不可能使这些程序适应新的硬件环境,也不能根据用户的需要在原有程序中增加一些新的功能(5)软件通常没有适当的文档资料。缺乏必要的文档资料或者文档资料不合格,必
8、然给软件开发和维护带来许多严重的困难和问题。,软件危机具体表现3/3,(6)软件成本在计算机系统总成本中所占的比例逐年上升。硬件成本逐年下降,然而软件开发需要大量人力,软件成本随着需求增大以及软件规模和数量的不断扩大而持续上升。美国在1985年软件成本大约已占计算机系统总成本的90%。(7)软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。软件产品“供不应求”的现象使人类不能充分利用现代计算机硬件提供的巨大潜力。,产生软件危机的原因,在软件开发和维护的过程中存在这么多严重问题,一方面与软件本身的特点有关(客观原因),另一方面软件开发与维护的方法不正确也有关(主观原因)。一、客观
9、原因1、软件不同于硬件,它是计算机系统中的逻辑部件而不是物理部件。软件缺乏“可见性”。开发进展难以衡量,软件质量难以评价。2、软件维护通常意味着改正或修改原来的设计,这就在客观上使得软件较难维护。3、如何保证每个人完成的工作合在一起确实能构成一个高质量的大型软件系统,更是一个极端复杂困难的问题,必须有严格而科学的管理。,2.3产生软件危机的原因1/2,二、主观原因 目前相当多的软件专业人员对软件开发和维护还有不少糊涂观念,这可能是使软件问题发展成软件危机的主要原因。1、忽视需求分析只重视编码与运行。1)编写程序所需的工作量只占软件开发全部工作量的10%20%。2)在后期引入一个变动比在早期引入
10、相同变动所需付出的代价高23个数量级。如图所示。,引入同一变动付出的代价随时间变化的趋势,产生软件危机的原因2/2,2、忽视文档只重视程序 必须认识到一个软件产品必须由一个完整的配置组成,软件配置主要包括程序、文档和数据等成分。必须清除只重视程序而忽视软件配置其余成分的错误观念。3、轻视维护是一个最大的错误。统计数据表明,实际上用于软件维护的费用占软件总费用的55%70%。,2.4解决软件危机的途径,1、技术措施:将软件作为一个工程去开发。在这个工程里分成多个过程,包括需求分析和确定,程序设计,编码,测试,使用和维护等过程。每个过程都规定有必须的文档、方法、工具等说明。2、管理组织措施 从技术
11、和管理两方面去研究如何更好地开发和维护计算机软件正是软件工程这么学科要研究的内容。,3、软件工程-软件工程介绍,软件工程=软件开发+工程 工程,想象为:一条流水线 采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。概括地说,软件工程是指导计算机软件开发和维护的一门工程学科。,3.1软件工程具有的本质特征1/4,1.软件工程关注于大型程序的构造 通常把一个人在较短时间内写出的程序称为小型程序,而把多人合作用时半年以上才写出的程序称为大型程序。传统的程序设计技术和工具
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 软件 测试 基础 第一
链接地址:https://www.31ppt.com/p-6027893.html