软件工程(五)软件设计

软件设计

定义

在软件设计中根据需求分析的软件需求及功能、性能需求,采用某种设计方法进行数据设计,系统结构设计和过程设计。

基本目标

用比较抽象概括的方式确定目标系统如何完成预定的任务

内容

数据设计、体系结构设计、接口设计、过程设计

将分析模型转换为设计

392407bb9ec84e71a4dbabe546aed553.png

步骤及其任务

概要设计

将软件需求转化为软件体系结构

确定系统级接口

全局数据结构或数据库模式 

详细设计

确立每个模块的实现算法和局部数据结构

用适当方法表示算法和数据结构的细节

总体设计的过程

系统设计

确定系统实现的方案;

结构设计

确定软件的结构,是概要设计的重点,完成四个任务:      

① 采用某种设计方法,将一个复杂的软件系统按功能划分成模块的层次结构;      

② 决定每个模块的功能,建立与已确定软件需求的对应关系;      

③ 决定每个模块的调用关系;      

④ 决定模块间的接口,即模块之间的传递信息,设计接口的信息结构。    

⑤ 评估模块划分的质量及寻出模块结构的规则。

软件结构

构成及其各自含义

程序结构

程序结构有两层含义,

一是指程序的数据结构和控制结构;

另一是指由比程序低一级的程序单位(模块)组成程序的过程、方法和表示。

文档结构

文挡描述的对象往往很复杂,所以文档结构需要简明、清晰和有层次。

类和模块

对于模块,可理解为具有如下特性的程序单位,即把这些模块组合成较大的程序时,不要求了解各个模块的内部工作细节,而各模块的正确性也不用置于整个程序中就可检查。按照面向对象的方法来构造软件时,这种模块的概念就可以理解为类(参见面向对象程序设计)。

软件设计的主要手段

1.设计应遵循抽象化的原则

  • 数据抽象
  • 过程抽象

2.设计应遵循自顶向下、逐步细化的原则,建立一个层次的结构。

3.设计应当遵循模块化的原则。

  • 模块可分解性
  • 模块可组装性
  • 模块可理解性
  • 模块连续性 
  • 模块保护 

4.设计应遵循信息隐蔽的原则

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值