需求建模的基本方法 建立用例模型的过程 口①找出系统边界以外的角色( actor),角色是与系统 进行交互的外部实体,可以是与系统交互的人员、与 系统相连并交换信息的设备和其他系统; 口②从这些角色如何与系统进行交互的角度,使用用例 ( use case)来描述角色怎样使用系统,以及系统向 角色提供什么功能,用例所表示的是从外部用户角色 观察的系统功能; 口③绘制用例图,并编写详细的用例描述。用例图只能 宏观地描述系统的功能,但却不能提供用例模型所必 须的所有信息,每个功能的含义和具体实现步骤则以 文本方式描述
三、需求建模的基本方法 ◼ 建立用例模型的过程: ①找出系统边界以外的角色(actor),角色是与系统 进行交互的外部实体,可以是与系统交互的人员、与 系统相连并交换信息的设备和其他系统; ②从这些角色如何与系统进行交互的角度,使用用例 (use case)来描述角色怎样使用系统,以及系统向 角色提供什么功能,用例所表示的是从外部用户角色 观察的系统功能; ③绘制用例图,并编写详细的用例描述。用例图只能 宏观地描述系统的功能,但却不能提供用例模型所必 须的所有信息,每个功能的含义和具体实现步骤则以 文本方式描述
需求建模的基本方法 ■例5:学生注册课程系统 口某大学准备开发一个学生注册课程系统,学生可以使用该系统查询新 学期开设的和讲课教师的情沉;择自三要学习的退洗在鹭 课程和选课学生 行注册管理,包 搞继护橙记擊维意骤籍禮趸德用该系统进 在每个 鞋 历始,学生可以 出每 门课程的所有信息,诸 鴦紊喾熠的谬课磊目录漬纟裯髹屢梁姴。 口新学期开始前两周为选课注册时间,在此期间学生可以选课注册,并 关闭课程注册。 选课程未选上的情况。每门课程最多不能超过20人,最少不能低于3 大,低于3人选课的课程将被取消。一旦学生的注册过程完毕,注册 系统将有关信息提交收费系统以便学生付费如果在实际注册过程中 名额已满,系统将 通知学生在提交课 程表之前予以更改 疲戆摺結赓黩统券鞅公蟊翁簍至牆跤謗肇法取学生成绩属于
三、需求建模的基本方法 ◼ 例5:学生注册课程系统 某大学准备开发一个学生注册课程系统,学生可以使用该系统查询新 学期开设的课程和讲课教师的情况,选择自己要学习的课程进行登记 注册,并可以查询成绩单;教师可以使用该系统查询新学期将开设的 课程和选课学生情况,并可以登记成绩单;注册管理员使用该系统进 行注册管理,包括维护教师信息、学生信息和课程信息等。 在每个学期开始,学生可以获得该学期的课程目录表,课程目录表列 出每门课程的所有信息,诸如基本信息、教师、开课系和选课条件等。 新学期开始前两周为选课注册时间,在此期间学生可以选课注册,并 允许改变或取消注册申请,开学两周后注册管理员负责关闭课程注册。 每个学生可以选择不超过4门课程,同时指定2门候选课程已备出现主 选课程未选上的情况。每门课程最多不能超过20人,最少不能低于3 人,低于3人选课的课程将被取消。一旦学生的注册过程完毕,注册 系统将有关信息提交收费系统以便学生付费。如果在实际注册过程中 名额已满,系统将通知学生在提交课程表之前予以更改。 在学期结束时,学生可以从系统查看电子成绩单。由于学生成绩属于 敏感信息,系统必须提供必要的安全措施以防非法存取
需求建模的基本方法 ■分析过程: 1、发现角色 ■角色是与系统交互的人或事。在UML语言中,角色 用一个小人的图形和名称来表示。 我们可以通过回答下列问题,进行系统角色的识别: 口谁使用系统的功能? 口谁需要借助系统完成日常工作? 口谁来维护和管理系统,以保证系统正常工作? 口系统控制的硬件设备有哪些? 口系统需要与其他哪些系统交互? 口谁对系统产生的结果感兴趣?
三、需求建模的基本方法 ◼ 分析过程: 1、发现角色 ◼ 角色是与系统交互的人或事。在UML语言中,角色 用一个小人的图形和名称来表示。 ◼ 我们可以通过回答下列问题,进行系统角色的识别: 谁使用系统的功能? 谁需要借助系统完成日常工作? 谁来维护和管理系统,以保证系统正常工作? 系统控制的硬件设备有哪些? 系统需要与其他哪些系统交互? 谁对系统产生的结果感兴趣?
需求建模的基本方法 ■学生注册课程系统的角色: 天天 教师 学生 注册管理员 收费系统
三、需求建模的基本方法 ◼ 学生注册课程系统的角色: 教 师 学 生 注册管理员 收费系统
需求建模的基本方法 口2、发现用例 用例代表一个完整的功能,如与角色通信、进行计算或在系统 内工作等。用例具有以下的特征: 口用例总是由角色初始化; 口用例为角色提供值 口用例具有完全性,即不管其内部是如何实现的,只有最终产生了 返回角色的结果,用例的执行才能完毕。 ■通过询问下列问题,我们可以发现用例 口角色需要从系统中获得什么功能?角色需要做什么? 口角色需要读取、产生、删除、修改或存储系统的某些信息吗? 口系统中发生事件需要通知角色吗?角色需要通知系统某件事情吗? 口系统需要的输入输出信息是什么?这些信息从哪儿来到哪儿去? 口采用什么实现方法满足某些特殊要求?
三、需求建模的基本方法 2、发现用例 ◼ 用例代表一个完整的功能,如与角色通信、进行计算或在系统 内工作等。用例具有以下的特征: 用例总是由角色初始化; 用例为角色提供值; 用例具有完全性,即不管其内部是如何实现的,只有最终产生了 返回角色的结果,用例的执行才能完毕。 ◼ 通过询问下列问题,我们可以发现用例: 角色需要从系统中获得什么功能?角色需要做什么? 角色需要读取、产生、删除、修改或存储系统的某些信息吗? 系统中发生事件需要通知角色吗?角色需要通知系统某件事情吗? 系统需要的输入/输出信息是什么?这些信息从哪儿来到哪儿去? 采用什么实现方法满足某些特殊要求?