UML总结

 1. 类图

    类: 用矩形表示,包含类名。

    属性: 表示类的特性,位于类的顶部,通常包括名称和类型。

    方法: 表示类的行为,位于类的底部,通常包括名称和参数列表。

    关联关系: 表示两个类之间的关联,可以是双向的,用一条直线连接两个类,并标明关联类型和角色名称。

    聚合关系: 表示一种"整体部分"的关系,用带空心菱形的直线表示。

    组合关系: 表示一种更强的"整体部分"关系,用带实心菱形的直线表示。

    泛化关系: 表示继承关系,用带空心三角形的直线表示。

2. 对象图:

对象: 用矩形表示,包含对象名和类名,可以展示系统中具体对象的状态。

优点:

直观表达对象关系: 对象图以图形方式直观地展示了系统中对象之间的关系,有助于理解和沟通设计概念。

具体而微观: 对象图强调特定时间点上对象的状态和相互作用,有助于在设计和实现阶段详细了解系统中的对象关系。

支持动态视图: 对象图可以用于捕捉系统在运行时的瞬时状态,因此有助于动态系统建模和分析。

缺点:

局限于特定时间点: 对象图关注的是特定时间点上的对象关系,而不是对象之间的动态变化过程。这使得它在描述系统动态行为方面相对不足。

可读性受限: 对象图可能变得复杂,尤其是当系统中有大量对象和复杂的关系时,可能难以阅读和理解。

不适用于所有阶段: 对象图主要用于详细设计和实现阶段,对于高层次的系统结构和概念阶段,其他类型的图可能更合适,如类图、用例图等。

不包含操作序列: 对象图通常不包括对象之间的操作序列,而是强调对象之间的关系。在需要强调操作顺序的情况下,时序图可能更合适。

3. 用例图:

    用例: 用椭圆形表示,表示系统的功能或服务。

    参与者: 用符号表示,表示与系统交互的外部实体。

关联关系: 用实线表示,表示用例与参与者之间的关系。、

优点:

用户需求可视化: 用例图以图形方式清晰地表达了用户和系统之间的交互,使得用户需求更容易理解和可视化。

系统功能概览: 用例图提供了对系统功能的高层次概览,有助于捕捉系统的主要功能和用例。

用户参与: 通过在用例图中引入参与者(Actor),可以清晰地表示系统与外部实体(用户、系统、设备等)的关系,有助于明确系统的外部界限。

需求分析: 用例图在需求分析阶段起到了关键作用,帮助团队理解和沟通系统的功能需求。

易于理解: 用例图相对简单,易于理解,对于非技术人员也具有较好的可读性。

缺点:

缺乏细节: 用例图主要关注系统的高层功能,对于详细的操作步骤、数据结构等细节提供的信息相对有限。

不涉及时序: 用例图没有展示系统内部的操作顺序和时序关系,这对于一些需要详细了解操作流程的场景可能不够。

不涉及数据: 用例图没有涉及系统中的数据结构和数据流,这些信息在某些情况下可能是关键的。

过于简化: 用例图可能过于简化,无法完整地表示系统的所有复杂性和交互关系。

不适用于所有系统: 对于某些类型的系统,尤其是涉及到复杂业务规则和处理流程的系统,用例图可能不足以提供足够的细节。

4. 时序图:

    生命线: 用垂直虚线表示,表示对象在一段时间内的存在。

    消息: 用箭头表示,表示对象之间的通信顺序。

激活: 用矩形表示,表示对象在某个时间点上的活动状态。

优点:

交互细节清晰: 时序图以时间序列的方式清晰地展示了对象之间的交互,包括消息传递和调用顺序,有助于理解系统的动态行为。

强调时序关系: 时序图特别强调对象之间的时序关系,对于需要关注操作执行顺序的场景非常有用。

系统行为可视化: 时序图有助于可视化系统中对象的活动和状态变化,提供了一种对系统行为的直观表示。

并发处理: 时序图能够清晰地表示系统中的并发处理,展示不同对象之间的并发执行情况。

与其他图表整合: 时序图可以与其他 UML 图表(如类图、用例图)结合使用,提供了更全面的系统建模。

缺点:

复杂度: 在系统较大或对象交互较复杂的情况下,时序图可能变得非常复杂,难以阅读和理解。

不适用于所有场景: 时序图主要关注对象之间的时序关系,对于一些不强调时序的系统或场景可能显得过于细节化。

过于详细: 时序图通常关注于对象之间的交互细节,可能在某些情况下提供了过多的信息,导致分析者难以抓住主要问题。

静态: 时序图主要捕捉特定时间点上的对象交互,对于描述长时间周期的系统行为可能不够。

维护成本: 由于时序图关注对象之间的详细交互,当系统发生变化时,时序图的更新可能会比较繁琐。

5. 协作图:

    类似于时序图,但更注重对象之间的合作关系。

6. 状态图:

    状态: 用圆角矩形表示,表示对象在某个时间点上的状态。

    转移: 用箭头表示,表示状态之间的转换条件。

posted @   lcz111  阅读(21)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示