软件工程实践者的研究方法(中文版第七版)课后习题答案_第1页
软件工程实践者的研究方法(中文版第七版)课后习题答案_第2页
软件工程实践者的研究方法(中文版第七版)课后习题答案_第3页
软件工程实践者的研究方法(中文版第七版)课后习题答案_第4页
软件工程实践者的研究方法(中文版第七版)课后习题答案_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

精品文档 1欢迎下载 作业答案 2 1 a 设计者对于用户要问的问题 项目的目标是什么 做到什么程度就成功了 谁会对项目的成功做最后的评判 项目的使 用者包括那些 b 用户对设计者应该问的问题 目前问题有哪些解决方案 项目完成有哪些难点 在时间范围内能否完成 c 软件问题用户自问 还有其他解决方案吗 哪些功能是必须的 乙方资质和能力够吗 d 软件过程问题自问 用敏捷还是用瀑布 质量检查点分别有哪些 有几个 MileStone 2 2 为沟通活动设计一系列动作 选定其一并设计任务集 批作业的时候 以合理为目标 不一定要一样 批作业的时候 以合理为目标 不一定要一样 需求获取 需求规范说明 建模 需求协商 需求确认等 例如 书上 page 23 2 7 详细描述三个适合用于瀑布模型的软件项目 要求学生不仅仅列出项目的名称 而要说明为什么适合 瀑布模型适合于项目开发而不是产品开发 信息管理系统一般适合于用瀑布模型 因为这 类系统业务功能较为明确 架构比较单一 技术难点较少 图书馆系统 销售管理系统都 是 3 11 重构 已经写好的正确的代码 不断修正 使得代码更加精简并易读 结对编程 两个人同时编写一段代码 一般一个人负责实现 一个人负责检查代码质量 3 16 利用 FDD 为 Web 浏览器 定义一系列特征集合与特征 特征集合模板 an 如 出售一件商品 特征定义模板 the a n 特征集合 展示 Web 页面内容 特征 本地解析 HTML 页面 展示 HTML 页面 从网络上下载页面相关图片 在浏览器上展示图片 附加 统一过程模型的图 要求有图有说明 精品文档 2欢迎下载 5 9 为如下活动开发一个完整的规约 注意按照书本 59 页格式 包括用例名称 参与者 场景 异常等等 5 10 用例异常代表什么 1 非正常输入 2 环境状态不满足要求 3 备选方案 5 13 在需求工程活动的谈判情境中 双赢 意味着什么 找到了双方赢的条件 合适的折衷 在满足利益相关者要求的同时 反映软件团队所处真实世界的限制 如 时间 人员 预算 后续开展软件活动的关键 JUNIT SVN Maven RedMine 分别是什么工具 完成什么功能 这四个工具都是软件工程辅助工具 JUNIT 是单元测试工具 SVN 是版本管理工具 Maven 是构建工具 Redmine 是项目管理与变更管理工具 1 JUnit 是基于面向对象构建的 java 单元测试框架 JUnit 是开放源代码项目 使用这个 工具可以快速构建测试用例 可以和 Maven 等构建工具集成 在持续集成过程中不断进行 测试 2 svn subversion 是一个版本管理工具 与 GITHubGit 这种分布式版本管理工具不同 这是集中式代码管理工具 SVN 的核心是服务器 所有开发者在开始新一天的工作之前必 须从服务器获取代码 然后开发 最后解决冲突 提交 所有的版本信息都放在服务器上 SVN 支持分支与合并 支持标签管理等 3 Maven 是一个构建工具 可以通过撰写配置文件 自动构建一个项目 构建过程包括从 服务器上 checkout 出源代码 编译 运行单元测试 生成文档 打包和部署等工作 在 maven 的帮助下 这些工作可以自动进行 另外 maven 还有依赖管理 自动生成项目站点 等特性 redmine Redmine 是用 Ruby 开发的基于 web 的项目管理软件 这种 Web 形式的项目 管理系统通过 项目 Project 的形式把成员 任务 问题 文档 讨论以及各种形式 的资源组织在一起 大家参与更新任务 文档等内容来推动项目的进度 同时系统利用时 间线索和各种动态的报表形式来自动给成员汇报项目进度 另外 软件还提供 wiki 新闻 台等 也可以集成其他版本管理系统和 BUG 跟踪系统 例如 SVN CVS TD 等等 6 6 PHTRS 的用例图与类模型 精品文档 3欢迎下载 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 上 类包含 坑洼 上报人 工单 维护人员 维护设备 维护材料等等 注意到这几个之间的关联 上报人和坑洼的关系 工单和其他所有类的关系 等等 6 8 与类图相关 7 1 结构化分析与面向对象分析的本质区别 答 结构化分析的核心是 处理 而面向对象分析的核心是 对象 类 前者以 计算 为核心 而后者以 结构 为核心 7 5 什么是控制规格说明 答 控制规格说明使用两种不同的方式表现系统的行为 一个状态图 是行为的序列 说明 程序激活表 即行为的组合说明 或者说是当有事件发生时 会引入流程模 型的哪个处理 7 6 PSPEC 和用例是同一事物吗 如果不是 请解释区别 答 不是 处理规格说明用于描述出现在求精过程中最终层次的所有流程模型的处理 通 常是在详细设计的时候用到 是系统某个功能的具体实现方法 而用例描述了一个用户如 何使用系统的 并不涉及到系统的内部的行为 通常在需求分析阶段用到 精品文档 4欢迎下载 7 8 如何从状态图区分顺序图 它们有何相似之处 答 状态图描述一个对象状态的变迁 而顺序图描述几个对象之间交互的顺序 对象状态的变迁 通常是由事件激发的 这个事件和顺序图当中的消息有关 可以由多个 对象的状态图 组合成多个对象交互组成的序列图 9 1 用一个房屋或建筑物的结构做比喻 与软件体系结构做对照分析 经典建筑与软件体 系结构的原则有什么相似之处 又有何区别 答 建筑物也是由各种部件通过不同方式搭建而成 如不同的房子都有墙 顶 地基等等 搭建方法的不同构成了不同风格的房子 软件体系结构也一样 不同的部件通过不同的方 式的组装 形成了不同的软件系统 不同点 1 一个比较实际 一个比较抽象 2 房屋或建筑物可变化的空间比较小 软件体系结构变化跨度更大一点 9 2 举出一两个例子 说明 3 1 节中提到的每一种体系结构的应用 答 1 以数据为中心的体系结构 以数据库为核心的企业信息系统 2 层次体系结构 OSI MVC 3 调用 返回体系结构 远程消息调用 RPC 科学计算 4 数据流体系结构 编译器 9 3 9 3 1 节中提到的一些体系结构风格具有层次性 而另外一些则没有 列出每种类型 没有层次的体系结构风格如何实现 答 很难绝对地说那些体系结构没有层次 1 层析性体系结构肯定有层次 2 调用 返回的话 有主程序 也有 1 层调用 2 层调用 层次不明显的 1 以数据为中心的体系结构 通过所有软件访问公共的数据库实现数据共享 2 面向对象体系结构 通过将对象组装成模块 体现某种层次 3 数据流体系结构 数据可以通过管道 流到更细的管道里去 9 6 研究 ATAM 并对 9 5 1 节提出的 个步骤进行详细讨论 此题目暂时不批 10 3 OCP 原则的核心是 容易扩充 但是不需要修改已有代码 对外延具有开放性 对修 改具有封闭性 代码如 探测器类读取不同的探测器类读取不同的SensorSensor 用 用interfaceinterface 定义定义SensorSensor 然后 然后HeatSensorHeatSensor实现之 如果想扩充实现之 如果想扩充 一种一种SensorSensor 则直接实现 则直接实现SensorSensor接口 接口 DetectorDetector不需要修改 不需要修改 Detector Detector SensorSensor publicpublic classclass Detector Sensor sensor publicpublic Detector Sensor sensor 精品文档 5欢迎下载 thisthis sensor sensor publicpublic voidvoid detectSensor Sensor sensor System out println sensor read Sensor 接口 publicpublic interfaceinterface Sensor publicpublic String read HeatSensor publicpublic classclass HeatSensor implementsimplements Sensor publicpublic String read returnreturn heatSensor 扩充一个Sensor publicpublic classclass SmokeSensor implementsimplements Sensor publicpublic String read returnreturn smoke 10 4 DIP 含义是 1 上层不应该依赖于下层模块 二者都应该依赖于抽象 2 抽象不应该依赖于细节 细节应该依赖于抽象 如果如果以电灯为例子 开关可以打开电灯 如果开关直接调用电灯 那么 当 和 OCP 的例子中有所不同 如果其他物体都继承电灯 也满足 OCP 原则 即可以扩充 无需修改代码 而 DIP 直接指出了依赖于抽象的意义 代码如下 publicpublic classclass Light publicpublic String turnOn returnreturn Turn on the light publicpublic String turnOff returnreturn Turn off the light publicpublic classclass Switch publicpublic String Toggle Light light returnreturn light turnOn 精品文档 6欢迎下载 publicpublic classclass Test publicpublic staticstatic voidvoid main String argv Switch sw newnew Switch Light light newnew Light System out println sw Toggle light 如果将 TV 作为子类 虽然从程序上可以 但理解不合理 publicpublic classclass TV extendsextends Light publicpublic String turnOn returnreturn Turn on the TV publicpublic String turnOff returnreturn Turn off the TV 所以 增加一个接口 叫 Switchable 10 5 选择 3 个你最近开发的构件 评估每个构件的内聚类型 此题目暂时不批 10 6 选择 3 个 评估每个构件的耦合类型 此题目暂时不批 10 7 问题领域构件不会存在外部耦合的说法有道理吗 如果你认为没有道理 那么哪种类 型的构件存在着外部耦合 没有道理 例如 1 嵌入式软件应用中的构件 与操作系统耦合 2 数据库应用中 POS 构建 与数据库耦合 3 文件传输构件 会和通信功能耦合 10 8 完成 1 一个细化的设计类 2 接口描述 3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论