1、ICS 35080L 77 囝亘中华人民共和国国家标准GBT 1849152010ISOIEC TR 141435:2004信息技术 软件测量 功能规模测量第5部分:功能规模测量的功能域确定Infomlation technologySoftware measurementFunctional size measurementPart 5:Determination of functional domains foruse with f岫ctional size measurement20101201发布(ISoIEC TR 141435:2004,IDT)201 104一01实施中华人民共和
2、国国家质量监督检验检疫总局借南中国国家标准化管理委员会捉113GBT1849152010IsoIEC TR14143-5:2004 目次前言引言1范围2规范性引用文件”3术语和定义“4缩略语5要求6规程7FDC方法举例附录A(资料性附录)确定功能域的cHAR方法附录B(资料性附录)确定功能域的BFC方法l111122 4他GBT 1849152010IsomC TR 14143_5:2004刖 置GBT18491在信息技术软件测量功能规模测量总标题下目前由以下6个部分组成:第l部分:概念定义;第2部分:软件规模测量方法与GBT 1849112001的符合性评价;第3部分:功能规模测量方法的验证
3、;第4部分:基准模型;一第5部分:功能规模测量的功能域确定;第6部分:GBT 1849l系列标准和相关标准的使用指南。本部分为GBT 18491的第5部分。本部分等同采用ISOIEc TR 141435:2004信息技术软件测量功能规模测量第5部分:功能规模测量的功能域确定(英文版)。由于国际标准IsOIEc 14“36:2006发布晚于IsOIEc TR141435:z004,因此,原国际标准IsOIEC TR 14143一s:2004的前言中不涉及Is0IEc 141436:2006。而在将Is0IEc TR 141435:2004转化为本部分时,前言中补充了有关第6部分的说明。本部分做了
4、下列编辑性修改:根据国情,删去了原文的引言中的最后两段文字;由于原文第7章的注2与上段文字重复,在转换为国家标准时,作了删除处理。本部分的附录A和附录B为资料性附录。本部分由全国信息技术标准化技术委员会(sAcTc 28)提出并归口。本部分起草单位:上海计算机软件技术开发中心、中国电子技术标准化研究所负责起草。本部分主要起草人:杨根兴、蔡立志、刘振宇、冯惠、谢晓燕、李婷、金荣得、陈达丽。GBT1849152010IS0IECTR14143-5:2004引言 功能规模测量(FsM)是通过量化软件用户功能需求来测量软件规模的一种技术。最初发表包含这种概念的方法是由AllanA1bercht于20世
5、纪70年代后期开发的功能点分析。此后,对原有方法开发出了许多扩展和变种。在将A1brecht的方法或此后的功能规模测量方法等特定方法应用到不同类型的软件中时,已作出了很多关于有效性和局限性的申明。所引用的这些软件类型的例子包括管理信息系统(MIs)、嵌入式软件、过程控制软件、决策支持软件、军用软件、工程和实时软件等。“软件类型”这个术语的定义很宽泛。它们已被广泛用于区分软件执行的用户功能种类(它能做什么)、软件性能问题、内部处理复杂度、物理实现需求和开发环境。这些术语或与功能规模评估相关的FuR特性都还没有普遍一致的定义。其结果如下:a)对于一个特定FsM方法的潜在用户去评估该方法对度量一组F
6、uR特定集规模的适用性是很困难的;b)一个FsM方法的所有者和开发者无法描述可应用该FSM方法的功能域。GBT1849l的本部分通过描述如何使用FuR特性确定软件类型来说明这些难点。在本部分中, 短语“软件类型”由已定义的术语“功能域”替代。在GBT184911200l中,功能域被定义为“基于与功能规模测量有关的FuR特性的一类软件”。GBT1849112001要求一个FSM方法应描述其能应用的功能域。本部分的目的是详细说明功能域是如何定义的,并提供用于产生功能域的方法实例。GBT 1849152010Iso皿c TR 14143-5:2004信息技术软件测量功能规模测量第5部分:功能规模测量
7、的功能域确定1范围GBT 18491的本部分描述了功能域的属性和可用于确定功能域的功能用户需求(FuR)特性的原理。附录A和附录B中提供了两种实现这些原理的方法实例。这两种方法都可以被直接使用,或者通过以下方法使用本地定义的功能域:a) 由FsM方法的用户来确定一个特定的FsM方法是否适用于特定FuR描述的功能域;b)为给定的FUR集描述FUR所属的功能域;c) 由FsM方法的拥有方和设计方描述在GBT 184911 2001中概括的可应用FsM方法的功能域。使用附录A和附录B中的方法确定功能域在于它允许对不同出处的FuR进行比较,并允许对各种FsM方法的可用性进行比较。2规范性引用文件下列文
8、件中的条款通过GBT 18491的本部分的引用而成为本部分的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本部分,然而,鼓励根据本部分达成协议的各方研究是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本部分。GBT 1849112001信息技术软件测量功能规模测量第1部分:概念定义(idt IsOIEc141431:1998)3术语和定义下列术语和定义适用于本部分。31FUR特性 chamcteristic of FURFuR可区分的属性,对标识FuR所属指定集的功能域是重要的。32功能域归类 fu取tio聃l d唧aicategor
9、izatio识别符合51中要求的功能域的过程。4缩略语FDc 功能域归类 (functio蚰l d岫ain categorization)5要求51功能域的一般要求一个功能域应:a) 区别于其他所有的功能域b) 由一组与功能规模相关的特性描述。GBT1849152010IsoIECTR141435:2004 功能域应使用信息技术业界公认的术语命名,扩展时适当注明其出处,比如“OrganizationxReaI Time”。这允许功能域在FsM的周境中(以及存在软件分类需求的其他潜在软件领域,如软件开发和维护)获得认可。注:应避免没有进一步的限定而直接在样本功能域的标题中使用业界术语(如实时、M
10、1s、过程控制),因为它们在信息技术业界中使用(或误用)时除了包含FuR,通常还包古对质量和技术因素的考虑。需要有一个直接的声明以强调软件的技术和质量特性不是所定义功能域的部分。例如:在业界使用的术语。实时”可能意味着时间约束(技术的或定性的)、特定的硬件(技术的)、即时的反馈(质量)、与非人工用户(软件硬件)的通讯、关键安垒性和可靠性(质量),容错性(质量),加上实际的FuR(如在航空器中的航行水平位置控制)。一组FuR可被归属于多个功能域。52功能域特性的一般要求一个功能域的特性应:a)继承了在GBT184911200l中定义的功能规模的所有特性;b)由功能用户需求展示;c)独立于软件开发
11、方法;d)独立于质量和技术需求。521FDC方法的要求一个FDC方法应:a)是可重复的;b)是一致的;c)使得出的功能域描述,在将来仍保持与产生时一致;d)是结构化的,而且易于理解;e)定义功能域的特性。注:附录A和附录B列举了FDc方法的例子。其他方法也是可行的。6规程61确定用于给定FuR集合的功能域 为了确定一个FuR集的功能域:a)使用一个FDc方法识别该FuR集展现的特性;b)将该特性集和参考功能域的特性集进行匹配,如使用选中的FDc方法定义的Ic)确定适用于这个FuR(或FuR集)的功能域。62确定一个聪M方法对特定功能域的适用性为了确定一个FsM方法对特定功能域的适用性:a)识别
12、为特定功能域定义FDC方法的特性;b)对于所选的FsM方法和每个BFc类型,识别上述哪些特性是被认可的c)将该功能域的特性和被FsM方法认可的特性进行比较;d)如果由功能域展现的特性:1)是FsM方法认可的子集,那么FsM方法适用于该功能域;或2)是FsM方法认可的超集,那么FsM方法部分适用于该功能域;或3)与FsM方法认可的任一特性不符,那么FsM方法不适用于该功能域。7FDc方法举例基于第6章描述的规程,附录A和附录B就是独立的且自包含的FDc方法的一些实例,用以说明定义功能域的不同方法。这些方法或任何其他的符合521的结构化方法都可以用来帮助确定一个GBT 1849152010IsOI
13、Ec TR 141435:2004FsM方法所适用的功能域。GBT 184911200l要求一个FsM方法描述它能够应用的功能域。FsM方法的拥有者应使用附录A和附录B中的方法或其他可比的结构化方法的概念来描述其FsM方法可适用的功能域。作为替换,FsM方法的拥有者可以使用这些方法来生成本地定义和命名的功能域。注:已有的FsM方法的概念可能,也可能不完全符合资料性附录中方法的概念,因为在这些方法被开发出之前,许多FSM方法已经被定义和设计好了。附录A给出了一个“自顶向下”的方法实例,来构造一个定义功能域的方法,这些功能域是建立在对软件工程领域内外使用的分类方法的众多文献研究基础上的,并结合了用
14、于辨别“什么能够被功能域正常理解”的软件工程概念。附录B给出了一个“自底向上”方法的例子,该例子使用已有的软件工程概念来定义一个用于确定功能域模型的BFc类型集(见GBT 184911 2001中的定义)。GBT1849152010硌OIEc TR141435:2004 A1本附录的目的附录A(资料性附录) 确定功能域的cHAR方法本附录的目的是为了:a)定义一个FDc方法fb)使用这个方法生成各种特定的功能域的实例定义;c)根据FuR和一些现有的候选FsM方法的例子来测试该方法。GBT1849112001要求: a)FsM方法是通过识别在FUR认可范围内的“基本功能部件类型(或BFc类型)”
15、以及分配用于计算功能规模的值的方法来度量功能规模的;b)BFc类型是一个已定义分类的“由FsM方法定义和使用的,以测量为目的的FuR基本单元”;c)FsM方法应描述它们可应用的功能域。 本附录:a)能用来描述或定义各种来源于FuR的实用功能域;b)能被FSM方法的设计者用来说明哪些特性是被他们设计的FsM方法的BFc类型认可的。在测试要求列表中的每个测试要求应:a)被编号,这样它能被唯一地标识;b)识别FsM方法中相应的语句,如果是可适用的;c)识别测试引用的性能属性;d)陈述用于确认测试的确认方法;注:确认方法将在附录B中描述。e)与A2中各条款的描述正好一致。A2定义A21CHARs 为附
16、录A方法选择的特定的FuR特性。A22CARG邢p用于确定一个特定功能域的一组相关cHARs的集合。A3与邢M相关的FUR特性(aIARs)A31背景基于cHARGroup方法,有3个区分功能域的CHAR Group。通过A32中描述的评价和等级,一个FuR集能够经过评价而找出它特定的功能域。A311cHARGm叩模型有3组cHARs,每组都包含了可变数量的cHARs。每个cHAR只能属于一个cHARGroup,而且只能单独进行评价: a)控制和通讯占优FUR规定:软件必须并发操作和控制其外部世界的用户。本CHARs包括:GBT 1849152010IS0IEC TR 141435:20041
17、)响应:软件需求,包含转换为FuR的时间约束;2)接口:用于对外部对象或其他外部软件进行控制或与之通讯的软件接口是至关重要的;3)系统管理:软件通过对外部环境的管理来检测越界或紧急数值,它的处理顺序也能够根据以上情况进行调整(例如,高优先级的触发条件能够中断或改变服务的处理)。注,软件是否能监控外部环境,或者外部环境是否为数据监控提供触发条件,是实现相同功能用户需求的两种途径。b)数据占优数据体系结构、关系需求、完成FuR规定事务时的数据持久性是软件的优先考虑。本cHARs包括:1)复杂的数据:复杂的数据或控制关系(或相互依赖)的需求是FuR的重要组成部分;2) 持久性:数据的持久性或逻辑存储
18、是FuR的重要组成部分。注:本附录中的数据持久性指的是输入或查询的数据应该保留一段时间的需求,严格考虑数据是否必须被保留到单个已完成的事务之后。c)操作和算法占优FuR规定软件必须执行特定类型的算法密集的服务与或复杂的操作。本cHARs包括:1)操作:数据的高效处理(例如,对简单数据进行不同逻辑功能操作的优势);2)科学工程:数学或逻辑算法要求的科学工程(例如,包括精度和正确性、统计分析等);注:例如,Montecarlo仿真是一些软件估算模型中要求的复杂的统计算法。3)适应性:软件是被要求具有适应性的(也就是软件能够根据外部情况或事件动态地改变它的行为或逻辑)或软件具有业务处理规则,这些规则
19、是根据日期、时间,季节或其他外部需要考虑的事项进行调整的。注:例如,人身保险精算软件包含了管理用于特定情况的算法组合的规则,这些算法不是静态的。A32 通过评价FuR或FuR组确定功能域的规程如果给定一组FuR,确定它们所屑的功能域的规程分三步执行。首先,对每个cHAR进行评价和等级划定,并记录在表A1中;其次,作为结果的cHAR等级被用来建立cHAR Group的等级(见表A2);最后,合并cHAR Group的等级用于确定FuR的功能域(见表A3)。a) 为给定的FuR集评价每个cHAR的重要性,可通过将重要性等级划分为可忽略的、一般的和重要的。提供表A1是为了增加划分cHARs等级时的一
20、致性和客观性。该表为每个分类提供了FuR范例,并为每个cHAR回答了下面的问题:FUR是否展现了这个CHAR?表A1 cHAR评价裹等级一可忽略的 等级一一般的 等级一重要的等级CHAR (代表了50(忽略的、一般的、重要的)的需求) 的需求) 的需求)控制和通讯占优1响应 报告批处理 查询银行结余 监控管道压力2接口 模拟算术计算器 处理信用卡支付 控制喷油系统3系统管理 处理月工贽单 自动驾驶 控制核反应堆数据占优4复杂的数据 频繁的飞机登记 管理组织财政 监控有组织的犯罪5持久性 搜索因特网 月站导航 监控实验火箭GBT1849152010ISo卫ECTR141435:2004表A1(续
21、)等级=可忽略的等级=一般的等级;重要的等级CHAR(代表了50“(忽略的、一般的、的需求)的需求)的需求)重要的)操作和算法占优 6操作旅馆人住登记 目录管理在线医疗诊断 解释来自哈勃空间7科学工程监控在线购物车预测气象望远镜的数据 8适应性检查拼写错误 扫描邮件病毒控制导弹轨道b)基于第一步获得的cHAR的结果,使用表A2建立cHARGroup的等级。表A2cHARGmup的评价 等级=可忽略的等级一一般的等级一重要的(没有等级为一(至少有一个CHARGrouD般的cHAR或CHAR的等级是 (有个cHAR等级CHARs的总和需求的50) 求的50蹦)控制和通讯占优 使用表A1中的响应、接
22、口和系统管理cHARs的结果数据占优使用表A1中的复杂数据和持久性cAHRs的结果 操作和算法占优使用表A1中的操作、科学工程和适应性CHARs的结果c)运用第二步建立的cHARGroup等级,从表A3中选择适当的功能域。表A3功能域功能域控制和通讯占优 数据占优类型操作和算法占优纯数据处理系统可忽略的重要的可忽略的信息系统可忽略的重要的一般的数据处理系统 可忽略的一般的一般的控翩信息系统 一般的重要的可忽略的控制数据系统 一般的一般的可忽略的复杂控制信息系统 一般的重要的一般的非特定(复杂)系统 一般的一般的一般的简单控制系统 重要的可忽略的可忽略的控制系统一般的可忽略的一般的复杂控制系统
23、重要的可忽略的一般的数据驱动控制系统 重要的一般的可忽略的复杂数据驱动控制系统 重要的一般的一般的纯计算系统可忽略的可忽略的重要的控制计算系统 一般的可忽略的重要的科学信息系统 可忽略的一般的重要的科学控制数据处理系统 一般的一般的重要的注:本表提供了功能域的例子,并不是给出所有的列表。GBT侣49152010碍oIEC TR 14143-5:2004A33 cHAR总结图A1总结了A32概述的cHAR的评价规程。图A1功能域评价过程A4评估FUR确定功能域的范例A41范例1:字处理FURA411字处理FuR下列逻辑需求组成了本应用的FUR:输入:a) 接受介于1132之间的一个数值(称为MA
24、xPOs);b) 接受一个字符输人流(称为INsTREAM);c)在输出中保持输入单词的顺序和长度;d)使每个内部输入中断减少为单个的字符输出中断,e)每个输出行以一个字作为开始;f) 在每个输出行中填人尽可能多的完整的字;g)在新行之前,建立包含不超过MAxPOs限定长度的字符的输出行h) 只在输人中断的地方对输出行进行中断;i)保存输人供以后参考和使用;GBT1849152010Is()IEc1R141435:2004 输出:j)返回与正常输入对应的完整编码;k)返回与无效MAxPOs对应的完整编码;1)返回与空输人对应的完整编码;m)返回与仅表示中断的输入对应的完整编码n)返回与超长字对
25、应的完整编码;o)以逐行的输出格式返回输入字符流。A412字处理FuR功能域评价结果表A4字处理nJR评价CHAR等级(见表A1)CHARGroup等级(见表A2)功能域(见表丸3)响应可忽略的接口可忽略的控制和通讯占优 可忽略的系统管理可忽略的复杂数据可忽略的数据占优一般的数据处理系统 持久性一般的操作一般的科学工程可忽略的操作和算法占优 一般的适应性可忽略的 A42范例2:人力资源FuRA,421人力资源n瓜下列逻辑需求组成了本应用的FuR:a)维护和存储职工及其家属信息;b)维护和存储有效的职位信息;c)维护和存储工作分配的信息;d)提供在任何地点及时访问信息的方法;e)将所有对工资单情
26、况的修改记录到工资单日志中。A422人力资源FuR功能域评价结果表A5人力资源n瓜评价CHAR等级(见表A1)CHARGroup等级(见表A2)功能域(见表A3)响应可忽略的接口可忽略的丰富的控制和交流 可忽略的系统管理可忽略的复杂的数据一般的数据占优重要的信息系统持久性一般的操作一般的科学工程可忽略的操作和算j击占优 一般的适应性可忽略的 九43范例3:交通灯nJRA431交通灯FuR下列逻辑需求组成了本应用的FUR:GBT 1849152010IsoIEC TR 141435:2004a)交通灯会根据等待的车辆数、信号灯位置以及预先设定的时间而变化b)维护和存储时段、工作日和节假日时间段的
27、时间设置文件;c)来自于紧急车辆的信号可中断常规程序逻辑;d)火车信号应防止交通灯通过开关变为绿灯;e) 发送每周的交通统计情况到交通部门(DOT)。A432 交通灯系统FuR功能域评价结果表A6交通灯系统FuR评价CHAR 等级(见表丸1) CHAR GrouD 等级(见表A2) 功能域(见表A3)响应 一般的接口 一般的 控制和通讯占优 重要的系统管理 一般的复杂数据 一般的数据占优 一般的 复杂数据驱动控制系统持久性 一般的操作 可忽略的科学工程 一般的 操作和算法占优 一般的适应性 一般的A44范例4:银行自动柜员机FuRA441银行自动柜员机FuR下列逻辑需求组成了本应用的FuR:被
28、维护的实体:a)顾客;b)存款帐户;c)支票;d)交易(图像);接口:e)软件通过访问终端控制器中的表来获得日期、分行号和状态(在线或离线),但用户不能访问这些数据;f) 没有其他可被访问的文件;交易功能:g)增加客户;h)修改客户;i) 删除客户;j) 客户查询;k)新开帐户;1) 结清帐户;m)支票存款;n)支票提现;o)存款lp)取款;q)两个帐号问的转账;r)支票查询;9GBT1849152010ISOIECTR141435:2004s)存款查询;t)打印凭证;u)存折登折; v)从j)到s)项功能必须在10s内完成,否则会发生超时。A442银行自动柜员机FuR的功能域评价结果表A7银
29、行自动柜员机FuR评价CHAR等级(见表A1)CHARGrouo等级(见表A2)功船域(见表丸3)响应一般的接口可忽略的控制和通讯占优 一般的系统管理可忽略的复杂数据一般的数据占优重要的复杂的控制信息系统 持久性一般的操作一般的科学工程可忽略的操作和算法占优 一般的适应性可忽略的 A5把部分通用软件“类型”映射到cHARGmup模型中作为对模型的测试,被普遍理解的软件“类型”的特性可以被映射到cHARGroup模型中。表A8 中给出的软件类型列表包括IsO1Ec12182信息技术软件分类中出现的或同义的术语。下列术语不会都被使用,因为IsOIEc12182中的绝大多数分类与本部分的目的无关。注
30、:为这些软件“类型”选择的特性可以不必出现在所有特定软件“类型”的实例中。袭A8对部分普遍理解的软件“类型”的分析控制和IsOIEc12182软件类型功能域丰富数据丰富的操作通讯占优管理信息系统(业务处理),决策支持 信息系统可忽略的重要的一般的宇处理系统,地理信息系统,银行自 数据处理系统可忽略的一般的一般的动柜员系统控制数据系统 一般的一般的可忽略的业务(业务企业) 复杂控制信息系统一般的重要的一般的军用指挥和控制 非特定(复杂)系统一般的一般的一般的实时:嵌入式,设备(打印机磁盘) 简单控制系统重要的可忽略的可忽略的驱动实时:嵌入式、航空电子、消息路由 复杂控制系统重要的可忽略的一般的E
31、_mail、紧急派遣呼叫接收,操作 系统数据驱动控制系统 重要的一般的可忽略的复杂数据驱动控制 过程控制(控制系统)重要的一般的一般的系统科学的、标准数学三角算法系统 纯计算系统可忽略的可忽略的重要的工程控制计算系统 一般的可忽略的重要的GBT 1849152010ISOmC 1R 141435:2004表A8(续)控制和Is0IEc 12182软件类型 功能域 丰富数据 丰富的操作通讯占优自学系统(专家或人工智能),统计学的,电子制表软件,安全系统,保险 科学信息系统 可忽略的 一般的 重要的精算科学控制数据处理关键安全一般的 一般的 重要的系统(无相应类型) 纯数据处理系统 可忽略的 重要
32、的 可忽略的(无相应类型) 控制信息系统 一般的 重要的 可忽略的(无相应类型) 控制系统 一般的 可忽略的 一般的注:本分析显示,许多通用软件类型不能被FUR区分,而是要通过其他需求类型,特别是质量约束来区分。A6 现有的候选FSM方法到cHAR Gr叫p模型的映射作为对CHAR Group模型的测试,4个现有的FsM候选方法,包括IFPuG功能点分析方法41版(未调整的功能点)、针对功能点分析的应用的NEsMA定义和计算指南、MkII FP方法和cosMIcFFP方法被映射到BFc类型中,见表A9。注:之所以包含这四种方法是由于它们当前正通过PAs过程进行标准化,或是作为sc7中一个新工作
33、项。表A9现有的候选砖M方法到cHARGmnp模型的映射IEPUG41 NESMACHAR MKII COSMIC FFP未调整 未调整通过基本越界处理, 通过基本越界处理, 通过登录、退出BFc的响应 提供的持久数据是 提供的持久数据是 通过逻辑事务 响应一般等级的 一般等级的通过基本越界处理, 通过基本越界处理,接口 提供的持久数据是 提供的持久数据是 通过逻辑事务 通过登录、退出BFC的接口一般等级的 一般等级的通过基本越界处理, 通过基本越界处理, 通过登录、退出BFc的系统管理 提供的持久数据是 提供的持久数据是 通过逻辑事务 系统管理一般等级的 一般等级的复杂的数据 未说明 未说明
34、 未说明 未说明通过mF、EIF 通过ILF、EIF 通过逻辑事务的实 通过读、写持久性BFC的持久性 BFc的持久性 体参考 BFC的持久性操作 未说明 未说明 未说明 来说踢科学的工程 未说明 未说明 未说明 未说明适应性 未说明 未说明 未说明 来说明上述分析说明这4种方法比其他方法更明确地详细阐述了cHAR Group模型的确定功能域。一些cHAR是在一个方法现存BFc类型中被说明的;一些cHAR是不能被区分的;另一些cHAR不能被任何方法说明。GBT1849152010ISo皿cTR141435:2004 附录B(资料性附录) 确定功能域的BI方法B1本附录的目的本附录的目的是为了:
35、a)定义一个FDC方法;b)用这个方法生成多种特定功能域的实例定义;并c)根据FuR和一些现有的候选FsM方法的例子,测试该方法。GBT1849112001要求:a)FsM方法是通过在FuR中识别“功能部件类型”(或“BFc类型”)并分配用于计算功能规模的值来测量功能规模的;b)BFc类型是一个已定义的“由FsM方法定义和使用的,以测量为目的的FuR基本单元”类型;c)FSM方法应描述它们能应用的功能域。 本附录:a)能被用于描述或定义源自FuR的各种实用功能域;b)能被FuR方法的设计者用来说明哪些特性能够被他们设计的FsM方法的BFc类型识别。本附录中定义的BFc类型集(“BFc类型模型”
36、或“模型”)提供了一个软件FuR的元模型。此模型基于已建立的“结构化”信息系统和数据分析方法的部件,这些方法包括chen、codd、constantine和Myers、DeMarco、Jackson、warnier与Yourdon等,但是根据对实际软件部件的额外观察进行了独立扩展。定义BFc类型集的一个重要选择标准是BFC类型的粒度或抽象水平能够使其被明确地识别和定义。B2BFc类型模型B,21模型本附录中的BFc类型模型取决于对软件是如何被构造为“层”和层中的“段”的理解(参见图B1),此外,还依赖于对软件段“边界”的定义。对这些术语完整的解释将在B8中给出。处于任何一段的软件的FuR通常是
37、由仅属于一个已定义功能域的BFc类型构成的。然而,处于同一层次相邻段或相邻层次的软件的FuR或可能或不可能与我们感兴趣的段属于同一个已定义的功能域。因此,在为了确定一组特定FuR属于哪个(或哪些)功能域而分析这组FuR时,首先应该关注区分层及其层中的段。类似地,当确定一个特定的FSM方法是否能被用于测量一组特定FuR的规模时,首先应确定FuR是否需要软件处于不同功能域的不同层次与或段。只有这样,人们才能测试该FsM方法是否能应用于所有的FuR。这个方法是这样看待FuR的:a)FUR由一组事务构成;b)事务将接收的数据作为输入,然后处理这些数据,最后输出处理结果。】2GBT 1849152010
38、IsoIEc TR 141435:2004事务l事务n软件或FUR图B1软件模型B22将FuR分解成BFC类型B221事务种类FuR规定软件一旦“被运行”后应该做什么。FuR的主子集能够被功能性地分解成“事务”,这些事务是输入、处理、输出的序列(不必按照这个顺序),并由软件外部事件触发。(在实时系统世界中,事务可以被定义为软件对“外部事件”而要求做出的响应。)范例包括:a) 对于一个业务应用,在真实的自然世界中签约了一个新顾客,该事件触发了用户在软件中登记顾客相关信息的过程;b)用户决定查询新客户信息(的事件);c) 对于一个过程控制应用,一个硬件时钟达到某个特定时刻(的事件)就会触发这个应用
39、开始一轮对一列传感器的轮询,以收集数据,并把接收到的数据和标准值进行比较,然后发送信号将修正值应用到机器设定中;d)对于前面的过程控制范例,除了以上情况,软件要求是可中断的,例如,如果一个传感器监测到一个需要立即引起注意的异常情况(的事件),软件的正常操作会被中断,软件的功能将变化为处理这个异常情况;e) 消息路由器接收一条发送来的消息(的事件),通过处理来确定往哪里、如何转发这条消息,并将消息正确发送。在任何情况下,当软件与相关外部事件处于完全一致的情形时,该事务就完成了,也就是说该事务已经完成了被要求完成的作为外部事件产生的结果的每一件事。基于软件被要求如何与外部世界进行交互,本模型可识别
40、3类事务(3种BFc类型):类型1(被动的):一旦启动,软件正常的情况就是不做任何事。当接收到一个来自软件边界另一边的用户的输入时,数据将被处理,处理过程或可能或不可能将数据返回到边界另一边。当事务完成后,软件回复到“不傲任何事”的状态。类型2(半主动的):一旦启动,软件的正常情况是:软件必须定期观察在边界另一边所发生的事情。根据探测到的情况和它的处理规则,软件或可能或不可能将数据返回到边界另一边。类型3(可中断的):一旦启动,软件在类型1或类型2的模式下运行,但另外,当得知某种类型的事件发生时,它必须停止正在做的任何操作,然后接受事件并立即对事件作出反应。根据与该事件相关的3GBT18491
41、52010Is0IEcTR141435:2004处理规则,软件或可能或不可能将数据返回到边界另一边。上述解释只说明了软件可能被要求执行的功能。每项功能都可以通过不同的方法来实施,而且实现过程可能被性能或质量需求限制。如何详细说明这3种类型的例子分别是:a)“软件需要接收键盘的一个输入,并在监视器上显示该键值对应的符号”;b)“软件需要每隔1s读一次温度并产生一个信号,用来指出冷却剂的温度是否超出了2030的范围”;c)“软件需要每隔1s读一次温度,当温度高于30时,产生一个“启泵”的信号;当温度低于20时,产生一个“停泵”的信号。无论何时,当接收到过热的通知时,软件将无条件地发出“启泵”的信号
42、。B222认可的数据类型事务包括输入、输出和对数据项或数据组的处理。这个模型可区分软件需要认可的各种不同类型的数据项或数据组(也就是BFc类型)。不同的功能域可以只认可某些数据类型。本模型认可下列数据类型:a)数据元素类型(DET),同义词“数据属性”;b)数据组(单个实体类型的数据属性的集合);c)声音;d)图像;e)动态图像; f)数据关联(描述两种数据类型之间的意义和关联程度的规则)。注:在现有FsM方法中,。数据元素类型”的典型定义是“唯一的用户可认可的数据单元”,这个概念能包括以上任何一种数据类型。因此,如果合适,今后基于本模型定义BFc类型和功能域的FsM方珐可以需要更准确地详细说
43、明它们认可哪些数据类型。B223信息创建功能类型当事务“处理”数据,也就是它们操作和计算新数据时,它们会使用许多不同的处理类型,我们就称这些处理类型为“信息创建功能类型”。这些BFc类型的复杂性从非常简单的布尔运算到复杂的数学算法,它们随功能域的变化而变化。本模型认可以下信息创建功能类型:a)简单布尔运算;b)简单算术运算;c)标准的数学统计学算法(例如业界标准的电子制表软件);d)二维和三维几何学(例如地理信息系统);e)复杂的科学工程处理(例如机翼设计或者天气预报);f)基于推论的决策规则集,例如在专家系统中;g)启发式或自调整的算法;h)特定业务领域算法(也就是在本地业务中定义的)。B2
44、24数据保留需求B222中的数据类型可以被要求为不同的时间段而保留,这是一个区分功能域的特征。本模型识别3种时间量程(或“持久度”),FuR为这3种时间量程详细说明了数据类型的保留程度:a)不保留的,在逻辑事务完成后不需要被保留的数据类型,例如简易计算器使用的数据;b)仅在软件处理期间才需要被保留的数据类型,例如,当所有事务被处理后,贯穿于这批实现普通报表输出事务的累积数据;c)为软件外部事件而需要长期被保留的数据类型,就软件而言,是无限期地。】4GBT 1849152叭0IsoIEC TR 141435:2004B23 BFc类型模型总结本附录的BFC类型模型认可3组BFc类型,即:a)3种
45、事务类型b)不同的数据类型;c)“信息创建功能”的不同类型。各种数据类型都能被要求具有3种数据保留持久性程度中的任何一种。要求任何事务仅识别确定的数据类型,根据确定的信息创建功能的类型处理该数据类型,并在确定的周期内保留该数据类型。本附录中的模型建议所有的FuR能以这些BFc类型和数据保留需求来表示,为实用FsM方法而需被区分的功能域能够由这些相同韵BFc类型来定义。然而,这个BFc类型的列表并未声明是毫无遗漏的,也不排斥将来其他BFc类型的规定。BFc类型模型可以总结为表B1。表B1 BFc类型模型定义功能域的一个框架软件BFc类型4数据类型保留要求1事务种类 2数据类型 3信息刨建功能类型
46、被动的 数据元素类型DET 简单布尔运算 不保留的半主动的 数据组 简单算术运算 (只在事务的持续期可)可中断的 声音 2维或3维几何学 处理期间保留的图像 标准的数学统计学算法 无限期地动态图像 复杂的科学工程算法数据关联 专家系统规则启发式算法特定业务领域算法B3功能域生成的过程一个唯一的功能域是能通过特征被辨别的,然后通过将表B1第1、2、3列中的。个、1个或多个相关BFc类型以及第4列中的数据保留需求进行组合,来定义这个功能域。这个过程可能会导致大量功能域定义的产生,这是我们不希望看到的。实际上,FsM方法的设计者和用户只需要少量常遇的功能域定义。表B2定义了这些功能域的例子,这个列表
47、可能在将来的研究过程中进行扩展和完善。使用表B2中的定义,此次分析结果如下:a)多用户操作系统是“复杂过程控制软件”;b)Pc字处理系统是“业务数据处理应用”的一个特殊例子,但是“业务数据处理应用”也包含图形元素作为BFC类型;c) 洗衣机嵌入式控制软件和交通灯控制系统软件是“简单过程控制软件”的例子;d)航行器飞行姿态控制系统是“复杂过程控制软件”(它必须无限期地把数据存储在航行器的“黑匣子”里),还要外加特定领域算法,也就是飞行包络线控制系统;e) “科学工程计算软件”和“业务数据处理应用软件”之间的真正区别仅在于前者存在复杂科学工程算法。】5GBT1849152010ISOIECTR141435:2004表B2功能域定义的范例软件BFc类型4数据类型功能域的范例1事务种类2数据类型3信息创建功能类型保留要求1简单计算器数据 被动的数据元素类型 简
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1