UML虽然是一种新的工具,但同时也代表了一种新的先进的思考方法,所以学习UML的关键不在于学习语法,而是要改变思维习惯。所以我觉得我还需要系统地培养几方面的能力,如书面表达能力,归纳总结能力,“面向对象”的思维能力和抽象能力。

我们现在也正在学习需求分析这门课,需求分析是我们做软件的第一步,可见其重要性。客户基本不懂计算机,但是我们却需要了解到客户的真正的需求,这是难点所在。而UML通过建模活动可以帮助我们更好地认识客户的业务和做好业务流程再造的工作。要想UML在需求分析中真正发挥作用,我还需要了解更多UML图的使用,活用UML进行结构建模和行为建模。

类图,我们都比较熟悉,也是用得最多的一种UML图。虽然我们画图的时候,觉得类图很简单,但是实际上要做到活用类图还需要很久的时间。说通俗的话,类图是帮助我们理清人、物品、事情并理清关系的用途。我们在需求分析中用到的各种业务概念、人物,抽象之后可以看作类。而构建类图,我们首先要找到类,类的属性,然后找出类之间的关系。即类图的类名、属性、操作三部分。虽然类图的基本语法很简单,但是识别类,表示类之间的关系就没那么简单了,也是我们使用类图的关键。类之间的关系主要有三大部分,直线关系、包含关系、继承关系。直线关系中我们通过一对一关系、一对多关系等分辨;包含关系中通过强烈程度来分辨;比如,如果部门没有了,员工也可以继续存在,所以是弱包含,反而如果员工也没有了,则是强包含。继承关系中有泛化关系和依赖关系,比如由A导出B,我们可称为泛化,A需要B协助来完成,但是依赖程度不一定就是依赖关系;我认为这也是类图中很重要的一部分。虽然学习了很多类和类之间的关系,但是我在这本书中真正认识到的两种类之间的关系其实是递归关系和三角关系。比如,对于文件夹和文件的关系,文件里面可以有文件夹,文件夹里面也可以有文件,是一种无穷无尽的递归状态,但是将包含关系指向文件夹本身时,这个问题就得到了完美解决。三角关系,比如公司、雇员和劳动合同,这里教给了我们一个画图的解决方法就是如果觉得两个类之间有关系的话,先画直线,如果觉得有关系却不会画,那我们可以首先找到他们的关联类,构成三角关系。要做真正的系统,我们可能要使用上百个上千个类图,所以一定要规划好类图。

我们可以通过画类图来训练我们的面向对象分析的逻辑思维,思想。我想用好类图,让它在需求分析中发挥作用,只是练习次数的问题。

02《UML大战需求分析》阅读笔记之二的更多相关文章

  1. <<UML大战需求分析>>阅读笔记(2)

    <<UML大战需求分析>>阅读笔记(2)> 此次读了uml大战需求分析的第三四章,我发现这本书讲的特别的好,由于这学期正在学习设计模式这本书,这本书就讲究对uml图的利用 ...

  2. uml大战需求分析阅读笔记01

    <<UML大战需求分析>>阅读笔记(1) 刚读了uml大战需求分析的第一二章,读了这些内容之后,令我深有感触.以前学习uml这门课的时候,并没有好好学,那时我认为这门课并没有什 ...

  3. UML大战需求分析--阅读笔记01

    本次阅读的书籍是<UML大战需求分析>,看了前两章的内容:1 大话UML,2绞尽脑汁的需求分析.这两章内容关联不大,分开描述. 第一章:大话UML 本章主要概述UML是什么,有什么内容.U ...

  4. UML大战需求分析——阅读笔记04

    读<UML大战需求分析>有感04 开发某系统的重要前提是: 这个系统有谁在用? 这些人通过这个系统能做什么事? 一般搞清楚这件事,再画个业务流程图,就能条例清楚的表达系统的需求了.作为一个 ...

  5. UML大战需求分析——阅读笔记03

    读<UML大战需求分析>有感03 状态机图和活动图在样子比较相似,但状态机图是用来为对象的状态及造成状态改变的事件建模.我们大二学习UML统一建模语言状态机图模块时了解到,UML的状态机图 ...

  6. UML大战需求分析阅读笔记2

    全面深入理解客户的业务,才能帮助我们准确的把握客户的需要.而在理解客户业务的同时,我们往往需要做业务流程再造(BPR:Business Process Reengineering)的工作.BPR简单说 ...

  7. UML大战需求分析阅读笔记1

    UML这三个字母的全称是Unified Modeling Language,直接翻译就是统一建模语言,简单地说就是一种有特殊用途的语言.你可能会问:这明明是一种图形,为什么说是语言呢?伟大的汉字还不是 ...

  8. UML大战需求分析--阅读笔记02

    这次阅读了第三章--类图.本章主要讲解了类图的基本使用规则和一些使用的例子.类图是UML中非常重要的一部分,作用很大. 类图之间有五种关系:关联关系,聚合关系,组合关系,泛化关系,依赖关系.关联关系有 ...

  9. UML大战需求分析——阅读笔记02

    类图是理解面向对象思想的强有力工具,也是业务概念模型分析中最常用的一种UML图.对开发人员来说,并不是对每一个业务流程都很熟练,在客户那里传达过来的需求资料中,有很多术语会把思绪搞晕,他们之间错综复杂 ...

  10. UML大战需求分析——阅读笔记06

    状态机图和活动图在样子比较相似,但状态机图是用来为对象的状态及造成状态改变的事件建模.我们大二学习UML统一建模语言状态机图模块时了解到,UML的状态机图主要用于建立对象类或对象的动态行为模型,描述系 ...

随机推荐

  1. http请求后台报406错误

    1.springMVC的项目,通过浏览器访问后台方法遇到了报406的错误,找了很多原因,最终发现是因为缺少spring-mvc的json配置. 2.添加依赖:jackson-databind.jack ...

  2. php-fpm优化处理

    php-fpm.conf有两个至关重要的参数:一个是”max_children”,另一个是”request_terminate_timeout”. 我的两个设置的值一个是”40″,一个是”900″,但 ...

  3. gpio_request 原形代码

    http://blog.csdn.net/maopig/article/details/7428561 其原型为 int gpio_request(unsigned gpio, const char ...

  4. crontab 设置定时任务

    查看当前用户已有的定时任务: crontab -l 编辑crontab: crontab -e 加入需要执行的命令: 0 */4 * * * /www/shwww.net/venv/bin/pytho ...

  5. ongl表达式中得到对象,调用对象方法(OA项目权限显示模块)

    在用户是否拥有某项权限的问题  是这样解决的: 用户登录之后  登录信息是保存在session域中的  通过el表达式可得到登录的对象信息  那么怎样判断用户是否拥有某项权限呢 ?如果没有上图中的判断 ...

  6. https://stackoverflow.com/questions/16130292/java-lang-outofmemoryerror-permgen-space-java-reflection

    https://stackoverflow.com/questions/16130292/java-lang-outofmemoryerror-permgen-space-java-reflectio ...

  7. ubuntu--dpkg 被中断

    主要原因应该是/var/lib/dpkg/updates 文件夹里面的资料有错误,使得更新软件的程序出现错误,所以得把它们完全删除,通过sudo apt-get update这个指令会重新建立这些资料 ...

  8. 洛谷——P1802 5倍经验日

    https://www.luogu.org/problem/show?pid=1802#sub 题目背景 现在乐斗有活动了!每打一个人可以获得5倍经验!absi2011却无奈的看着那一些比他等级高的好 ...

  9. [HTML5] Semantics for accessibility

    For example, when we use checkbox, if we do like this: <div class="inline-control sign-up co ...

  10. TOMCAT虚拟路径配置

    在tomcat安装好后,只要把你的web项目copy到%TOMCAT_HOME%webapp下面就可以是使用啦!!其实还有种方法就是设定虚拟目录,即把项目的目录映射到tomcat中.这样做即可以不用重 ...