面向对象软件开发过程

合集下载

第十六章 RUP软件开发过程(UML)

第十六章 RUP软件开发过程(UML)

RUPr
25
面 向 对 象 技 术
7. 设置和变更管理(Configuration and Change Management)

第 十 六 章
软 件 开 发 过 程
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
UML
跟踪并维护系统所有产品的完整性和一致 性。
面 向 对 象 技 术
9. 环境(Environment)

第 十 六 章
软 件 开 发 过 程
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
UML
为组织提供过程管理和工具的支持。
RUPr
28
面 向 对 象 技 术
16.3.2 RUP的四个阶段

第 十 六 章
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
RUPr
8
面 向 对 象 技 术
16.2.1 RUP过程的背景


第 十 六 章
Rational Unified Process(RUP,统一开发 过程)是一套面向对象的软件工程过程。 RUP说明了如何有效地使用成熟技术开发软 件。
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
RUPr
6
面 向 对 象 技 术
16.2 RUP简介

第 十 六 章
软 件 开 发 过 程
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
UML
16.2.1 RUP过程的背景 16.2.2 传统的软件开发模型

面向对象的软件开发过程中的需求分析与建模研究

面向对象的软件开发过程中的需求分析与建模研究

面向对象的软件开发过程中的需求分析与建模研究第一章引言随着信息技术的快速发展,软件已逐渐成为了现代社会不可或缺的组成部分。

而软件开发过程中的需求分析与建模是确保软件开发质量的重要步骤,因此在面向对象的软件开发中,需求分析与建模研究具有重要的意义和价值。

本文将从面向对象的软件开发出发,介绍需求分析和建模的概念、方法和工具,并重点探讨基于面向对象的软件开发过程中的需求分析与建模研究。

第二章面向对象的软件开发面向对象的软件开发是一种软件开发方法,它以对象为中心,实现了软件的高内聚、低耦合和易维护性,具有较高的开发效率和软件重用性。

在面向对象的软件开发中,需求分析和建模是其中的关键环节。

基于面向对象的软件开发过程主要包括以下几个阶段:1.需求分析阶段。

在该阶段中,需求分析人员将收集和分析用户和系统需求,以确定软件开发的需求和目标。

2.设计阶段。

在设计阶段中,设计人员将根据需求分析阶段的结果,设计面向对象的软件系统架构和对象模型。

3.编码和测试阶段。

在这个阶段中,开发人员将根据设计人员的指示开发代码和进行测试,以确保软件能够按要求正确运行。

4.部署和维护阶段。

在这个阶段中,开发人员将软件部署到用户环境中,并进行维护和修复错误。

在整个软件开发过程中,需求分析和建模是相互关联、相互作用的关键环节。

第三章需求分析与建模基础知识3.1 需求分析需求分析是软件开发的首要任务,它是确保软件开发符合用户需求的前提条件。

需求分析包括两个方面,即功能需求和非功能需求。

1.功能需求功能需求是软件开发中最基本的需求,它是用户对软件功能的具体要求。

在软件开发中,功能需求可以通过用例图、活动图、状态图和顺序图等方法进行描述和分析。

2.非功能需求非功能需求是软件开发中的另一个重要因素,它主要描述软件的性能、可靠性、安全性、可维护性和可移植性等方面的要求。

常用方法包括场景模型、质量属性树和系统特征模型等。

3.2 需求建模需求建模是将需求分析的结果转换为相应的模型,以便于软件设计和开发人员的理解和使用。

面向对象 发展历程

面向对象 发展历程

面向对象发展历程面向对象编程(Object-Oriented Programming,简称OOP)是一种软件开发方法,它以对象作为程序的基本单位,将数据和操作封装在一起,实现了数据的抽象、封装、继承和多态等特性。

面向对象的发展历程可以追溯到20世纪70年代,以下是面向对象发展的一些重要里程碑:1. Simula语言(1967年):Simula是第一个支持面向对象编程的语言,它是由挪威计算机科学家Ole-Johan Dahl和Kristen Nygaard开发的。

Simula引入了类和对象的概念,并提供了一些面向对象的关键特性,如继承和多态。

2. Smalltalk语言(1972年):Smalltalk是第一门完全面向对象的编程语言,它由Xerox PARC实验室的Alan Kay等人开发。

Smalltalk引入了封装、消息传递和动态绑定等概念,对后续的面向对象语言设计产生了重要影响。

3. C++语言(1983年):C++是一种面向对象的扩展C语言,由Bjarne Stroustrup开发。

C++在C语言的基础上引入了类、对象、继承、多态等特性,成为当今广泛应用的高级编程语言之一。

4. Objective-C语言(1984年):Objective-C是一种面向对象的扩展C语言,由Brad Cox和Tom Love开发。

Objective-C与C++类似,支持类、对象、继承等特性,但它更加动态灵活,被广泛用于苹果公司的iOS和macOS开发。

5. Java语言(1995年):Java是一种面向对象的编程语言,由Sun Microsystems的James Gosling等人开发。

Java继承了C++的面向对象特性,但去除了一些复杂和容易出错的特性,比如操作符重载和多重继承,提供了更安全、可靠的软件开发环境。

6. C#语言(2000年):C#是一种面向对象的编程语言,由Microsoft公司开发。

C#在语法上类似于Java,但引入了许多新的特性,如委托、属性和事件等,提供了更强大和灵活的开发工具。

软件工程面向对象软件开发方法

软件工程面向对象软件开发方法

软件工程面向对象软件开发方法引言在当前的软件开发领域中,面向对象编程(Object-oriented programming,简称OOP)是一种主要的软件开发方法。

面向对象软件开发方法基于面向对象的程序设计理念,通过将问题分解为对象,并通过对象之间的交互来解决问题。

本文将介绍面向对象软件开发的概念、特性以及在软件工程中的重要性。

面向对象软件开发概述面向对象软件开发是一种以对象为核心的软件开发方法,其中一个对象可以是一个类的实例或一个类本身。

对象在面向对象软件开发中被视为具有状态、行为和标识的实体。

该方法通过将问题分解为对象,并定义对象之间的关系和交互来解决问题。

面向对象软件开发方法有以下几个基本特征:1.封装(Encapsulation):通过封装将数据和相关操作组合在一起,只暴露必要的接口给外部使用。

封装可以使得对象的内部实现对外部不可见,提高了代码的可维护性和安全性。

2.继承(Inheritance):通过继承,在已有类的基础上创建新的类。

继承可以促使代码重用和层次化设计。

3.多态(Polymorphism):多态允许同一操作作用于不同类型的对象上,并产生不同的结果。

这种特性增加了代码的灵活性和可扩展性。

面向对象软件开发方法的优势包括:•提高开发效率:通过封装和抽象的机制,可以更好地管理和组织大型项目的代码,减少开发时间和维护成本。

•提高代码复用性:通过继承和多态的机制,可以避免重复编写相似的代码,提高了代码的复用性和可维护性。

•提高软件的可扩展性:面向对象软件开发方法的灵活性使得系统易于进行修改和扩展,能够快速适应变化的需求和技术。

面向对象软件开发流程面向对象软件开发方法通常包括以下几个主要步骤:在需求分析阶段,软件工程师与客户交流,确保准确理解客户的需求和问题。

通过讨论和分析,确定系统的功能需求、非功能需求和约束条件。

领域建模领域建模是通过抽象和建模来描述问题领域的过程。

通过识别实体、属性和关系,构建领域模型,这些模型将在后续的设计和实现阶段中使用。

第7章面向对象软件开发过程-UP介绍

第7章面向对象软件开发过程-UP介绍
10
§7a.2 UP的阶段(细化阶段,elaboration)
细化阶段的产出:
–用例模型(完成至少80%)……所有用例均 被识别,大多数用例描述被开发; –补充捕获非功能性要求和未关联于特定用例 要求的需求(补充规范) –软件体系结构描述 –可执行的软件原型 –经修订过的技术风险清单和商业案例 –总体项目的开发计划,包括粗粒度的项目计 划,显示迭代过程和对应的审核标准; –用户手册的初始版本(可选)
–进行β测试以期达到最终用户的需要; –β测试版本和旧系统的并轨; –转换功能数据库; –对最终用户和产品支持人员的培训; –提交给市场和产品销售部门; –和具体部署相关的工程活动; –协调bug修订、改进性能和可用性(usability)等工 作; –基于完整的构想和产品验收标准对最终部署做出评估; –达到用户要求的满意度; –达成各风险承担人对产品部署基线已经完成的共识; –达成各风险承担人对产品部署符合构想中标准的共识
23
§7a.4 核心工作流 –工作流是产生具有可观察结果的活动序列
24
§7a.4 核心工作流
25
§7a.4 核心工作流(商业建模)
商业建模
–大多数商业工程化的主要问题是软件工程人 员和商业工程人员之间不能正确地交流,这 导致了商业工程的产出没有作为软件开发输 入而正确地被使用,反之亦然。 –在商业建模中使用商业用例来文档化商业过 程,从而确保了组织中所有商业过程人员达 到共识。 –商业用例被分析以理解商业过程如何被业务 支持,而这些在商业对象模型中被核实。 –许多项目可能不进行商业建模。
26
§7a.4 核心工作流(需求)
需求
–是描述系统应“做什么”,并允许开发人员 和用户就该描述达成共识。
创建构想 建立用例模型

面向对象的软件开发过程

面向对象的软件开发过程

面向对象的软件开发过程【摘要】本文介绍了面向对象技术的基本思想,阐述了面向对象软件开发的分析与设计实现过程,说明了面向对象技术在软件开发中的应用,总结出面向对象技术在程序开发中的优势。

【关键词】面向对象;软件开发1面向对象技术的基本思想随着计算机应用领域的不断扩大,软件的规模和复杂性也在不断增加,我们需要按照更科学、有效的方法组织软件的生产与管理。

面向对象技术首先在编程领域兴起,并逐渐发展成熟,并随着面向对象的测试、集成等技术的出现而发展为一套贯穿整个软件生命周期的方法体系。

面向对象技术首先在编程领域兴起,并逐渐发展成熟,并随着面向对象的测试、集成等技术的出现而发展为一套贯穿整个软件生命周期的方法体系。

面向对象方法的基本思想是:从客观存在的事物(即对象) 出发来构造软件系统,并在系统构造中尽可能运用人类的自然思维方式。

具体地讲,面向对象技术是从问题域中客观存在的事物出发构造软件系统,用对象作为这些事物的抽象表示,并以此作为系统的基本构成单位。

每个对象都有其属性和方法,属性表示事物的静态特征, 方法表示事物的动态特征。

对象的属性和方法结合为一体,对外屏蔽其内部细节,称作封装。

把具有相同属性和相同方法的对象归为一类,类是对象的抽象描述,每个对象是它所属类的一个实例。

通过在不同程度上运用抽象的原则,可以得到基类和子类,子类继承基类的属性和方法。

面向对象的三个基本特征:封装——是把客观事物封装成抽象的类,可以隐藏实现细节,使得代码模块化;继承——使用现有类的所有功能,并在无需重写原来类的情况下对这些功能进行扩展;多态——指同一消息作用于不同的对象时,具有不同的处理方案和处理结果,即所谓的“同一接口, 多种方法”,增强了程序的灵活性。

2面向对象的分析与设计实现面向对象的程序设计以解决的问题中所涉及的各种对象为主要矛盾,力图从实际问题中抽象出封装了数据和操作的对象,通过定义属性和操作来表述他们的特征和功能,定义接口来描述他们的地位及与其他对象的关系,最终形成一个可理解、可扩充、可维护的动态对象模型。

软件开发实习报告:面向对象编程的实践与总结

软件开发实习报告:面向对象编程的实践与总结1. 引言面向对象编程(OOP)是一种软件开发方法,它将程序组织成对象的集合,每个对象都有自己的状态和行为。

在本次的软件开发实习中,我有幸参与了一个采用面向对象编程的项目,下面我将分享我在实习中的实践经验和总结。

2. 实践过程2.1 项目背景本次实习项目是开发一个图书管理系统,主要功能包括图书的借阅、归还、查询等。

这是一个比较典型的应用场景,适合用面向对象的方法进行开发。

2.2 全局设计在开始编写代码之前,我们首先进行了全局设计。

根据需求,我们确定了几个类:图书、用户、图书管理员等。

每个类都有自己的属性和方法,它们通过交互实现系统的功能。

2.3 类的设计与实现在面向对象编程中,类是编程的基本单元。

我们首先根据全局设计确定了各个类的属性和方法,然后逐个实现。

在实现的过程中,我们充分运用了面向对象编程的特性,例如封装、继承、多态等,使得程序的结构更加清晰,代码的复用性更高。

2.4 单元测试与调试在实现每个类的时候,我们使用了单元测试的方法进行验证。

通过编写测试用例,我们可以验证代码的正确性,及时发现和修复潜在的bug。

此外,我们还使用了调试工具来辅助排查程序中的错误。

3. 实践总结3.1 优点面向对象编程具有很多优点,我们在实践中也感受到了它带来的好处。

首先,面向对象编程使得程序的结构更加清晰。

每个类都有自己的职责,通过类与类之间的交互,完成系统的功能。

这种分而治之的思想使得代码的逻辑更加清晰,可读性更高。

其次,面向对象编程提供了良好的代码复用性。

通过继承和多态,我们可以重复使用已有的代码,减少了代码的重复编写,提升了开发效率。

最后,面向对象编程使得代码更加容易维护。

由于代码的结构清晰,我们可以更快地定位和修复bug,同时也降低了修改代码带来的影响。

3.2 不足尽管面向对象编程有许多优点,但也存在一些不足之处。

首先,面向对象编程比较抽象和复杂,对于初学者来说学习成本较高。

面向对象的软件开发方法和技术

面向对象的软件开发方法和技术一、引言人类对计算机的需求日益增长,软件开发在现代社会中变得越来越重要。

面向对象的软件开发方法和技术在实践中证明是一种行之有效的开发方式。

二、面向对象编程的概念面向对象编程(Object Oriented Programming,OOP)是一种编程范式,该范式将所有的代码都视为对象,每个对象都有其自身的属性和方法。

面向对象的编程范式下,程序中的对象相互合作,共同实现程序的目标。

三、面向对象软件开发方法面向对象软件开发方法是一种在面向对象编程范式下的软件开发方法,它包括以下步骤:1. 定义问题定义问题是软件开发的首要任务。

在开发软件之前,开发人员需要清楚地了解软件应该具有的目标以及实现这些目标所应采取的方案。

2. 需求分析通过需求分析,开发人员能够深入了解软件的用途和功能。

在这一步骤中,开发人员需要与用户沟通,明确软件需求,进而把用户期望的功能和开发的技术结合起来。

3. 设计在软件设计阶段中,面向对象的思想体现得最为明显。

开发人员将系统模块化,将模块看作对象,并设定对象之间的交互规则。

同时,开发人员在设计过程中也要考虑程序的可维护性,易读性等。

4. 编程编程是将设计转换为实践的过程。

在这一步骤中,开发人员利用编程语言实现系统的各个模块。

在面向对象编程的方法中,开发人员应该以对象为中心完成开发,即将每个对象分别编写好,再实现其之间的互动。

5. 测试测试是软件开发过程中至关重要的一个阶段。

测试的目的是验证程序是否按照设计的要求正常工作。

四、面向对象软件开发技术面向对象软件开发技术包括以下四个方面:1. 继承继承是面向对象编程中的一个基本概念。

它允许开发人员通过扩展已有的类来创建一个新的类。

2. 多态多态是一种对象的多种表现形式的能力。

通过多态,程序可以利用同一个函数完成多种类型的操作。

3. 封装封装允许开发人员在一个对象内部隐藏数据和方法,只暴露必要的接口。

4. 抽象抽象允许开发人员将对象仅仅看作是规则和接口的集合。

面向对象的软件设计实践

面向对象的软件设计实践随着现代信息技术的高速发展,软件开发已经成为了人们生活和工作中不可或缺的一部分。

而面向对象的软件设计方法已经成为了一种被广泛采用的设计方法,它可以有效地提高软件的可维护性、可扩展性和可重用性。

面向对象的软件设计方法以对象为中心,将实体的抽象化作为核心思想,利用类、继承、多态等概念,来描述系统中的各种实体对象及其相互关系。

采用这些概念,可以将系统中的复杂对象进行有效地分解,并将它们之间的关系以及行为特性进行描述,然后将这些描述用软件工具来实现。

面向对象的软件设计方法是一个非常重要的概念,也是软件开发工程学科中的基础概念。

下面,本文将从各个方面来介绍面向对象的软件设计实践。

一、面向对象的设计原则在进行面向对象的软件设计时,我们需要尊重一些基本原则。

这些原则可以提高我们软件设计的质量和效率。

以下是一些重要的面向对象的设计原则:1、单一职责原则(SRP)这一原则也叫“单一功能原则”。

它指出一个类应该只有一个单一的职责。

也就是说,一个类只应该有一个引起它变化的原因。

SRP原则可以帮助我们提高代码的可重用性和可维护性。

2、开闭原则(OCP)这一原则指出“开放-封闭”原则。

软件的设计应该是开放扩展的但是封闭修改的。

换句话说,对于那些高度可变的需求,我们应该保持系统的灵活性以使之适应这些变化,但是我们不应该去打破那些已经运作良好的模块。

3、接口隔离原则(ISP)这一原则指出,应该为每一个客户端定制一个接口,而不是为一个类定制一个庞大而臃肿的接口。

这个原则可以帮助我们提高系统的可扩展性和可维护性。

4、依赖倒置原则(DIP)这一原则指出,应该依赖于抽象而不是具体的实现。

通过DIP原则,我们可以减小不同模块之间的关联度,从而提高系统的模块化程度。

二、面向对象的设计模式面向对象的设计方法是建立在设计模式之上的,设计模式可以视为软件设计界的调配图谱。

在面向对象软件设计中,有很多模式可以提高我们的设计效率和质量。

第6章 面向对象与统一软件开发过程


图6-27确定了“账户管理”包包含几个由其他包中的类所Байду номын сангаас用的类,即“买 主账户管理”和“卖主账户管理”都使用“账户管理”包的“账户”类。
在分析阶段,从多个不同的分析类中抽取共享和公用的行为时应该使用泛 化。例如,“账单”和“订单”类有相似的职责。二者都是针对一般对象,如 “贸易”类的泛化,如图6-28所示。
下面给出了“取款”用况实现的事件流。 (1)银行储户选择“取款”并向“ATM接口”表明身份。 (2)“ATM接口”请求“事务管理”取款,“事务管理”负责将提取现金 的整个动作序列作为原子事务执行,以便从账户中扣除取款金额并将现金分发 给银行储户。 (3)“事务管理”请求“账户管理”取款,“账户管理”决定能否取出现 金。如果可以取款,则从账户中扣除取款的金额并返回应答; (4)“事务管理”授权“ATM接口”分发货币。 (5)“ATM接口”将现金分发给银行储户。
用况模型分析模型(概念性类元间的协作)设计模型(类元)
2.捕获用况
捕获用况是统一过程的第1个活动。 将功能性需求表示为用况模型中的用况,参与者在用况交互时使用系统, 系统的参与者和用况组成用况模型。
参与者可以是与系统发生交互的人活着其他系统活着外部硬件。参与者通 过执行用况与系统通信 用况规定了一个动作序列,系统执行用况并对特定参与者参数可见结果。
设计模型通过使用分析模型作为主要输入而被创建,其中要定义类元、类元 之间的关系及实现这些用况的动作,它相对于分析模型更加注重实际。分析模型 中的用况实现可跟踪到设计模型中的用况实现,图6-5给出了类的进一步细分。
图6-6给出了ATM基本的设计类图,该图比分析模型的类图展现了更多的细节。
图6-7给出了“取款”用况的部分顺序图。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
15
子系统的设计准则是: (1) 子系统应具有定义良好的接口,通过接
口和系统的其它部分通信; (2) 除了少数的“通信类” 外,子系统中的类
应只和该子系统中的其它类协作; (3) 子系统的数量不宜太多; (4) 可以在子系统内部再次划分,以降低复杂
性。
16
2) 标识问题本身的并发性,并为子系统分配处理 器
通过对对象--行为模型的分析,可发现系统 的并发性。如果对象(或子系统)不是同时活动 的,则它们不需并发处理,此时这些对象(或子 系统)可以在同一个处理器上实现。反之,如果 对象(或子系统)必须对一些事件同时异步地动 作,则它们被视为并发的,此时,可以将并发的 子系统分别分配到不同的处理器,或者分配在同 一个处理器,而由操作系统提供并发支持。
整体—部分结构反映了类间的整体与部分关系。值得注 意的是,整体—部分关系是对对象而言的,而不是对类的。 整体—部分关系是一种“has a ”的关系,如“汽车”有“发 动机”。同样,整体—部分结构也具有层次结构。
8
有的面向对象方法中,把互相协作以完 成一组紧密结合在一起的责任的类的集合定 义为主题(subject)或子系统(subsystem)。 主题和子系统都是一种抽象,从外界观察系 统时,主题或子系统可看作黑盒,它有自己 的一组责任和协作者,观察者不必关心其细 节。观察一个主题或子系统的内部时,观察 者可以把注意力集中在系统的某一个方面。 因此,主题或子系统实际上是系统更高抽象 层次上的一种描述。
3. 消息设计 使用对象间的协作和对象--关系模型,设计消 息模型
4. 复审 复审设计模型并在需要时迭代。
14
1. 系统设计 1) 将分析模型划分成子系统
在OO系统设计中,我们把分析模型中紧密相 关的类、关系等设计共的性质, 它们可能都涉及完成相同的功能;它们可能驻留在 相同的产品硬件中;或者它们可能管理相同的类和 资源。子系统由它们的责任所刻画,即,一个子系 统可以通过它提供的服务来标识。在OOD中,这 种服务是完成特定功能的一组操作。
定的对象相关联。 • 为每个用况创建事件轨迹(event trace)。 • 为系统建造状态机图。 • 复审对象--行为模型,以验证准确性和一致性。
11
内容摘要
• 面向对象的分析过程 • 面向对象的设计过程 • Rational统一过程
12
面向对象设计 (Object_Oriented Design)
软件工程
第8章 面向对象软件开发过程
内容摘要
• 面向对象的分析过程 • 面向对象的设计过程 • Rational统一过程
2
内容摘要
• 面向对象的分析过程 • 面向对象的设计过程 • Rational统一过程
3
面向对象分析 Object-Oriented Analysis
面向对象分析的一般步骤如下: 1. 获取客户对系统的需求:包括标识场景(scenario)和用况
17
3) 任务管理设计 Coad和Yourdon提出如下管理并发任务对象的设 计策略: (1) 确定任务的类型; (2) 必要时,定义协调者任务和关联的对象; (3) 将协调者任务和其它任务集成。
通常可通过了解任务是如何被启动的来确定 任务的类型,如事件驱动任务,时钟驱动任务。 每个任务应该定义其优先级,并识别关键任务。 当有多个任务时还可以考虑增加一个协调者任务, 以控制这些任务协同工作。
一般—特殊(generalization—specialization)结构 整体—部分(whole—part)结构。
一般—特殊结构是一种分类结构,反映了类间的一般与 特殊的关系。一般类与特殊类之间是一种“is a”的关系,如: 汽车是一种交通工具。同样,特殊类还可以分为更特殊的类, 这样可形成类的层次结构。
18
4) 数据管理设计 通常数据管理设计成层次模式,其目的是将
数据的物理存储及操纵与系统的业务逻辑加以 分离。
数据管理的设计包括设计系统中各种数据对 象的存储方式(如内部数据结构、文件、数据 库),以及设计相应的服务,即为要储存的对 象增加所需的属性和操作。
面向对象设计的一般步骤如下: 1. 系统设计
• 将子系统分配到处理器 • 选择实现数据管理、界面支持和任务
管理的设计策略 • 为系统设计合适的控制机制 • 复审并考虑权衡(折衷)
13
2. 对象设计 • 在过程级别(procedural lavel)设计每 个操作,即设计每个操作的实现细节 • 定义内部类 • 为类属性设计内部数据结构
9
4. 建造对象——关系模型 对象--关系模型描述了系统的静态结构,
它指出了类间的关系(relationship)。 类之间的关系有关联、依赖、泛化、实现
等。
10
5. 建立对象——行为模型 对象--行为模型描述了系统的动态行为,
它们指明系统如何响应外部的事件或激 励(stimulus)。
建模的步骤如下: • 评估所有的用况,以完全理解系统中交互的序列。 • 标识驱动交互序列的事件,理解这些事件如何和特
5
注意,执行者与用户是不同的两个概念, 一个用户可以扮演几个角色(执行者),一 个执行者可以是用户,也可以是其他系统 (应用程序或设备)。得到的用况必须进行 复审,以使需求完整。
6
2. 标识类和对象
类和对象来自问题领域。
可以先标识候选类,然后进行筛选
7
3. 定义类的结构和层次 类的结构主要有两种:
(use case,也称用例),以及建造需求模型 2. 用基本的需求为指南,来选择类和对象(包括属性和操作)。 3. 定义类的结构和层次。 4. 建造对象—关系模型。 5. 建造对象—行为模型。 6. 利用用况/场景来复审分析模型。
4
分析过程
1. 获取客户对系统的需求
需求获取必须让客户与开发者充分地交流,这里介绍一种 采用用况来收集客户需求的技术。分析员首先标识使用该系 统的不同的执行者(actor),这些执行者代表使用该系统 的不同的角色。每个执行者可以叙述他如何使用系统,或者 说他需要系统提供什么功能。执行者提出的每一个使用场景 (或功能)都是系统的一个用况的实例,一个用况描述了系 统的一种用法(或一个功能),所有执行者提出的所有用况 构成系统的完整的需求。
相关文档
最新文档