学堂在线《软件工程》-- 第四章 软件开发过程 笔记

一、软件开发过程(是一组将输入转化为输出的相互关联或相互作用的活动。)

         过程方法:系统地识别和管理组织内所使用的过程,保证更有效地获得期望的结果。

        问题定义:人们通过开展技术探索和市场调查等活动,研究系统的可行性和可能的 解决方案,确定待开发系统的总体目标和范围。

        需求开发:在可行性研究之后,分析、整理和提炼所收集到的用户需求,建立完整的 需求分析模型,编写软件需求规格说明。

         软件设计:根据需求规格说明,确定软件体系结构,进一步设计每个系统部件的实现 算法、数据结构及其接口等

         软件构造:将软件设计转换成程序代码,是一个复杂而迭代的过程,要求根据设计模型进行程序设计以及正确而高效地编写和测试代码。

         软件测试:检查和验证所开发的系统是否符合客户期望,主要包括单元测试、子系统 测试、集成测试和验收测试等活动。

         软件维护:系统投入使用后对其进行改进,以适应不断变化的需求。完全从头开发的 系统很少,将软件系统的开发和维护看成是一个连续过程更有意义。

 

二、软件项目管理

          为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、 人员、进度、质量和风险进行控制和管理的活动。  

           软件配置管理是通过执行版本控制、变更控制的规程,并且使用合适的配置管理软件, 来保证所有产品配置项的完整性和可跟踪性。

 

三、4类常见软件过程模型:软件过程模型是对软件过程的抽象描述。

         1、瀑布模型是在1970年提出的,直到20世纪80年代早期,它一直是唯一被广泛采用的软件开发模型。它把软件的生命周期划分为:需求定义与分析、软件设计、软件构造 、软件测试、和运行维护等若干基本活动,并且规定了这些活动自上而下相互衔接的固定次序,如同瀑布流水一般。在瀑布模型中,软件开发的各项活动,严格按照线性方式进行,当前活动接受上一项活动的工作结果,实施完成所需的工作内容,当前活动的工作结果,再进行验证,如果验证通过,就把这个结果,作为下一项活动的输入,继续进行下一项活动,否则返回修改。

         特点:瀑布模型强调软件文档的作用,要求每个阶段都要仔细地进行验证。

         缺点:因为软件的行为只有在运行过程中,才能显现出来。瀑布模型只有到测试阶段,才能真正地验证和确认软件的功能和性能,但这时候,所有的代码都已经开发完成,很难返回去纠正需求的问题和设计的缺陷。因此这种模型虽然对各个阶段进行严格控制,但却缺少了对变化的适应,看似美丽,却不现实。目前已经很少在业界使用

         主要问题:各个阶段的划分完全固定,阶段之间产生大量的文档,增加了开发工作量;由于开发过程是线性的,用户只有在整个过程结束时,才能看到开发成果,开发过程中间,很难响应用户的变更要求。

         早期的错误,也要等到开发后期的测试阶段,才能发现,这样会产生严重的后果,因此,瀑布模型仅适用于软件需求,在开发初期,就可以被完整地确定,这样的软件项目;而且用户使用的环境也要很稳定;

 

         2、原型化模型 :原型是一个部分开发的产品,用于加强对系统的理解,有助 于明确需求和选择可行的设计策略。

         纸面原型化模型:http://v.youku.com/v_show/id_XMjcyMTM1OTI=.html

 

         3、迭代式开发 :将描述、开发和验证等不同活动交织在一起,在开发过程中建立一系列版本,将系统一部分一部分地逐步交付。

         特点:更快速地发布产品 ; 追求产品创新 ;需求不确定性高;需要快速响应用户的变化;关注用户行为。

         常用的两种形式:1)增量模型:一次开发出产品的部分成熟功能,在每一个新的发布中逐步增加功能直到构造全部功能。 2)迭代模型:一开始提交一个完整系统(功能未必尽善成熟),在后续发布中补充完善各子系统功能。

 

      4、可转换模型:利用自动化的手段,通过一系列转换将需求规格说明转化为 一个可交付使用的系统。

         特别适合于那些对安全性、可靠性和保密性要求极高的 软件系统,这些系统需要在投入运行前进行验证。

 

四、案例:

         ABS:适合嵌入型控制系统,安全性和可靠性要求极高,需要在投入运行前进行验证 ,适合采用可转换模型

         网课网站系统:需求会经常变化,业务模式存在不确定性, 系统应该易于维护和修改, 适合采用迭代式模型

发布了16 篇原创文章 · 获赞 4 · 访问量 5879

猜你喜欢

转载自blog.csdn.net/qq_35345719/article/details/86320677
今日推荐