软件开发的流程和步骤有哪些?
软件开发的流程和步骤有哪些?
题眼:书上的+工作中的
通常情况下,软件的开发流程是产品和技术跟需求方一起进行需求分析,确定了具体的需求以后,由产品部门进行需求拆分,人员排期等安排,然后协调资源准备开发。技术部门内部开会确定难度,制定技术方案,然后开发组开始着手开发。这个时候,通常需要接口先行,先定义接口,确定文档,然后再开发测试。如果每个开发组的代码都没啥问题了,可以进入测试阶段,会有测试同事进行专项测试,这个时候有BUG就改BUG,有遗漏就补遗漏。都没啥问题了,就可以准备上线了。通常情况下,公司的项目都会有一个线上生产环境,一个预发布环境。一般都是先上预发布环境看下,有没有报错,有没有异常日志等等,没问题的话准备上线。上线时,也是走滚动发布,比如10台机器,每次两台,每30秒左右发布一次,直到替换所有机器,如果防止出现某些恶性问题时,可以及时终止发布,将问题控制在合理范围内,不至于扩散到全体用户。最后的话,主要是日常的运维,比如看看告警日志,服务器指标参数等等,评估下服务是否正常。如果还有时间的话,可以补充下技术文档,接口文档和使用文档等。文档还是很重要的。
一般情况下:互联网公司都会采用敏捷开发,而且很有可能是贫血模型。APP的开发,一般会采用公交车模式,两周一个发版。另外,现在的公司都在做DevOps的改造升级,提高运维能力,降低成本。
