软件工程概要



《软件工程概要》由会员分享,可在线阅读,更多相关《软件工程概要(47页珍藏版)》请在装配图网上搜索。
1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,软件工程概要,数据库原理课程,补充知识,背景,软件危机,软件开发周期大大超过规定日期,软件开发成本严重超标,软件质量难于保证,软件的发展大体上经历了三个阶段:,程序设计,阶段、,软件,阶段、,软件工程,阶段。,程序设计时代,名称,程序,生产方式,个人,质量,取决于个人水平,设计对象,以硬件为中心,开发工具,无,维护,无,设计方法,无,以技巧为主,软件时代,软件,项目组,取决于小集团水平,硬件,/,软件为中心,无系统工具,工具为个人,所有,由开发者进行维护,在设,计中不重视维护设计问题,自顶向下,有质量保证问
2、题和持续性,问题,软件工程时代,软件产品,软件组织,软件生产管理,以软件为中心,软件生成器,设计与制作过程中均考虑维,护问题,维护成本占很大比,重,结构化设计、原型设计,从程序设计到软件工程时代,软件工程的定义,IEEE,【IEE93】,定义:“将系统化的、规范的、可度量的方法应用于,软件的开发、运行和维护,的过程,即将工程化应用于软件中。”,软件工程是应用计算机科学、数学及管理科学等原理开发软件的工程。它借鉴传统工程的原则、方法,,以提高质量,降低成本,为目的。,两种软件工程方法,传统软件工程,软件分析 总体设计 详细设计 面向过程的编码 测试,面向对象软件工程,软件分析与对象抽取 对象详细
3、设计 面向对象的编码 测试,结构化分析模型的组成结构,数据流图,(,DFD,),E-R,图,状态,变,迁图,(,STD,图),加,工,说,明,控制说明,数,据,对,象,说,明,数据字典,(,DD,),面向对象分,析模型的组成结构,对象-关,系模型,类/对象,模型,对象-行为模型,使用实例,(Use Case),操作、,属性、,协作者,对象模型,动态模型,功能模型,传统软件工程中的瀑布模型,可行性研究与计划,需求分析,总体|详细设计,编码,运行维护,测试,定义,阶段,开,发,阶,段,维护阶段,1.问题定义,关键问题:,“要解决的问题是什么?”,主要结果:提出关于问题的性质、工程目标和规模的书面报
4、告。,内容及步骤,(一)系统任务的提出,(二)初步调查,(三)系统目标的确定,2 可行性研究,可行性、可行性研究的含义,可行性的含义包括可能性、必要性。,可行性分析的对象是,系统目标,。评价总体方案(系统目标)的可能性、必要性。,可行性研究目的:,用最小的代价在尽可能短的时间内确定,问题是否能够解决,是否有必要去解决,。,可行性,研,研究的,内,内容,1.技,术,术上的,可,可行性,2.经,济,济上的,可,可行性,3.操,作,作可行,性,性,4.时,间,间可行,性,性,5.组,织,织与管,理,理上可,行,行性,6.社,会,会、政,策,策允许,的,的可行,性,性,3.,需,需求分,析,析的任,务
5、,务,准确地定义未来系,统,统的目,标,标,确,定,定为了,满,满足用,户,户的需,求,求系统,必,必须做,什,什么。,用,规,规范的,形,形式准,确,确地表,达,达用户,的,的需求。,基本任,务,务:准,确,确地回,答,答“系统必,须,须做什,么,么?”,需求分,析,析的具,体,体任务,1.确,定,定对系,统,统的综,合,合需求,:,(1),系,系统功,能,能要求(2),系,系统性,能,能要求(3),运,运行要,求,求(4)将来,可,可能提,出,出的要,求,求,2.分析系,统,统的数据要,求,求,:,采用建立“,概,概念模型”,的,的方法,并,辅,辅助图形工,具,具,如:层,次,次方框图、W
6、arnier图等。,3.导出系,统,统的逻辑模,型,型,:,数据流程图,、,、数据字典,、,、主要算法,4.修正系,统,统开发计划,5.开发原,型,型系统,4.总体,设,设计的过程,设想供选择,的,的方案,选取合理的,方,方案,推荐最佳方,案,案,功能分解,设计软件结,构,构,数据库设计,制定测试计,划,划,书写文档,审查和复审,5.详细,设,设计的基本,任,任务,回答的关键,问,问题:“怎样具体,地,地实现这个,系,系统”,主要任务是,设,设计出程序,的,的“蓝图”,,,,供程序员,日,日后根据这,个,个蓝图编写,出,出实际的程,序,序代码。,注意:设计,程,程序的蓝图,,,,不是具体,地,
7、地编写程序,。,。,设计程序主,要,要采用结构,化,化的程序设,计,计方法。,详细设计,主要任务:编写详细设,计,计说明书,为此,设计,人,人员应:,(1)确定,每,每个模块的,算,算法,用工,具,具表达算法,的,的过程,写,出,出模块的详,细,细过程性描,述,述。,(2)确定,每,每一模块的,数,数据结构。,(3)确定,模,模块接口细,节,节。,详细设计是,编,编码的先导,。,。,详细设计具,体,体任务,确定模块如,何,何实现,编写详细设,计,计说明书,制定单元测,试,试计划,详细设计评,审,审,6.编码,程序写作风,格,格,程序设计方,法,法论,自顶向下的,程,程序设计方,法,法,自底向上
8、的,程,程序设计方,法,法,程序设计自,动,动化,程序设计工,具,具,7.测试,软件测试是为了发现错,误,误而执行程,序,序的过程。,软件测试是,根,根据软件开,发,发阶段的规,格,格说明和程,序,序的内部结,构,构而精心设,计,计一批测试,用,用例(即输,入,入的数据及,其,其预期的输,出,出结果),,并,并利用这些,用,用例去运行,程,程序,以发,现,现程序错误,的,的过程。,软件测试的,目,目的,测试是程序,的,的执行过程,,,,目的在于,发,发现错误;,一个好的测,试,试用例在于能发现至今,未,未发现的错,误,误;,一个成功的,测,测试是发现了至今,未,未发现的错,误,误的测试。,测试
9、设计中,需,需要考虑的,22,种测试类型,黑盒测试,白盒测试,单元测试,累计综合测,试,试,集成测试,功能测试,系统测试,端到端测试,健全测试,衰竭测试,接受测试,负载测试,强迫测试,性能测试,可用性测试,安装/卸载,测,测试,恢复测试,兼容测试,安全测试,比较测试,Alpha,测,测试,Beta测,试,试,8.运行,维,维护,本质上是修,改,改和压缩了,的,的软件定义,和,和开发过程,分析,设计,编码,测试,验收,配置,复审,可靠性,可移植性,可用性,可理解性,可修改性,可测试性,可理解性,可修改性,可移植性,效率,可靠性,效率,完整性,一致性,可理解性,几种典型的,开,开发方法:,模块化方
10、法,(,(,modular method,),结构化方法,面向数据结,构,构方法,面向对象方,法,法,软件开发方,法,法,结构程序设,计,计,结构程序设,计,计是一种设,计,计程序的技,术,术,它采用自顶向下逐,步,步求精的设计方法,和,和单入口单出,口,口的控制结构,。,。,逐步求精的,含,含义,总体设计阶,段,段逐步求精,的,的含义,把一个复杂,问,问题的解法,分,分解和细化,成,成一个由许,多,多模块组成,的,的层次结构,的,的软件系统,。,。,详细设计阶,段,段逐步求精,的,的含义,把一个模块,的,的功能逐步,分,分解细化为,一,一系列具体,的,的处理步骤,或,或某种高级,语,语言的语
11、句,。,。,结构程序设,计,计优越性,自顶向下逐,步,步求精的方,法,法符合人类,解,解决复杂问,题,题的普遍规,律,律,因此可,以,以显著提高,软,软件开发工,程,程的成功率,和,和生产率。,用先全局后,局,局部、先整,体,体后细节、,先,先抽象后具,体,体的逐步求,精,精过程开发,出,出的程序有,清,清晰的层次,结,结构,因此,容,容易阅读和,理,理解。,不使用GOTO语句,,,,仅使用单,入,入口单出口,的,的控制结构,,,,使得程序,的,的静态结构,和,和它的动态,执,执行情况比,较,较一致,易,于,于阅读和理,解,解。,传统方法学,的,的缺点,瀑布模型的,缺,缺点:僵化,瀑布模型要,
12、求,求:生命周,期,期各阶段间,遵,遵守严格的,顺,顺序。,实际情况是,:,:软件开发,往,往往在反复,实,实践中完成,。,。,瀑布模型要,求,求:预先定,义,义并“冻结,”,”软件需求,。,。,实际情况是,:,:某些系统,的,的需求的一,个,个逐渐明确,的,的过程,且,预,预先定义的,需,需求到软件,完,完成时可能,已,已经过时。,结构化技术,的,的缺点(SA-SD-SP),本质上是功,能,能分解,以,实,实现功能的,过,过程为中心,。,。,而用户的需,求,求变化主要,是,是针对功能,的,的。这就使,基,基于过程的,设,设计不易被,理,理解;且功,能,能变化往往,引,引起结构变,化,化较大,
13、稳,定,定性不好。,系统有明确,的,的边界定义,,且系统结,构,构依赖于系,统,统边界的定,义,义,这样的,系,系统不易扩,充,充和修改。,数据与操作,分,分开处理,,可能造成,软,软构件对具,体,体应用环境,的,的依赖,可,重,重用性(reusability)较差.,软件工程的,新,新途径之一,:,:快速原型,法,法,适用于用户,驱,驱动的系统,(,(即需求模,糊,糊或随时间,变,变化的系统,),),建造/修改,原型,用户测试,运行原型,听取用,户意见,传统方法和,面,面向对象方,法,法的比较,传统方法,系统是过程的集合,过程与数据实体交互,过程接受输入并产生输出,面向对象方法,系统是交互对
14、象的集合,对象与人或其它对象交互,对象发送与响应消息,传统方法数,据,据与过程是,分,分离的,过程1,输入,输出,过程2,过程3,数据实体,属于该对象,的数据,对象,处理数据的,方,方法,消息,消息,对象把数据,和,和处理数据,的,的方法封状,成,成一个单元,为什么对面,向,向对象方法,感,感兴趣?,面向对象方,法,法的主要优,点,点:,自然性:追求软件系,统,统对现实系,统,统的直接模,拟,拟,尽量实,现,现将现实世,界,界中的事物,直,直接映射到,软,软件系统的,解,解空间中。,软件复用,:,可复用性(,可,可重用性),可扩展性,可管理,性,面向对象分,析,析,面向对象分,析,析的关键:,
15、识别出问题,域,域内的对象,,,,并分析它,们,们相互间的,关,关系,最终,建,建立起问题,域,域的简洁、,精,精确、可理,解,解的正确模,型,型。,面向对象方,法,法最基本的,原,原则:,按照人们习,惯,惯的思维方,式,式,用,面向,对象观点建,立,立问题域的,模,模型,开发,出,出尽可能自,然,然地表现求,解,解方法的软,件,件。,面向对象建,模,模,用面向对象,方,方法开发软,件,件,通常需,要,要建立三种,形,形式的模型,:,:,对象模型:描述系统,数,数据结构,动态模型:描述系统,控,控制结构,功能模型:描述系统,功,功能,一些具体工,具,具介绍,A Room hierarchy b
16、ased on aninterior designersperspective,Room,Room with lights,Room with windows,Garage,Basement,Kitchen,Bathroom,Room with,Furniture,Living,Room,Family,Room,Bed,Room,Dining,Room,层次方框图,数据流程图DFD,是结构化系,统,统分析的主,要,要工具,它,表,表示了系统,内,内部信息的,流,流向,并表,示,示了系统的,逻,逻辑处理的,功,功能,数据流程图,的,的特性,(1)抽象性:具体的组,织,织机构、工,作,作场所、物,质,质流等等都,去,去掉,仅剩,下,下信息和数,据,据存储、流,动,动、使用以,及,及加工的情,况,况。,(2)概括性:它把系统,对,对各种业务,的,的处理过程,联,联系起来考,虑,虑,形成一,个,个总体,具,有,有概括性。,(3)数据,流,流程图描述,的,的主体是抽象出来,的,的数据。,(4)数据,流,流程图具有层次性,一个系统,将,将有许多层,次,次的流程图,。,。,数据流程图,的,的用途,系
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 专题党课讲稿:以高质量党建保障国有企业高质量发展
- 廉政党课讲稿材料:坚决打好反腐败斗争攻坚战持久战总体战涵养风清气正的政治生态
- 在新录用选调生公务员座谈会上和基层单位调研座谈会上的发言材料
- 总工会关于2025年维护劳动领域政治安全的工作汇报材料
- 基层党建工作交流研讨会上的讲话发言材料
- 粮食和物资储备学习教育工作部署会上的讲话发言材料
- 市工业园区、市直机关单位、市纪委监委2025年工作计划
- 检察院政治部关于2025年工作计划
- 办公室主任2025年现实表现材料
- 2025年~村农村保洁员规范管理工作方案
- 在深入贯彻中央8项规定精神学习教育工作部署会议上的讲话发言材料4篇
- 开展深入贯彻规定精神学习教育动员部署会上的讲话发言材料3篇
- 在司法党组中心学习组学习会上的发言材料
- 国企党委关于推动基层党建与生产经营深度融合工作情况的报告材料
- 副书记在2025年工作务虚会上的发言材料2篇