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

此次读了uml大战需求分析的第三四章,我发现这本书讲的特别的好,由于这学期正在学习设计模式这本书,这本书就讲究对uml图的利用,突然发现uml特别有用处,而且作用特别的大,它可以在写代码之前,可以对代码有一个很好的框架分析。

对于第三章的内容来说,作者通过分析业务的模式,来了解uml图,面向对象比面向过程更高级,无需注重结构化编程和编程基本功。面向对象编程就是把代码放进一个个类中而已。将业务概念直接转变为类,赋予合适的属性和操作,就可以解决问题。需求阶段的建模与设计阶段的建模有很大的区别。需求建模是对业务和需求的提炼,优秀的需求建模是设计建模的良好开始,但是一个优秀的设计模式还需要考虑更多的设计上的事情,并不是将业务模型直接转化为设计模型就可以解决问题的。通过学习类的作用,什么是类,什么是类图,以及如何来识别一个类,类主要包括直线关系,也就是关联关系,包含关系,继承关系,以及作者说的所谓的依赖关系,类是某一样东西的抽象,但是对象是一个具体的东西,需求分析时,我们接触的是一个个具体的东西,比如说见到一个个具体的人,接触到一份份具体的业务数据等,这些具的东西其实就是对象。而我们分析需求不能就事论事,我们需要将这些对象提炼为类,这样的分析才更具有代表性。软件系统并不是用来解决具体某次事件中的一些问题,而是希望能够解决某一类问题。

类图是进行结构建模的重要工具,可对需求分别进行结构建模和行为建模,帮助我们更加透彻的理解客户业务,整合出符合系统目标的需求规格。对活动图的分析业务的流程中,活动图可以发现一些问题,通过这些问题你可能会牵扯出一大堆的业务逻辑,引发更深入的思考。在对活动图进行规划时,要开始画一些流程,明确该流程要达到怎样的业务目的,该流程有什么样的角色参与,哪些是主要的角色,排除异常,画出正常情况下的流程,这就是流程的主干,通常是线性的流程,线性流程是指一条线从头走到尾的流程。中间没有分支,明确流程主干中的活动涉及的角色,逐步增加分支流程,关键的分支流程都应该分析出来,但是要注意并不需要画出所有的异常情况,必要时通过注解或者一些文字说明,要控制活动的粒度,画出反映当前情况的流程,再画出优化后的流程,对比前后的差异,整理出业务需要调整的地方,客户管理需要改善的地方,尽快与客户确认。整体上规划好所有流程并优化好每一个流程是难度很高的工作,需求分析工作其实也是业务流程整合与优化的咨询工作,我们要为客户提供用价值的需求方案。

<<UML大战需求分析>>阅读笔记(2)的更多相关文章

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  9. 《UML大战需求分析阅读笔记》05

    在需求分析的阶段,非功能需求也是十分重要的一个阶段.部署图和构件图就能很好的描述非功能需求. 部署图从硬件的角度.物理层次上进行系统的整体规划,包括当前的IT架构以及改造后的IT构架,包括:Node: ...

随机推荐

  1. SQL 高效分页查询

    declare @page int --页码 declare @pagecount int;--每一页显示的记录数 select * from (select *,row_number() over( ...

  2. SQLserver 查看数据库包含指定数据的表(字段)

    找出所有字段 1 select a.name as columnname,object_name(a.id)as tablename into t from syscolumns a, sysobje ...

  3. datetimepicker一个不错的日历android特效

    datetimepicker一个不错的日历效,选中和选择日历效果都很不错, 实用的时候直接可以把datetimepicker-library这个引入到项目,调用的地方在实现 TimePickerDia ...

  4. OpenGL ES crash notes 01 - Nice to meet you

    这篇笔记完全参照<OpenGL.ES.3.0.Programming.Guide.2nd.Edition>,摘出部分内容只为学习参考. 为什么要用英文:无论是D3D的SDK还是OES的Sp ...

  5. redis原理分析

    基本全是参考http://blog.csdn.net/a600423444/article/details/8944601     redis的使用大家都很熟悉,可能除了watch 锁,pipelin ...

  6. php的进制转换

    学习了php的进制转换,有很多的知识点,逻辑,也有最原始的笔算,但是我们还是习惯使用代码来实现进制的转换,进制的转换代码有如下:二进制(bin)八进制( oct)十进制( dec)十六进制( hex) ...

  7. Function类型

    1.每个函数都是Function类型的,和其他引用类型一样都具有属性和方法.函数也是对象,因此函数实际上是一个指向函数对象的指针. 函数声明语法定义: 方法1: function sum(num1,n ...

  8. javax/javaee-api/ Maven依赖

    <dependency>    <groupId>javax</groupId>    <artifactId>javaee-api</artif ...

  9. linux crontab

    概念: Linux 工作排程的种类:at, cron at 是个可以处理仅执行一次就结束排程的指令,不过要执行 at 时, 必须要有 atd 这个服务支持. crontab 这个指令所设定的工作将会循 ...

  10. 查看oracle表中列的数据类型

    一. SQLPLUS中,直接用 DESC[ribe] tablename 即可. 二.在外部应用程序调用查看ORACLE中的表结构时,只能用下面的语句代替: 1.看字段名与数据类型 select * ...