已阅读5页,还剩42页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 软件开发过程与质量保证 第四章软件设计 2 2 软件设计的内容包括体系结构设计数据设计接口设计 用户界面设计过程设计 三 软件设计的内容 3 1 软件体系结构的设计 构建体系结构的目的重用系统能够重用以前的代码和设计 从而提高开发效率 扩展在系统能够保持结构的稳定的前提下很容易地扩充功能和提升性能 简洁建立一个相对小的 易于理解的掌握的模型 并描述了系统如何构成以及其构建如何一起工作 4 体系结构三要素程序构件 模块 的层次结构构件之间交互的方式数据的结构体系结构风格 模型 根据各子系统如何共享数据 如何分布 如何相互交互 可开发更加特定的风格 模型 5 参考风格的种类C2风格管道 过滤器风格数据抽象和面向对象风格基于事件的隐式调用风格层次系统风格客户机 服务器风格 6 1 C2风格 C2是一种基于分层结构 事件驱动的软件构架风格 基本元素是构件 Component 和连接器 Connector 7 组成规则系统中的构件和连接件都有一个顶部和一个底部 构件的顶端接口用于发出请求 接收结果 底端接口则用于接收请求 发出结果 构件的顶部应连接到某连接件的底部 构件的底部则应连接到某连接件的顶部 而构件与构件之间的直接连接是不允许的 一个连接件可以和任意数目的其它构件和连接件连接 当两个连接件进行直接连接时 必须由其中一个的底部到另一个的顶部 8 特点基底独立性系统中的构件可实现应用需求 并能将任意复杂度的功能封装在一起 消息通讯机制所有构件之间的通讯是通过以连接件为中介的异步消息交换机制来实现的 实现与构架分离构件相对独立 构件之间依赖性较少 系统中不存在某些构件将在同一地址空间内执行 或某些构件共享特定控制线程之类的相关性假设 9 该体系结构被用于当输入数据被通过一系列计算或操纵构件变换为输出数据情形 2 数据流体系结构 管道和过滤器模型 10 3 数据抽象和面向对象风格 描述这种风格建立在数据抽象和面向对象的基础上 数据的表示方法和它们的相应操作封装在一个抽象数据类型或对象中 11 实例 CORBA 12 4 基于事件的隐式调用风格 描述其思想是构件不直接调用一个过程 而是触发或广播一个或多个事件 系统中的其它构件中的过程在一个或多个事件中注册 当一个事件被触发 系统自动调用在这个事件中注册的所有过程 这样 一个事件的触发就导致了另一模块中的过程的调用 例子最早出现在守护进程 约束满足性检查和包交换网络等方面的应用程序中 13 5 分层系统模型 抽象机模型 描述也称为按服务进行划分 层是对模型中不同抽象层次上的逻辑结构进行分组的一种特定方式 系统按照层次结构组织 每一层向它的上一层提供服务 同时又是它的下层的客户 系统内的交互限定在邻接层之间 除了邻接层 一个内部层次对于其他外部层次是隐藏的 邻接层的关系并不严格 例如网络协议的参考模型OSI 14 使用层有助于解决的问题源码的变更波及整个系统 应用逻辑与用户界面交织在一起 无法复用于其他不同界面或分布到其他处理结点之上 潜在的一般性技术服务或业务逻辑与更特定于应用的逻辑交织在一起 无法被复用 分布到其他结点或方便地使用不同实现进行替换 不同关注领域之间高度耦合 难以为不同开发者清晰地界定和分配任务 15 信息系统逻辑架构中常见的层 16 功能划分与层次划分之间的关系层次划分是对构架的横向分解 功能划分是对构架的纵向分解 它们之间的关系 如图所示 17 描述典型的分布式系统模型合作的双方都会利用各自的计算能力负责一定的计算工作 从而提高整个系统的能力和效率 组成部分一组功能各自独立的服务器为其他子系统提供服务 如打印服务器 文件服务器 编译服务器等 一组客户机并发访问多个服务器提供的服务 或存在一些客户机可并发执行的客户机程序 一个网络使得客户机能够访问服务器 6 客户机 服务器模型 C S 18 Catalogueserver Vodioserver Pictureserver Hypertextserver Catalogue Filmclipfiles Digitizedphotographs Hypertextweb Wide bandwidthnetwork Client1 Client2 Client3 Client4 Film Picturelibrarysystem的体系结构 19 两层客户 服务器结构系统的逻辑分层分别实现在不同的物理层 物理机器 上 通常将这种物理层次上的划分称为客户端程序和服务器端程序逻辑分层与物理分层的映射胖客户端结构客户端负责用户界面和应用逻辑部分 工作繁重瘦客户端结构服务器端负责应用逻辑和数据访问部分 客户端工作简单常被称为B S结构介于两者之间客户端增加了对用户请求的处理 20 两层客户 服务器结构 21 三层 多层应用模型多层模型是两层C S模型的扩展应用逻辑部分被分离出来成为单独的一层 或多层 这些中间层由一些完成应用业务功能的分布式对象组建构成 22 三层客户 服务器结构 23 多层客户 服务器结构 24 数据设计的内容数据结构的设计文件的设计数据库的设计数据设计的层次业务级存储在不同数据库并且重新组织为 数据仓库 的信息的集合 它启动了数据挖掘或知识发现 对业务本身的成功有重要影响 应用级需求工程导出的数据模型到数据库的转换 是达到系统业务目标的关键 程序构件级设计数据结构和操作它们所需要的相关算法 对创建高质量的应用至关重要 2 数据设计 25 数据设计的原则在数据设计中也可以使用自顶向下 逐步细化的方法 底层数据设计的决策应该推迟到设计过程的后期进行数据设计时应遵从信息隐藏原则要确定所有数据结构 以及在每种数据结构上实施的操作应当创建一个存放数据结构和相关操作的库 26 1 数据结构设计 数据结构设计原则尽量使用简单的数据结构在设计数据结构时要注意数据之间的关系为了加强数据设计的可复用性 应该针对常用的数据结构和复杂的数据结构设计抽象类型尽量使用经典数据结构在确定数据结构时一般先考虑静态结构对于复杂数据结构 应给出图形和文字描述 以便于理解 27 2 文件设计 文件设计定义 指对数据存储文件的设计 文件的逻辑设计整理必需的数据元素分析数据间的关系确定文件记录的内容文件的物理设计理解文件的特性确定文件物理组织结构确定文件的存储介质确定文件的记录格式估计记录的存取时间估计文件的存储量 28 3 数据库设计 数据库设计数据库设计的基本步骤 1 数据库的概念结构设计 2 数据库的逻辑结构设计 3 数据库的物理结构设计 29 数据库的概念结构设计概念结构设计应在系统分析阶段进行 任务是根据用户需求设计数据库的概念数据模型 简称概念模型 概念模型是从用户角度看到的数据库 它可用E R模型表示 数据库的逻辑结构设计逻辑结构设计是将概念结构设计阶段完成的概念模型转换成能被选定的数据库管理系统 DBMS 支持的数据模型 目前常见的是关系模型 30 将E R模型转换为关系模型的一般规则 1 每一实体集对应于一个关系模式 实体名作为关系名 实体的属性作为对应关系的属性 2 实体间的联系一般对应一个关系 联系名作为对应的关系名 不带有属性的联系可以去掉 3 实体和联系中关键字对应的属性在关系模式中仍作为关键字 31 将重数映射到数据库操作 32 根据规则 下面的实体和联系就很容易转换成了上述对应的关系数据模型 学生 学号 姓名 性别 出生日期 籍贯 课程 课程编号 课程名 学时 学分 教材名称 教师 教师编号 教师姓名 性别 出生日期 职称 学历 工作时间 学习 学号 课程编号 成绩 教学 教师编号 课程编号 效果 33 数据库的物理结构设计物理结构设计是为数据模型在设备上选定合适的存储结构和存取方法 以获得数据库的最佳存取效率 物理结构设计的主要内容包括 库文件的组织形式 如选用顺序文件组织形式 索引文件组织形式等 存储介质的分配 例如将易变的 存取频繁的数据存放在高速存储器上 稳定的 存取频度小的数据存放在低速存储器上 存取路径的选择等 34 第一范式 1NF 在关系模式R中的每一个具体关系r中 如果每个属性值都是不可再分的最小数据单位 则称R是第一范式的关系 第二范式 2NF 如果关系模式R U F 中的所有非主属性都完全依赖于任意一个候选关键字 则称关系R是属于第二范式的 第三范式 3NF 如果关系模式R U F 中的所有非主属性对任何候选关键字都不存在传递信赖 则称关系R是属于第三范式的 35 界面设计设计用户界面就是设计输入输出 这些输入输出是指为了执行一个任务用户与计算机系统之间进行的交互 我们侧重于人和计算机交互的界面设计 即人机交互界面 遵循一组界面设计原则 设计任务需标识界面对象和动作 然后创建屏幕布局 形成用户界面原形的基础 3 用户界面设计 36 界面设计八项黄金规则尽量保持一致性为熟练用户提供快捷键提供有效反馈设计完整的对话过程提供简单的错误处理机制允许撤销动作提供控制的内部轨迹减少短期记忆负担 37 1 尽量保持一致性 MicrosoftOffice系列软件的界面 38 2 为熟练用户提供快捷键 AdobePhotoshop中提供的快捷方式 39 3 提供有效反馈 4 设计完整的对话过程 40 5 提供控制的内部轨迹 41 6 提供简单的错误处理机制 找不到该网页的不同界面显示 42 7 允许撤销动作 43 8 减少短期记忆负担 收藏夹功能 44
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年哈密地区哈密市网格员招聘考试参考题库及答案解析
- 2026年贵阳市南明区网格员招聘考试参考题库及答案解析
- 2026年金华市金东区网格员招聘考试参考试题及答案解析
- 2025年广西壮族自治区百色市街道办人员招聘考试试题及答案解析
- 2026年北京市朝阳区网格员招聘笔试模拟试题及答案解析
- 2026年兰州市安宁区网格员招聘考试参考试题及答案解析
- 2025年思茅地区街道办人员招聘笔试试题及答案解析
- 2026年常州市天宁区网格员招聘考试参考题库及答案解析
- 2026年太原市小店区街道办人员招聘笔试备考试题及答案解析
- 2025年渝中区万盛区街道办人员招聘笔试试题及答案解析
- 覆膜加工协议书
- 2025年国家公务员综合性消防救援面试题及答案
- 妇科恶性肿瘤术后盆腔功能与生活质量评估方案
- 船体装配工工艺作业技术规程
- 物探工岗前生产安全培训考核试卷含答案
- 通信客服培训课件
- 气瓶运输知识培训内容课件
- 全过程工程咨询能力评价指标
- 人工水磨钻劳务合同范本
- 北京卷2025年高考生物真题含解析
- 2025年村级水管员应聘笔试技巧与策略
评论
0/150
提交评论