伴随着七天国庆的结束,紧张的学习生活也开始了,首先声明,阅读笔记随着我不断地阅读进度会慢慢更新,而不是一次性的写完,所以会重复的编辑。对于我选的这本   《火球 UML大战需求分析》,首先,为什么选择这本书呢,其实,最开始我选择的是《实用软件需求分析》,可是后来大概看了《火球 UML大战需求分析》这本书前序之后啊,发现了,书中的作者一开始和我们有着一样的困扰,就象我们大学刚学到UML之后,学完一考试,考试前一复习,考完之后,就随手扔到了一边去。因为对于我们没有经历过正规的软件开发流程的大学生来说,UML对我们来说,作用并不大,甚至,我觉得,这个东西一点意义都没有。因为每次去做一个软件的时候,不用到UML也会轻易地做出来这个软件。当我看了作者的引言,作者一开始和我也差不多,对于UML知道一点点的知识,对于他的运用和作用也不是那么清楚,甚至工作两年以后才开始真正的去强化他,理解他。所以,这本书,可以加强你对UML与需求分析之间的认识,让你的需求分析可以通过UML变得更加的强。

  首先,作者是如何通过一个对UML一知半解的菜鸟,最终变成一个将UML完美结合到需求分析的大神呢?

毫无疑问,实践当然是最重要的,作者在碰到了自己的一个堪称UML达人的领导之后,领导带着他直接将UML运用到了实际的案例中,并在与客户通过UML交流的如鱼得水,这使得他对UML有了向往,于是跟着领导不断地实践,最终完成了这本书的创作。

  大致的看了一下目录,简要的把他分为三个阶段,第一个阶段是UML,第二阶段为UML+需求分析,最后一阶段需求分析。从一开始的对UML基础知识的学习,到中期的两种技术的结合,在到最后应用到实践中。通过UML加强对软件需求分析过程中的协作交流。

  知识预习

  1.    UML分为   结构型的图和行为型的图。所谓的结构,就是阐述了某些物体之间的某种关系,某种联系, 可以将它理解为静态的;而行为图,与之相反,可以理解成动态的,他阐述的是流程,过程。

    结构型的图有:类图,对象图,构件图,部署图,包图

    行为行的图有:活动,状态机图,顺序图,通信图,用例图,时序图

首先为大家逐个介绍一下以上多中途的大致的功能和用途

    类图    如图所示,类图在以后的学习,以后的需求分析中必须要拿来分析业务的概念,所以必须很好的掌握它的用途

      对象图      对象图其实就是上面的类实例化之后生成的对象,一般是用在软件开发中,而对于需求分析来说,一般不会使用,所以,可以简单地了解

      构件图     构件图就是组件图,就像汽车的组装一样,由很多不同的组件拼装成一个汽车,而在我们的软件中,也是由多个的部分来构成我们的软件

,简单地来说,构件图就是用来描述软件的内部的物理组成。而构件图在我们的软件需求阶段,为我们分析我们的软件基础的构架提供了很大的帮助,所以用处很大,必须掌握。

      部署图    部署图用来分析本系统的部署,本系统和其他的系统之间的关系。对我们分析软件的进本框架也有着很大的帮助,和上面的构件图一起来完成我们的基本框架和软甲架构的需求,对于客户的局域网,数据库,或者其他的平台软件等做一个合理的IT基础环境的规划。

    

      包图    包图,类图,对象图。  就像JAVA里面的项目一样,  类实例化之后成为对象,当类数目过于多,过于庞杂,就用包来“打包”。所以包图就是描述包和包之间的关系的。一般很少会用的到,可以做了解

  

      上面介绍到几个就是我们平时常用的几种结构图,也可以把它理解成静态的。下面来介绍行为图。

      

      活动图,状态机图,顺序图。这三个图都是用来描述流程的,但是是从不同的角度来进行分析,大部分情况下,要用到这三个中的至少两个来分析我们的业务流程

      活动图

    

        活动图用圆边框来表示各种活动,用箭头来表示活动的先后顺序,很类似我们初中所学的流程图。

      状态机图   它主要是从物品状态的变化的角度来描述活动的,如图,请假条的状态有待定,批准,拒绝。

        顺序图

      如图所示,一个点菜的顺序图,小人代表了角色,角色之间的箭头代表了他是如何交互的,而箭头的上下的顺序,表示了它的先后顺序。所以,顺序图可以展示出角色是怎样参与到这些活动来中的,角色与角色之间的交互。

        

      通信图

      一般在我们的需求分析中,用到通信图的时候不多,因为他没有顺序图表达的清晰易懂,所以多做了解。通信图侧重于相互之间的关系,而不是顺序。

        

        用例图

        这个很关键 ,它是用来描述什么样的角色通过我们的系统可以干什么样的事情,这个对于我们的需求分析来说十分的重要  ,必须要学会使用

        

        时序图

        作为最后一个要说的行为图,时序图来说,他也是基本使用不到的,但可以多做了解,他表示的是状态的变化随时间的关系,比如灯什么时间段开着,真么时间段关着。

        

以上就是我的第一次的阅读心得和对知识点的整理,希望可以活用UML来增强我们的软件需求分析

阅读笔记 1 火球 UML大战需求分析的更多相关文章

  1. 读书笔记---《火球:UML大战需求分析》

    书评 作为一本UML和需求分析的入门书来说还算可以,写的比较接地气,如果是做过很多项目的读者,很容易找到共鸣点. 美中不足:部分概念可能有错误,其中对于Component和Artifact的解释明显和 ...

  2. 《火球——UML大战需求分析》(第1章 大话UML)——1.2 结构型的UML(Structure Diagram)

    说明: <火球——UML大战需求分析>是我撰写的一本关于需求分析及UML方面的书,我将会在CSDN上为大家分享前面几章的内容,总字数在几万以上,图片有数十张.欢迎你按文章的序号顺序阅读,谢 ...

  3. 《火球——UML大战需求分析》(第1章 大话UML)——1.4 如何学好UML?

    说明: <火球——UML大战需求分析>是我撰写的一本关于需求分析及UML方面的书,我将会在CSDN上为大家分享前面几章的内容,总字数在几万以上,图片有数十张.欢迎你按文章的序号顺序阅读,谢 ...

  4. 《火球——UML大战需求分析》(0.1)——开篇废话

    说明: <火球——UML大战需求分析>是我撰写的一本关于需求分析及UML方面的书,我将会在CSDN上为大家分享前面几章的内容,总字数在几万以上,图片有数十张.欢迎你按文章的序号顺序阅读,谢 ...

  5. 《火球——UML大战需求分析》(0.2)——目录

    说明: <火球——UML大战需求分析>是我撰写的一本关于需求分析及UML方面的书,我将会在CSDN上为大家分享前面几章的内容,总字数在几万以上,图片有数十张.欢迎你按文章的序号顺序阅读,谢 ...

  6. 《火球——UML大战需求分析》(第1章 大话UML)——1.5 小结和练习

    说明: <火球——UML大战需求分析>是我撰写的一本关于需求分析及UML方面的书,我将会在CSDN上为大家分享前面几章的内容,总字数在几万以上,图片有数十张.欢迎你按文章的序号顺序阅读,谢 ...

  7. 《火球——UML大战需求分析》(第2章 耗尽脑汁的需求分析工作)——2.1 需求分析面面观

    说明: <火球——UML大战需求分析>是我撰写的一本关于需求分析及UML方面的书,我将会在CSDN上为大家分享前面几章的内容,总字数在几万以上,图片有数十张.欢迎你按文章的序号顺序阅读,谢 ...

  8. 《火球——UML大战需求分析》(第1章 大话UML)——1.3 行为型的UML(Behavior Diagram)

    说明: <火球——UML大战需求分析>是我撰写的一本关于需求分析及UML方面的书,我将会在CSDN上为大家分享前面几章的内容,总字数在几万以上,图片有数十张.欢迎你按文章的序号顺序阅读,谢 ...

  9. 火球-UML大战需求分析(体验版3.0.2).pdf

    火球-UML大战需求分析(体验版3.0.2).pdf http://files.cnblogs.com/files/happlyonline/%E7%81%AB%E7%90%83-UML%E5%A4% ...

随机推荐

  1. python 的var_dump

    from __future__ import print_function from types import NoneType __author__ = "Shamim Hasnath&q ...

  2. OC中的字典

    // ********************不可变最字典***************** /* NSDictionary * dic = [NSDictionary dictionaryWithO ...

  3. LeetCode Remove Element

    原题链接在这里:https://leetcode.com/problems/remove-element/ 题目: Given an array and a value, remove all ins ...

  4. sys.stdout.write与sys.sterr.write(一)

    目标: 1.使用sys.stdout.write输入0-9数字 2.使用sys.stderr.write输出0-9数字 3.使用两种方式输出0-9,显示0变化到9的过程 1.使用sys.stdout. ...

  5. freemarker页面如何获取绝对路径basePath

    1. freemarker获取系统相对路径方式 spring-mvc.xml 中配置 <!-- FreeMarker视图解析 如返回userinfo..在这里配置后缀名ftl和视图解析器.. - ...

  6. delphi之事件

    delphi的事件如上图所示: 图中oncloseup代表的是日期选择下拉框关闭时触发的事件. //事件定义 procedure Ondatechange(Sender: TObject); //事件 ...

  7. sql服务器启动不了问题

    问题:the the service mysql56 failed the most recent status change request with the messagethe service  ...

  8. ferret32位安装

    首先在网上找到解决方案: 1.添加对32位的支持 dpkg --add-architecture i386 2.更新 apt-get clean && apt-get update & ...

  9. 实验三——for语句及分支结构else-if

    1.本节课学习到的知识点: (1)for语句是循环语句,它可以实现c语句的重复执行 (2)for语句中的3个表达式的执行顺序和书写顺序不同 (3)遇到复合语句时要用大括号将几句话括起来,复合语句在语法 ...

  10. WebSocket///////////////////////z

    作者:Ovear链接:http://www.zhihu.com/question/20215561/answer/40316953来源:知乎著作权归作者所有,转载请联系作者获得授权. 一.WebSoc ...