UML类图和用例图

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UML类图和用例图相关的知识,希望对你有一定的参考价值。

软件体系结构的多视图

  kruchten提出了软件体系结构的4+1视图模型,其中用例图位于中心位置(4+1视图中的1)。

  • 逻辑视图

  一种静态建模视图

  • 进程视图

  一种并发进程或任务视图

  • 开发视图

  一种子系统和构件设计视图

  • 物理视图

  一种反应物理拓扑结构及连接关系的视图、

UML图

  应用开发中,uml表示法支持以下图:

  • 用例图
  • 类图
  • 对象图
  • 通信图
  • 顺序图
  • 状态机图
  • 活动图
  • 组合结构图
  • 部署图

用例图

  一个参与者(actor)发起一个用例(use case)。用例之间的关系分为如下:

  • 关联(communication association)

  • 包含(include)

  • 扩展(extend)

类和对象

  表示类的方框总是包含类名,并且可选择性的列出类的属性和操作.

  对象关名称需要带有下划线,为了区分类和对象。

1. class




2. 类和属性



3. 类和属性和操作



类图

  类图中,类之间的永久关系被描述成连接方框之间的连线。UML表示法支持以下三种类之间的主要关系类型:

  • 关联关系
  • 整体/部分关系
  • 泛化关系
  • 依赖关系

1. 关联关系

  关联是两个或多个类之间的结构化关系。每个连接类的关联线的末端表明关联的多重性。

  多重性的是的一个类的多少个实例可能和另一个类的单个实例有关。

类的多重性可以是(1),可选(0..1),零或多个()





单向关联

public class user
{
    private Address address;
}
public class Address
{
    
}



自关联

public class Question
{
    public Question ParentUser;
}




2. 聚合关系

  表示整体与部分的关系,在一个聚合里部分实例能添加到聚合整体中,也能从聚合整体删除.

public class user
{
    private Role role;
    public user(Role role)
    {
        this.role=role;
    }
}
public class Role
{}



3. 组合关系

  也是整体和部分的关系,但是组合是一旦整体对象不存在,那么部分对象也将不存在

public class user
{
    private UserMenu usermenu;
    public user()
    {
        usermenu=new UserMenu;
    }
}
public class UserMenu
{
    
}



4. 泛化关系

  user是adminuser和testUser的父类,这种关系就是泛化,也就是继承。

public class user
{
    protected string name;
    public bool AddUser()
    {
        ...
    }
}
public class AdminUser:user
{
    
}
public class TestUser:user
{
    
}

5. 依赖关系

  某一个类依赖另一个类才能完成

public class user
{
    private UserService userService;
    public bool Adduser(userModel model)
    {
        ....//todo
         userService.AddUser(model);
    }
}
public class UserService
{
    public bool AddUser(usermodel model)
    {
        ...
    }
}

以上是关于UML类图和用例图的主要内容,如果未能解决你的问题,请参考以下文章

UML用例图、类图

用例,用例图,用例视图是啥?

UML建模(一)---UserCase用例图

那些我们常见的 UML 图

EnterPrise Architect画业务用例图

在软件工程中“用例”和“用例图”有啥区别是啥?