当前位置:网站首页>软件设计文档示例模板 - 学习/实践
软件设计文档示例模板 - 学习/实践
2022-07-04 03:54:00 【穿素白衫的少年】
1.应用场景
| 主要用于学习,以及书写软件设计文档。 |
2.学习/操作
1.文档阅读2.整理输出在第9篇文章中,我讲了每种UML模型图的画法,以及这些画法分别适用于什么样的设计阶段,我们也可以将不同阶段输出的模型图放在一个文档中,对每张模型图配以适当的文字说明,构成一篇设计文档。 对于规模不太大的软件系统,我们可以将概要设计文档和详细设计文档合并成一个设计文档。这一篇文章中,我会展现一个设计文档示例模板,你可以参考这个模板编写你的设计文档。 文档开头是设计概述,简单描述业务场景要解决的核心问题领域是什么。至于业务场景,应该在专门的需求文档中描述,但是在设计文档中,必须要再简单描述一下,以保证设计文档的完整性,这样,即使脱离需求文档,阅读者也能理解主要的设计。 此外,在设计概述中,还需要描述设计的非功能约束,比如关于性能、可用性、维护性、安全性,甚至开发和部署成本方面的设计目标。 然后就是具体的设计了,第一张设计图应该是部署图,通过部署图描述系统整个物理模型蓝图,包括未来系统长什么样。 如果系统中包含几个子系统,那么还需要描述子系统间的关系,可以通过子系统序列图,子系统活动图进行描述。 子系统内部的最顶层设计就是组件图,描述子系统由哪些组件组成,不同场景中,组件之间的调用序列图是什么样的。 每个组件内部,需要用类图进行建模描述,对于不同场景,用时序图描述类之间的动态调用关系,对于有复杂状态的类,用状态图描述其状态转换。 具体示例模板如下: 1 设计概述……系统是一个……的系统,是公司……战略的核心系统,承担着公司……的目标任务。 1.1 功能概述系统主要功能包括……,使用者包括……。 1.2 非功能约束……系统未来预计一年用户量达到……,日订单量达到……,日PV达到……,图片数量达到 ……。
2 系统部署图与整体设计系统上线时预计部署……台物理机,……个子系统,和公司……系统交互,和外部第三方……个系统交互。 2.1 系统部署图
子系统2参照子系统1来写。 2.2 下单场景子系统序列图
2.3 退款场景子系统序列图
2.4 退款场景子系统活动图
3 子系统1设计子系统1的主要功能职责是……,其中主要包含了……组件。 3.1 子系统1组件图
组件1的功能主要是……,需要依赖组件2完成……,是子系统1的核心组件,用户……请求主要通过组件1完成。 同样的,组件2也可以参照组件1来这样写。 3.1.1 场景A组件序列图
3.1.2 场景B组件活动图
3.2 组件1设计组件1的主要功能职责是……,其中主要包含了……类。 3.2.1 组件1 类图
3.2.2 场景A 类序列图
3.2.3 对象1状态图
3.3 组件2设计重复上面的格式。 4 子系统2设计重复上面的格式。 后续补充 ... |
3.问题/补充
TBD |
4.参考
| 参见上面文档列表 |
后续补充
...
边栏推荐
- 通过dd创建asm disk
- Redis: operation command for collecting set type data
- Modstartblog modern personal blog system v5.2.0 source code download
- Leader: who uses redis expired monitoring to close orders and get out of here!
- Boutique website navigation theme whole station source code WordPress template adaptive mobile terminal
- Cmake compilation option setting in ros2
- 西部数据绿盘、蓝盘、黑盘、红盘和紫盘有什么区别
- 浅谈JVM的那些事
- 一个漂亮的API文档生成工具
- B. All Distinct
猜你喜欢

旭化成首次参展第五届中国国际进口博览会(5th CIIE)

R语言dplyr中的Select函数变量列名

Asahi Kasei participated in the 5th China International Import Expo (5th ciie) for the first time

2020 Bioinformatics | TransformerCPI

Redis: hash type data operation command

Statistical genetics: Chapter 3, population genetics

Many founders of technology companies provided enterpriser first with a round C financing of up to US $158million to help it invest in the next generation of global innovators

毕业设计项目

Select function variable column name in dplyr of R language

博朗与Virgil Abloh于2021年为纪念博朗品牌100周年而联合打造的“功能性艺术”将在博物馆展出Abloh作品期间首次亮相
随机推荐
统计遗传学:第三章,群体遗传
Kivy教程之 更改背景颜色(教程含源码)
Asynchronous development process - touch your hand and lead you to realize a promise
架构实战营 - 第 6 期 模块九之毕业设计
Senior developers tell you, how to write excellent code?
1. Mx6u-alpha development board (simulating STM32 drive development experiment)
Many founders of technology companies provided enterpriser first with a round C financing of up to US $158million to help it invest in the next generation of global innovators
6-4漏洞利用-SSH Banner信息获取
Wechat brain competition answer applet_ Support the flow main belt with the latest question bank file
普源DS1000Z系列数字示波器在通信原理实验中的应用方案
rac删除损坏的磁盘组
Graduation project
疫情远程办公经验分享| 社区征文
Network - vxlan
Kivy教程之 自定义字体(教程含源码)
Leetcode skimming: binary tree 07 (maximum depth of binary tree)
NFT新的契机,多媒体NFT聚合平台OKALEIDO即将上线
Exploration and practice of eventbridge in the field of SaaS enterprise integration
Use NRM and NVM to manage your NPM source and node versions
Kivy教程之 07 组件和属性绑定实现按钮button点击修改label组件(教程含源码)








