需求工程2
面向对象需求分析的工具UML,整个面向对象开发也离不开UML,UML是统一建模语言。
构造块中的事物会出现在选择题中。
![](https://img.haomeiwen.com/i5268036/875c6093cb26171f.png)
![](https://img.haomeiwen.com/i5268036/a0d757ea44b744bf.png)
![](https://img.haomeiwen.com/i5268036/5a94a2b4840a6e21.png)
下图白色框中的图统称为交互图。顺序图也称之为时序图。
![](https://img.haomeiwen.com/i5268036/4a91d46c18f0a3e6.png)
![](https://img.haomeiwen.com/i5268036/b868f9b7fc9353c4.png)
UML中最重要的是用例图和类图。
![](https://img.haomeiwen.com/i5268036/136a19e2bb0c8eb3.png)
考查方式,一般会把其中的划掉的部分让考生自己去填写,要充分利用题干中的信息进行填写,应该用例图与题干的描述一定一致,是一一对应的关系。
![](https://img.haomeiwen.com/i5268036/32d65cd8702b69da.png)
下图包含关系代表A包含B;扩展关系中扩展用例指向基本用例;泛化关系为父子关系,子可以继承父的特性。
![](https://img.haomeiwen.com/i5268036/4ca430293b12f4b5.jpg)
![](https://img.haomeiwen.com/i5268036/cd103792c7474b96.png)
![](https://img.haomeiwen.com/i5268036/ae97366cc45c4c2a.png)
![](https://img.haomeiwen.com/i5268036/1500908bcb193fe3.png)
![](https://img.haomeiwen.com/i5268036/c3f6015a2cd7a54a.png)
类是静态图,体现内部结构;用例是动态图描述系统。
![](https://img.haomeiwen.com/i5268036/4d77360516295478.png)
依赖有一定约束在里面
![](https://img.haomeiwen.com/i5268036/bda48075bd08c4c8.png)
类图和对象图,考查形式和用例图相似,给你一张图,然后根据题干信息进行填充。
三角形代表泛化关系,菱形代表整体和部分的关系。一般先从题干中找出父子关系的类,再找出整体和部分关系的类,填充到类名空格中。
![](https://img.haomeiwen.com/i5268036/68479e5076c3ca9f.png)
上图代表1个书籍列表对应0本或多本书,书籍列表类和书籍类之间是1对多的形式。
![](https://img.haomeiwen.com/i5268036/62ca4eb7e0148002.png)
泛化关系中父类是一般,子类是特殊。
聚合关系:类似于汽车和轮子,汽车报废了,但如果轮子还好的,轮子可以被其他汽车所使用;
组合关系:类似于公司和部门,公司倒闭了,部门也就不复存在。
实现关系:类去实现接口,一个类可以实现一个到多个接口。
![](https://img.haomeiwen.com/i5268036/2d753712cc1f956c.png)
![](https://img.haomeiwen.com/i5268036/e364fff92d064e0f.png)
![](https://img.haomeiwen.com/i5268036/a2023c1d4bfbd489.png)
顺序图考查方式和用例图,类图,对象图相似。
![](https://img.haomeiwen.com/i5268036/8960ef10368a5a81.png)
活动图两个横线之间的流程是可以并行的,并发执行。
![](https://img.haomeiwen.com/i5268036/6439e2889f7c1d85.png)
![](https://img.haomeiwen.com/i5268036/70205a0e0b0ab9cb.png)
![](https://img.haomeiwen.com/i5268036/08877a7b64ef0313.png)
状态图中节点代表状态,节点之间的连线代表事件/触发因素。
![](https://img.haomeiwen.com/i5268036/7b82bd6acd7c873d.png)
![](https://img.haomeiwen.com/i5268036/cbcb757f25bf7b22.png)
![](https://img.haomeiwen.com/i5268036/ae9a37c733ceeb3b.png)
部署图中方块代表物理节点,圆形代表接口。
![](https://img.haomeiwen.com/i5268036/4af067769cb1644e.png)
![](https://img.haomeiwen.com/i5268036/e8375f43fcf040fb.png)
交互过程是个动态的过程,所以要选动态图。
活动图和结构化中的程序流程图是一样的结构。
![](https://img.haomeiwen.com/i5268036/0d17829eff251102.png)
![](https://img.haomeiwen.com/i5268036/bd83c5dbc651b5c2.png)
![](https://img.haomeiwen.com/i5268036/7fc5942728d67d9f.png)
![](https://img.haomeiwen.com/i5268036/f4183c411ed6427b.png)
下方的表格用于细化用例描述
![](https://img.haomeiwen.com/i5268036/43a1c578c9ea938c.png)
分析阶段层次高,设计阶段层次低,层次低的比较关注细节。下图第一问中C选项,状态是最细节的,所以不应该在分析阶段。
![](https://img.haomeiwen.com/i5268036/dc9fd4fc77e89ec5.png)
![](https://img.haomeiwen.com/i5268036/4915fa694d819176.png)
下图中B选项“数据和操作”是在类中体现,属于设计阶段,并不是在需求分析阶段。
系统中主要是数据(信息)流和控制流,数据流代表数据信号,控制流代表控制信号。
![](https://img.haomeiwen.com/i5268036/328ec96c8a0e539f.png)
下图中D选项的类库和框架的位置反了
![](https://img.haomeiwen.com/i5268036/2285aa40b93f6f2a.png)
![](https://img.haomeiwen.com/i5268036/85babcc0db83f309.png)
![](https://img.haomeiwen.com/i5268036/43977531c587287e.png)
![](https://img.haomeiwen.com/i5268036/460f9a6ea0c43948.png)
用例
![](https://img.haomeiwen.com/i5268036/d5d1448c3b7f981c.png)
UML用例图
![](https://img.haomeiwen.com/i5268036/a454b38794b4c390.png)
![](https://img.haomeiwen.com/i5268036/208c8a1650c14bca.png)
需求定义之后得到SRS:软件需求规格说明书
![](https://img.haomeiwen.com/i5268036/489f67958785ec86.png)
需求验证目的是多方达成共识,约定成为验收标准,从而减少一些不必要的麻烦。
如果甲方不愿意签字,可以以备忘录和会议纪要的形式进行记录,并进行邮件发送。
成本补偿在国内不太可行,基本都是固定总价。
![](https://img.haomeiwen.com/i5268036/87b6911a3add9e50.png)
需求验证之后可以得到需求基线。
![](https://img.haomeiwen.com/i5268036/4069296740d48596.png)
UC:usecase(用例)
兴奋需求不需要做,可以删除。
![](https://img.haomeiwen.com/i5268036/9d86734c5c3bcfbb.png)
![](https://img.haomeiwen.com/i5268036/13725158bbcd881b.png)
![](https://img.haomeiwen.com/i5268036/0b57695a799a93f7.png)
![](https://img.haomeiwen.com/i5268036/c873025fa7d095c0.png)
![](https://img.haomeiwen.com/i5268036/9aa05ea805d2d8b3.png)
分析数据流图中存在的错误主要看:
1、题干和数据流图一一匹配的问题;
2、平衡原则:父图和子图的平衡和子图内部的平衡。
![](https://img.haomeiwen.com/i5268036/d049f51cfb712893.png)
![](https://img.haomeiwen.com/i5268036/6b8e0480fd13c691.png)
![](https://img.haomeiwen.com/i5268036/2cfc921be6b48751.png)
下图中(1)是实地观察
![](https://img.haomeiwen.com/i5268036/c830a2813a38578f.png)
![](https://img.haomeiwen.com/i5268036/988fda23eb9b6442.png)
![](https://img.haomeiwen.com/i5268036/1709588029471a52.png)