软件设计基础:过程求精与数据求精
需积分: 17 16 浏览量
更新于2024-08-23
收藏 791KB PPT 举报
过程求精与数据求精 - 软件设计基础
软件设计是软件工程的重要阶段,软件设计过程是对程序结构、数据结构和过程细节逐步求精、复审并编制文档的过程。本章讨论与软件设计有关的主要概念。
软件设计基础概念
软件设计是获取高质量、低耗费、易维护软件的一个最重要环节。需求分析阶段获得的需求规格说明书包括对将要实现的系统在信息、功能和行为等各个方面的描述,这是软件设计的基础。对此不论采用何种软件设计方法都将产生:
系统的总体结构设计(architectural design);
系统的数据设计(data design);
系统的过程设计(procedural design)。
过程求精与数据求精
过程求精是指在整个设计过程中产生的具有不同详细程度的各种描述,组成了系统的层次结构。层次结构的上一层是下一层的抽象,下一层是上一层的求精。过程求精的同时自然伴随着数据的求精,无论是过程还是数据,每一步细化都蕴涵着某些设计决策,因此设计人员必须掌握一些基本的准则,比较各种可能的候选方案。
软件设计过程
软件设计过程可以看作将需求规格说明逐步转换为软件源代码的过程。该过程包括:
1. 系统的总体结构设计(architectural design):定义系统的总体结构和组件的关系。
2. 系统的数据设计(data design):定义系统的数据结构和数据流。
3. 系统的过程设计(procedural design):定义系统的过程和算法。
软件设计的基本概念
软件设计的基本概念包括:
1. 模块化:将系统分解成小的、独立的模块,以便于设计和维护。
2. 信息隐藏:将系统的实现细节隐藏起来,以便于提高系统的可维护性和可扩展性。
3. 抽象:使用抽象来描述系统的行为和结构,以便于提高系统的可读性和可维护性。
软件设计技术和工具
软件设计技术和工具包括:
1. 数据流图(DFD):用于描述系统的数据流和处理过程。
2. 实体关系图(ER图):用于描述系统的实体和关系。
3. 状态转换图(STM):用于描述系统的状态和转换过程。
软件设计的重要性
软件设计是后续开发步骤及软件维护工作的基础。如果没有设计,只能建立一个不稳定的系统结构。因此,软件设计是软件工程的重要阶段,软件设计过程是对程序结构、数据结构和过程细节逐步求精、复审并编制文档的过程。
点击了解资源详情
2021-10-08 上传
2023-07-07 上传
2020-12-21 上传
2021-09-25 上传
2010-06-29 上传
2022-10-24 上传
点击了解资源详情
点击了解资源详情
魔屋
- 粉丝: 26
- 资源: 2万+
最新资源
- 基于Python和Opencv的车牌识别系统实现
- 我的代码小部件库:统计、MySQL操作与树结构功能
- React初学者入门指南:快速构建并部署你的第一个应用
- Oddish:夜潜CSGO皮肤,智能爬虫技术解析
- 利用REST HaProxy实现haproxy.cfg配置的HTTP接口化
- LeetCode用例构造实践:CMake和GoogleTest的应用
- 快速搭建vulhub靶场:简化docker-compose与vulhub-master下载
- 天秤座术语表:glossariolibras项目安装与使用指南
- 从Vercel到Firebase的全栈Amazon克隆项目指南
- ANU PK大楼Studio 1的3D声效和Ambisonic技术体验
- C#实现的鼠标事件功能演示
- 掌握DP-10:LeetCode超级掉蛋与爆破气球
- C与SDL开发的游戏如何编译至WebAssembly平台
- CastorDOC开源应用程序:文档管理功能与Alfresco集成
- LeetCode用例构造与计算机科学基础:数据结构与设计模式
- 通过travis-nightly-builder实现自动化API与Rake任务构建