软件设计大致步骤

由于近期在做软件架构设计,这里总结下大致的设计流程

软件设计流程

1 首先要先写系统架构图,将该功能在整个系统的位置以及和大致的内部模块划分

2 然后写内部的结构图,讲内部的各个子系统,模块,组件之间的关系和调用顺序

3 然后列出对外的接口的详细描述,复杂的可以附件一些协作图。

4 接下来要讲具体的业务流程,这里主要用到协作图,或者数据流图,讲述该接口对应的传输过程

这里无需具体到流程图的程度

5 接下来如果子系统复杂的话,再讲内部的子系统的 架构图,结构图,。。循环以上 1,2,3的步骤

6 最后如果内部实现需要遵从一些设计原则,或设计模式,关键算法等,需要写下内部实现策略图或流程图以及关键算法对应的流程图的描述

针对业务特点,业务大小以及倾向点可以选择用什么样的图来作为主要阐述工具:

业务流转 --- 流程图(事务流程图,业务流程图)

数据流转 --- 数据流图

业务依赖关系 --- 系统架构图,软件结构图,业务结构图,协作图

生命周期 --- 时序图,状态图。

7 各个图的画法实例

协作图:

数据流图:

软件结构图,系统架构图,时序图,这些倒是到处都能找到,暂时不加实例

相关推荐
JMchen1239 小时前
现代Android图像处理管道:从CameraX到OpenGL的60fps实时滤镜架构
android·图像处理·架构·kotlin·android studio·opengl·camerax
快点好好学习吧10 小时前
phpize 依赖 php-config 获取 PHP 信息的庖丁解牛
android·开发语言·php
是誰萆微了承諾10 小时前
php 对接deepseek
android·开发语言·php
Dxy123931021611 小时前
MySQL如何加唯一索引
android·数据库·mysql
冠希陈、13 小时前
PHP 判断是否是移动端,更新鸿蒙系统
android·开发语言·php
晚霞的不甘15 小时前
Flutter for OpenHarmony从零到一:构建《冰火人》双人合作闯关游戏
android·flutter·游戏·前端框架·全文检索·交互
2601_9498333915 小时前
flutter_for_openharmony口腔护理app实战+饮食记录实现
android·javascript·flutter
独自破碎E15 小时前
【滑动窗口+字符计数数组】LCR_014_字符串的排列
android·java·开发语言
stevenzqzq15 小时前
compose 中 align和Arrangement的区别
android·compose
VincentWei9516 小时前
Compose:MutableState 和 mutableStateOf
android