软件工程4+1视图

用例图(Use-Case View)

4+1视图中的场景图,系统需要提供哪些功能、识别出系统与用户或其它系统的交互

元素

  • 参与者(Actor)
  • 系统边界(Boundary)
  • 用例(Use Case)

用例图之间的关系

  • 关联:参与者与用例之间的关系
  • 泛化:参与者之间、用例之间的关系,存在继承关系
  • 包含:用例之间的关系,一个大的测试用例包含多个子用例
  • 扩展:用例之间的关系,增加用例能力

逻辑视图(Logical View)

功能性需求,即在为用户提供服务方面系统所应该提供的功能

类图

类图之间的关系

  • 继承/泛化(generalization)
  • 实现(realization)
  • 依赖:A依赖B,B作为A方法的参数
  • 关联:A关联B,B作为A的属性
  • 聚合:关联的特例,根据语意区分,如:员工组成部门
  • 组合:关联的特例,根据语言区分,如:人由手脚构成

交互图

顺序图、时序图

强调相互顺序关系

通信图、协作图

强调相互之间的关系

对象图

状态图

实现视图或开发视图(Implementation View)

组件图

部署视图、物理视图(Deployment View)

非功能性需求,如可用性、可靠性、性能吞吐量和可伸缩性等

部署图

网络拓扑图

过程视图、运行视图或处理视图(Process View)

非功能性需求,如并发性、分布性、系统完整性、容错性

活动图