前言:
今天小伙伴们对“什么是用例描述用例描述包括哪些主要部分”可能比较关切,朋友们都想要知道一些“什么是用例描述用例描述包括哪些主要部分”的相关文章。那么小编也在网上网罗了一些关于“什么是用例描述用例描述包括哪些主要部分””的相关文章,希望看官们能喜欢,朋友们快快来学习一下吧!信息系统的开发方法
1. 结构化方法
把整个系统的开发过程分为若干阶段,然后一步步的依次进行,前一阶段的工作成果是后一阶段的工作依据。该方法注重开发过程的整体性和全局性,理论基础严密,但开发周期长,文档、设计说明繁琐,工作效率低,且不能很好的应对变化。
2. 面向对象方法
强调从现实世界中客观存在的事物(对象)出发来认识问题,使系统开发者减少了对问题域的理解难度,从而使系统能更准确的反映问题域;改善了人员之间的交流和协作,对软件复用提供了强有力的支持。
3. 面向服务方法
所有功能都定义为独立的服务,服务封装了业务上稳定、重复出现的功能和构件,服务之间通信使用独立的标准化接口,以定义好的顺序调用这些服务来形成业务流程。具有粗粒度、松耦合的特点,加强了系统的灵活性、可复用性、可演化性。
4. 原型化方法
核心在于根据用户初步需求,快速开发一个原型,然后通过反复修改来实现用户的最终需求。
该方法适用于需求前期定义不清、管理决策方法结构化程度不高的系统开发,更宜被用户接受。
需求分析的方法
1. 结构化分析方法
SA方法关注功能的分层和分解,系统的功能被分解到各个功能模块中,通过描述细分的模块功能来达到描述整个系统功能的目的。
2. 面向对象分析方法
OOA的基本任务是运用OO方法,对问题域进行分析和理解,找出描述问题域和系统功能所需的类和对象,定义它们的属性和职责,以及它们之间的各种联系。最终产生一个符合用户需求,并能直接反映问题域和系统功能的面向对象模型及其详细说明。
3. 面向问题域的分析方法
PDOA的特点是重新将重点定位在问题域和需求上,通过对问题域的分类,提供具体问题的相关指南,更多的强调描述,而少强调建模,问题框架是PDOA的核心元素,它的成果只是一份问题域的全面描述和一份需求列表。
构建用例模型经历的4个阶段
1. 识别参与者
存在于系统外部,并与系统进行交互的任何事物。
2. 合并需求获得用例
将获取到的需求分配给参与者,进行合并操作,产生用例。
3. 细化用例描述
主要工作是书写用例规约:用例名称、简要说明、事件流(主事件流、备选事件流)、
非功能需求、前置条件、后置条件、扩展点、优先级。
4. 调整用例模型
利用用例之间的关系来调整用例模型:包含、扩展、泛化。
解释用例之间的包含、扩展和泛化关系的内涵。
1. 包含
从两个或两个以上的用例中提取公共行为,提取出来的公共用例称为抽象用例。
执行基本用例时,每次都必须调用被包含的抽象用例。
可以避免在多个用例中重复的描述同一段事件流。
2. 扩展
一个用例明显的混合了多种不同场景,即根据情况可能发生多种分支,则将这个用例分为一个基本用例和多个扩展用例。
3. 泛化
当多个用例共同拥有一种类似的结构和行为时,将共性抽象成父用例,其它用例作为子用例。子用例是父用例的一种特殊形式,子用例继承了父用例所有的结构、行为、关系。
解释用例图包括的3个元素的含义
1. 参与者:存在于系统外部并与系统进行交互的任何事物。
2. 用例:在系统中执行的一系列动作,这些动作将生成特定参与者可见的价值结果。
3. 通信关联:参与者和用例之间的关系、用例与用例之间的关系。
构建分析模型的4个步骤
1. 定义概念类
2. 确定类之间的关系
3. 为类添加职责
4. 建立交互图
类之间的关系
1. 依赖:两个类A和B,如果B的变化会引起A的变化,则称类A依赖于类B。
2. 关联:不同类的对象实例之间连接的结构关系。
3. 泛化:父类与子类是一般和特殊的关系,子类继承父类,父类是子类的泛化。is-a
4. 继承:不同的类共享属性和方法的一种机制,父类与子类是一般与特殊的关系。
5. 组合:表示类之间整体与部分的关系,部分与整体的生命周期相同。has-a
6. 聚合:表示类之间整体与部分的关系,部分与整体的生命周期不相同。
7. 实现:一个类指定了由另一个类保证执行的契约,一个或多个类可以实现一个接口,接口是对行为的说明。
组合关系和继承关系的区别
封装性:
组合不破坏封装性,局部类的实现细节是不可见的,整体类与局部类之间松耦合,彼此相对独立。
继承破坏封装性,父类的实现细节暴露给子类,子类与父类紧耦合,子类缺乏独立性。
动态组合:
组合支持动态组合,可在运行时动态定义组合的方式,具有较好的可扩展性;
继承关系在编译期确定,不支持动态扩展。
创建对象:
组合创建整体类时,要创建所有局部类的对象。
继承创建子类对象时,不需要创建父类对象。
交互图
1. 顺序图(序列图):强调消息的时间次序。
2. 定时图(计时图):强调消息的实际时间。
3. 通信图(协作图):强调收发消息的对象的组织结构。
4. 交互概览图:强调控制流。
动态图
5. 活动图:强调对象间的控制流程,可以表示并发执行的过程。
6. 状态图:强调事件导致的对象行为。
流程图与活动图的区别?
1. 活动图
强调对象间的控制流程,着重表现系统的行为,可以表示并发执行的过程。
适用于面向对象分析与设计建模。
2. 流程图
强调处理过程,各个处理过程之间有严格的顺序和时间关系,只能表示顺序执行的过程。
适用于结构化设计、梳理业务流程。
数据流图与流程图的区别?
1. 数据流图
强调系统内数据的流动,通过数据流描述系统功能。
适用于结构化分析、系统功能建模。
2. 流程图
强调处理过程,各个处理过程之间有严格的顺序和时间关系,只能表示顺序执行的过程。
适用于结构化设计、梳理业务流程。
顺序图和协作图之间有什么区别?
1. 顺序图
强调消息的时间次序,描述对象之间具有时间顺序的消息交互,重点表现发送和接收消息的时间顺序。
2. 协作图
强调收发消息的对象的组织结构,重点表现对象之间的结构化组织。
结构化分析SA
分析过程
(1) 对系统进行模块划分;
(2) 把识别出的功能分解到各模块中;
(3) 描述细分的模块功能;
分析结果
(1) 数据模型:E-R图
(2) 功能模型:数据流图DFD
(3) 行为模型:状态转换图STD
(4) 数据字典
面向对象分析OOA
分析过程
1. 确定对象和类:对象是一组属性及这组属性上的专用操作的封装体;
1. 确定对象和类:类是一组具有相同属性和方法的对象的集合。
2. 确定结构:组织对象和类,标识结构与关联。
3. 确定主题:总体分析模型,描述对象间的相互作用。
4. 定义属性:定义对象的属性。
5. 定义方法:定义对象的方法(操作)。
分析结果
(1) 用例模型:用例图
(2) 分析模型:类图、交互图(顺序图、定时图、通信图、交互概览图)
用例建模的过程
1. 识别参与者
2. 合并需求获得用例
3. 细化用例描述
4. 调整用例模型
构建分析模型的过程
1. 定义概念类
2. 确定类之间的关系
3. 为类添加职责
4. 建立交互图
面向对象分析中的3个主要活动是什么?
1. 建模系统功能
用例模型:识别参与者、合并需求获得用例、细化用例描述、调整用例模型
分析模型:定义概念类、确定类之间的关系、为类添加职责、建立交互图
2. 发现并确定业务对象
3. 组织对象并确定其关系
组织对象并确定它们之间的关系的步骤是什么?
1. 确定关联关系和多重性
2. 确定泛化/特化关系
3. 确定整体/部分关系
4. 准备类图
从候选对象中筛选业务对象的原则有哪些?
1. 去除含义解释不清楚的对象
2. 去除相同含义的对象
3. 去除不属于系统范围内的对象
4. 去除没有特定独立行为的对象
5. 去除属于另一个对象属性或行为的对象
3种设计类的主要职责
1. 实体类:映射需求中的每个实体,持久化存储,保存需要存储在永久存储体中的信息。
2. 控制类:控制用例工作的类,用于对一个或几个用例所特有的控制行为进行建模,具有协调性。
3. 边界类:封装在用例内、外流动的信息或数据流,位于系统与外界的交接处,用于系统接口与系统外部进行交互。
(1) 实体对象:表示业务域的事实数据并需要持久化存储的对象类型。
(2) 控制对象:表示业务系统中应用逻辑和业务规则的对象类型。
(3) 接口对象:表示用户与系统之间交互方式的对象类型。
FAST系统分析方法的5个阶段,每个阶段的主要任务
1. 范围定义(初始研究)
(1) 列出问题和机会
(2) 协商项目的初步范围
(3) 评估项目价值
(4) 计划项目进度表和预算
(5) 汇报项目计划
2. 问题分析
(1) 研究问题领域
(2) 分析问题和机会
(3) 分析业务过程
(4) 制定系统改进目标
(5) 修改项目计划
(6) 汇报调查结果和建议
3. 需求分析
(1) 绘制系统上下文范围关系图
(2) 创建用户界面原型
(3) 分析需求可行性
(4) 确定需求优先级
(5) 为需求建立模型
(6) 创建数据字典
(7) 使用QFD质量功能部署
4. 逻辑设计
(1) 结构化功能需求
(2) 建立功能需求的原型
(3) 验证功能需求
(4) 定义验收测试用例
5. 决策分析
(1) 确定候选方案
(2) 分析候选方案
(3) 比较候选方案
(4) 推荐一种系统方案
模型驱动分析
中心点
使用的模型的类型
基本差别
结构化分析
过程
功能模型:数据流图DFD
数据模型:E-R图
行为模型:状态转换图STD
关注功能的分层和分解,自顶向下,逐层分解,面向数据流
面向对象分析
对象
用例模型:用例图
分析模型:类图、交互图
把信息系统看作是一组封装了数据和过程的对象
信息工程
数据
数据模型:E-R图
强调对数据需求的分析