第十二章:软件系统分析与设计
软件设计师应用性技术内容:结构化分析与设计、数据库分析与设计、面向对象分析与设计、算法分析与设计、面向过程的程序设计与实现、面向对象的程序设计与实现。
结构化分析与设计
结构化分析与设计步骤
1)确定系统边界,画出系统环境图
2)自顶向下,画出各层数据流图
3)定义数据字典
4)定义加工说明
5)将图、字典以及加工组成分析模型
需求说明
结构化分析
总体设计
详细设计
数据库分析与设计
数据库分析与设计步骤
1)数据库规划
2)需求描述与分析
3)数据库与应用程序设计
4)数据库系统实现
5)测试阶段
6)运行维护
数据库设计的策略与步骤
数据库设计的方法
1)用户需求分析:调查机构情况,熟悉业务活动,明确用户需求,确定系统边界,分析系统功能,分析系统数据,编写分析报告。
2)概念设计:数据建模,E-R 方法。
3)逻辑设计、数据模式设计:层次模型、网状模型、关系模型。
4)物理设计:确定数据分布,确定数据的存储结构,确定数据的访问方式。
需求分析
概念结构设计
逻辑结构设计
数据库的物理设计
数据库的实施与维护
案例分析
面向对象分析与设计
面向对象分析与设计的步骤
1)建模系统功能:确定参与者,确定需求用例,构造用例模型,记录需求用例描述
2)定义领域模型:定义概念、属性和重要的关联
3)定义交互、行为和状态:确定并分类用例设计类,确定类属性、行为和责任
4)定义设计类图:会议,用户,会议主题,稿件,审阅意见
需求说明
建模用例
建模活动
设计类图
建模对象状态
建模交互
算法分析与设计
C程序设计语言与实现
算法设计与实现
算法设计过程:理解问题>>>确定相关因素(包括问题的输入与输出、用何种数据结构、用什么样的算法设计策略)>>>设计算法>>>证明算法的正确性>>>分析算法的效率>>>实现算法。
算法问题类型:查找问题、排序问题、图问题、组合问题(最优化问题)、几何问题(点、线、面、体)
面向对象的程序设计与实现
面向过程的程序设计与实现的核心:C 语言->指针
面向对象的程序设计与实现的核心:设计模式