欢迎来到天天文库
浏览记录
ID:57050646
大小:614.50 KB
页数:50页
时间:2020-07-28
《软件开发方法课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第6章软件开发方法6.1软件6.2软件生存周期6.3软件开发模型1计算机语言的发展第一代语言机器语言第二代语言汇编语言第三代语言高级语言,亦称过程语言FORTRAN、COBOL、C、PASCAL第四代语言非过程化语言SQL第五代语言智能性语言2软件=程序+文档程序是按事先设计的功能和性能要求执行的指令序列数据是使程序能正常操纵的信息的数据结构文档是与程序开发、维护和使用有关的图文材料3软件的特征1.软件开发不同于硬件设计2.软件生产不同于硬件制造3.软件维护不同于硬件维修4软件危机定义软件开发和维护过程中遇到的一系列严重问题表现用户很不满意质量很不可靠(产品无评价手段)软件不
2、可维护对软件开发成本和进度的估算很不准确没有适当的文档软件成本比重上升软件供不应求5软件危机产生的原因:(1)软件是逻辑的系统部件不是物理的系统部件,以程序和文档形式存在(2)软件规模越来越大,功能越来越强,软件结构非常复杂结论:软件危机产生的根本原因与软件产品的特征和软件产品开发与维护的方法不正确有关解决软件危机的根本出路:(1)认识问题的原因所在,吸取前人的经验(2)要有相应的理论、技术、工具6软件工程软件工程的目的在于获得廉价的、能在实际机器上高效和可靠地工作的软件。为此需要建立并应用牢固的工程准则和方法软件工程定义很多,其核心思想是:“采用工程化的原理和方法对软件进行
3、计划、开发和维护”,因此需要建立和应用工程准则和方法7软件生存周期软件生存周期一般划分为计划、开发、运行三个时期,每一时期又区分为若干阶段。计划(定义)时期有问题定义和可行性研究两个阶段开发时期有需求分析、系统设计、编码和测试四个阶段运行时期主要是系统维护阶段8问题定义可行性研究需求分析软件设计编 码测 试维 护典型的软件生存周期开发阶段维护阶段(软件系统目标与范围说明书)(可行性论证报告)(需求说明书)定义阶段(设计说明书)(程序)(测试报告)(软件维护报告)9计划时期计划时期的主要任务:调查和分析调查用户需求分析新系统的主要目标,分析开发该系统的可行性。计划时
4、期还应制定出人力、资源及进度计划。10开发时期开发时期的任务设计和实现设计包括:需求分析、软件设计实现包括:编码和测试把设计和实现分成两步走,目的是在开发初期让程序人员集中全力搞好软件的逻辑结构,避免过早地为实现的细节分散精力。11⑴需求分析 其任务在于弄清用户对软件系统的全部需求,并用“需求规格说明书”的形式准确地表达出来。12⑵软件设计 主要任务是将需求转变为软件的表示形式,有时又可细分为总体设计和详细设计。设计阶段要编写设计文档。13⑶编码 即按照选定的语言,把设计的过程性描述翻译为源程序。与“需求分析”或“设计”相比,“编码”要简单得多,所以通常由编码员(code
5、r)或初级程序员担任。14⑷测试 是开发时期最后一个阶段。按照不同的层次,又可细分为单元测试、综合测试、确认测试和系统测试等步骤。测试是保证软件质量的重要手段。测试阶段的文档称为“测试报告”,包括测试计划、测试用例与测试结果等内容。15运行时期运行时期是软件生存周期的最后一个时期。软件人员在这一时期的工作,主要是做好软件维护。16软件开发模型传统的软件开发模型瀑布模型基于生存期的开发范型自顶向下,逐步细化每一步都要求给出相应的技术文档17主要特点坚持结构化(将逻辑实现与物理实现分开)思想和强调文档齐套,是瀑布开发模型的两条重要准则。瀑布模型WaterfallModel(19
6、76)18传统的软件开发模型快速原型模型需求分析原型开发最终系统设计原型评价最终系统实现用户反馈19快速原型范型RapidPrototypingParadigm(1)建立原型(2)实现最终软件原型开发范型的最大优点:用户的早期介入20面向对象开发模型面向对象思想的最重要特征,是在解题空间中引入了“对象”的概念,使之逼真地模拟问题空间中的客观实体,从而达到与人类的思维习惯相一致。21两种程序设计方法程序设计的两次飞跃结构化程序设计程序=数据结构+算法面向对象程序设计程序=对象+消息22两类软件工程方法传统软件工程软件分析→总体设计→详细设计→面向过程的编码→测试面向对象软件工程
7、软件分析与对象抽取→对象详细设计→面向对象的编码→测试23结构化开发方法基本思路:把整个系统开发过程分成若干阶段,每个阶段进行若干活动,每项活动应用一系列标准、规范、方法和技术,完成一个或者多个任务,形成符合给定规范的产品。分而治之“结构化”的含义:用一组规范的步骤、准则和工具来进行某项工作。24①核心思想:自顶向下和逐步求精SA方法的特点③使用描述需求说明书的规范工具(数据流图、数据词典、小说明(加工逻辑的描述)),使文档规范化②基本手段:分解和抽象分解:大问题分割成小问题,分别解决抽象:把细节略去,
此文档下载收益归作者所有