中科院需求工程 A8(第八讲)基于领域建模的需求工程_.ppt
《中科院需求工程 A8(第八讲)基于领域建模的需求工程_.ppt》由会员分享,可在线阅读,更多相关《中科院需求工程 A8(第八讲)基于领域建模的需求工程_.ppt(113页珍藏版)》请在三一办公上搜索。
1、需 求 工 程,金芝中国科学院数学与系统科学研究院,第八讲:基于领域模型的方法,概述软件需求描述及建模本体基于本体的需求抽取知识制导的需求抽取需求抽取过程需求描述的完整性检查需求描述规格说明基于本体的需求建模自动模型生成基于约束的模型验证发展和展望,概述,什么是计算机辅助需求工程基于知识的需求工程软件需求工程知识体,计算机辅助需求工程,类比于软件工程提升手工作坊式工作方式的手段一组有用的工具有效使用工具的组织层次了解如何有效使用工具的人计算机辅助软件(需求)工程提供满足需要的工具集将手工活动自动化提升工程师对问题的认识,需求工程的本质,已知环境(问题领域分析)已知需求(需求抽取,对环境的作用,
2、客户希求的目标)构造规格说明(可实现的)使得:,需求工程的任务,extract,Real World,SoftwareSpecification,需求工程:任务的分解,Real World,SoftwareSpecification,Real World Model,Software Model,extract,map,specify,现有的工具在何处有用?,Real World,SoftwareSpecification,Real World Model,Software Model,extract,map,specify,OOA,UMLFormal Methods,什么地方需要支持?,Re
3、al World,SoftwareSpecification,Real World Model,Software Model,extract,map,specify,02-3-27,中科院数学与系统科学研究院,10,什么地方需要支持?,Real World,SoftwareSpecification,Real World Model,Software Model,extract,map,specify,需要哪种类型的工具,现实世界问题理解工具现实世界问题建模工具现实世界问题分析工具软件问题理解工具软件建模工具软件模型分析工具规格说明生成工具需求工程过程管理工具需求文档管理工具需求跟踪工具,基于
4、知识的需求工程,广义地说采用基于知识的方法,对需求工程过程中的各种任务进行支持知识可以是领域知识,也可以是需求工程知识目的是支持整个需求工程过程窄义地说专门针对特定领域知识和现实世界问题的知识目的是支持与领域用户的沟通,帮助需求的抽取、建模和分析,领域模型有什么用?,Real World,SoftwareSpecification,Real World Model,Software Model,extract,map,specify,Method and process,Analysis,DomainKnowledge,软件需求描述及建模本体,知识工程中的本体论软件需求描述本体软件需求建模本体
5、,本体论(起源和含义),十七世纪提出,解决二义性问题,十八世纪广泛采用二十世纪,成为分析哲学中研究实体存在和存在本质的通用理论西方哲学史:本体论是指关于存在及其本质和规律的学说中国古代哲学:本根论:指探究天地万物产生、存在、发展变化的根本原因和根本依据的学说特点:关于世界某个方面的一个特定的分类体系这个体系不依赖于任何特定的语言,知识工程中的本体论,从20世纪90年代初期开始,关于本体论的专题研讨会需要可重用的描述型知识,描述型知识是核心大规模智能系统系统间的互操作基于多信息源的信息集成知识编码非常昂贵时间长复杂的专业知识,需要提高知识重用的能力,开发工具和技术,用于创建和保存可重用的知识从多
6、个可重用知识模型中汇集新的知识库,知识工程中的本体,1991年,Neches等,本体定义了组成主题领域的词汇的基本术语和关系,以及用于组合术语和关系以定义新词汇的外延规则1993年,Gruber,本体是概念模型的显式的规格说明1997年,Borst,本体可定义为被共享的概念模型的形式的规格说明,表示需要词汇,领域专家使用领域相关的词汇,传统表示语言是领域无关的例:谓词演算,框架等,不提供领域相关的词汇,知识库的构造分为两步 定义用来表示知识的词汇 用定义的词汇表示(领域)知识,需求抽取的需要,领域用户:需要提示在描述时只使用领域的语言最好是“yes/no”问题描述允许是不完整,领域本体能提供概
7、念类规定为什么实体建模概念类都是领域的概念抽象概念关联、函数、公理预先定义概念关联、函数、公理可以被继承,需求建模的需要,系统分析员要求具有形式的语法,可以机械地理解具有预先定义的语义,可以机械地建立模型,领域本体能提供声明概念即声明了类属关系:理解概念继承概念类间预先定义的关联得到声明概念间的关联计算定义在关联上的函数:建立模型,需求分析的需要,系统分析员要求自动进行模型的分析,领域本体能提供预先定义的公理支持模型的自动分析(依赖于特定的公理表示和相应的计算工具,如Horn逻辑表示和Prolog程序设计工具),三层概念需求描述结构,声明需求就只要声明实例,三层概念需求描述结构,通过重用实现需
8、求理解,定义二级关联,实现需求自动建模,公理约束的满足性成为模型分析的手段,方法案例,针对企业信息系统的实践,企业本体:概念和外延关联,企业本体:概念和外延关联,概念框架(组织概念),概念框架(活动概念),概念框架(岗位和角色概念),概念框架(资源概念),企业本体的概念类型层次,企业本体的外延关联,企业本体内涵关联,外延本体定义需求描述的语法,内涵本体定义需求语义模型。比如,组织信息系统的一些内涵本体组织结构本体;组织目标本体;事件流本体;资源流本体;,概念框架(组织结构概念),内涵关联的定义,概念框架(组织目标概念),内涵关联的定义,概念框架(组织活动流概念),知识制导的需求描述,类型指导下
9、的需求描述概念和关联的抽取概念和关联的重用约束引导下的概念闭包扩展元级约束领域级约束需求描述分析,获取概念实例,Typical Questions for Inquiring Customers Please list as many as possible names of divisions or departments for your organization.Please list as many as possible names for positions settled in any divisions.Please list as many as possible names
10、 of members in your organization.Please list as many as possible activities the members may perform.Please list as many as possible resource names.,获取概念实例间关联,领域模型支持需求重用,需求重用原则,通过基本领域概念继承的概念空间扩展基本领域具体概念:对给定领域中所有应用都必须的概念创建这类概念的实例是必须的,但必须得到客户的认可通过基本关联闭包的概念空间扩展基本领域关联:对给定领域中所有应用都必须的概念关联,结果(已声明的概念实例),结果(已
11、使用的概念实例),referred concept set:refConcept(Financial Office,Agent,Smith).refConcept(Financial Office,Agent,David).refConcept(Financial Office,Agent Martin).refConcept(Financial Office,Position,Accountant).refConcept(Financial Office,Position,Clerk).refConcept(Financial Office,Position,Financial manage
12、r).refConcept(Financial Office,Resource,Finance).,结果(已声明的概念实例关联),需求描述分析,模型驱动的需求建模和分析,内涵关联的计算和建模组织结构关联目标结构关联过程结构关联模型的分析,分模型结构分析:组织结构,组织结构公理,分模型结构分析:领导层次,构造管理链:同一个部门用“leading”关系上下层部门之间用“chargeOf”关系,领导层次公理,对每个管理层次只有一个岗位不被其它岗位管理每个岗位只被一个岗位管理每个岗位管理的岗位数有一个上限,分模型结构分析:目标结构,目标关系目标任务与归结:子目标任务合作完成总目标任务目标任务或归结:任
13、何一个子目标任务都能完成总目标任务(选择)目标规约为任务:一个目标可以用一个任务来实现目标任务依赖:一个目标的实现任务的完成依赖于另一个目标的实现任务的完成目标任务冲突:一个目标的实现任务的完成防碍了一个目标的实现任务的完成,目标结构的约束,一个良构的目标图必须满足如下约束:所有的根节点都是最上层组织中的一个目标(根节点代表组织的最高目标);所有的叶节点都表示一个原子活动的目标(所有目标都要落实到一个可操作的活动上);所有其它节点都可以通过贡献链1(或者贡献链的序列)到达一个根节点(所有其它目标都是为实现组织的某个最高目标而设置的);贡献链不构成循环通路(不能自己实现自己);依赖链不构成循环通
14、路(不能自己依赖自己)。1 目标图中的实现关联或分配关联的反方向链接称为贡献链。,目标结构语法公理(需求观点),目标结构语义公理,目标结构语义公理(需求观点),分模型结构分析:过程结构,活动图组合规则,过程流公理,过程流公理(需求观点),从应用描述到软件模型,Application Concepts:un1,un2(Org),u1,u2(Act),s1(Sequence Act),r1,r2,r3,r4(Role),p1,p2,p3,p4(Position),st1,st2(State),i1,i2(Information),m1,m2(Material),a1,a2,a3,a4(Agent)
15、,e1,e2(Event),基于领域建模的需求工程,RequirementsElicitation,RequirementsModeling,RequirementsSpecification,RequirementsEvolution,Process Management,Ontology Bases,ExtensiveOntology,IntensiveOntology,From Application DesTo Software Spec,让最终用户参与需求工程过程,特点,最终用户在陈述需求的时候有章可查他们只关注现实世界的事情,而不是目标系统的事情可以开发相应的工具帮助系统分析员进行
16、应用建模和分析最终用户可以理解应用领域模型和分析结果需求早期的沟通易于实现可以在这个阶段完成第一次需求认可,好的模型导致好的需求描述,方法案例,针对网构软件的实践,Internet新型计算范型的挑战,功能的依赖性:可满足性判别问题实体的自主性:系统演化问题聚合的多样性:最佳选择问题运行环境的开放性:系统自适应问题部署的不确定性:风险分析问题,核心问题,描述的问题:已提供的软件实体,被需要的软件实体让别人知道并理解自己的(或自己需要的)能力识别的问题:已提供的和被需要的软件实体之间的沟通,能相互识别:了解别人的能力并推断其是否有用组合的问题:多个已提供的组合起来满足一个被需要的将有用的东西合理有
17、效地组合起来,以满足某种需求,关键问题,需要一种关于软件能力的描述支持推理的、结构化的描述对需要的能力和提供的能力有一致的描述需要一种支持能力分解/组合的机制支持投影式能力分解和组合,切入点:引入环境模型,软件实体与之交互的现实世界实体实体的分类及其类型刻画实体的特征属性描述与软件实体之间可能的交互的类型交互的分类及其类型刻画可用于展现软件实体能力的可能的变化因果实体生命周期,不同粒度的变化表现不同粒度的能力词法实体的值读取主动自治实体的期望满足,环境实体建模,环境本体:环境模型的元模型,环境本体:环境模型的元模型,Tree-structured Hierarchical State Mach
18、ine,has_machine,relation_between,constructed_by,is_a,is_a,is_a,is_a,is_a,triggers_transition,issue_from_transition,is_a,is_a,has_value,issue,has_s_attr,has_s_attr,has_s_attr,has_d_attr,Message Interaction,Value Interaction,Interaction,is_a,is_a,is_with,read_or_store,环境实体间的依赖关系,环境实体之间的依赖关系通过软件实体与这些环境
19、实体的交互来描述。e1和e2是软件实体的两个环境实体,它们之间的依赖关系有:(变迁依赖)e1msg和e2msg。e1发出一条消息msg给。e2是可控环境实体,通过接收到这条消息,触发e2发生状态变迁(数据读取依赖)e1 msg和e2msg。e1是符号环境实体,从中读取一条数据消息msg。而e2通过接收到这条数据消息(数据存储依赖)e1msg和e2 msg。e1发出一条数据消息msg。而e2是符号环境实体,它通过存储这条数据消息(值设定依赖)e1(s_attr.val),e2(s_attr.val)和e2 s_attr.val.e1 发出一条数据消息(s attr.val)给,e2 通过接收到这
20、条数据消息,然后设定静态属性 s_ attr 的值为val(值读取依赖)e1 s_attr.val和e2(s_attr.val)。读取 e1 静态属性值s_ attr.val,e2 可以通过接收到这条数据消息(s_ attr.val),切入点:构建能力描述,软件实体的能力:具有确定的上下文:一组环境实体与环境实体发生了交互:能力的实施引起环境实体发生了变化:能力的效果能力描述三要素:环境实体集(操作的对象)与环境实体的交互集(实施的交互)环境实体在交互作用下的变化(交互的效果),能力表现为效果,软件实体的能力描述,能力描述元模型,切入点:网构软件需求工程过程,软件能力的分解,环境实体的可分解性
21、,导致交互场景的精化基于交互场景的效果投影,软件实体的选取,基于功能约束的选取提供的能力和需求的能力:相同的表示按需发现=能力匹配能力匹配=环境实体的匹配+环境变化的匹配基于非功能约束的选取开销最小质量最优,软件实体的组合,基于环境实体的依赖关系,推导软件实体之间的依赖关系根据软件实体的控制流关系,确定网构软件中软件实体的协作模式,案例研究:在线教育,环境本体:在线教学,用户(user)教师(teacher):可以设计、启动和指导在线教学课程学生(learner):能不受时间和空间限制地参与在线教学课程学生家长(parent):能获得其孩子的学习评估信息管理者(administrator):负
22、责学生评估等方面的管理帮助实体(help entity):可以为教师提供专业上帮助学习对象(study entity):表示需要学习和掌握的知识教学课程(education course)探索型课程(exploratory tutorial):让学生自己对学习对象进行分析的一种教学模式,教师会对学生分析的结果进行指导评估实体(learner evaluation):对学生的学习情况进行评估,把评估信息反馈给教师和学生家长资源库(resource repository):存放与教学相关的数据。,环境实体之间的联系,study entity,parent,S,report_from,learner
23、 evaluation,C,study_in,teach_in,get or store,get,helped by,use,A,C,learner,A,C,teacher,A,C,name,has_s_attr,name,has_s_attr,has_s_attr,name,has_s_attr,explore,explore,town,S,S,is_a,is_a,环境实体的静态属性实例化,education course,环境实体的动态模型,(c)state machine of learner,(a)state machine of teacher,A,C,A,C,(d)state ma
24、chine of education expert,A,C,S,study entity(materials),(b)state machine of education course,C,ready,materials received,!access(materials),conclusion owned,!analyze(materials),!draw(conclusion,learner.name.val),conclusion sent,!re-analyze,summary received,?give(summary,teacher.name.val),(e)study ent
25、ity,环境实体的树结构层次状态机,null,exploratory tutorial started,?attend-exploratory,exploratory tutorial created,?create-exploratory(education-course.name.val),ready,topic published,materials published,materials accessed,materials analyzed,conclusion received,?give(materials),?access(materials),?re-analyze,?dra
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中科院需求工程 A8第八讲基于领域建模的需求工程_ 中科院 需求 工程 A8 第八 基于 领域 建模

链接地址:https://www.31ppt.com/p-2674278.html