软件生命周期
软件生命周期 (Systems Development Life Cycle, SDLC)
什么是软件生命周期
软件生命周期的七个阶段
问题的定义及规划 此阶段是软件开法方与需求方共同讨论,主要确定软件的开发目标及其可行性。
需求分析 在确定软件开发可行的情况下,对软件需求实现的各个功能进行详细分析。需求分析阶段是一个重要的阶段,这一阶段做得好,降维整个软件开发项目的成功打下良好的基础。“唯一不变的是变化本身”。同样需求也是在真个软件开发过程中不断变化和深入的,因此我们必须制定需求变更计划来应付这种变化,以保护真个项目的顺利进行。
软件设计 此阶段主要根据需求分析的结果,对整个软件系统进行设计,入性通框架设计,数据库设计等等。软件设计一般分为总体设计和详细设计。好的软件设计降维软件程序编写打下良好的基础。
程序编码 此阶段是讲软件设计的结果转换成计算机可运行的程序代码。在程序编码必须要制定统一、符合标准的编写规范。以保证程序的可读性,易维护性,提高程序的运行效率。
软件测试 在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以纠正。整个测试过程主要分单元测试、组装测试以及系统测试三个阶段进行。测试的方法主要有白盒测试和黑盒测试两种。在测试过程中需要建立详细的测试计划并严格按照测试计划进行测试,以减少测试的随意性。
系统转换 将作业由旧系统转化新系统,也就是说运行系统的方法,转换方法有平行、分批、分发、立即、试验五种方法
运行维护 软件维护是软件生命周期中持续时间最长的阶段。在软件开发完成并投入使用后,由于多方面的原因,软件不能继续适应用户的需求。要延续软件的使用寿命,就必须对软件进行维护。软件维护包括纠错性维护和改进性维护两个方面。
软件生命周期的模型
瀑布模型(Waterfall Model) 文档驱动,整个过程都需要编制文档并获得软件质量保证小组的认可才能进入下一阶段。
迭代式模型RUP(Rational Unified Process, 统一软件开发过程,统一软件过程) 迭代驱动,将所有阶段细分为迭代,每次迭代都是最终产品的一个子集。
快速原型模型(Rapid Prototype) 在功能上等介于产品的一个子集。根据客户需求快速完成一个可以演示的产品。这个产品实现(最重要的)部分功能。
事实上,其实现在的软件组织中很少说标准的采用那一种模型的。模型和实用还是有很大的区别。
Last updated