什么是软件开发业务建模分析和结构化建模分析
软件开发业务建模分析
业务建模
三级需求:业务需求、用户需求、系统需求(也叫功能需求)
简单理解:
-
业务需求:怎么实现盈利,怎么吸引用户。
-
” OKR(Objectives and Key Results)“目标与关键成果法,业务需求的目标是吸引用户,获得盈利,所以在描述业务需求的时候,需要方法技巧。
OKR的主要目标是明确公司和团队的“目标”以及明确每个目标达成的可衡量的“关键结果”。
-
SMART原则将目标一共分为五个维度:
- Specific(具体的):我们的产品具体要做什么,要怎么做。
- Measurable(可衡量的):我们的产品会给用户带来什么好处,这个好处用什么方式度量。
- Attainable(可实现的):产品的可实现性,砍掉不切实际。
- Relevant(相关的):抓住关键目标,砍掉产品的无关目标。
- Time-Based(有时间限制的):有时间限制的就是砍掉无限拖延。前面确立的项目都很好,但是需要实现的时间太长则没有意义。
-
-
用户需求:怎么让用户选择你的产品。
-
系统需求:你的产品怎么能更好用一点。
其中系统需求基于用户需求、业务需求基于你的功能如何让用户离不开你的产品。
详细解释:
- 业务需求:业务需求来自公司、来自老板。业务需求描述的是愿景级的需求,主要描述宏观上产品解决了市场上的哪类人群的痛点和需求,这里会通过描述用户画像等完成产品故事的表达,主要站在整个系统(产品)和公司的角度进行分析,表示组织或客户高层次的目标。
- 用户需求:用户需求来自用户。对用户群体进行分类,从某一类用户的视角分析这一类用户对软件的需求。描述的是用户的目标,或用户要求系统必须能完成的任务。
- 系统需求:系统需求站在了产品的角度,把具体的用户需求,变成软件的功能要求。功能需求是基于业务需求和用户需求进行需求分析的结果。规定开发人员必须在产品中实现的软件功能,用户利用这些功能来完成任务,满足业务需求。
-
第一步:构建系统上下范围图(顶层数据流图、0层数据流图),确定系统边界,确定与系统直接交互的外部实体。
-
第二步:构建第1层数据流图,确定与系统直接交互的外部的相邻系统实体,确定业务事件的发生并引起的进出数据流。
- 业务事件存在系统外部,业务事件是可以引起系统内部一系列活动的外部事件(可以是人、物、时间等等)
- 业务用例存在系统内部,业务用例可以响应一个业务事件的工作。
- 外部业务事件触发内部业务用例进行数据交互(进出的数据流),输入的数据由业务事件提供,输出的数据由业务用例提供。
-
第三步:研究每个业务用例,编写业务用例场景。这里对应用户需求。
-
第四步:利益相关者决定要构建的最佳产品。
-
第五步:基于第三步和第四步的结论,通过产品用例分析、站在系统角度编写用例场景。
-
第六步:分析师为产品编写故事或需求。
系统功能架构图示例:
- 对应数据流图,通常以3层结构为宜。
- 其中第1层数据流图(中央监控、病症监控 ...),对应一个个业务用例(功能模块),这里以3 ~ 7个模块为宜。
软件开发结构化建模分析
- 软件模型:对软件系统在各个开发阶段本质特性的描述,它要反映软件系统的形成过程。
- 领域模型:也叫业务模型,描述软件所要服务的业务领域的业务状况和业务关系。
- 需求模型:描述软件可向用户提供的外在特性,包括软件的目标、功能、性能等。
- 设计模型:软件中具体模块的设计方案(GoF23种设计模式),详细设计、界面和数据库等。
- 实现模型:软件的具体编码实现,软件的实现结构。
- 测试模型:测试软件的模型描述。
- 软件建模方法:
- 面向功能
- 面向数据
- 面向对象
- 结构化分析的模型
- 数据模型(ERD图 Entity Relationship Diagram)
- 功能模型(DFD数据流图 Data Flow Diagram)
- 行为模型:包括交互模型和状态模型。侧重对象之间的交互、状态和活动。(顺序图、状态图、活动图)
数据流图
图片来自:https://www.jianshu.com/p/2bf96cb928b3
业务流程图
好看请赞,养成习惯:) 本文来自博客园,作者:靠谱杨, 转载请注明原文链接:https://www.cnblogs.com/rainbow-1/p/15530069.html
欢迎来我的51CTO博客主页踩一踩 我的51CTO博客
文章中的公众号名称可能有误,请统一搜索:靠谱杨的秘密基地