UML画图总结

    九种图总算画完了,着实让自己纠结了老一阵子啊。不过,幸运的是完成了,虽然还有些不足之处,但是最终战胜它了。下面说一下自己的画图过程


   一、用例图


      UML的第一幅图应该说是用例图了,这是我们画图的前提,它是根据用户的需求和提出的功能需求进行分析而来的,是整个画图阶段的基础。

      第一幅是顶层图,然后根据级别的不同展开。

      


      这里还有一个疑问就是,有的人说,学生跟此系统并无多大的关系,不需要将他与用户直接关联起来。我对这个观点有些疑问,因为用户在管理的基础上,都是需要通过学生的。谁有更好的想法,可以讨论一下。。。


   二、静态图


      静态图主要包括类图和对象图。在画类图的时候问题特别多,记得看视频的时候感觉听的听明白的,但是等真正去动手去画图的时候,却是无从下手。难道要根据视频里的一个一个名词的找,然后再筛选?我感觉有点不靠谱,太麻烦了。所以,我还是用自己先前的用例图那样,划分模块,然后再细化。其实,类图跟用例图很相似,类图在用例图的基础上抽象出类,并且找出相互之间的关系。


      类图画好后,对象图就好画了,对象图实际上是类图的一个实例化。


       

   三、行为图

       1、状态图

          

        这是学生上下机的状态图,还记得刚开始的图是错误百出啊,条件错误,还有就是没有使用同步条,而是一个一个过程的验证,造成图有点庞大,也不美观。后来经师傅提醒,才想到同步条。

      2、活动图


        这是我的部分活动图,自己将整个系统的过程全部画在了一幅图上,看上去给人一种乱的感觉,还是应该保持分模块画,这样才能让人看着舒服,同时也容易理清自己的思路。这部分唯一不太理解的地方就是泳道,后来查找资料,其实也不时太难,就是把相同的操作归类,使图更加清晰明了。

        3、交互图

            序列图:


             

          协作图:

          

          记得开始画的顺序图就是按照系统的过程进行画,但是没有注意返回的线。当师傅验收的时候,提醒序列图应该输入几条线就应该返回几条线,这样才能保证每次输入都能返回给用户,避免哑操作。还有一个需要注意的地方就是消亡。

          顺序图与协作图可以实现相互转换(快捷键F5),这两种图其实描述的是一种类型,只不过强调的对象不同,顺序图强调对象之间的交互顺序,而协作图强调对象之间的合作关系。

       4、实现图

            构件图:


          构件图是构件的物理结构,所以有点感觉图不是太准确,查找资料的时候发现有些是exe或dll类型的,对此不是太理解。所以暂时按照自己的想法画出来,等接触多了再回来细化。


 

  总结

        UML图是对系统的一种图形化描述,有助于我们对系统的各方面的了解。同时,画图的过程可以加深我们对问题的理解程度和理解的全面性。正如生活、学习等,只有当我们亲自实践,不断的练习与接触之后才能从不同的方面去了解,才能加深我们理解的深度和掌握的熟练度。虽然现在的我们接触的东西都是基础性的,但是道理却是受益无穷的。继续努力吧。。。

       温馨提示:开始的时候不懂如何下手,不要紧,先根据自己的想法和理解去画,然后通过查找资料再去修饰加工。千万不可直接查看别人的图,容易丢掉自己的想法。

原文地址:https://www.cnblogs.com/victor-grace/p/7253827.html