闷 oup 软件设计 张琳琳
张琳琳 软件设计 by XJU SE Group
Agenda 软件设计的任务 ● 总体设计 详细设计 by XJU SE Group 所提交的文档
Agenda • 软件设计的任务 • 总体设计 • 详细设计 • 所提交的文档 by XJU SE Group
软件设计的任务 Group SE y●回答“盒么做”」
软件设计的任务 回答“怎么做”! by XJU SE Group
软件设计在软件开发中的重要性 软件设计是生命周期最重要的步骤,、它是软件 开发过程中质量得以保证的关键。 ·设计提供了软件的表示,使得软件的质量评价成为 可能 ●软件设计是将用户需求准确地转化成为最终软 件产品的唯一途径 ●软件设计是后续开发步骤及维护的工作基础。 ·如果没有设计,只能建立一个不稳的系统,只要出 现一些小的变动,就会使软件垮掉,而且难于测试
软件设计在软件开发中的重要性 软件设计是生命周期最重要的步骤,它是软件 开发过程中质量得以保证的关键。 设计提供了软件的表示,使得软件的质量评价成为 可能 软件设计是将用户需求准确地转化成为最终软 件产品的唯一途径 软件设计是后续开发步骤及维护的工作基础。 如果没有设计,只能建立一个不稳的系统,只要出 现一些小的变动,就会使软件垮掉,而且难于测试 by XJU SE Group
将分析模型转化为软件设计 数 加 据 x 规 E-R 数据流图 过程设计 象 描 数据字典 药 接口设计 述 状态转换图 体系结构设计 控 约 数据设计
将分析模型转化为软件设计 E-R by XJU SE Group
将分析模型转化为软件设计 ● 数据设计 ●将E-R中描述的对象和关系,以及数据库词典中描述的详细数 据内容转化为数据结构的定义 ●体系结构设计 ·定义软件系统各主要成份之间的关系 。接口设计 。定义软件内部各成份之间的、软件与其它协同系统之间,以及 软件与用户之间的交互机制 ●过程设计 人 。把结构成份转换成软件的过程性描述,在编码时,根据这种过 程性描述,生成源代码,然后通过测试最终得到完整有效的软 件
将分析模型转化为软件设计 数据设计 将E-R中描述的对象和关系,以及数据库词典中描述的详细数 据内容转化为数据结构的定义 体系结构设计 定义软件系统各主要成份之间的关系 接口设计 定义软件内部各成份之间的、软件与其它协同系统之间,以及 软件与用户之间的交互机制 过程设计 把结构成份转换成软件的过程性描述,在编码时,根据这种过 程性描述,生成源代码,然后通过测试最终得到完整有效的软 件 by XJU SE Group
一个软件体系结构的类比 博士(34年) 硕士(23年) 考上“举人”时已五十多岁了举人 本科(4年) 复习报考“举人”用了几十年和 秀才利 中学〔6年) 私塾 小学〔56年) 图5.1()从小学读到博士存在的五个学习阶段 图5.1(b)范进的知识结构
一个软件体系结构的类比 by XJU SE Group
软件设计的过程 ●是一个把软件需求变成软件表示的过程 ●从工程的角度来看,软件设计分两步走, 先做概要设计,再做详细设计 ·概要设计:将软件需求转化为数据结构和软 件的体系结构,并建立接口 ·详细设计:即过程设计,通过对结构表示进 行细化,得于软件的详细的数据结构和算法
软件设计的过程 是一个把软件需求变成软件表示的过程 从工程的角度来看,软件设计分两步走, 先做概要设计,再做详细设计 概要设计:将软件需求转化为数据结构和软 件的体系结构,并建立接口 详细设计:即过程设计,通过对结构表示进 行细化,得于软件的详细的数据结构和算法 by XJU SE Group
判断设计好坏的三条特征 ●McGlanghlin提出 ●设计必须实现分析模型中描述的所有显式需 求,必须满足用户希望的所有隐式需求 ·设计必须是可读的、可理解的、使得将来易 于编程、易于测试和易于维护 ·设计应从实现角度出发,给出与数据、功能 或行为相关的软件全貌
判断设计好坏的三条特征 McGlanghlin提出 设计必须实现分析模型中描述的所有显式需 求,必须满足用户希望的所有隐式需求 设计必须是可读的、可理解的、使得将来易 于编程、易于测试和易于维护 设计应从实现角度出发,给出与数据、功能 或行为相关的软件全貌 by XJU SE Group
Agenda 软件设计的任务 总体设计 ● 详细设计 by XJU SE Grou 所提交的文档
Agenda • 软件设计的任务 • 总体设计 • 详细设计 • 所提交的文档 by XJU SE Group