软件设计大致步骤

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

软件设计流程

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

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

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

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

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

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

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

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

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

数据流转 --- 数据流图

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

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

7 各个图的画法实例

协作图:

数据流图:

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

相关推荐
nono牛1 小时前
MTK平台详解`adb devices`输出的序列号组成
android·linux·adb·智能手机
zhangphil1 小时前
Android通过SQL查询trace分析进程启动线程总数量
android
下位子2 小时前
『OpenGL学习滤镜相机』- Day3: 着色器基础 - GLSL 语言
android·opengl
bqliang2 小时前
Jetpack Navigation 3:领航未来
android·android studio·android jetpack
云存储小天使2 小时前
安卓蛙、苹果蛙为什么难互通?
android
陈大头铃儿响叮当4 小时前
Android Studio升级后,Flutter运行android设备报错
android·flutter·android studio
勤劳打代码4 小时前
isar_flutter_libs 引发 Namespace not specified
android·flutter·groovy
奔跑吧 android5 小时前
【android bluetooth 协议分析 18】【PBAP详解 2】【车机为何不显示电话号码为空的联系人信息】
android·蓝牙电话·hfp·pbap·电话簿
深盾科技5 小时前
安卓二次打包技术深度拆解:从逆向篡改到防护逻辑
android
4Forsee5 小时前
【Android】消息机制
android·java·前端