版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软 件 工 程第四章 软件设计(2)任务2 构建数据库数据设计数据结构设计数据库设计任务3 设计界面任务4 描述算法详细设计详细设计工具2任务2 构建数据库在分析图书管理系统的过程中出现了很多与业务相关的数据流、数据存储、数据实体等数据表现形式。这些数据在系统实现过程中都需要使用到并需要体现出来的。例如,数据存储本身是一种静态数据的表示方式,就意味着在系统中需要持久化这些数据。数据库往往是持久化数据的常用方法。那么,这些数据应该以什么样的形式进行组织,又应该怎样表达出来呢?31 数据设计数据设计的内容数据结构的设计文件的设计数据库的设计数据设计的层次业务级存储在不同数据库并且重新组织为“数据仓
2、库”的信息的集合,它启动了数据挖掘或知识发现,对业务本身的成功有重要影响。应用级需求工程导出的数据模型到数据库的转换,是达到系统业务目标的关键;程序构件级设计数据结构和操作它们所需要的相关算法,对创建高质量的应用至关重要。5数据设计的原则在数据设计中也可以使用自顶向下、逐步细化的方法。底层数据设计的决策应该推迟到设计过程的后期进行数据设计时应遵从信息隐藏原则要确定所有数据结构,以及在每种数据结构上实施的操作应当创建一个存放数据结构和相关操作的库2 数据结构设计数据结构设计原则尽量使用简单的数据结构在设计数据结构时要注意数据之间的关系为了加强数据设计的可复用性,应该针对常用的数据结构和复杂的数据
3、结构设计抽象类型尽量使用经典数据结构在确定数据结构时一般先考虑静态结构对于复杂数据结构,应给出图形和文字描述,以便于理解3 数据库设计数据库设计数据库设计的基本步骤(1)数据库的概念结构设计(2)数据库的逻辑结构设计(3)数据库的物理结构设计数据库的概念结构设计 概念结构设计应在系统分析阶段进行。任务是根据用户需求设计数据库的概念数据模型 (简称概念模型)。概念模型是从用户角度看到的数据库,它可用E-R模型表示。数据库的逻辑结构设计逻辑结构设计是将概念结构设计阶段完成的概念模型转换成能被选定的数据库管理系统(DBMS)支持的数据模型。目前常见的是关系模型。将E-R模型转换为关系模型的一般规则(
4、1)每一实体集对应于一个关系模式,实体名作为关系名,实体的属性作为对应关系的属性。 (2)实体间的联系一般对应一个关系,联系名作为对应的关系名,不带有属性的联系可以去掉。 (3)实体和联系中关键字对应的属性在关系模式中仍作为关键字。重数数据库操作一对一为每个对象分别创建一个表每个表中的主码也是相关表中的外码一对多为每个对象分别创建一个表关联中“一”这一侧表的主码是“多”那一侧表的外码多对多为每个对象分别创建一个表创建一个附加的交叉表每个对象对应的表的主码在交叉表中都定义为外码交叉表的主码可以是单独的特定一列(自动生成的代主码),或者也可能是来自其他表的两个外键的组合再加上一个有含义的标识符(如
5、角色、类型)将重数映射到数据库操作根据规则,下面的实体和联系就很容易转换成了上述对应的关系数据模型: 学生 (学号,姓名,性别,出生日期,籍贯) 课程 (课程编号,课程名,学时,学分,教材名称) 教师 (教师编号,教师姓名,性别,出生日期,职称,学历,工作时间) 学习 (学号,课程编号,成绩) 教学 (教师编号,课程编号,效果)数据库的物理结构设计物理结构设计是为数据模型在设备上选定合适的存储结构和存取方法,以获得数据库的最佳存取效率。物理结构设计的主要内容包括: 库文件的组织形式。如选用顺序文件组织形式、索引文件组织形式等。 存储介质的分配。例如将易变的、存取频繁的数据存放在高速存储器上,稳
6、定的、存取频度小的数据存放在低速存储器上。 存取路径的选择等。第一范式(1NF)在关系模式R中的每一个具体关系r中,如果每个属性值 都是不可再分的最小数据单位,则称R是第一范式的关系。 第二范式(2NF)如果关系模式R(U,F)中的所有非主属性都完全依赖于任意一个候选关键字,则称关系R 是属于第二范式的。 第三范式(3NF)如果关系模式R(U,F)中的所有非主属性对任何候选关键字都不存在传递信赖,则称关系R是属于第三范式的。 任务3 设计界面在需求分析阶段我们已经接触到采用快速原型的方式来获取和明确用户的需求,在设计阶段我们已经基本上掌握了用户的想法,需要根据需求规格说明书中提到的信息构建和明
7、细系统实现的界面,那么,在用户界面构建的过程中,除了确定界面中所包含的界面信息外,还有哪些方面是我们需要注意的呢?15界面设计设计用户界面就是设计输入输出,这些输入输出是指为了执行一个任务用户与计算机系统之间进行的交互。我们侧重于人和计算机交互的界面设计,即人机交互界面。遵循一组界面设计原则,设计任务需标识界面对象和动作,然后创建屏幕布局,形成用户界面原形的基础。界面设计八项黄金规则尽量保持一致性为熟练用户提供快捷键提供有效反馈设计完整的对话过程提供简单的错误处理机制允许撤销动作提供控制的内部轨迹减少短期记忆负担任务4 描述算法通过概要设计阶段所获得的软件体系结构,我们已经了解了系统内部基本的
8、组成形式及模块间的调用关系,下面我们需要深入到模块内部,去探寻一下每个模块具体的实现策略,那么,可以采用什么样的方式来对模块内部实现策略进行描述呢?181 详细设计详细设计详细设计也称为构件级设计或过程设计。在数据设计、体系结构设计和接口设计完成之后进行。其意图是将设计模型翻译为可以运行的软件。构件级设计建立起操纵数据结构,影响软件构件间通过它们的接口的通信以及实现分配到每个构件的处理算法所需的算法细节。 2 详细设计工具从软件开发的工程化观点来看,在使用程序设计语言编制程序以前,需要对所采用算法的逻辑关系进行分析,设计出全部必要的过程细节,并给予清晰的表达。这就是过程设计的任务。在过程设计阶
9、段,要决定各个模块的实现算法,并精确地表达这些算法。表达过程规格说明的工具叫做详细设计工具,它可以分为以下三类: 图形工具 表格工具 语言工具20(1)图形工具程序流程图五种基本控制结构A ;B ;对应的代码If P A ;else B ;对应的代码while P S ;对应的代码Do S ;Until P对应的代码Switch P case 1:A1;break; case 2:A2;break; case n:An; 对应的代码 示例练习1阅读前面给出的程序流程图,请用伪码进行表示。练习2将下述伪码转换为程序流程图A; B;if x1 then while x2 E; if x3 then
10、 C; D; F;N-S图也叫做盒图。五种基本控制结构由五种图形构件表示。示例N-S图的嵌套定义形式问题分析图(PAD)PAD也设置了五种基本控制结构的图式,并允许递归使用。PAD描述的示例(2)表格工具判定表判定表能够清晰地表示复杂的条件组合与应做的动作之间的对应关系。一张判定表由四部分组成,包括所有可能条件、所有可能做的动作、各种条件的可能组合、每种条件组合相对应的动作。判定表的每一列实质上是一条规则,规定了与特定的条件组合相对应的动作。举例优先进行维修处理的决策:对功率大于50马力的机器、维修记录不全或已运行10年以上的机器,应给予优先的维修处理。建立判定表的步骤列出与一个具体过程(或模
11、块)有关的所有处理。列出过程执行期间的所有条件(或所有判断)。将特定条件取值组合与特定的处理相匹配,消去不可能发生的条件取值组合。将右部每一纵列规定为一个处理规则,即对于某一条件取值组合将有什么动作。练习以行李托运费的算法为例说明判定表的组织方法。假设某航空公司规定,乘客可以免费托运重量不超过30公斤的行李。当行李重量超过30公斤时,对头等舱的国内乘客超重部分每公斤收费4元,对其他舱的国内乘客超重部分每公斤收费6元,对外国乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。用判定表可以清楚地表示与上述每种条件组合相对应的动作(算法)。 条件123456789国内乘客TTTTF FFF头等舱TFTFTFTF残疾乘客FFTTFFTT行李重量W30TFFFFFFFF 动作免费(W-30)2(W-30)3(W-30)4(W-30)6(W-30)8(W-30)12判定树判定树是判定表的变种也能清晰地表示复杂的条件组合与应做的动作之间的对应关系。判定树的形式简单,易于掌握和使用。举例残疾乘客(W-30)2正常乘客(W-30)4正常乘客(W-30)6残疾乘客(W-30)3残疾乘客(W-30)4正常乘客(W-30)8残疾乘
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 卫生紧急信息上报制度
- 社区运营积分规则制度
- 研究机构职业卫生监管制度
- 家政服务饮食卫生管理制度
- 幼儿园餐前餐点卫生制度
- 单位餐饮卫生管理制度
- 发廊店面卫生管理制度
- 家庭卫生考核制度
- 店铺运营提成制度
- 酒店餐具卫生制度
- 甘肃省武威市凉州区2025-2026学年上学期九年级化学期末模拟练习试卷含答案
- (2025年)安全教育考试(电气焊)含答案
- (2025年)会计入职考核试题及答案
- (2025年)劳动关系协调员考试题库与答案
- 企业客户关系维护工作方案
- 气体保护焊焊工培训课件
- 车间危险源培训
- 渗透现象课件
- 2025年国家电网内蒙古东部电力高校毕业生招聘约226人(第二批)笔试参考题库附带答案详解(3卷合一版)
- 收藏 各行业标准及其归口的行业部门
- MDT指导下IBD生物制剂的个体化给药方案
评论
0/150
提交评论