当前位置: 首页 > ai >正文

大话软工笔记—工程分解

1. 设计工程概念

设计工程,是运用软件设计的理论、方法、工具,对需求功能获取的需求按照不同理论和方法进行分阶段、分层的细化,给出满足客户需求和符合软件开发要求的设计资料。

设计工程主要包括业务设计部分(概要设计和详细设计)、应用设计部分(应用设计)和技术设计部分,如下图所示。

1.1 业务设计部分

含概要设计和详细设计两个阶段,业务设计的主要工作是优化、梳理、完善业务,并在此基础上确定业务功能,成果包括设计规范、业务架构、业务功能等。

1.2 应用设计部分

将业务设计的成果转换为系统的功能,成果包括应用架构、系统机制、系统功能等。

1.3 技术设计部分

将业务和应用的设计成果转换为支持编码开发的设计资料,成果包括语言选择、基础框架、数据接口、系统部署、硬件选择、环境构建等。

2. 设计工程作用

在设计工程中,需求工程的成果被设计师进行了进一步的理解、阐释,并融入了设计师的理念、思想,开发完成的产品必须要符合设计师和设计资料的要求,它是所有相关人交流、工作、检查的共同语言和标准。

3. 工程分解阶段

软件工程的工程分解分为三个阶段:概要设计、详细设计、应用设计。

4. 工程分解1-概要设计

概要设计主要负责对系统进行以下四方面的规划:

(1)规范,从顶层设计的视角出发,确定目标、理念、主线、原则、定义、标准等。

(2)架构,基于目标对业务进行优化,确定业务架构、系统、子系统、模块等的划分。

(3)功能,基于架构对业务功能进行分类、规划,确定功能间的关系以及功能一览。

(4)数据,基于架构和功能对数据的范围、内容进行规划,确定功能间的关系以及功能一览。

概要设计完成后,形成概要设计规格书,包含架构、功能和数据三个层次的设计。

5. 工程分解2-详细设计

依据概要设计文档对架构、功能和数据层面的内容进行精细设计,形成详细设计规格书。

6. 工程分解3-应用设计

应用设计是包括业务、技术、UI、美工以及体验等诸多方面知识和技术的集合体,将概要设计和详细设计的成果与系统实现手法结合在一起,给出系统实现后的业务处理、管理控制的操作效果,以及非业务的功能设计。

7. 工程分解4-三个阶段的关系

7.1 三个阶段的重点

  • 概要设计重点

从设计的角度出发对需求的定义和解释,经过一系列粗粒度的规划和设计,让后续的设计师大致了解系统的结构和操作模式。

  • 详细设计的重点

描述业务涉及的实现细节、方法和函数。

  • 应用设计的重点

将前面设计的内容转换为系统的表达方式。

7.2 三个阶段的协同

各个模块之间是有层次关系的,也有先后的逻辑关系。在概要设计中,还必须考虑模块的实现细节,要能够规划和确定出详细设计和应用设计的范围、深度,概要设计、详细设计和应用设计三个设计之间需要反复迭代进行。

7.3 三个阶段的价值

概要设计/详细设计,确定系统中业务方面的最高价值;应用设计确定系统中应用方面的最高价值(也可以称为体验价值)。

 8. 管理设计

业务与管理分离,业务是管理的载体,管理是对业务标准执行的保证措施,因此,管理的思想、理念、原则等可以先行规划,但是具体的管理设计要在业务载体的相关设计完成之后才能进行。

http://www.xdnf.cn/news/13448.html

相关文章:

  • GlusterFS分布式文件系统
  • 【Keepalived】Keepalived-2.3.4恢复对RHEL7的支持
  • 第七章: SEO与渲染方式 三
  • (十一)优化算法(Optimization):深度学习训练中的收敛性分析与泛化理论
  • 鹰盾视频加密器Windows播放器AI溯源水印技术方案解析
  • ros2--Sophus
  • “新液冷”破题“智算热”,数字经济低碳化发展新解
  • 【Linux】Linux 操作系统 - 22 , 软硬链接详解 !
  • 104.解决在流式回答功能实现之后上传附件功能失效bug之前端处理
  • DAY 28 类的定义和方法
  • 三代社保卡全字段识别-社保卡识别软件-社保卡识别接口集成
  • 结合redis实现文件分片秒传断点续传
  • Linuxkernel学习-deepseek-2
  • Java-43 深入浅出 Nginx - 基本配置方式 nginx.conf Events块 HTTP块 反向代理 负载均衡
  • idea不同颜色总结
  • 【深尚想】LTR-390UV-01光宝环境光传感器电子元器件详细解析
  • HDFS 中 DataNode 挂载外部 S3 存储系统作为本地卷
  • 迁移科技3D视觉系统:开启袋子拆垛场景的智能革命新纪元
  • 53、错误处理-【源码分析】底层组件功能分析
  • Kafka消费者组位移重设指南
  • 从0到1掌握Sqoop:开启大数据迁移之旅
  • 爬取新浪新闻网的全部策略
  • 【kafka】rebalance机制详解
  • 基于GNU Radio Companion安装和搭建的简易FMRadio
  • Node.js版本管理
  • Contos7yum停服
  • latch/ff的电路结构及setup/hold/tpd、clkWidht/recovery/remove
  • Dexcap复现代码运行逻辑全流程(二)——realsense T265测试使用
  • 【学习笔记】RTSP-Ovnif-GB28181
  • vtk 对stl文件进行降采样