200 likes | 326 Views
面向对象的系统分析与设计 实习示例. 课程教师:邵维忠 助教:蒋绍明,朱志高. 实习示例. 系统功能需求说明 OOA OOD JBOO 3.0 使用方法说明. 系统功能需求说明. 实习要求 写出系统的功能,要求尽可能全面,至少应该描述至 第二层 。譬如,付款功能,需要根据付款的方式有下列子功能:现金付款、信用卡付款等。 详细列出各功能的详细要求,如输入要求,输出要求,实现要求,以及相关步骤。 给出系统边界的分析图. 系统功能需求说明示例. 会议管理(审批)系统 需求概述 详细要求 系统边界分析图. 会议管理(审批)系统需求. 需求概述
E N D
面向对象的系统分析与设计实习示例 课程教师:邵维忠 助教:蒋绍明,朱志高
实习示例 • 系统功能需求说明 • OOA • OOD • JBOO 3.0使用方法说明
系统功能需求说明 • 实习要求 • 写出系统的功能,要求尽可能全面,至少应该描述至第二层。譬如,付款功能,需要根据付款的方式有下列子功能:现金付款、信用卡付款等。 • 详细列出各功能的详细要求,如输入要求,输出要求,实现要求,以及相关步骤。 • 给出系统边界的分析图
系统功能需求说明示例 • 会议管理(审批)系统 • 需求概述 • 详细要求 • 系统边界分析图
会议管理(审批)系统需求 • 需求概述 • 某市某局,需要在内部举办两种形式的会议:召集下属区县相关部门开会;召集局内相关处室开会; • 对于每种会议都要: • 1)由某处室的某人起草会议文件; • 2)该文件经过该处的负责人批阅后,或返回起草人,进行重新修改,或上交到局办公室主任; • 3)办公室主任进行批注,或返回给提交文件的处室负责人,说明不能按期进行的理由,或提交给局领导审批; • 4)局领导批准后,文件返回到局办公室主任;
会议管理(审批)系统需求 • 需求概述(con.) • 5)若局领导不同意,办公室主任把文件返回到提交该文件的处室负责人;处室负责人做消会处理。 • 6)若局领导同意,办公室主任通知办公室工作人员; • 7)办公室工作人员通知服务中心,安排食宿;并向相关单位发会议通知; • 8)相关单位收到会议通知后,要向局办公室回复; • 9)会议结束后,召集会议的处室要形成会议纪要。
会议管理(审批)系统需求 • 系统边界分析 • 发现活动者 系统在它的边界上与外部世界的接口:系统与各部门工作人员的接口、与上级系统的接口。 • 系统边界分析图 各部门工作人员 会议管理(审批) 系统 上级系统
系统分析(OOA) • 实习要求 • 用jboo3.0完成OOA类图、Use case图、顺序图、协作图 • 清楚描述类/对象之间的实际关系 • 清楚描述类/对象的属性和服务 • 增加适当的注释和说明文字
系统分析 (OOA) • 发现对象,建立对象类 • 定义属性与服务 • 定义结构与连接 • use case图 • 协作图 • 顺序图
系统分析 (OOA) : 发现对象 • 主要策略 从问题域、系统边界和系统责任三个方面,考虑各种可能启发自己发现对象的因素,找出可能有用的候选对象。 • 可以启发分析员发现对象的因素 人员、组织、物品、设备、事件、表格、结构等。
系统分析 (OOA) : 发现对象 • 首先,从需求出发找出系统涉及到的人员 • 1)由某处室的某人起草会议文件; • 2)该文件经过该处的负责人批阅后,或返回起草人,进行重新修改,或上交到局办公室主任; • 3)办公室主任进行批注,或返回给提交文件的处室负责人,说明不能按期进行的理由,或提交给局领导审批; • 4)局领导批准后,文件返回到局办公室主任; • 5)若局领导不同意,办公室主任把文件返回到提交该文件的处室负责人;处室负责人做消会处理。 • 6)若局领导同意,办公室主任通知办公室工作人员;
系统分析 (OOA) : 发现对象 • 从需求出发找出系统涉及到的人员(con.) • 7)办公室工作人员通知服务中心,安排食宿;并向相关单位发会议通知; • 8)相关单位收到会议通知后,要向局办公室回复; • 9)会议结束后,召集会议的处室要形成会议纪要。 • 对系统进行分析可以发现如下对象: • 处室工作人员 • 处室负责人 • 局办公室主任 • 局领导 • 办公室工作人员
系统分析 (OOA) : 发现对象 • 同样的,可以从需求中发掘出如下对象: • 会议文件 • 会议文件批文 • 会议通知 • 会议纪要 • 注意:系统中还出现了服务中心和与会单位这两类对象,但是考虑系统边界的划分,这两类对象并不是和会议管理(审批)系统直接交互的对象,所以不能把它们作为系统中的对象。
系统分析 (OOA) : 建立对象类 • 根据以上发现系统对象的结果,可以得到系统中有以下几个类: • 处室工作人员 • 处室负责人 • 局办公室主任 • 局领导 • 办公室工作人员 • 会议文件 • 会议文件批文 • 会议通知 • 会议纪要
系统分析 (OOA) : 定义属性和服务 • 定义属性的策略与启发 • 按一般常识,这个类有什么属性; • 在当前问题域中,这个对象应该有什么属性; • 根据系统责任的要求,这个对象应该有什么属性; • 建立这个对象是为了保存和管理哪些信息; • 对象为了在服务中实现其功能,需要增设哪些属性; • 对象有哪些需要区别的状态,是否增加一个属性来区别这些状态; • 用什么属性表示整体 –部分结构和实例连接。
系统分析 (OOA) : 定义属性和服务 • 发现服务的策略与启发 • 考虑系统责任,看需求中的没一想需求功能要求都是由哪些对象来提供; • 考虑问题域,对象在问题域中有哪些行为?那些是与系统责任有关?怎么用服务模拟? • 分析对象的状态,每一状态下对象可发生的行为该由什么服务描述?对象状态转化是因为什么操作引起的,是否设立了相应服务? • 追踪服务的执行路线。
系统分析 (OOA) :定义结构与连接 • 一般–特殊结构:如何发现? • 学习当前领域的分类学知识; • 按常识考虑事物的分类; • 回顾一般-特殊关系的两种定义 • 把每个类看作一个对象集合,分析它们之间的包含关系; • 看一个类是不是具有另一个类的全部特征; • 考虑类的属性与服务(如例子中的“人员”); • 考虑领域范围内的复用。
系统分析 (OOA) :定义结构与连接 • 整体–部分结构:如何发现? • 物理上的整体事物和它的组织部分; • 组织机构和它的下级组织及部分; • 团体(组织)与成员; • 一种事物在空间上包容其它事物; • 抽象事物的整体与部分(如例子中的“会议文件夹”及其组成部分); • 具体事物和它的某个抽象方面。
系统分析 (OOA) :use case图 • 例:工作人员 ·起草会议文件 工作人员接到起草文件的指示 显示工作台页面 填写起草单的各项内容 if 保存为草稿 纪录起草单的各项内容,形成会议文件的起草单部分 通知工作人员操作成功 if 删除草稿 删除会议文件夹起草单的各项内容,形成会议文件的起草单部分 通知工作人员操作成功 if 发送 if 会议主题没有填写 or 会议主题与已有的会议主题重名 显示错误信息 else 纪录起草单的各项内容,形成会议文件的起草单部分 通知工作人员操作成功 endelse endif
系统分析 (OOA) :协作图 • 见例子。