<<UML大战需求分析>>阅读笔记(2)
<<UML大战需求分析>>阅读笔记(2)》
此次读了uml大战需求分析的第三四章,我发现这本书讲的特别的好,由于这学期正在学习设计模式这本书,这本书就讲究对uml图的利用,突然发现uml特别有用处,而且作用特别的大,它可以在写代码之前,可以对代码有一个很好的框架分析。
对于第三章的内容来说,作者通过分析业务的模式,来了解uml图,面向对象比面向过程更高级,无需注重结构化编程和编程基本功。面向对象编程就是把代码放进一个个类中而已。将业务概念直接转变为类,赋予合适的属性和操作,就可以解决问题。需求阶段的建模与设计阶段的建模有很大的区别。需求建模是对业务和需求的提炼,优秀的需求建模是设计建模的良好开始,但是一个优秀的设计模式还需要考虑更多的设计上的事情,并不是将业务模型直接转化为设计模型就可以解决问题的。通过学习类的作用,什么是类,什么是类图,以及如何来识别一个类,类主要包括直线关系,也就是关联关系,包含关系,继承关系,以及作者说的所谓的依赖关系,类是某一样东西的抽象,但是对象是一个具体的东西,需求分析时,我们接触的是一个个具体的东西,比如说见到一个个具体的人,接触到一份份具体的业务数据等,这些具的东西其实就是对象。而我们分析需求不能就事论事,我们需要将这些对象提炼为类,这样的分析才更具有代表性。软件系统并不是用来解决具体某次事件中的一些问题,而是希望能够解决某一类问题。
类图是进行结构建模的重要工具,可对需求分别进行结构建模和行为建模,帮助我们更加透彻的理解客户业务,整合出符合系统目标的需求规格。对活动图的分析业务的流程中,活动图可以发现一些问题,通过这些问题你可能会牵扯出一大堆的业务逻辑,引发更深入的思考。在对活动图进行规划时,要开始画一些流程,明确该流程要达到怎样的业务目的,该流程有什么样的角色参与,哪些是主要的角色,排除异常,画出正常情况下的流程,这就是流程的主干,通常是线性的流程,线性流程是指一条线从头走到尾的流程。中间没有分支,明确流程主干中的活动涉及的角色,逐步增加分支流程,关键的分支流程都应该分析出来,但是要注意并不需要画出所有的异常情况,必要时通过注解或者一些文字说明,要控制活动的粒度,画出反映当前情况的流程,再画出优化后的流程,对比前后的差异,整理出业务需要调整的地方,客户管理需要改善的地方,尽快与客户确认。整体上规划好所有流程并优化好每一个流程是难度很高的工作,需求分析工作其实也是业务流程整合与优化的咨询工作,我们要为客户提供用价值的需求方案。
<<UML大战需求分析>>阅读笔记(2)的更多相关文章
- uml大战需求分析阅读笔记01
<<UML大战需求分析>>阅读笔记(1) 刚读了uml大战需求分析的第一二章,读了这些内容之后,令我深有感触.以前学习uml这门课的时候,并没有好好学,那时我认为这门课并没有什 ...
- UML大战需求分析--阅读笔记01
本次阅读的书籍是<UML大战需求分析>,看了前两章的内容:1 大话UML,2绞尽脑汁的需求分析.这两章内容关联不大,分开描述. 第一章:大话UML 本章主要概述UML是什么,有什么内容.U ...
- UML大战需求分析——阅读笔记04
读<UML大战需求分析>有感04 开发某系统的重要前提是: 这个系统有谁在用? 这些人通过这个系统能做什么事? 一般搞清楚这件事,再画个业务流程图,就能条例清楚的表达系统的需求了.作为一个 ...
- UML大战需求分析——阅读笔记03
读<UML大战需求分析>有感03 状态机图和活动图在样子比较相似,但状态机图是用来为对象的状态及造成状态改变的事件建模.我们大二学习UML统一建模语言状态机图模块时了解到,UML的状态机图 ...
- UML大战需求分析阅读笔记2
全面深入理解客户的业务,才能帮助我们准确的把握客户的需要.而在理解客户业务的同时,我们往往需要做业务流程再造(BPR:Business Process Reengineering)的工作.BPR简单说 ...
- UML大战需求分析阅读笔记1
UML这三个字母的全称是Unified Modeling Language,直接翻译就是统一建模语言,简单地说就是一种有特殊用途的语言.你可能会问:这明明是一种图形,为什么说是语言呢?伟大的汉字还不是 ...
- UML大战需求分析--阅读笔记02
这次阅读了第三章--类图.本章主要讲解了类图的基本使用规则和一些使用的例子.类图是UML中非常重要的一部分,作用很大. 类图之间有五种关系:关联关系,聚合关系,组合关系,泛化关系,依赖关系.关联关系有 ...
- UML大战需求分析——阅读笔记02
类图是理解面向对象思想的强有力工具,也是业务概念模型分析中最常用的一种UML图.对开发人员来说,并不是对每一个业务流程都很熟练,在客户那里传达过来的需求资料中,有很多术语会把思绪搞晕,他们之间错综复杂 ...
- 《UML大战需求分析阅读笔记》05
在需求分析的阶段,非功能需求也是十分重要的一个阶段.部署图和构件图就能很好的描述非功能需求. 部署图从硬件的角度.物理层次上进行系统的整体规划,包括当前的IT架构以及改造后的IT构架,包括:Node: ...
随机推荐
- 关于设置anroid系统时间
我最近在做一个项目需要设置android系统时间,设置android 时间往往缺少权限,看到http://blog.csdn.net/kakaxi1o1/article/details/3687278 ...
- const 限定符
1.定义const对象 const限定符把一个对象转换成一个常量 const int Bufsize = 512; 定义Bufsize 为常量并初始化为512.变量Bufsize仍然是一个左值,但是不 ...
- mysql 允许远程访问
原来装mysql数据库的时候就想,这个只要在本地访问就可以了,没有必要让远程访问.可是,今天想把数据放到远程的机器上,却发现,不是简单的将sql语句(指导出的语句)执行一遍就行了,对于那些自增的字段, ...
- Java面试宝典答案详解与感悟(第一天)
一.Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io 的语法,虚拟机方面的语法. 1.一个".java&quo ...
- Python导入模块出现“no module named **”可能是这样的原因
因为Python中其他文件中海油和这些模块一样的取名,这个时候Python就找不到到底是哪个文件了,所以只需要将其中一个文件的名字修改成不一样的就可以了.
- html初学者笔记01
一.Html简介 HTML 是一种标记语言 忽略大小写,语法宽松 使用 HTML 标记和元素,可以: 控制页面和内容的外观 发布联机文档 使用 HTML 文档中插入的链接检索联机信息 创建联机表单,收 ...
- Java 字符串拼接 五种方法的性能比较分析 从执行100次到90万次
[请尊重原创版权,如需引用,请注明来源及地址] > 字符串拼接一般使用“+”,但是“+”不能满足大批量数据的处理,Java中有以下五种方法处理字符串拼接,各有优缺点,程序开发应选择合适的方法实现 ...
- C++STL学习笔记_(1)deque双端数组知识
#include<iostream> using namespace std; #include "deque" #include "algorithm&qu ...
- UITableView 使用
关键字 •UITableView •UITableViewDataSource •UITableViewDelegate •UITableViewCell •MVC 运行结果
- C#线程同步控制
ManualResetEvent类,用于通知一个或多个正在等待的线程已发生事件,它有2种状态:有信号(true)的无信号(false). 有2种方法可以设置它的信号状态:构造函数构造的时候设置或者通过 ...