软件生命周期
软件生命周期是人们在研究软件开发过程时所发现的一种规律性的事实。如同人的一生要经历婴儿期、少年期、青年期、老年期直至死亡这样一个全过程一样,一个软件产品也要经历计划、分析、设计、编程、测试、维护直至被淘汰这样一个全过程。软件的这一全过程被称为软件生命周期。
不过,目前软件的生命周期中各阶段的划分标准不太统一,名称也不一致,但总体上还是包括了计划、分析、设计、编程、测试和维护等阶段。
软件开发模型
瀑布模型
瀑布模型严格遵循软件生命周期各阶段的固定顺序:计划、分析、设计、编程、测试和维护,上一阶段完成后才能进入到下一个阶段,整个模型就像一个飞流直下的瀑布。
优点:开发人员采用规范的方法;严格规定了各阶段需要提交的文档,以及每个阶段的评审。
缺点:过于理想化,缺乏灵活性,无法在开发过程中逐渐明确用户难以确切表达的需求,直到软件开发完成后才发现与用户需求有很大的距离,此时必须付出高额的代价才能纠正这一偏差。
螺旋模型
螺旋模型综合了瀑布模型和演化模型的优点,同时还增加了风险分析。螺旋模型包含了4个方面的活动:制定计划,风险分析,实施工程,客户评估。这4项活动恰好可以放在一个直角坐标系的4个象限,而开发过程恰好像一条螺旋线。采用螺旋模型时,软件开发沿着螺旋线自内向外旋转,而每转一圈都要对风险进行识别和分析,并采取相应的对策。螺旋线第一圈的开始点可能是一个概念项目。从第二圈开始,一个新产品开发项目开始了,新产品的演化沿着螺旋线进行若干次迭代,一直运转到软件生命期结束为止。
基于构件的模型
构件是一个具有可重用价值的、功能相对独立的软件单元。基于构件的软件开发模型是利用模块化方法,将整个系统模块儿化,并在一定构件模型的支持下,复用构件库中的一个或多个软件构件,通过组合手段高效率、高质量地构造应用软件系统的过程。由需求分析和定义、体系结构设计、构件库建立、应用软件构建、测试和发布五个部分组成。
快速应用开发模型
快速应用开发模型是一个增量型的软件开发过程模型,它强调极短的开发周期。通过大量使用可复用构件,采用基于构件的建造方法赢得快速开发。
UP(Unified Process)
统一软件开发过程,基于构件开发,构件之间通过定义良好的接口相互联系。是一个通用的过程框架,可以应付种类广泛的软件系统、不同的应用领域、不同的组织类型、不同的性能水平和不同的项目规模。UP中的软件过程在时间上被分解为4个顺序的阶段,分别是初始阶段、细化阶段、构建阶段和交付阶段。每个阶段结束时都要安排一次技术评审,以确定这个阶段的目标是否满足。
XP方法
即极限编程,是敏捷方法中的一种。其他敏捷方法还有:自适应开发,水晶开发,特性驱动开发等。它们相对不太重视文档。在XP方法中,提出了4大价值观:沟通、简单、反馈、勇气。5大原则:快速反馈、简单性假设、逐步修改、提倡更改、优质工作。12个最佳实践:最佳游戏,小型发布,隐喻,简单设计,测试先行,重构,结对编程,集体代码所有制,持续集成,每周工作40小时,现场客户,编码标准。
总结
有时候看书,觉得很没意思,所以看不下去,当试着去敲出来的时候,心情会慢慢的平复,会理解的更好,也更加清楚自己不会的在那里。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!