《软件工程》教案-04 设计工程.doc
《《软件工程》教案-04 设计工程.doc》由会员分享,可在线阅读,更多相关《《软件工程》教案-04 设计工程.doc(8页珍藏版)》请在三一办公上搜索。
1、山东轻工业学院教师授课教案课程名称:软件工程课程代码:0310040学 分:3课程类别:选修课开课单位:信息科学与技术学院授课班级:计科07-12授课教师:赵培英山东轻工业学院教务处制授课时间2009年 9 月 23 日 星期 三 第 34 节2009年 9 月 25 日 星期 五 第 34 节2009年 10 月 9 日 星期 五 第 34 节授课内容概要第四章 设计第一节 设计工程概述 设计的目标,设计的任务,软件设计的过程。第二节 软件设计原则 模块化,抽象与逐步求精,信息隐藏,模块独立。第三节 软件体系结构设计 各种体系结构风格。第四节 部件级设计技术结构化程序设计方法,设计的各种表示
2、方法。第五节 人机界面设计影响人机界面设计的因素,涉及的模型,人机界面设计的黄金规则。第六节 设计归档、确认与验证 设计文档应包含的内容,设计确认与验证的含义,设计评审的过程。目的要求了解设计的目标、任务、过程;了解结构化程序设计方法;了解设计的各种表示方法;了解人机界面设计的黄金规则;掌握软件设计原则;掌握各种体系结构风格;掌握设计评审的方法。重 点软件设计原则;各种体系结构风格;设计评审。难点耦合与内聚的概念及分类作业布置1.简述软件设计阶段的任务和目标?2.软件设计有哪些原则?3.简述模块、模块化及模块化设计的概念。4.举例说明各种类型的模块耦合和模块内聚。5.比较各种体系结构风格。6.
3、人机界面设计的黄金规则?7.如何进行设计评审?参考书1.软件工程理论与实践(第三版影印版),ShariLawrencePfleeger,高等教育出版社,2001年8月2软件工程钱乐秋等 清华大学出版社课 型理论课学时分配复 习 5 分钟主要教具多媒体讲 授 35 分钟教学方法多媒体课件指 导 2 分钟教学手段讲授结合实例总 结 3 分钟备注授课:每周二56,双周周五56,II公教JT301 答疑:每周四78节,机电C403学时分配:指本章节每节课(45分钟)的平均分配情况授 课 过 程 及 内 容:第四章 设计 软件设计原则 软件体系结构设计 部件级设计技术 人机界面设计 设计规约与设计评审一
4、、软件设计工程概述 软件设计的任务 软件设计的目标 软件设计的过程1软件设计的任务 设计过程解决“怎么做”的问题,把软件需求变换成软件表示的过程,主要包含两个阶段: 软件体系结构设计(概要设计) 部件级设计 (详细设计) 根据用信息域表示的软件需求,以及功能和性能需求,产生 数据/类设计 体系结构设计 接口设计 部件级设计 1)数据/类设计 类模型=类实现(数据结构) 在类和由CRC(类责任协作者)中定义的数据对象和关系以及数据字典中描述的详细数据内容提供了数据设计活动的基础2)体系结构设计 定义软件的整体结构 由软件部件、外部可见的属性和它们之间的关系组成。 体系结构设计表示可以从系统规约、
5、分析模型和分析模型中定义的子系统的交互导出。 3)接口设计 描述软件内部、与协作系统之间、与人之间如何通信,主要包括三个方面: 设计模块间接口 设计外部接口 设计人机接口 4)部件级设计 软件体系结构的结构性元素软件部件的过程性描述。 在编码步骤,根据这种过程性描述,生成源程序代码,然后通过测试最终得到完整有效的软件。 部件设计的基础:从类为基础的模型、流模型、行为模型中得到的信息 2软件设计的目标 1)设计必须实现分析模型中描述的所有显式需求,必须满足用户希望的所有隐式需求。2)设计必须是可读、可理解的,使得将来易于编程、易于测试、易于维护。3)设计应从实现角度出发,给出与数据、功能、行为相
6、关的软件全貌。3软件设计的过程 1)制定规范2)体系结构和接口设计3)数据/类设计4)部件级(过程)设计5)编写设计文档6)设计评审4软件设计原则(1)抽象化 软件系统进行模块设计时,可有不同的抽象层次。 在最高的抽象层次上,可以使用问题所处环境的语言概括地描述问题的解法。 在较低的抽象层次上,则采用过程化的方法。 包括过程抽象和数据抽象1) 过程的抽象:在软件工程中,从系统定义到实现,每进展一步都可以看做是对软件解决方法的抽象化过程的一次细化。 r需求分析阶段,用“问题所处环境的为大家所熟悉的术语”来描述软件解决方法。 r从概要设计到详细设计的过程中,抽象化的层次逐次降低。 r当产生源程序时
7、到达最低抽象层次。 2) 数据抽象:在不同层次上描述数据对象的细节,定义与该数据对象相关的操作。(2)逐步求精 将软件的体系结构按自顶向下方式,对各个层次的过程细节和数据细节逐层细化,直到用程序设计语言的语句能够实现为止,从而最后确立整个的体系结构 逐步求精与抽象是一对互补的概念(3)模块化 模块化:指整个软件被划分成若干单独命名和可编址的部分,称之为模块。这些模块可以被组装起来以满足整个问题的需求。 把问题子问题的分解与软件开发中的系统子系统或系统模块对应起来,就能够把一个大而复杂的软件系统划分成易于理解的比较单纯的模块结构。 模块化的理论根据“分而治之”(P66)(4)信息隐藏 每个模块的
8、实现细节对于其它模块来说应该是隐蔽的。即:块中所包含的信息(包括数据和过程)不允许其它不需要这些信息的模块使用 通过信息隐蔽,可使错误局部化 (5)模块独立 模块独立:是指软件系统中每个模块只涉及软件要求的具体的子功能, 而和软件系统中其它的模块的接口是简单的 一般采用两个准则度量模块独立性。即模块间耦合和模块内聚: 内聚(cohesion)是一个模块内部各个元素彼此结合的紧密程度的度量 耦合(coupling)是模块之间互相连接的紧密程度的度量 模块独立性比较强的模块应是高内聚低耦合的模块。1)内聚 内聚性分七种类型 . 功能内聚 (Functional Cohesion):模块中各部分都是
9、完成某一具体功能必不可少的组成部分。. 顺序内聚 (Sequential Cohesion):一个模块完成多个功能,各个功能必须顺序执行。. 通信内聚 (Communication Cohesion):一个模块内各功能部分都使用了相同的输入数据,或产生了相同的输出数据。. 过程内聚(Procedural Cohesion):一个模块完成多个任务,这些任务必须按指定的过程进行。. 时间内聚(Classical Cohesion):模块的各个功能的执行与时间有关,通常要求所有功能必须在同一时间段内执行。例如初始化模块和终止模块。. 逻辑内聚(Logical Cohesion):这种模块把几种相关的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 软件工程教案-04 设计工程 教案 04 设计 工程
链接地址:https://www.31ppt.com/p-5216562.html