刘军连的号怎么挂 https://m.39.net/disease/a_9114481.html写在前面
1概述软件生命周期包括软件定义、软件开发、软件维护三个过程。2可行性分析
目的:该软件项目是否该做。
分析角度:
社会可行性:是否符合法律法规,是否有益社会发展,短时间内不被淘汰。
经济可行性:项目成本预算,能否带来收益。
技术可行性:该项目中涉及到的技术难点,当前技术能否完成该软件项目。
产物:可行性分析报告或者白皮书。
需求分析
目的:了解客户需求,明确客户对软件项目的要求。
分析内容:
功能需求:描述系统功能,一般来说会细化到每一个小的功能点,小到开发人员可以实现。
界面需求:界面整体布局、色彩、字体字号、系统皮肤、可视化大屏/app功能排版。
性能需求:系统并发能力、系统吞吐量、界面响应时间、系统高可用。
安全需求:敏感数据保护、密码复杂度要求、数据备份与恢复、网络安全策略、数据加密传输。
其他需求:不同角色拥有不同的功能权限和数据权限。
工具:脑图、EXCEL功能表、数据流图。
产物:需求规格说明书。
4概要设计
目的:完成软件项目的大概设计。
设计内容:
功能表:详细的功能表格,包括核心字段描述及工期安排。
技术选型:选择项目开发所使用的技术,包括编程语言、数据库、框架、sdk。
架构图:总体逻辑架构图、核心业务流程图、系统之间交互时序图、系统部署架构图、网络拓扑图。
接口梳理:对内接口梳理、对外接口梳理,接口规范制定(数据格式、权限认证、数据安全传输)。
界面设计:界面展示内容、界面操作、界面跳转、数据权限(本阶段可用EXCEL完成)。
工具:EXCEL功能表、UML建模工具(亿图图示)。
产物:概要设计说明书。
5详细设计
目的:完成软件项目功能实现的详细做法。
设计内容:
数据库设计:数据库ER图、数据库建表语句、数据库索引约束。
接口文档:定义接口请求地址、请求方式、请求参数数据结构、响应结果数据结构。
算法规范:复杂的接口需要梳理算法逻辑,必要时需要编写伪代码或者示例代码来描述。
界面设计:特殊界面需要设计界面原型图。
工具:ER图、Apipost接口文档编辑工具、原型工具。
产物:详细设计说明书。
6编码实现
目的:根据详细设计说明书,选择编程设计语言,完成编码工作。
心得:初级开发人员在接到编码工作时,没有根据相关的设计文档进行深入的业务梳理,急于完成任务导致考虑不周,使编码工作不能适应需求的扩展、变化,这样做会导致编码逻辑不清、代码冗余、系统性能差等种种问题;即使完成工作任务,后期维护起来非常费劲;此外一旦编码有了一定进展,对于大多数人来说,就失去了重构的勇气了。研发人员需要在业务梳理和思路设计上多花时间,正所谓,工欲善其事,必先利其器。积极使用应用软件开发设计原则,提高系统内聚,降低系统耦合,增加代码复用,减少代码冗余,勤加注释,易于维护。
7测试
目的:发现软件项目中尚未发现的问题。
方法:
黑盒测试:又叫功能性测试,只