软件工程与项目实践教程 教学课件 ppt 作者 高伟锋 刘英 王凤岭项目四 设计网上书店

上传人:w****i 文档编号:94407409 上传时间:2019-08-06 格式:PPT 页数:41 大小:1.55MB
返回 下载 相关 举报
软件工程与项目实践教程 教学课件 ppt 作者 高伟锋 刘英 王凤岭项目四 设计网上书店_第1页
第1页 / 共41页
软件工程与项目实践教程 教学课件 ppt 作者 高伟锋 刘英 王凤岭项目四 设计网上书店_第2页
第2页 / 共41页
软件工程与项目实践教程 教学课件 ppt 作者 高伟锋 刘英 王凤岭项目四 设计网上书店_第3页
第3页 / 共41页
软件工程与项目实践教程 教学课件 ppt 作者 高伟锋 刘英 王凤岭项目四 设计网上书店_第4页
第4页 / 共41页
软件工程与项目实践教程 教学课件 ppt 作者 高伟锋 刘英 王凤岭项目四 设计网上书店_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《软件工程与项目实践教程 教学课件 ppt 作者 高伟锋 刘英 王凤岭项目四 设计网上书店》由会员分享,可在线阅读,更多相关《软件工程与项目实践教程 教学课件 ppt 作者 高伟锋 刘英 王凤岭项目四 设计网上书店(41页珍藏版)》请在金锄头文库上搜索。

1、项目四 设计网上书店,项目问题,对于任何产品都是在有了设计方案以后才能付诸实现(如时装、建筑等),设计阶段的工作质量直接决定了产品的最终质量。在盖房子之前,都必须画出蓝图来。 在完成网上书店的需求分析之后,那该如何创建给程序员进行开发的“图纸”呢?,系统设计任务,在需求规格说明书确定之后,就正式进入到设计阶段 在设计阶段,首先只是描绘出软件的概貌(概要设计) 在此基础上再将起细化,得到一个非常接近于源代码的设计表达形式(详细设计),概要设计任务,回答“怎样实现目标系统? ” 设计出实现目标系统的几种可能的方案 描述每种可能的方案,分析每种方案的优缺点,并在充分权衡各种方案的利弊的基础上,推荐一

2、个最佳方案 制定出实现所推荐的方案的详细计划,概要设计,程序应该模块化 设计程序的体系结构 确定程序由哪些模块组成以及模块间的关系,详细设计任务,回答“应该怎样具体地实现这个系统” 设计出程序的详细规格说明,任务1:网上书店体系结构设计,体系结构设计主要是根据需求规格说明书 对系统进行分解,确定子系统的功能和子系统之间的关系以及模块的功能和模块之间的关系。,主要工作流程,(1) 设计准备 (2) 确定影响系统设计的约束因素 (3) 确定设计策略 (4) 系统分解与设计 (5) 撰写体系结构设计文档 (6) 体系结构设计评审,“建筑体系结构”,一个人可完成。 仅需: 最小的建模 简单的过程 简单

3、的工具,狗窝的体系结构设计,“鸟巢”的设计,团队工作,高效而及时地完成。 需要: 建模; 规范的过程; 强大的工具。,软件体系结构的概念,(M.Shaw)软件体系结构定义为: 程序/系统各构件的结构 它们之间的内部关系 指导它们的设计并随时间而演变的原理和方针 精简定义为(3C): 体系结构 = 组件 + 连接件 + 约束 (Architecture = Components + Connectors + Constrains ),层次体系,上层子系统可以使用下层子系统的功能,而下层子系统不能够使用上层子系统的功能 一般下层每个程序接口执行当前的一个简单的功能,而上层通过调用不同的下层程序,并

4、按不同的顺序来执行这些下层程序 典型 计算机网络的OSI参考模型,客户机/服务器结构,C/S软件体系结构,即Client/Server (客户机/服务器)结构,是基于资源不对等,且为实现共享而提出来的 二层C/S结构 服务器(后台)负责数据管理 客户机(前台)完成与用户的交互任务,三层C/S结构,表示层是应用的用户接口部分, 担负着用户与应用间的对话功能它用于检查用户从键盘等输入的数据,显示应用输出的数据 功能层相当于应用的本体 将具体的业务处理逻辑编入程序中 数据层是数据库管理系统 负责管理对数据库数据的读写,浏览器/服务器(B/S)结构,在B/S体系结构下,用户界面完全通过WWW浏览器实现

5、,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现 仅仅需要一个浏览器就可运行全部的模块,真正达到了“零客户端“的功能,任务2:网上书店静态设计,在完成网上的体系结构设计之后,将针对不同的模块进行具体的模块设计,软件设计的原则, 软件实体有明显的层次结构,利于软件元素间控制; 软件实体应该是模块化的,模块具有独立功能; 软件实体与环境的界面清晰; 设计规格说明清晰、简洁、完整和无二义性,模块化 原则,模块化把软件按照规定原则,划分为一个个较小的,相互独立的但又相互关联的部件,实际上是系统分解和抽象的过程 模块化的目的:降低软件的复杂性,模块的概念,模块是数据说明、可执行语句等程序对象的

6、集合,它是单独命名的,并且可以通过名字来访问 例如,过程、函数、子程序、宏等 模块的特征: 接口,模块的输入输出; 功能,指模块实现什么功能,有什么作用; 逻辑,描述模块内部如何实现需求及所需数据; 状态,该模块的运行环境,模块间调用与被调用关系。,模块的独立性,模块独立性: 模块完成独立的功能 与其他模块的接口简单 符合信息隐蔽和信息局部化原则 模块间关联和依赖程度尽可能小 模块独立的重要性 功能被划分,并且接口被简化,所以具有有效模块化的软件更易于开发 由于因设计和编码修改引起的副作用受到局限,错误传播被减小,并且模块复用成为可能,所以独立的模块更易于维护和测试,模块独立性的度量,内聚(c

7、ohesion):是一个模块内部各个元素彼此结合的紧密程度的度量 耦合(coupling):是模块之间的相对独立性(互相连接的紧密程度)的度量,内聚性,内聚是模块功能强度(一个模块内部各个元素彼此结合的紧密程度)的度量 一个内聚程度高的模块(在理想情况下)应当只做一件事 一般模块的内聚性分为七种类型,耦合性,模块之间的相对独立性(互相连接的紧密程度) 方式 :调用模块的方式 作用 : 块间传送的共用信息(参数)类型 数量 :块间传送的共用信息的数量 取决于 耦合性的七种类型,数据,方式,作用,少,多,数量,控制,混合,直接调用,过程 调用,分析活动:从用例导出对象,包括: 标识对象 将用例映射

8、成对象(使用顺序图) 建模对象之间的交互 标识对象之间的关系 标识对象的属性和行为 分析模型评审,类图,描述系统的结构,用于表示系统中的类以及类与类之间的关系 是创建其它图的基础 类的描述主要包括:类的属性和操作,类图中的关联,例题,判断以下描述中的合适的UML类间关系。 在学校中,一个导师可以指导多个研究生,一个研究生可以由多个导师指导,那么导师和研究生之间的关系是: 类A的一个操作调用类B的一个操作,且这两个类之间不存在其他关系,那么类A和类B之间的关系是 : 森林和树木之间的关系是: 在MFC类库中,Window类和DialogBox类之间的关系是: 参数类及其实例类之间的关系是:,关联

9、 依赖 聚合 泛化 实现,任务3:网上书店的动态结构设计,在完成系统静态结构后,需要对系统的功能如何执行操作要进行描述,UML一般是通过时序图、状态图来描述系统的动态结构,构建动态模型,描述系统的动态行为,它们指明系统中的对象如何响应外部的事件 ,执行任务 评估所有的用例,理解系统中交互的序列, 标识驱动交互序列的事件,理解这些事件如何和特定的对象相关联 为系统建造顺序图、活动图 为主要对象建造状态机图 复审动态模型,以验证准确性和一致性,顺序图:将用例映射成对象,顺序图将用例与对象联系在一起。表达了用例行为在其参与对象之间是怎样分布的 建模了对象之间的交互顺序,同时将功能分配给该用例 可帮助

10、开发者标识出新的参与对象、发现遗漏的对象或界限不明的领域 顺序图关注于消息的顺序,给出对象之间发送消息的先后顺序,顺序图例子,银行转账业务的顺序图,状态图,一个状态图表示一个状态机。状态图用来描述某个对象的所有可能状态及其状态转换信息。 一个状态图包括一系列的状态及状态之间的转移 状态是对象执行了一系列活动的结果。当某个事件发生后,对象的状态将发生变化,状态的改变叫做 转移 不是每个类都应该有一个状态图。只对“感兴趣的”状态的类(也就是说,在系统活动期间具有三个或更多潜在状态的类)才进行状态图描述。,浸泡,洗涤,漂洗,脱水,状态图:电梯,活动图,活动图用于对计算流程和工作流建模,描述完成一个操

11、作所需要的活动,或者是一个用例实例(场景)的活动。 活动图使用状态机图的符号表示 与状态机图不同的是,活动图中动作状态之间的迁移不是靠事件触发的,当动作状态中的活动完成时迁移就被触发,活动图用来描述用例,数据库ER模型,实体联系模型(E-R模型)是广泛被采用的概念模型设计方法 基本元素是:实体、联系和属性,实体,实体是一个数据对象,指应用中可以区别的客观存在的事物,如人、部门、表格、物体、项目等。 在E-R模型中,实体用方框表示,方框内注明实体的命名 实体名常用大写字母开头的有具体意义的英文名词表示,属性,实体的某一特性称为属性。如人有姓名、性别、年龄、性别等属性 在 E-R 图中,属性用椭圆形框表示,加下划线的属性是码。,联系,联系表示一个或多个实体之间的关联关系 在 E-R 图中,联系用菱形框表示,并用线段将其与相关的实体连接起来,ER图实例,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号