软件开发生命周期-1-阶段的划分和定义

本文详细阐述了软件开发过程中的六个关键阶段:假想阶段、需求开发阶段、设计阶段、实现阶段、质量检查阶段和部署阶段。每个阶段都有其特定的目标和任务,通过循环迭代不断完善软件,直至最终交付。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

记录下一点自己的心得体会,分享给大家,有不足之处,望指教。

软件通常我们也叫应用程序,系统,工具,为名称一致,以下统称软件。软件开发阶段的划分和定义在不同的方法论中可能会有所不同,本篇文章中的划分和定义是来自作者的实际经验,是作者近十年来对软件开发的理解和体会。

第一阶段:假想阶段

假想可能来自于公司上层领导,也可能来自于基层员工。在这个阶段用户只是有个很基本的想法,只是感觉自己经常重复的有规则的日常工作是可以考虑使用自动化的方式来帮助提高工作效率的,但是这个时期用户的需求是很模糊的,如果市场上有类似的软件是最好的参考,用户可能会告诉我们他们想要一个现在市场上的某软件类似的功能,但是还需要更多不同的功能。假想也可能来自于公司内部规定或者政府政策法规。

第二阶段:需求开发阶段

在这个阶段需要一个角色,不同的公司会有不同的称呼,我这里称为软件产品设计师。这个角色需要对现在市场上同类软件的功能有比较全面的了解,每款软件具有哪些功能,哪些功能强大,哪些功能简单易用;这个角色也要具有较强的文档书写能力。这个角色要在用户的日常工作中实习一段时间,学习用户的工作流程,经常与用户讨论如何实现现有工作流程中的哪些部分的自动化,可以借鉴现有软件的已有实现帮助设计,也可以使用一些灵活方便的界面设计软件帮助设计,采用图文并茂的静态描述方式和情景演示的动态描述方式把用户的期待的制动化实现方式尽可能不失真地表现出来。这个角色在帮助用户开发需求的同时一定要考虑设计的合理性,业务路径的可通性,软件使用的易用性。

第三阶段:设计阶段

这个阶段承上启下,决定了将来软件的发展方向,所以至关重要。这个阶段的每一项决议都需要从多角度看问题,有多个角度是因为会有多个利益相关方,所以每一项决议通常都是综合决定的效果。在后面的章节我们还会重点讨论。但是从技术实现的角度看这个阶段,我们在这个阶段要完成的就是制定出一份概要和一份详细的执行计划,包括网络,硬件,软件,人力,人员分工和合作模式,工期,资金,质量控制等方面工作的计划安排都要最终以文本形势确定下来,并且尽可能地发现潜在问题和风险,并且提前寻找应对方法和制定预案。对于软件开发人员来说设计阶段只限于软件设计,对于这方面的认识在后面的章节会有更详细的讨论。

第四阶段:实现阶段

这个阶段最容易评测,因为已经形成可看得见的输出物。这个阶段的最大贡献者就是工程师,工程师们会基于上一个阶段完成的设计文档做具体的实现,对于经验丰富的工程师除了能够高效率地完成设计文档所规定的内容,还会对设计文档的不足之处提出质疑和改进意见,对于这些质疑和改进意见管理者一定要重视,综合考虑之后选择性地采纳,并且即时更新相应的需求文档和设计文档。

第五阶段:质量检查阶段

这个阶段要完成的工作主要是检查工作,通常工作计划也是在设计阶段完成的,通常会从功能,性能,安全等角度做检查。对于不能达到预期目标的方面要找到根本原因和解决办法,综合考虑之后决定是否需要修改需求或者修改设计或者修改实现。通常修改的阶段越靠前成本越高。

第六阶段:部署阶段

这个阶段完成之后用户就可以开始真正地使用这个软件了。部署的目标就是把网络,硬件,软件结合起来为用户呈现出一套完整的信息化,自动化产品,让用户可以开始使用。不同的软件产品与硬件的结合方式是不同的,企业里面的服务器用户通常是看不到的,软件的安装用户也是不需要关心的;但是手机和手机上软件的安装通常都是用户自己直接管理的。

总结:

第二阶段,第三阶段,第四阶段,第五阶段是可以循环发生的,也成为迭代。第三阶段可以回到第二阶段开始循环;第四阶段可以回到第三阶段或者第二阶段开始循环;第五阶段可以回到第四阶段或者第三阶段或者第二阶段开始循环。每一次循环开始的阶段越早耗费的成本越高。

现在很多项目组中存在这样一种现象,几乎不做第二阶段和第三阶段,直接进入第四阶段;或者三步并作一步走。这样做的结果是什么呢?软件开发工程师很辛苦,但是总是很难满足用户的需求,不断地更新代码,不断地发布新版本。如果在工程师施工之前就能够确认用户需要什么和已经有了施工方案和图纸,那么可想而知对于工程师施工来说要容易很多,效率高很多;最重要的问题是工程师是否应该去做第二阶段和第三阶段的工作,就像我们现实世界中建一座大厦,对于工程师来说只要按照设计图纸来做就足够了,没有必要去做第二阶段和第三阶段的工作,会有专门的负责人去做,现实世界可以分工如此明确和合理,为什么虚拟世界就做不到,我们在虚拟世界中看到的更多的是全才,可以三步并作一步走,管理者们也很愿意这样。但是作者知道现在是有相当多的具有较强技术实力的公司是把这三个阶段明确分开的。作者强调要把这三个阶段分开不仅仅是因为这样做会对工程师的工作的顺利开展有帮助,更重要的是对管理者的管理工作更加有帮助。在后面的章节我们会从每阶段的利益相关方,每阶段的输入输出等多角度来看把这三个阶段分开的合理性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值