资源预览内容
第1页 / 共62页
第2页 / 共62页
第3页 / 共62页
第4页 / 共62页
第5页 / 共62页
第6页 / 共62页
第7页 / 共62页
第8页 / 共62页
第9页 / 共62页
第10页 / 共62页
亲,该文档总共62页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
软件工程实践工作任务回顾 在前面工作中,我们完成了领域分析,交付了 以下工作产品: 领域类图 业务用例图 业务流程活动图 我们的关注点在通过用户访谈,了解用户的实 际业务情况。为需求分析收集必要信息。软件工程实践图书管理系统需求分析阶段(1)软件工程实践 从业务需求到系统需求软件工程实践今天的工作任务 完成系统用例建模. 完成系统流程建模.提交内容1.系统用例图 2.系统流程活动图我们的进度,在这里软件工程实践工作任务1:完成系统用例建模 交付的工作产品:系统用例图我们的进度,在这里软件工程实践用例之间的三种关系 1. 泛化关系(Generalization):一个用例可 以被特别列举为一个或多个子用例,这被称为 用例泛化。 2. 包含关系(Include)一个用例可以简单地 包含其他用例具有的行为,并把它所包含的用 例行为作为自身行为的一部分,这被称作包含 关系。 3. 扩展关系(Extend):一个用例也可以被定 义为基础用例的增量扩展,这称作扩展关系, 扩展关系是把新行为插入到已有用例的方法。软件工程实践扩展关系扩展关系是从扩展用例到基本用例的关系,它说明为扩展用例定 义的行为如何插入到为基本用例定义的行为中。它是以隐含形式 插入的,也就是说,扩展用例并不在基本用例中显示。在以下几 种情况下,可使用扩展用例: a.表明用例的某一部分是可选的系统行为(这样,您就可以将模 型中的可选行为和必选行为分开); b.表明只在特定条件(如例外条件)下才执行的分支流; 软件工程实践泛化关系 泛化关系:用例可以被特别列举为一个或多个 子用例,这被称做用例泛化。当父用例能够被 使用时,任何子用例也可以被使用。如在下图 中,订票是电话订票和网上订票的抽象。 软件工程实践图书管理系统 业务用例1:借阅管理 对应系统用例:借阅管理 进一步分析借阅管理。 在业务用例“借阅管理”的业务流程中,有两个 动作状态办理借阅证和借阅证遗失补办。 在本系统中,应该提供相应的两种操作给用户 ,因此,得到系统用例“新办借阅证”和“补办借 阅证”。这两个系统用例是系统用例“借阅管理” 的泛化用例。我们的进度,在这里软件工程实践系统用例“借阅管理”及其扩展用例“新办 借阅证”和“补办借阅证”图示我们的进度,在这里系统用例“借阅管理” 图示软件工程实践图书管理系统 业务用例2:图书管理 对应系统用例:图书管理 进一步分析图书管理。 在业务用例“图书管理”的业务流程中,有三个 动作状态图书入库和图书报废处理和图书 遗失处理。 在本系统中,应该提供相应的三种操作给用户 ,因此,得到系统用例“新增图书”、“删除图书 ”、“修改图书信息”。这三个系统用例是系统用 例“图书管理”的泛化用例。 图示表示如下:我们的进度,在这里软件工程实践系统用例“图书管理”及其扩展用例“新增图书” 、“删除图书”和“修改图书信息”图示我们的进度,在这里系统用例“图书管理” 图示软件工程实践图书管理系统 业务用例3:图书借阅 对应系统用例:图书借阅 系统用例“图书借阅”是对业务用例“图书借阅” 的系统实现。 图书馆工作人员,只是要输入学生借阅证编号 和图书编号就可以将借阅信息登记到系统中的 “借阅信息表”。我们的进度,在这里软件工程实践图书管理系统 业务用例4:图书归还 对应系统用例:图书归还 系统用例“图书归还”是对业务用例“图书归还” 的系统实现。 图书馆工作人员,只是要输入图书编号就可以 将系统中的“借阅信息表”的对应信息进行显示 ,点击归还后可以将该图书对应的借阅信息删 除。我们的进度,在这里软件工程实践新增系统用例“登录”和“注销” 为了保证该系统的使用安全,系统需要为图书馆工作 人员提供两个操作“登录”和“注销”,其中,系统用例“ 登录”是所有其他系统用例的包含(include)用例,而 其他系统用例是“注销”的包含(include)用例。 而这两个系统用例并没有对应的业务用例。 由此可见,业务用例描述的是用户的实际业务情况。 而系统用例描述的是系统为用户的操作。 每一个业务用例都必须在系统用例中找到对应。我们的进度,在这里软件工程实践完整的系统用例图我们的进度,在这里软件工程实践总结:UML图形的视角 在过去三次课的学习和工作任务完成中,大家 可以发现,同一种UML图形可以反映不同的视 角。 用例图的视角: 视角1:站在用户的角度看待用户的业务情况 业务用例图 视角2:站在用户的角度看待系统的功能 系统用例图我们的进度,在这里软件工程实践工作任务2:完成系统流程建模 交付的工作产品:系统流程活动图我们的进度,在这里软件工程实践学习情境: 系统流程建模 同业务流程活动图一样,系统流程活动图是为 了描述每一个系统用例的执行情况和操作流程 的。我们的进度,在这里软件工程实践系统用例“图书借阅”的流程建模 活动图图书借阅我们的进度,在这里图书借阅系统流程活动图软件工程实践系统用例“图书归还”的流程建模 活动图图书归还我们的进度,在这里图书归还系统流程活动图软件工程实践系统用例“登录”的流程建模 活动图登录我们的进度,在这里登录系统流程活动图软件工程实践系统用例“注销”的流程建模 活动图注销我们的进度,在这里注销系统流程活动图软件工程实践系统用例“补办借阅证”的流程建模 活动图补办借阅证我们的进度,在这里补办借阅证系统流程活动图软件工程实践这样做就够了吗?不是。系统用例必须 要得到用户的反馈和确认。 准备进行第二次用户访谈: 如果在绘制系统活动图的过程中,发现有些信息并不 是很清楚的话,就要考虑进行再次访谈了,例如:在 补办借阅证的分支中,是否应该增加催还图书的通知 。 访谈的问题,围绕着在建模过程中所发现的遗漏信息 。 访谈之后,可能会进一步修改系统用例和系统流程活 动图。 这是一个迭代的过程。一次又一次访谈和修改。 我们的进度,在这里软件工程实践课程小结 本次课中,用到以下知识 用例建模:用例图 活动图我们的进度,在这里软件工程实践图书管理系统需求分析阶段(2)软件工程实践今天的工作任务 完成非功能需求描述。 完成用例描述(又叫用例规约)。 完成需求规格说明书。提交内容1.用例描述文档(又叫用例规约) 2.软件需求规格说明书我们的进度,在这里软件工程实践工作任务1:完成非功能需求描述我们的进度,在这里软件工程实践用户需求的层次我们的进度,在这里功能性需求非功能性需求软件工程实践非功能性需求的几个方面 可靠性 可用性 有效性 可移植性我们的进度,在这里软件工程实践可靠性安全性、事务性、稳定性(续) 可靠性可以从安全性、事务性和稳定性三方面 来衡量。 安全性与用户业务内容相关。如果开发的软件 是信息安全级别很高的,如政府机构的办公文 件,那么相应的安全性需求也会很高; 另外,对于软件运行的环境来说,如果是一个 运用于广域网的软件,如淘宝网,那么相应的 安全级别就要高,反之,如果是仅仅运用与局 域网,或者是一个单机软件,那么安全性要求 就比较低。我们的进度,在这里软件工程实践可靠性安全性、事务性、稳定性事务性指的是保障系统的ACID能力。 AAtomicity原子性:在任何操作出现错误的情况下,构成事 务的所有操作效果必须被撤销,例如:取钱不成功的话,要保证 用户帐号的金额不会被扣掉。 CConsistency一致性:一个事务应该保护所有定义在数据 上的不变的属性,例如数据库管理系统中的完整性约束。 IIsolation隔离性:在同一个环境中可能有多个事务并发执 行,而每一个事务都应表现为独立执行。例如数据库管理系统中 的锁机制。 DDurability持久性:一个被完成的事务效果应该是持久的。 事务的重要性在分布式系统和集成性系统中尤为重要。在小型系 统中,事务性一般通过数据库本身的事务处理机制来保障,但在 分布式系统、集成应用系统中,由于系统中可能存在多个异构数 据库,仅仅靠数据库本身的事务处理就远远不够了,这时应借助 第三方事务中间件来保障。在大型应用中,都会通过购买专用服 务器来提供相应的事务处理机制,不需要自己编程来实现事务处 理。我们的进度,在这里软件工程实践可靠性安全性、事务性、稳定性(续) 稳定性 稳定性由故障的频率、严重性、可恢复性、可 预见性、准确性和平均故障间隔时间等一些指 标构成。 判断软件是否失效的判断依据有:系统死机、 系统无法启动、不能输入输出或显示记录、计 算数据有错等。我们的进度,在这里软件工程实践可用性 容易学习 客户需要多长时间来掌握软件的使用? 使用效率 客户需要多长时间、执行多少次操作来完成一个关键任务? 记忆性 当客户离开再次回来时,他的工作是否能够被记忆下来以便继续 执行? 错误恢复 当系统出现故障时,客户是否能从故障中恢复他已经完成的工作 ? 主观满意度 客户在使用软件过程中是否感到愉悦?我们的进度,在这里软件工程实践有效性性能、可伸缩性、可扩展性 性能包括速度、并发性、吞吐量、响应时间、 资源占用率等一些指标。 可伸缩性指的是当向系统增加资源时的性能改 善,例如提高CPU的主频率,内存容量等。 可扩展性指的是系统系统界别的扩展性,包括 资源扩展性,应用可扩展性和技术升级可扩展 性。我们的进度,在这里软件工程实践可移植性 通常可移植性都是软件针对平台而言的。软件 应该能够适应更多种平台。 在软件开发过程中,应当使用成熟的,公开支 持的标准,尤其是大厂商所支持的标准,来确 保系统不丧失软件环境的可移植性。我们的进度,在这里软件工程实践总结一下 可靠性 可用性 有效性 可移植性安全性、事务性 、稳定性容易学习,使用 效率,记忆性, 错误恢复,主观 满意度性能、可伸缩性 、可扩展性我们的进度,在这里软件工程实践获取非功能需求可以用一个调查表的形式 来获取非功能需求。 调查表内容如下:非功能需求调查调查表可靠性安全性系统数据的敏感程度如何 系统运行于何种环境 客户组织中的信息保密程度 使用人员情况 事务性系统业务交叉程度如何 数据精确度要求如何 业务是在线的还是离线的 系统集成情况如何 是分布式系统还是集中式系统 稳定性系统的服务能力要求如何 用户的操作频率如何 业务的及时性要求如何 数据的重要程度如何 我们的进度,在这里软件工程实践获取非功能需求非功能需求调查调查 表可用性界面客户的行业性质如何 客户的企业文化如何 客户业务的复杂程度如何 使用人员的情况如何 操作习 惯 客户之前使用过什么系统吗? 客户喜欢什么样的操作风格 文档要 求 客户需要联机文档吗? 客户需求在线帮助吗? 客户的计算机操作水平如何? 我们的进度,在这里软件工程实践获取非功能需求非功能需求调查调查 表有效性性能系统的平均访问量 系统的峰值访问量 系统的数据流量 系统的并发要求 硬件环境如何 可伸缩性客户业务预期的扩张速度 客户数据量的扩张速度 使用人数的扩张速度 可扩展性系统规模会持续扩大吗? 客户是否有长期系统建设计划? 客户有升级系统的长期计划吗? 我们的进度,在这里软件工程实践非功能需求调查调查 表可移植性硬件环 境客户当前的硬件环 境如何客户是否有长期的 硬件厂商合作 伙伴客户的业务是否在 快速增长软件环 境客户和系统运行环 境如何客户是否有长期的 软件提供商开发者自己是否有 长期明确的技 术路线我们的进度,在这里软件工程实践工作任务2:完成用例描述我们的进度,在这里软件工程实践用例描述 用例图只是简单地用图描述了一下系统,但对 于每个用例,我们还需要有详细的说明,这样 就可以让别人对这个系统有一个更加详细的了 解,这时我们就需要写用例描述。 对于用例描述的内容,一般没有硬性规定的格 式,但一些必须或者重要的
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号