软件开发标准流程与软件工程基本理论

软件开发标准流程与软件工程基本理论

一、需求分析

软件开发需要,自用户提出开始,商业合作确定(规范化:软件开发项目合同),进入软件工程开始阶段:需求分析。

软件项目Team负责需求分析开发人员,开始与用户沟通、交流,确认用户实际需要,完成需求分析,制定需求分析文档。

二、概要设计

软件项目Team负责需求分析开发人员,确定用户需求,制定用户需求文档,开始进入概要设计阶段。

根据用户需求,做软件系统架构的设计。确定实现该软件系统的具体实现方案,确定具体实现的技术:编程语言、数据库、缓存系统、前端实现技术(WinForm或WPF或页面:前端样式、前端框架、前端脚本技术、前端样式、页面设计)、通信技术(前端和后台的交互:前后端分离、单应用系统,微服务等);硬件设备及参数:本地自建服务器或云服务器,本地服务具体硬件及性能参数、云服务器平台、云服务器技术参数、云服务器价格);软件项目管理:Team团队沟通、协做方式、平台。

三、详细设计

系统设计目标;系统设计目地需要的硬件支持及参数;系统搭建及部署环境。

软件功能模块设计:具体功能模块、子模块;具体功能模块设计目标;前端UI或页面设计及目标。

软件系统架构设计:设计图、UML建模。

数据库系统架构设计:设计图、数据库模型图。

数据库表分析与设计:数据库建模、数据库表设计、数据库表数据字典。

缓存系统设计及实现。

软件项目开发项目管理:软件开发项目任务分割与分配、软件项目开发周期及目标、软件项目开发总进度及总周期。

软件项目测试:测试方法、周期、目标。

软件项目部署:实现、周期、目标。

软件项目线上测试及维护:维护方案、周期、目标。

软件项目编码:Coding任务分配、实现技术细节、Coding任务量及周期、代码验收提交、Coding工作任务时间计划、编码完成总周期、编码完成测试及标准。

四、编码实现

根据详细设计文档,Team团队按开发周期,分阶段完成数据库开发及程序编码,分阶段测试、总体测试、bug提交与修复。依据详细设计文档,完成软件项目编码实现。

五、软件测试

根据详细设计文档、需求分析文档,测试编码实现的软件项目,提交软件Bug并修正、测试,提交测试报告。

六、项目部署

开发环境本地部署:本地开发环境测试整体项目,发现Bug及软件缺陷,修复bug及修正缺陷。

生产环境部署:软件项目在用户生产环境部署,用户试运行,发现bug及缺陷、用户基于需求分析提出的问题,修复bug、修正缺陷、解决用户提出的问题完善软件项目系统。

提交部署工作报告文档。

七、项目验收

根据需求分析,Team配合用户,完成软件项目的验收,提交软件项目验收工作报告。

以上为本人基于计算机专业课:《软件工程》及多年开发工作经验,于今日整理完成的软件开发基本流程规范。

2024年5月2日 13:04

相关推荐
黑客影儿3 小时前
黑客哲学之学习笔记系列(三)
笔记·学习·程序人生·安全·职场和发展·网络攻击模型·学习方法
熬了夜的程序员3 小时前
【LeetCode】16. 最接近的三数之和
数据结构·算法·leetcode·职场和发展·深度优先
Miraitowa_cheems3 小时前
LeetCode算法日记 - Day 15: 和为 K 的子数组、和可被 K 整除的子数组
java·数据结构·算法·leetcode·职场和发展·哈希算法
汇能感知9 小时前
摄像头模块在运动相机中的应用
经验分享·笔记·科技
黑客影儿17 小时前
Kali Linux 环境中的系统配置文件与用户配置文件大全
linux·运维·程序人生·安全·网络安全·系统安全·学习方法
前路不黑暗@20 小时前
C语言:操作符详解(二)
c语言·开发语言·经验分享·笔记·学习·学习方法·visual studio
Better Rose21 小时前
【数模国奖冲刺】备赛过程中的常见问题
经验分享·数学建模·数模国赛
TeleostNaCl1 天前
OpenWrt 编译 | 一种使用 git submodule 方式实现一键更新多个外部软件包
网络·经验分享·git·智能路由器
天意生信云1 天前
生信分析自学攻略 | R软件和Rstudio的安装
经验分享·r语言
Vallelonga1 天前
Rust 异步中的 Waker
经验分享·rust·异步·底层