欢迎来到天天文库
浏览记录
ID:51116864
大小:168.00 KB
页数:42页
时间:2020-03-18
《面向对象程序设计第5章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第5章面向对象的软件开发过程15.1软件开发过程软件开发过程指开发软件产品的一整套活动,其中主要包括软件描述、软件开发、软件有效性验证和软件演化。不同的软件开发商,针对不同的开发项目可能会采用不同的方式组织上述4项活动的实施。2软件开发模型是对软件开发的全过程、活动和任务的抽象描述。选择合适的软件开发模型将有利于提高软件开发的效率、软件产品的质量,以及日后的软件维护能力。软件开发模型3软件开发主要面临以下几个迫切需要解决的问题:1.软件可靠性软件可靠性是指软件系统能否在既定环境下运行并达到预期的结果。尽管通过对软件进行调试和测试可以排除大约40%的错
2、误,任何人也不能保证任何一个软件产品没有错误。2.软件生产率计算机硬件的迅猛发展,带动了人们对软件需求的急剧增长。与计算机硬件的发展速度相比,软件的生产效率极其低下。5.1.1软件开发面临的主要问题43.软件重用性不同的应用领域要开发不同的应用软件,既使相同的应用目的也会由于需求上的微小差别,导致重新开发整个应用软件。4.软件维护性多么优秀的软件开发队伍也无法保证软件产品在使用过程中不会出现任何错误,因此,日后的维护工作将显得格外重要,而修改和完善软件产品在使用过程中显现出来的错误和不足之处是软件维护阶段的主要任务。5软件工程将按照工程化的方法组织和
3、管理软件的开发过程,具体地说,它将软件开发过程划分成若干个阶段,每个阶段按照制定的规范标准完成相应的任务。软件的生命周期是指从某个软件的需求被提出并开始着手开发到这个软件被最终废弃的整个过程。通常在这个过程中,应该包括制定计划、需求分析,系统设计、程序编码、系统测试、系统运行及维护阶段。5.1.2软件的生命周期6在正式开始开发软件项目之前,充分地研究、分析待开发项目的最终目标,整理出其功能、性能、可靠性及接口等方面的需求,计算出所需人力、物力的资源开销,推测日后可能获取的经济效益,提供支持该项目的技术能力以及给出开发该项目的工作计划。1.制定计划7这
4、个阶段的任务需要系统分析员与用户共同完成。这是正式进入软件开发的标志性阶段。其主要任务是对待开发软件项目的需求进行仔细地分析,并给出准确、详细的定义。在此基础上,划清系统边界,明确哪些需求由软件系统完成,哪些需求不属于软件系统的功能范畴等。2.需求分析8系统设计是整个软件项目开发的核心阶段,软件设计人员需要根据软件需求规格说明书,设计出系统的总体结构,划分好模块,并确定各模块之间的相互关系以及每个模块所应该完成的任务。3.系统设计9利用某一种程序设计语言将系统设计阶段描述的所有内容用计算机可以接受的程序形式表达出来,并将其组装起来加以调试是这个阶段的
5、主要任务。4.程序编码10找出程序中存在的错误,利用设计的测试用例从不同角度检测软件的各个组成部分。测试主要包括单元测试、集成测试、确认测试和系统测试,使用的测试方式主要有白盒测试和黑盒测试。5.系统测试11在运行期间,可能会出现各种意想不到的一场现象,这就需要软件维护人员及时找出错误,并给予修正。除此之外,由于软件运行环境的改变,可能需要对原有软件系统进行适当地调整,这些都属于软件维护阶段的工作范畴。6.系统运行及维护12软件开发模型是指软件开发全过程、活动和任务的结构框架,它能够清楚、直观地表达软件开发的全过程,明确各阶段所需要完成的具体任务,并
6、对开发过程起到指导和规范化的作用。5.1.3软件开发模型13瀑布模型瀑布模型将软件开发过程划分为7个阶段,前一个阶段的成果将作为后一个阶段的输入。整个开发过程形如瀑布流水。14演化模型不要求用户在开发系统之前,必须将全部的需求提交出来,而是只提出系统的核心需求,开发者最初只实现核心需求,并交给用户试用,以便得到及时、有效的反馈意见,细化、增强系统功能的补充需求说明,软件开发人员再根据用户的反馈,对先前的系统进行二次开发,即迭代一次。与初次开发一样,同样需要经过需求分析、系统设计、编写代码、系统测试等一系列过程。如果用户试用之后还不满意,就继续进行第三
7、次开发,每一次重新开发的结果都会更加逼近用户的最终需求。15喷泉模型喷泉模型将软件开发过程的各个阶段描述为相互重叠和多次反复的过程,就好像泉水由泉眼喷出后又回落的场景,这种开发模型主要用于支持面向对象的开发过程。16螺旋模型螺旋模型是在瀑布模型和演化模型的基础上,加入风险分析所形成的一种软件开发模型。螺旋模型将软件开发过程刻画为多次螺旋上升的过程,每向前走一步都要为下一步做出风险预测,一旦发现风险过大,开发者和用户无法承受,就应该尽早终止开发,以便将损失降到最低程度。1718原型开发模型原型开发模型将软件开发分为需求分析、构造原型、运行原型、评价原型
8、和修改原型几个阶段,并不断重复这个过程,直到用户满意为止。19基于构件的软件开发模型该模型融合了螺旋模型的许
此文档下载收益归作者所有