【软件工程】软件工程需求分析——面向对象分析

halo~我是bay_Tong桐小白
本文内容是桐小白个人对所学知识进行的总结和分享,知识点会不定期进行编辑更新和完善,了解最近更新内容可参看更新日志,欢迎各位大神留言、指点

软件工程需求分析——面向对象分析

        • 【更新日志】
  • 面向对象分析概述
  • 建立用例模型
  • 建立对象模型(更新中……)
  • 建立动态模型(更新中……)
  • 建立数据模型(更新中……)

【更新日志】

最近更新:

  • 暂无编辑记录,持续更新中……

面向对象分析概述

问题域与系统责任

  • 问题域:在软件工程中,问题域是指被开发系统的应用领域,即在客观世界中由该系统处理的业务范围
  • 系统责任:所开发的软件系统应该具备的职能

面向对象分析(OOA)

强调运用面向对象方法,对问题域和系统责任进行分析和理解,找出描述问题和系统责任所需要的对象,定义对象的属性、操作以及对象之间的关系,建立一个符合问题域、满足用户功能需求的OOA模型

面向对象分析主要活动

  • 与客户进行沟通、了解用户需求、建立需求模型
  • 表示问题域中的对象,分析对象承担的职责
  • 分析对象与对象间的关系
  • 定义对象间的交互

这些活动需要反复迭代,直至模型完成

【软件工程】软件工程需求分析——面向对象分析
确定需求用例

从用户的视角看,一个用例是参与者与系统之间的一次典型的交互作用;从系统内部的视角出发,一个用例代表系统执行的一系列动作,动作的执行结果能够被外部的参与者察觉。可以从以下几个方面获取用例:

  • 从参与者角度获取。识别参与者的责任是尊者参与者与系统交互理由的良好基础
  • 从系统功能的角度获取。完成一项功能的一组动作序列要描述在一个用例中,通常,以用例中的动作为线索能发现其他用例
  • 利用场景获取用例。即仅关注具体的业务活动,确定谁是扮演者,具体做了哪些事情,做这些事情的目的是什么,将本质上相同的场景抽象为一个用例

用例规约描述(规格说明):对用例的完整描述包括用例名称、参与者、前置条件、后置条件、一个主事件流、零到多个备选事件流

  • 前置条件:规定在用例中场景开始之前必须为“真”的条件
  • 后置条件:规定在用例结束后必须为“真”的条件
  • 主事件流:表示正常情况下参与者与系统之间的信息交互及动作序列
  • 备选事件流:表示特殊情况或异常情况下的信息交互及动作序列

每个用例均应给出用例的规格说明

以银行ATM转账用例为例,规约描述如下:

【软件工程】软件工程需求分析——面向对象分析
这5项活动的抽象层次不同,在实际面向对象分析时,总体上是按照自顶向下的顺序进行的,但不需要严格遵守这种原则,也无需彻底完成一项工作后再开始另外一项工作

建立动态模型(更新中……)

动态模型描述与操作时间和顺序有关的系统特征、影响更改的事件、事件的序列、事件的环境以及事件的组织

在UML中动态模型的描述工具有顺序图、协作图、活动图、状态图等

建立数据模型(更新中……)

数据模型是数据特征的抽象,从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表示与操作提供一个抽象的框架

数据模型所描述的内容有三部分,分别是数据结构、数据操作和数据约束

  • 数据结构:数据模型中的数据结构主要描述数据的类型、内容、性质以及数据间的联系等。数据结构是数据模型的基础,数据操作和约束都建立在数据结构上。不同的数据结构具有不同的操作和约束
  • 数据操作:数据模型中数据操作主要描述在相应的数据结构上的操作类型和操作方式
  • 数据模型中的数据约束主要描述数据结构内数据间的语法、词义联系、它们之间的制约和依存关系,以及数据动态变化的规则,以保证数据的正确、有效和相容

由类图可自动生成数据库表

持续更新中……
我是桐小白,一个摸爬滚打的计算机小白

来源:bay_Tong桐小白

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年11月21日
下一篇 2020年11月21日

相关推荐