面向对象的需求分析和设计(一)

[toc]

1. 引言

前一篇文章《我对需求分析的理解》提到了面向对象分析和设计,正好最近又重新有重点的读了谭云杰著的《Think in UML》,感觉有必要写把书中一些核心内容观点以及自己的想法整理出来,一是方便自己日后的复习,另外也能和大家一起交流学习。以下分别从用例驱动、业务需求分析、系统分析几个方面进行分享。

2. 用例驱动

用例驱动(UDD)是软件设计的流行的方法,是以"用例"为核心,开展业务和系统的需求分析、设计工作。那什么是用例,用例是与人(参与者)交互的,提供可观测的有意义的结果的一系列活动的集合。用例是把现实世界(人、事、物、规则)捕获下来的一种方法。以下为用例的构成。

用例的特征:

1、用例是相关对独立的

2、用例的执行结果对参与者来说是可观测的有意义的。

3、用例总是由一个参与者发起的。

4、用例必然是以动宾短语形式出现的。

5、一个用例就是一个需求单元、分析单元、设计单元、开发单元、测试单元,甚至部署单元。

3. 业务需求分析

业务需求分析包括业务建模和概念建模两部分。

3.1. 业务建模

一个完整的业务模型包括以下内容:业务用例视图、业务用例场景、业务用例规约、业务对象模型 、业务用例实现视图、业务用例实现场景。

3.1.1. 业务用例视图
3.1.2. 业务用例场景
3.1.3. 业务用例规约
3.1.4. 业务对象模型
3.1.5. 业务用例实现视图
3.1.6. 业务用例实现场景

3.2. 概念建模

概念模型是针对业务需求中的关键业务(是指撑起客户整个业务架构的主线业务)进行建模,即对关键的业务用例进行分析,建立概念模型和业务架构。概念建模具体包括概念用例、概念用例场景、概念用例对象、分析(模型)场景、业务架构、系统原型。

3.2.1. 概念用例
3.2.2. 概念用例场景
3.2.3. 概念用例对象
3.2.4. 分析(模型)场景
3.2.5. 业务架构
3.2.6. 系统原型

通过概念模型的建立,获得了对需求较为深刻的理解、核心业务的关键概念,建立了业务架构,同时也初步确定了软件架构。此时我们可以采用验证型原型的方法建立系统原型。

4. 系统需求分析

4.1. 系统建模

系统建模包括系统用例(简称用例)、用例场景、用例规约、对象模型、用例实现、用例实现场景。

4.1.1. 系统用例
4.1.2. 用例场景
4.1.3. 用例规约
4.1.4. 对象模型

如果有概念用例对象模型和业和业务对象模型,这里可以直接使用

4.1.5. 用例实现
4.1.6. 用例实现场景
4.1.7. 分析(模型)场景

同概念建模的分析(模型)场景。

4.2. 非功能需求分析

包括对性能、安全、可用性等进行分析。

5. 最后

以上的内容按照业务需求分析、系统需求分析这两个步骤进行了整理,可以在后续分析设计时参考使用。进一步的系统设计可以按照Zachman框架模型等进行总体设计和详细设计。要掌握一种业务知识,按照用例驱动为方法,理清什么"人"用什么"规则"做什么"事"产生什么"物",我想也算是基本熟悉业务知识了。

相关推荐
提笔惊蚂蚁15 小时前
结构化(经典)软件开发方法: 需求分析阶段+设计阶段
后端·学习·需求分析
一只鹿鹿鹿2 天前
三级等保安全解决方案,实施方案,整改方案(Word,PPT等相关资料学习)
数据库·产品运营·产品经理·需求分析·设计规范
黄焖鸡能干四碗4 天前
需求规格说明书编制方案,需求说明书实际案例,规格说明书实际项目文档(word原件)
大数据·运维·开发语言·需求分析·软件需求
黄焖鸡能干四碗5 天前
【系统文档】系统安全保障措施,安全运营保障,系统应急预案,系统验收相关资料(word原件)
大数据·人工智能·需求分析·软件需求·规格说明书
一只鹿鹿鹿5 天前
【activiti工作流源码集成】springboot+activiti+mysql+vue+redis工作流审批流集成整合业务绑定表单流程图会签驳回
大数据·开发语言·数据库·需求分析·设计规范
打码人的日常分享6 天前
项目管理体系文档,代码评审规范文档,代码审查,代码走查标准化文档(word原件)
大数据·系统安全·需求分析·设计规范·规格说明书
知行EDI6 天前
KION Group EDI 需求分析
edi·需求分析·电子数据交换·edi系统
若水心境7 天前
需求分析&管理
需求分析
诗这样的7 天前
【需求变更】使用 Redis 和 Lua 脚本实现变更后方案编号的生成
java·redis·缓存·微服务·lua·需求分析