论软件开发的流程

论软件开发的流程

作为规范的软件开发流程,它和其他工程一样的,也有一套完整的流程。虽然和工业生产有些不不同的地方,但是整个工程的流程基本相同。

首先就是要件定义,这也是最重要的部分。它决定软件的功能,使用范围,使用场景和使用环境。做这些工作的人,既要求能精准把握用户需求分析,同时能把需求的东西模型化,抽象出来。因此,在这个过程中,需要书写大量的文档。和用户开会,研讨,返回调研用户的需求,同时积极引导用户。在经过数次磋商后,记录写好的文档需要和用户达成协议,以此确定软件的功能。也就是以后做成的软件是什么样的产品,具备什么功能。这个过程做个总的时间表。那个阶段什么时候开始和结束。

第二就是基本设计,在软件要件定义确定后。接着下一步就是基本设计。这个过程就是把软件功能模块细化。如果是web系统,就要确定有多少个画面,每个画面怎么跳转。采用什么的构架,使用什么用的语言开发等等。还有数据库的结构,各个表之间的关系。系统的一些共同处理等。例如出错了,怎么表示。异常了,如何处理等等。项目的时间管理和人员管理也重要,每人每天的作业状况,碰到的问题。有疑问的课题得单独管理。组内或者客户讨解决。

第三就是详细设计,也就是每个画面的具体表现形式。例如画面上每个项目的相关特性,每个项目的长度,颜色,字体等,还有每个项目的事件。例如一个按钮点击后,处理的详细状况都得一步一步写下来。让看到这个详细设计书的人,能写出实际的代码。
例如画面登录按钮按下,首先是check处理,画面输入的值都对不对,如果有不对的,
这么提示错误信息,对于错的项目,该如何显示,让用户能更好的知道错误状况。如果输入的值都对的话,后续的处理是怎么的。都得详细写在文档内。登录时,参照那个表,更新那个表,输出什么的log等等。每个处理的具体函数名,类名等,也是有必要写清楚。时间进步管理也是必须。

第四就是编码,根据详细设计进行编码。如能随意修改,自由发挥,详细设计的内容如实一一反应到代码里。不得遗漏和增加。写好代码后,得找同行或者专家级别的人一起review,确认代码的书写规范和对错。时间进步管理也是必须。

第五就是单体测试,编写好的代码是否能按想定的动作运行,要做很多的测试用例。各个分支都得实行。这个过程测试的成果物都得好好整理保存,作为软件开发文档的一部分。时间进步管理也是必须。

第六步就是连接测试,根据基本设计,确保画面之间的动作正常。如果发生异常时,和想定的异常是否一致。这个过程需要对系统功能了解的人员当担。

第七步就是系统测试,根据要件定义,来测试软件的功能。又能也成uat,就是用户集成测试。这个过程的测试,外部的接口等都得好好确认。

第八部就是系统发布,在确认完没有问题后,可以正式发布了。

第九部用户验收,发布的系统。用户确认后,没有问题,就可以验收了。

第十步就是系统维护,用户验收好的系统。在运行的过程还可能有这样那样的问题,这个时候就得进行维护。包括bug对应,功能需要方面的变更等。其实这一部分是最能盈利的。因为想要维护,必须是现在开发的团队。所以适当的提高价格也是可以的。没有谁能和咋们竞争了。。

好了,一个软件开发的流程就结束了。
大家认为怎么样。欢迎一起讨论。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值