UseCase—案例学习.ppt
《UseCase—案例学习.ppt》由会员分享,可在线阅读,更多相关《UseCase—案例学习.ppt(41页珍藏版)》请在三一办公上搜索。
1、案例学习,Rational Software Architect Workshop,实验二和实验三导入的项目(ACMEPayrollModel),主要内容,开始一个项目用例模型分析模型设计模型实现模型,开始一个项目,ESU背景,为老师们指定课程和学生们注册课程的过程在老师们决定了这一学期将要讲授的课程之后,教务处将这些信息输入到计算机系统中,然后打印出一批报表,告诉老师他们将教哪些课程。还要打印出一个课程目录,分发给学生接着,学生们就要填写一些(多个部分、多种颜色的)注册表格,表明他们选择了哪些课程,然后将填完的表格交还给教务处。通常,一个学生要上4门课,ESU背景(续),然后,教务处的工作人
2、员将学生的表格录入到大型计算机系统中。一旦录人完学生在本学期的课程,就整夜运行一个批处理任务来将学生分配到课程上通常,学生能够得到他们的第一选择;然而,对于那些有冲突的课程,教务处会与每个学生谈话,以让学生做其他选择。在将所有的学生成功地指定到课程上之后,就发给学生一个时间表,供他们确认。大多数学生注册在一周内就处理完了,但有些例外的情况需要花两周时间才能解决在最初的注册期结束以后,老师会收到他计划要教的每门课的学生花名册,ESU课程注册问题的陈述,在每个学期开始时,学生们会申请一个课程目录。目录中列出了本学期提供的课程,其中还包含了每门课程的相关信息,比如老师、系、之前必修的课程,这些能够帮
3、助学生在了解的情况下做出决定新系统将允许学生为即将到来的学期选择4门课程。另外,每个学生还要指明两个替代选择,以便所提供的课程满员或被取消的情况下进行调整。所提供的课程的学生数不能超过10名或少于3名。少于3名学生的课程将被取消。一个学生的注册过程完成后,注册系统就会将信息发送给计费系统,这样这名学生就可以为这个学期付费了老师必须能够访问这个联机系统,他们需要通过系统指出他们将教哪些课程以及查看哪些学生注册了他们所提供的课程对于每个学期,都有一段时间允许学生修改他们的课程表,学生可以在这段时间里访问系统来增加或删除课程,用例模型,用例模型,待开发系统的功能需求记载在该模型中该模型演示了设想的系
4、统功能(用例)它的外界环境(参与者)用例与参与者之间的关系(用例图)了解一个用例中所表现出的不用应用场景(Scenario)之间的控制流和数据流使用活动图来直观地记录一个用例中的不同流,System BehaviorActorsUse CasesUse Case DiagramsActivity DiagramsSummary,System Behavior,用例模型所起的最重要的作用是通信为客户或最终用户与开发人员讨论系统的功能和行为提供了一个载体用例模型开始于初始阶段,标明了系统的参与者和一些首要的用例在细化阶段,在已标明的用例上增加更详细的信息,并根据需要又增加一些额外的用例,用例模板,
5、创建用例模型模板Overviews包Use-Case Building Blocks包$functional.area$use.caseVersatile Actors包创建功能区域包,Actors,Actor不是系统的一部分,它们代表了必须与系统进行交互的任何人或任何事物一个参与者可以只向系统输入信息只从系统接收信息既向系统输人信息,又从系统接收信息,可以在问题陈述中发现这些参与者或通过与客户和领域专家交谈发现参与者可以使用下列这些问题来帮助确定系统的参与者:谁对某个需求感兴趣?系统用在组织的什么地方?谁会从系统的使用中受益?谁将为系统提供这一信息,谁使用这一信息,谁删除这一信息?谁将支持和
6、维护这一系统?系统使用外部资源吗?一个人会扮演几个不同的角色吗?几个人会扮演同一个角色吗?系统会与过去遗留的系统交互吗?,ESU课程注册系统中的参与者,对于前面的问题,回答如下学生想浏览课程目录并注册课程老师想选择课程来教和请求一个课程的花名册登记员必须创建课程并为本学期生成一个目录登记员必须维护所有关于课程、老师和学生的信息计费系统必须收到来自此系统的计费信息,Student,Instructor,Registrar,Billing SystemCourse Registration packageStudent、Billing SystemSystem Maintenance packag
7、eRegistrarVersatile Actors packageInstructor创建参与者,撰写参与者的文档,在模型中,应当加入对每个参与者的简要描述。这一描述应当能标识出这个参与者在与系统交互时所扮演的角色ESU课程注册系统的参与者的描述如下:Student一个注册在大学中要选课程的人Instructor一个有资格在大学中教课的人Registrar负责维护ESU课程注册系统的人Billing System负责学生计费的外部系统撰写参与者的文档,用例,用例所建模的是参与者与系统之间的对话,代表的是系统所提供的功能系统的用例集合组成了使用系统的所有已定义方式正式定义一个用例是系统所执行的
8、一系列的事务,它为一个特定参与者产生了一组值的可度量结果,可以使用下面这些问题来帮助标识出系统的用例:每个参与者的任务是什么?参与者会创建、存储、修改、删除或读取系统中的信息吗?哪些用例会创建、存储、修改、删除或读取这一信息?当突然发生外部变更时,是否需要有某个参与者来通知系统?在系统中发生某些事情时,是否需要通知某个参与者?应有哪些用例对系统进行支持和维护?所有功能性需求都被用例完成了吗?,如何确定一个“好的”用例,一个问题发现用例的详细级别,即用例应当有多大(或)多小经验规则一个用例通常代表一个从头到尾的完整的主要功能用例必须对参与者交付一些价值例如,在ESU课程注册系统中,一个学期学生必
9、须选择一些课程,必须将学生添加到所提供的课程中,还有就是必须对学生计费。那么这应该是3个用例,还是1个用例?,另一个问题如何将不同的但看起来属于一类的功能捆扎在一起例如,登记员必须增加课程、删除课程和修改课程,这些是3个用例还是1个用例?同样,还是应该将它当做一个用例:维护课程因为这一功能由同一个参与者(登记员)启动,并且处理的是系统中的同一个实体(课程)。,为了避免陷入功能分解,应按下面的方式来对待用例确定用例是否代表了一些显示了从头到尾的功能的东西,并且这一功能又是启动此用例的参与者所需要避免“小”用例,即提供一部分功能的用例避免“过多”的用例。即便是非常复杂的系统通常也只有最多50个用例
10、避免那些名字本身就暗示着功能的一部分的用例。例如,输入老师编号就不是本系统中的一个好用例,ESU课程注册系统中的用例,下面是系统必须解决的需求:学生需要使用系统来浏览课程目录并注册课程在课程选择过程完毕之后,必须向计费系统提供计费信息老师这一参与者需要使用系统来选择一个学期中要教的课程,并且必须能从系统收到一个课程花名册登记员负责生成某个学期的课程目录,还负责维护系统所需要的所有关于课程、学生和老师的信息,基于这些需要,标识出下面这些用例:Register for coursesBrowse course catalogRequest course rosterSelect courses t
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- UseCase 案例 学习

链接地址:https://www.31ppt.com/p-2421340.html