ImageVerifierCode 换一换
格式:PPT , 页数:47 ,大小:3.62MB ,
文档编号:4460030      下载积分:25 文币
快捷下载
登录下载
邮箱/手机:
温馨提示:
系统将以此处填写的邮箱或者手机号生成账号和密码,方便再次下载。 如填写123,账号和密码都是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

优惠套餐
 

温馨提示:若手机下载失败,请复制以下地址【https://www.163wenku.com/d-4460030.html】到电脑浏览器->登陆(账号密码均为手机号或邮箱;不要扫码登陆)->重新下载(不再收费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  
下载须知

1: 试题类文档的标题没说有答案,则无答案;主观题也可能无答案。PPT的音视频可能无法播放。 请谨慎下单,一旦售出,概不退换。
2: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
3: 本文为用户(晟晟文业)主动上传,所有收益归该用户。163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

1,本文(需求工程培训课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!

需求工程培训课件.ppt

1、西安交通大学 刘海岩1l领域分析领域分析l需求获取需求获取l需求分析与建模需求分析与建模l需求规约与验证需求规约与验证l需求管理需求管理西安交通大学 刘海岩21、领域分析的概念、领域分析的概念 软件工程要处理两类工程:软件工程要处理两类工程:(1)面向用户的业务过程工程)面向用户的业务过程工程(2)面向市场的产品工程)面向市场的产品工程(见下图)(见下图)领域领域(domain),就是指解决问题的范围,从最高层的,就是指解决问题的范围,从最高层的角度(业务域)描述系统。角度(业务域)描述系统。系统分析可以发生在许多不同的抽象层次:系统分析可以发生在许多不同的抽象层次:在业务或企业级层次,可定义

2、描述模拟整个业务的功在业务或企业级层次,可定义描述模拟整个业务的功能、结构和行为的模型;能、结构和行为的模型;在应用层次,建模着重于特定的用户需求。在应用层次,建模着重于特定的用户需求。西安交通大学 刘海岩3企业企业业务域业务域业务域业务域信息系统信息系统过程需求过程需求信息战略计划信息战略计划(全局视图)(全局视图)业务域分析业务域分析(领域视图)(领域视图)系统分析与系统分析与设计建模设计建模构造与集成构造与集成业务过程工程层次业务过程工程层次西安交通大学 刘海岩4完整产品完整产品软件软件能力能力功能功能过程需求过程需求 产品需求产品需求(全局视图)(全局视图)构件工程构件工程(领域视图)

3、(领域视图)分析与设计分析与设计建模建模构造与集成构造与集成产品工程层次产品工程层次数据数据行为行为硬件硬件西安交通大学 刘海岩5 Firesmith对软件领域分析的定义是:领域分析指对软件领域分析的定义是:领域分析指特定应用领域中公共需求的标识、分析和规约,即发特定应用领域中公共需求的标识、分析和规约,即发现或创建那些可广泛应用的对象,其现或创建那些可广泛应用的对象,其目的目的使它们使它们在应在应用域中多个项目间能被复用用域中多个项目间能被复用。领域分析的角色是设计。领域分析的角色是设计和建造可复用构件(类似于制造环境中工具制造者的和建造可复用构件(类似于制造环境中工具制造者的角色),它们被

4、很多相似但不一定是相同的应用开发角色),它们被很多相似但不一定是相同的应用开发的人所使用。的人所使用。Lethbridge的定义是:领域分析是软件工程师的定义是:领域分析是软件工程师了解了解背景信息的过程背景信息的过程。为了理解问题并在需求分析和软件。为了理解问题并在需求分析和软件工程过程的其他阶段作出合理的决策,软件工程师必工程过程的其他阶段作出合理的决策,软件工程师必须了解使用该类软件的一般性商业和技术领域中足够须了解使用该类软件的一般性商业和技术领域中足够的信息。的信息。西安交通大学 刘海岩6 2、领域分析过程的活动领域分析过程的活动 (1)定义被调查的领域定义被调查的领域中感兴趣的项中

5、感兴趣的项 从从业务域、系统类型或产品范畴业务域、系统类型或产品范畴中中分离分离出出感兴趣感兴趣的的“项项”。感兴趣的项包括:现存感兴趣的项包括:现存的的应用应用软件软件的规约、设计的规约、设计和代码,支持和代码,支持软件软件(如(如GUI或数据库访问或数据库访问构件构件)以及以及和领域相关的构件库以及测试案例。和领域相关的构件库以及测试案例。(2)对从领域中抽取出来的项进行分类并建立分类)对从领域中抽取出来的项进行分类并建立分类层次。层次。西安交通大学 刘海岩7 (3)收集领域中应用)收集领域中应用系统系统的代表性样本。的代表性样本。(4)分析样本中的每个应用)分析样本中的每个应用 标识候选

6、的每个可复用对象。标识候选的每个可复用对象。指明对象被标识为可复用的理由。指明对象被标识为可复用的理由。定义对象的适应性。定义对象的适应性。估算在领域中复用这些对象的应用的百分率。估算在领域中复用这些对象的应用的百分率。使用配置管理技术控制这些对象。使用配置管理技术控制这些对象。(5)为对象开发分析模型。)为对象开发分析模型。西安交通大学 刘海岩8 3、领域分析的价值领域分析的价值 领域分析除了为软件复用奠定基础外,还为较低领域分析除了为软件复用奠定基础外,还为较低抽象层次的一般的系统分析带来如下好处:抽象层次的一般的系统分析带来如下好处:快速开发。有助于集中精力关注最重要的问题,快速开发。有

7、助于集中精力关注最重要的问题,更有效地与相关人员进行交流,可以更快的确定需求。更有效地与相关人员进行交流,可以更快的确定需求。优化系统。了解领域的细节有助于保证所采纳的优化系统。了解领域的细节有助于保证所采纳的解决方案更有效地解决用户的问题。会少犯错误,知解决方案更有效地解决用户的问题。会少犯错误,知道应该遵循那些规程和标准。领域分析给出一个应用道应该遵循那些规程和标准。领域分析给出一个应用领域的总体视图,会引导出更好的抽象从而改进设计。领域的总体视图,会引导出更好的抽象从而改进设计。有了领域知识,就可以洞察新兴趋势及进一步开有了领域知识,就可以洞察新兴趋势及进一步开发的机会,有助于创建适应性

8、更强的系统。发的机会,有助于创建适应性更强的系统。了解通用性和特殊性,有助于创建出具有更好的了解通用性和特殊性,有助于创建出具有更好的可重用性和更宽的销售市场的软件。可重用性和更宽的销售市场的软件。西安交通大学 刘海岩9 专家提出,没有坚实的领域分析,任何重大的软专家提出,没有坚实的领域分析,任何重大的软件项目都不应该进行。对应用领域的深入理解能极大件项目都不应该进行。对应用领域的深入理解能极大的提高成功的几率。许多非常成功的软件产品的开发的提高成功的几率。许多非常成功的软件产品的开发人员以前都在业务领域工作过段时间,对实际需要人员以前都在业务领域工作过段时间,对实际需要有着深切的感受。有着深

9、切的感受。一旦对领域有了真正的理解,就可进行某一个项一旦对领域有了真正的理解,就可进行某一个项目(或产品)的需求分析,包括定义待解决的问题以目(或产品)的需求分析,包括定义待解决的问题以及开发什么软件来解决它。然而,领域分析永远也不及开发什么软件来解决它。然而,领域分析永远也不应该结束:开发人员有责任在开发过程中不断增进他应该结束:开发人员有责任在开发过程中不断增进他们的理解,后续版本的系统扩充通常需要对子领域进们的理解,后续版本的系统扩充通常需要对子领域进行进一步的领域分析。行进一步的领域分析。西安交通大学 刘海岩101、需求、需求(requirements)的概念的概念 (1)需求的定义)

10、需求的定义 Jones 定义为用户所需要的软件必须达到的目标和定义为用户所需要的软件必须达到的目标和能力。能力。Lethbridge定义为需求是关于系统将要完成什么定义为需求是关于系统将要完成什么工作的一段描述,它们必须经过所有相关人员的认可,工作的一段描述,它们必须经过所有相关人员的认可,其目的是彻底的解决用户的问题。其目的是彻底的解决用户的问题。需求是一段需求是一段描述描述:意思是每个需求是相对短小简意思是每个需求是相对短小简明的一段信息,表现为一个事实。它可以是一段话或用明的一段信息,表现为一个事实。它可以是一段话或用各种图表示。一组需求的集合成为需求文档。各种图表示。一组需求的集合成为

11、需求文档。关于系统将要完成什么工作关于系统将要完成什么工作:需求描述了系统需求描述了系统应当完成的任务,不描述系统将如何实现。应当完成的任务,不描述系统将如何实现。必须经过所有相关人员的认可必须经过所有相关人员的认可:意指需求必须意指需求必须经过评审,才能成为正式的需求。经过评审,才能成为正式的需求。其目的是彻底的解决用户的问题其目的是彻底的解决用户的问题。有助于解决用有助于解决用户的问题,该需求才有存在的价值。户的问题,该需求才有存在的价值。西安交通大学 刘海岩11业务需求业务需求项目范项目范围文档围文档用户需求用户需求用例用例文档文档功能需求功能需求质量属性质量属性其他非功其他非功能需求能

12、需求设计约束设计约束需求需求规约规约非功能需求非功能需求系统需求系统需求需求组成的全景图需求组成的全景图(2)需求的组成需求的组成对系统、产品高层对系统、产品高层次的目标要求。次的目标要求。用户使用产品必用户使用产品必须要完成的任务须要完成的任务西安交通大学 刘海岩12 其中:其中:业务需求业务需求:反映组织机构和客户对系统、产品高层次的:反映组织机构和客户对系统、产品高层次的目标要求。目标要求。用户需求用户需求:从用户使用的角度给出需求的描述。从用户使用的角度给出需求的描述。如一个小型超市需要一个商品的查询系统。如一个小型超市需要一个商品的查询系统。业务需求:进货人员需要查询商品库存以便保证

13、及业务需求:进货人员需要查询商品库存以便保证及时进货;收款员需要查询商品的销售价格以便结账;经时进货;收款员需要查询商品的销售价格以便结账;经理需要查询商品的销售及盈利情况。理需要查询商品的销售及盈利情况。用户需求用户需求:这三类用户怎样去查询系统,查询哪些信这三类用户怎样去查询系统,查询哪些信息,还需要哪些操作。息,还需要哪些操作。西安交通大学 刘海岩13 系统需求系统需求:从:从系统或技术的角度描述为实现业务需求和系统或技术的角度描述为实现业务需求和用户需求而提供的服务以及所受到的约束。用户需求而提供的服务以及所受到的约束。功能性需求功能性需求:描述系统应该做什么,即为用户和其它系:描述系

14、统应该做什么,即为用户和其它系统完成的功能。统完成的功能。非功能性需求非功能性需求:产品必须具备的属性或品质。:产品必须具备的属性或品质。设计约束设计约束:设计与:设计与实现必须遵循的标准、约束条件。如实现必须遵循的标准、约束条件。如运行平台、协议、选择的技术、编程语言和工具等。运行平台、协议、选择的技术、编程语言和工具等。(3 3)需求的描述)需求的描述 自然语言、自然语言、结构化语言、结构化语言、PDL 图形化表示(使用图形化表示(使用Rational Rose、Microsoft Visio、Enterprise Architect等工具)等工具)数学描述(形式化语言描述)数学描述(形式

15、化语言描述)西安交通大学 刘海岩142、需求工程过程、需求工程过程 需求工程是一个包括创建和维持系统需求文档所必需求工程是一个包括创建和维持系统需求文档所必需的一切活动的过程。它包含了如下活动:需的一切活动的过程。它包含了如下活动:系统可行性研究、需求获取和分析、需求描述和文系统可行性研究、需求获取和分析、需求描述和文档编写、需求有效性验证、需求管理(管理需求工程档编写、需求有效性验证、需求管理(管理需求工程的变更)。的变更)。可行性研究可行性研究需求获取需求获取和分析和分析需求描述需求描述需求有效需求有效性验证性验证可行性研可行性研究报告究报告系统模型系统模型用户需求和用户需求和系统需求系统

16、需求需求规约需求规约需求工程过程需求工程过程需求管理需求管理西安交通大学 刘海岩15l可行性研究是需求工程过程的开始。在较短的时间内可行性研究是需求工程过程的开始。在较短的时间内作出结论。集中回答以下问题:作出结论。集中回答以下问题:(1)系统是否符合组织机构的总体目标。系统不支)系统是否符合组织机构的总体目标。系统不支持这些目标,就没有价值。持这些目标,就没有价值。(2)系统是否可能在现有的技术条件、预算和时间)系统是否可能在现有的技术条件、预算和时间限制内完成。限制内完成。(3)系统能否与已经存在的系统集成。)系统能否与已经存在的系统集成。l该活动要广泛收集信息并评估,回答一些有关的问题,

17、该活动要广泛收集信息并评估,回答一些有关的问题,写出研究报告,得出结论:写出研究报告,得出结论:系统是否值得开发?给出系统是否值得开发?给出具体的意见和建议具体的意见和建议。可能对系统高层需求、功能范围、。可能对系统高层需求、功能范围、预算和时间安排提出修改意见。预算和时间安排提出修改意见。西安交通大学 刘海岩16需求获取与需求分析的区别需求获取与需求分析的区别 需求获取是开发人员与客户或用户一起对应用领域进需求获取是开发人员与客户或用户一起对应用领域进行调查研究,收集系统需求的过程。行调查研究,收集系统需求的过程。需求分析是将获取到的需求准确的理解、求精,并将需求分析是将获取到的需求准确的理

18、解、求精,并将其转化为完整的需求定义(包括建模),进而生成需求规其转化为完整的需求定义(包括建模),进而生成需求规约的过程。约的过程。需求获取和分析的难度需求获取和分析的难度 项目相关人员通常并不真正知道希望计算机做什么,项目相关人员通常并不真正知道希望计算机做什么,让他们清晰的表达出需要系统做什么是件困难的事,他们让他们清晰的表达出需要系统做什么是件困难的事,他们或许提出不切实际的要求。或许提出不切实际的要求。西安交通大学 刘海岩17 项目相关人员用自己的语言表达需求,这些语言项目相关人员用自己的语言表达需求,这些语言包含很多工作中的专业术语和专业知识。系统分析员包含很多工作中的专业术语和专

19、业知识。系统分析员没有这些知识和经验,而他们又必须了解这些需求。没有这些知识和经验,而他们又必须了解这些需求。不同的项目相关人员有不同的需求,可能以不同不同的项目相关人员有不同的需求,可能以不同的方式表达,分析人员必须发现所有潜在的需求资源,的方式表达,分析人员必须发现所有潜在的需求资源,而且能发现这些需求的相容或冲突之处。而且能发现这些需求的相容或冲突之处。经济和业务环境决定了分析是动态的,需求在分经济和业务环境决定了分析是动态的,需求在分析过程中会发生变更。个别需求的重要程度会改变,析过程中会发生变更。个别需求的重要程度会改变,新的需求会从新的项目相关人员那里得到。新的需求会从新的项目相关

20、人员那里得到。西安交通大学 刘海岩18 建立由客户(用户)、系统分析员、领域专家参加的建立由客户(用户)、系统分析员、领域专家参加的联合小组。联合小组。需求获取的方法:个别访谈、召集会议、文档研究、需求获取的方法:个别访谈、召集会议、文档研究、问卷调查、观察用户工作流程、建立原型。问卷调查、观察用户工作流程、建立原型。获取的需求的表达方式:获取的需求的表达方式:(1)需求列表)需求列表 需求与系统的特殊视角或环境的关系需求与系统的特殊视角或环境的关系 (2)业务流程图(状态)业务流程图(状态/活动图)活动图)(3)用例()用例(Use-Case)/场景(场景(Scenario)/用户故事用户故

21、事(user story)/视点视点(viewpoint)的描述的描述 (4)数据流图)数据流图 (5)实体关系图)实体关系图 (6)用例图、类图、活动图、时序图、状态图等。)用例图、类图、活动图、时序图、状态图等。西安交通大学 刘海岩19视点视点 可以理解为:可以理解为:1、数据源或数据池(、数据源或数据池(SA、SD方法)方法)2、一个表示框架(系统模型)、一个表示框架(系统模型)3、服务的接收者(系统的外部成分)、服务的接收者(系统的外部成分)特别适用于交互式系统的需求导出。特别适用于交互式系统的需求导出。用例用例 Jacobson说说“用例帮助定义系统之外存在什么(参用例帮助定义系统之

22、外存在什么(参与者)以及系统应该完成什么与者)以及系统应该完成什么”。把系统分成一组逻。把系统分成一组逻辑的、互相联系较少的部分,每一部分都辑的、互相联系较少的部分,每一部分都描述了系统描述了系统与外部角色交互所提供的服务与外部角色交互所提供的服务,即用例的集合代表了,即用例的集合代表了所有将会在系统需求中出现的交互。因此容易所有将会在系统需求中出现的交互。因此容易从使用从使用的角度理解系统应达到的功能的角度理解系统应达到的功能。而。而“用户故事用户故事”是某是某种形式的简化版用例。种形式的简化版用例。场景场景 场景是用例的具体描述。一个用例封装了一组场景,场景是用例的具体描述。一个用例封装了

23、一组场景,每个场景就是一个单个线程。每个场景就是一个单个线程。西安交通大学 刘海岩20 例例1:列出图书馆系统与以下参与者(角色)交互的最:列出图书馆系统与以下参与者(角色)交互的最小用例集:借阅者、借书员、图书管理员、会计系统。小用例集:借阅者、借书员、图书管理员、会计系统。借阅者:借阅者:按题目查询书籍按题目查询书籍 按作者查询书籍按作者查询书籍 按主题查询书籍按主题查询书籍 预定已被其他人借出的书籍预定已被其他人借出的书籍 查询借阅者的个人信息并列出借阅的书籍查询借阅者的个人信息并列出借阅的书籍西安交通大学 刘海岩21 借书员:借书员:所有借阅者的用例,再加上所有借阅者的用例,再加上 为

24、借阅者查找某一书籍为借阅者查找某一书籍 登记已归还的书籍登记已归还的书籍 续借一本书续借一本书 登记缴纳的罚款登记缴纳的罚款 添加新的借阅者添加新的借阅者 更新借阅者的个人信息(地址、电话号码等)更新借阅者的个人信息(地址、电话号码等)图书管理员:图书管理员:所有借阅者和借书员的用例,再加上所有借阅者和借书员的用例,再加上 添加藏书添加藏书 删除藏书删除藏书 改变系统中对已有书籍的记录信息改变系统中对已有书籍的记录信息 会计系统(独立运行)会计系统(独立运行)获得借阅者支付的超期罚款获得借阅者支付的超期罚款西安交通大学 刘海岩22l例例2:一个:一个SafeHome系统,系统激活的基本用例用自

25、系统,系统激活的基本用例用自然语言陈述如下:然语言陈述如下:(参考教材(参考教材1)房主观察控制面板以确定是否系统已准备好接收输房主观察控制面板以确定是否系统已准备好接收输入。如果系统未准备好,房主必须物理地关闭门入。如果系统未准备好,房主必须物理地关闭门/窗户,窗户,以便使以便使“准备好准备好”指示灯亮。指示灯亮。房主使用键盘输入房主使用键盘输入4 4位密码,系统将密码与存储在位密码,系统将密码与存储在配置库中的有效密码比较,如果密码不正确,控制面配置库中的有效密码比较,如果密码不正确,控制面板鸣叫一次并复位等待再次输入。如果密码正确,控板鸣叫一次并复位等待再次输入。如果密码正确,控制面板等

26、待进一步的动作。制面板等待进一步的动作。房主选择键入房主选择键入“stay”stay”(仅激活外部的传感器)或(仅激活外部的传感器)或“away”away”(激活所有的传感器)以启动系统。(激活所有的传感器)以启动系统。当激活时,房主可观察到一个红色指示灯。当激活时,房主可观察到一个红色指示灯。西安交通大学 刘海岩23 用例:用例:房主激活监测房主激活监测 场景:场景:1、房主:观察控制面板。、房主:观察控制面板。2、房主:输入密码。、房主:输入密码。3、房主:选择、房主:选择“stay”或或“away”。4、房主:观察红色指示灯显示系统已被打开。、房主:观察红色指示灯显示系统已被打开。异常:

27、异常:1、控制面板未就绪。、控制面板未就绪。2、密码不正确。、密码不正确。3、密码不识别。、密码不识别。未解决的问题:未解决的问题:1、是否有不使用密码激活系统的方式。、是否有不使用密码激活系统的方式。2、控制面板是否还应显示附加的文字信息。、控制面板是否还应显示附加的文字信息。3、房主输入密码的时间有无约束。、房主输入密码的时间有无约束。4、在系统真正激活之前有无办法关闭系统。、在系统真正激活之前有无办法关闭系统。西安交通大学 刘海岩24 需求分析是发现、规约和求精的过程,指需求分析是发现、规约和求精的过程,指开发人员准确的理解用户的需求,通过分析,开发人员准确的理解用户的需求,通过分析,将

28、不规范的需求陈述转化为完整的需求定义,将不规范的需求陈述转化为完整的需求定义,并产生需求规格化说明的过程。并产生需求规格化说明的过程。获取的需求可能有模糊的、冗余的、有冲获取的需求可能有模糊的、冗余的、有冲突的或不易理解的地方,需要用文字和图形描突的或不易理解的地方,需要用文字和图形描述不同视图以揭示更深的、易混淆的问题,确述不同视图以揭示更深的、易混淆的问题,确保与所有风险承担者达成共识。保与所有风险承担者达成共识。西安交通大学 刘海岩25 需求分析活动具有以下任务:需求分析活动具有以下任务:(1)分析需求的可行性:允许的成本、性能;)分析需求的可行性:允许的成本、性能;与其他需求的冲突;外

29、界因素的依赖和技术障与其他需求的冲突;外界因素的依赖和技术障碍等。碍等。(2)对于渐增式开发要确定需求的优先级别,)对于渐增式开发要确定需求的优先级别,以便确立产品版本。以便确立产品版本。(3)建模:模型能突出或强调某些关键的系)建模:模型能突出或强调某些关键的系统特征。使用文本统特征。使用文本 和图表形式的组合,以相对和图表形式的组合,以相对容易理解和能直接评审正确性、完整性和一致容易理解和能直接评审正确性、完整性和一致性的方式来描述数据(信息)、功能和行为的性的方式来描述数据(信息)、功能和行为的需求。图形化的表示分析模型可以增强对软件需求。图形化的表示分析模型可以增强对软件需求的理解,也

30、为软件设计奠定了基础。需求的理解,也为软件设计奠定了基础。(4)生成需求规格说明。)生成需求规格说明。西安交通大学 刘海岩26 在过去的数年中,人们提出了许多种分析在过去的数年中,人们提出了许多种分析建模的方法,其中两种在分析建模领域占有主建模的方法,其中两种在分析建模领域占有主导地位:导地位:第一种是结构化分析第一种是结构化分析(Structured Analysis,SA),70年代末由年代末由DeMarco等人提出,这是传等人提出,这是传统的建模方法。该方法不是被所有的使用者一统的建模方法。该方法不是被所有的使用者一致地使用的单一方法,众多科学家对其进行了致地使用的单一方法,众多科学家对

31、其进行了扩充,因此它是发展了超过扩充,因此它是发展了超过30年的一个混合物年的一个混合物。另一种方法是面向对象的分析,另一种方法是面向对象的分析,如如Coad-Yourdon方法、方法、Booch方法、方法、Rumbaugh方法、方法、Jacobson 方法等。方法等。具体的建模方法有具体的建模方法有:西安交通大学 刘海岩27上下文模型(上下文模型(ERD、包图)、包图)面向流的建模:数据流图(面向流的建模:数据流图(DFD/CFD)数据建模:实体关系图(数据建模:实体关系图(ERD)基于场景的建模:用例图、顺序图、活动图基于场景的建模:用例图、顺序图、活动图基于类的建模:类图、包基于类的建模

32、:类图、包基于行为的建模:基于行为的建模:Petri网、状态图、顺序图、网、状态图、顺序图、协作图、活动图协作图、活动图 西安交通大学 刘海岩28Sommerville认为模型可以从以下角度去描述:认为模型可以从以下角度去描述:1、从外部看,它是对系统上下文或系统环境、从外部看,它是对系统上下文或系统环境建模。(见下页图)建模。(见下页图)2、从行为上看,它是对系统运行行为建模。、从行为上看,它是对系统运行行为建模。3、从结构上看,它是对系统体系结构和系统、从结构上看,它是对系统体系结构和系统数据的结构建模。数据的结构建模。有如下系统模型的实例(有如下系统模型的实例(ppt30):):西安交通

33、大学 刘海岩29上下文模型(定义了系统的边界)上下文模型(定义了系统的边界)西安交通大学 刘海岩30 1、数据处理模型数据处理模型 如数据流图,说明系统如数据流图,说明系统的不同阶段数据如何被处理。的不同阶段数据如何被处理。2、组成模型组成模型 实体关系图,说明一个实体与实体关系图,说明一个实体与另外实体间的关系或如何由其他实体组成。另外实体间的关系或如何由其他实体组成。3、体系结构模型体系结构模型 说明构成整个系统的那些说明构成整个系统的那些主要的子系统。主要的子系统。4、分类模型分类模型 如对象模型,说明对象间怎样如对象模型,说明对象间怎样具有共同特性。具有共同特性。5、激励激励-响应模型

34、响应模型 说明系统对来自内部和说明系统对来自内部和外部的事件的响应。外部的事件的响应。具体分析建模的方法请见第具体分析建模的方法请见第3章。章。西安交通大学 刘海岩311、软件需求规约(、软件需求规约(Software Requirements Specification,SRS)SRS是需求分析阶段的产品,是所有其他开发和是需求分析阶段的产品,是所有其他开发和管理活动的基础。对系统开发过程中其他活动的影响:管理活动的基础。对系统开发过程中其他活动的影响:项目经理根据它制定或修改开发计划。项目经理根据它制定或修改开发计划。设计人员根据它进行系统设计。设计人员根据它进行系统设计。测试人员根据它编

35、写测试计划,设计测试用例。测试人员根据它编写测试计划,设计测试用例。产品发布人员根据它编写产品介绍和用户文档。产品发布人员根据它编写产品介绍和用户文档。培训人员根据它编写培训教程。培训人员根据它编写培训教程。西安交通大学 刘海岩32 需求规约的结构需求规约的结构:1998年的年的IEEE标准为需求规约提出了以下结构,标准为需求规约提出了以下结构,组织机构内部可以基于此标准扩展:组织机构内部可以基于此标准扩展:(1)引言)引言 需求文档的目的、产品范围、文档约定(缩写需求文档的目的、产品范围、文档约定(缩写词与缩略语)、参考文献、文档的其余部分概览词与缩略语)、参考文献、文档的其余部分概览 (2

36、)综合描述)综合描述 产品前景、产品前景、产品功能与优先级、用户特征、运产品功能与优先级、用户特征、运行环境、设计与实现上的约束、假设和依赖性行环境、设计与实现上的约束、假设和依赖性西安交通大学 刘海岩33 (3)需求描述)需求描述 a.功能需求功能需求 b.数据需求:与功能有关的数据定义和数据关系数据需求:与功能有关的数据定义和数据关系 c.性能需求:响应时间、容量要求、用户数等性能需求:响应时间、容量要求、用户数等 d.外部接口:用户界面、软硬件接口、通信接口外部接口:用户界面、软硬件接口、通信接口 e.设计约束:软件支持环境、报表、数据命名等设计约束:软件支持环境、报表、数据命名等 f.

37、软件质量属性(可维护性、可靠性、可移植性、软件质量属性(可维护性、可靠性、可移植性、可用性、安全性等等)可用性、安全性等等)g.其他需求其他需求 这一节是文档中最实质性的部分,由于在机构组织这一节是文档中最实质性的部分,由于在机构组织的实践中存在极大的变数,对这一节定义的标准结构可的实践中存在极大的变数,对这一节定义的标准结构可以进行增删。以进行增删。(4)附录(词汇表、硬件与数据库的描述、模型、)附录(词汇表、硬件与数据库的描述、模型、待定问题列表等)待定问题列表等)(5)索引)索引西安交通大学 刘海岩341.范围范围 1.1标识标识 文件状态文件状态(草稿草稿/正式发布正式发布/正在修改)

38、;文件标识;当前版本;正在修改);文件标识;当前版本;作者作者 1.2 系统概述(名称、功能、性能、上下文关系、用户、开发者)系统概述(名称、功能、性能、上下文关系、用户、开发者)1.3 文档概述(类型、描述方法、预期读者)文档概述(类型、描述方法、预期读者)1.4 基线基线2.引用文件引用文件3.需求概述需求概述 3.1 系统目标系统目标 3.2 运行环境运行环境 3.3 用户特点用户特点4.功能需求功能需求 5.外部接口需求外部接口需求6.数据数据7.故障处理故障处理西安交通大学 刘海岩35 2、需求验证、需求验证 需求验证的重要性:如果在后续的开发或当系统投入需求验证的重要性:如果在后续

39、的开发或当系统投入使用时才发现需求规约中的错误,就会导致更大代价的返使用时才发现需求规约中的错误,就会导致更大代价的返工。由需求问题而对系统做变更的成本比修改设计或代码工。由需求问题而对系统做变更的成本比修改设计或代码错误的成本要大的多。假设需求阶段引入错误的成本要大的多。假设需求阶段引入1个错误的需求,个错误的需求,设计时对这个需求需要设计时对这个需求需要510条设计实现,条设计实现,1条设计需要条设计需要 510条程序,条程序,1条程序需要条程序需要35种测试组合测试。种测试组合测试。原始需求原始需求正确的规格说明正确的规格说明 错误的规格说明错误的规格说明正确的设计正确的设计 错误的设计

40、错误的设计 对错误需求的设计对错误需求的设计正确的编码正确的编码 错误的编码错误的编码 对错误设计的编码对错误设计的编码 对错误需求的编码对错误需求的编码正确功能正确功能 测试到的错误测试到的错误 没有测试到的错误没有测试到的错误 一个错误的需求,纠正成本一个错误的需求,纠正成本100元元10 纠正成本纠正成本1000元元105西安交通大学 刘海岩36 对需求规约需执行以下类型的检查:对需求规约需执行以下类型的检查:(1)有效性检查)有效性检查 检查不同用户使用不同功能的有效性。检查不同用户使用不同功能的有效性。(2)一致性检查)一致性检查 在文档中,需求不应该冲突。在文档中,需求不应该冲突。

41、(3)完备性检查)完备性检查 需求文档应该包括所有用户想要的功能和需求文档应该包括所有用户想要的功能和约束。约束。(4)现实性检查)现实性检查 检查保证能利用现有技术实现需求检查保证能利用现有技术实现需求。西安交通大学 刘海岩37 验证技术:验证技术:(1)需求评审:)需求评审:由分析员、设计员、测试员、用户参与的正式由分析员、设计员、测试员、用户参与的正式或非正式的会议评审。正式会议要有严格的评审程或非正式的会议评审。正式会议要有严格的评审程序,要有会议记录,开发组根据缺陷建议修改需求序,要有会议记录,开发组根据缺陷建议修改需求说明并重审。说明并重审。(2)利用原型检验系统是否符合用户的真正

42、需要。)利用原型检验系统是否符合用户的真正需要。(3)对每个需求编写概念性的测试用例。)对每个需求编写概念性的测试用例。(4)编写用户手册。用浅显易懂的语言描述用户可)编写用户手册。用浅显易懂的语言描述用户可见的功能。见的功能。(5)自动的一致性分析。可用)自动的一致性分析。可用CASE工具检验需求工具检验需求模型的一致性。模型的一致性。西安交通大学 刘海岩38 需求管理是对系统需求控制的过程。完成需需求管理是对系统需求控制的过程。完成需求规约并不代表需求工程过程的结束,不可避免求规约并不代表需求工程过程的结束,不可避免的遇到需求的变更。原因是:的遇到需求的变更。原因是:大型系统拥有不同的用户

43、群体,就有不同大型系统拥有不同的用户群体,就有不同的需求和优先级。互相有冲突或矛盾,需求规约的需求和优先级。互相有冲突或矛盾,需求规约所做出的某些平衡随着经验的积累可能要改变。所做出的某些平衡随着经验的积累可能要改变。客户和最终用户的需求可能不一致。客户和最终用户的需求可能不一致。业务和技术环境的变化引起需求的变化。业务和技术环境的变化引起需求的变化。需求导出的同时启动了需求管理规划,一旦需求导出的同时启动了需求管理规划,一旦形成了需求文档的草稿,需求管理的活动就开始形成了需求文档的草稿,需求管理的活动就开始了。了。西安交通大学 刘海岩39 需求管理是标识、控制和跟踪需求的活动。需需求管理是标

44、识、控制和跟踪需求的活动。需要确定以下内容:要确定以下内容:需求标识需求标识 每个需求有一个唯一的标识符,每个需求有一个唯一的标识符,以便可被其他需求交叉索引。以便可被其他需求交叉索引。变更管理变更管理 对变更带来的影响和成本进行评估。对变更带来的影响和成本进行评估。跟踪策略跟踪策略 定义需求之间的关系以及需求和设定义需求之间的关系以及需求和设计之间的关系,并做出记录以及维护方法。计之间的关系,并做出记录以及维护方法。CASE工具工具 支持管理中对大量信息的加工,支持管理中对大量信息的加工,如需求存储、变更管理、可跟踪性管理等。如需求存储、变更管理、可跟踪性管理等。西安交通大学 刘海岩40 需

45、求和需求之间、需求和设计之间有许多关需求和需求之间、需求和设计之间有许多关系。在需求和引起该需求潜在的原因之间也有许系。在需求和引起该需求潜在的原因之间也有许多关系。当变更发生时,必须追踪这些变更对其多关系。当变更发生时,必须追踪这些变更对其他需求和系统设计的影响。他需求和系统设计的影响。需要维护的需要维护的3类可跟踪性信息是:类可跟踪性信息是:源可追踪性信息源可追踪性信息 连接到提出该需求的相关连接到提出该需求的相关人员或基本原理。人员或基本原理。需求可追踪性信息需求可追踪性信息 连接文档中彼此依赖的连接文档中彼此依赖的需求,用来评估一个变更会对多少需求产生影响需求,用来评估一个变更会对多少

46、需求产生影响以及引发的需求变更的范围和程度。以及引发的需求变更的范围和程度。设计可追踪性信息设计可追踪性信息 连接需求到其实现的设连接需求到其实现的设计模块。用来评估变更对设计与实现的影响。计模块。用来评估变更对设计与实现的影响。可追踪性信息可用矩阵来表示。可追踪性信息可用矩阵来表示。西安交通大学 刘海岩41 需求管理规划制定策略和程序,而需求变更管理负责分需求管理规划制定策略和程序,而需求变更管理负责分析变更以及评估变更带来的影响。析变更以及评估变更带来的影响。一个变更管理过程有一个变更管理过程有3个基本阶段:个基本阶段:(1)问题分析和变更描述问题分析和变更描述 对识别出的需求问题或变更对

47、识别出的需求问题或变更提议进行分析并检查它的有效性,以产生更明确的变更提议。提议进行分析并检查它的有效性,以产生更明确的变更提议。(2)变更分析和成本计算变更分析和成本计算 使用可追踪信息和系统需求使用可追踪信息和系统需求的一般知识评估被提议的变更所产生的影响。变更的成本计的一般知识评估被提议的变更所产生的影响。变更的成本计算不仅估计对需求文档的修改,在适当的时候还要估计设计算不仅估计对需求文档的修改,在适当的时候还要估计设计和实现的成本,并产生对此变更是否执行的决策。和实现的成本,并产生对此变更是否执行的决策。(3)变更实现变更实现 需求规约以及系统设计和实现在必要时需求规约以及系统设计和实

48、现在必要时都要作修改。建立一个好的需求文档的格式,使得变更不会都要作修改。建立一个好的需求文档的格式,使得变更不会带来大量文字的修改。带来大量文字的修改。本PPT为可编辑版本,您看到以下内容请删除后使用,谢谢您的理解【解析】【解答】(1)氯化钠是由钠离子和氯离子构成的;金刚石是由碳原子构成的;干冰是由二氧化碳分子构成的;(2)质子数为11的是钠元素,钠元素原子的最外层电子数1,在化学反应中容易失去一个电子形成阳离子;(3)化学变化是生成新分子的变化,其实质是分子分解成原子,原子重新组合形成新的分子,故该反应中没有变的是碳原子和氧原子。故答案为:氯化钠;失去;D。【分析】物质有微粒构成,构成物质

49、的微粒有原子、分子、离子是那种,金属、稀有气体由原子构成;常见气体由分子构成;碱和盐由离子构成。在化学变化中,原子种类、质量、数目保持不变。26.用微粒的观点解释下列现象:(1)今年我国要求“公共场所全面禁烟”非吸烟者往往因别人吸烟而造成被动吸烟。(2)夏天钢轨间的缝隙变小。【答案】(1)分子是在不断的运动的.(2)夏天温度高,铁原子间的间隔变小.【考点】物质的微粒性 【解析】【解答】(1)吸烟生成烟雾,烟雾分子因为运动,扩散到空气中,使非吸烟者被动吸入烟雾分子,造成被动吸烟;(2)钢轨由铁原子构成.每两根钢轨间都有一定的间隙,夏天由于气温高,使得钢轨中铁原子的间隔变大,表现为钢轨的体积膨胀,

50、则钢轨间的间隙变小.故答案为:(1)分子是在不断运动的;(2)夏天高温,铁原子间的间隔变小.【分析】微粒观点的主要内容:物质是由分子(或原子构成),分子间有间隔,分子处于永停息的运动状态中.(1)烟雾分子属气体分子,在空气中扩散较快,使非吸烟者被动吸烟;(2)铁原子间有一定的间隔,温度升高,则铁原子间间隔变大,反之则变小,夏天高温状态下,铁原子间间隔变大,使得钢轨体积膨胀,则钢轨间的缝隙变小.【考点】物质的微粒性 【解析】【解答】(1)铁属于金属单质,是由铁原子直接构成;氯化钠是由钠离子和氯离子构成的;二氧化碳是由二氧化碳分子构成的(2)当质子数=核外电子数,为原子,a=2+8=10,该粒子是

侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|