一、考试情况
- 需求分析(※※※※)
- 面向对象设计(※※)
二、结构化需求分析
数据流图
数据流图的平衡原则
数据流图的答题技巧
- 利用数据平衡原则,比如顶层图的输入输出应与0层图一致
- 补充实体
- 人物角色:客户、管理员、学生、老师
- 组织机构:银行、供应商
- 外部系统:银行系统、工资系统
- 补充存储:例如**文件,**表,**库,**清单,**档案
- 补充加工:找"动词+名词"的结构,分析是否可作为加工的,如生成报告、发出通知等
三、UML图
静态图(结构图):类图、对象图、构件图、部署图、制品图、包图、组合结构图
动态图(行为图):用例图、顺序图、通信图、状态图、活动图、定时图、交互概览图
(1)用例图:描述一组用例、参与者以及它们之间的关系;用户角度描述系统功能;参与者是外部触发因素(用户、组织、外部系统、时间);用例是功能单位
(2)用例关系
- 包含关系:将两个或两个以上的用例中提取公共行为时,应该使用包含关系来表示它们,包含关系必然
- 扩展关系:如果一个用例明显地混合了两种或两种以上的不同环境,即根据情况可能发生多种分支,则可以将这个用例分为基本用例和一个或多个扩展用例。扩展关系可选
- 泛化关系:当多个用例共同拥有一种类似的结构和行为的时候,可以将它们的共性抽象为父用例,其他的用例作为泛化关系中的子用例。泛化关系是一个父子关系
用例规约包括用例名称、用例ID、角色、用例说明、前置条件、基本事件流、其他事件流、异常事件流和后置条件。
类图:类图描述一组类、接口、协作和它们之间的关系。
对象图:对象图描述一组对象及它们之间的关系。对象图描述了在类图中所建立的事物实例的静态快照。
该图的解释:一本书籍对应0或1条借阅记录
多重度
- 1:表示一个集合中的一个对象对应另一个集合中一个对象
- 0..*:表示一个集合中的一个对象对应另一个集合中的0个或多个对象
- 1..*:表示一个集合中的一个对象对应另一个集合中的一个或多个对象
- *:表示一个集合中的一个对象对应另一个集合中的多个的对象
关系
顺序图(序列图)
顺序图是一个交互图,它强调了对象之间消息发送的顺序,同时显示对象之间的交互
通信图(协作图)
通信图是交互图,它强调对象之间存在的消息收发关系,而不专门突出这些消息发送的时间消息
状态图:是对类描述的补充。用于展现此类对象所具有的可能状态,以及某些事件发生时其状态转移情况。
活动图
活动图里的节点表示是活动,状态图的节点表示的是状态
活动图的黑线表示两条路径可以并行执行的
泳道代表角色
定时图(交互图):也是交互图,用于展示交互过程中的真实时间信息,具体描述对象状态变化的时间点以及维持特定状态的时间段。