软件工程—面向过程的软件设计方法

一、软件设计的目标和任务
 管理观点:概要设计,详细设计
 技术观点:数据设计, 系统结构设计,过程设计
 软件工程—面向过程的软件设计方法
二、软件设计过程  
 1.制定规范
  2.软件系统结构的总体设计
 3.处理方式的设计
 4.数据结构的设
三、软件设计的基础
 自顶向下逐步细化
 软件结构(模块,数据)
 程序结构(树状,网状)
 结构图:1.模块
     2.模块的调用关系和接口
     3.模块间的信息传递
     4.表示模块A有条件的调用模块B
软件工程—面向过程的软件设计方法
四、软件设计的独立性
  软件的独立性采用两个准则度量模块独立性。即模块间耦合和模块内聚
模块间耦合:
  软件工程—面向过程的软件设计方法
模块内聚:
软件工程—面向过程的软件设计方法
五、结构化设计方法
 变换型:系统结构图,变化分析
 事务型 :系统结构图,事务分析
 六、面向数据结构的分析设计方法
Jackson系统开发方法(JSD)
  Jackson系统开发方法(JSD,Jackson,System Development)是一种典型的面向数据结构的分析设计方法。
Jackson系统开发方法的系统模型就是相互通讯的一组进程的集合。进程间的通讯方式有一下三种:
(1)进程同步发生。
(2)通过数据通道发送/接受活动发生。
(3)访问公用储存信息。
1.Jackson图
(1)表达基本结构
对于种类繁多的程序中使用的数据结构,各种数据元素之间的逻辑关系只有顺序、选择、重复三种,所以逻辑数据结构也只有三种。
顺序结构
选择结构
重复结构
(2)改进的Jackson图
Jackson图的缺点是:用这种图形工具表示选择或重复结构时,选择条件或循环结束条件不能直接在图上表示出来,影响了图的表达能力,也不易直接把图翻译成程序,此外,框内连线为斜线,不易在行式打印机上输出。
(3)如何使用Jackson图
  ①表示数据结构
  ②表示程序结构
  ③Jackson伪代码