(计算机软件与理论专业论文)面向agent的软件度量研究.pdf_第1页
(计算机软件与理论专业论文)面向agent的软件度量研究.pdf_第2页
(计算机软件与理论专业论文)面向agent的软件度量研究.pdf_第3页
(计算机软件与理论专业论文)面向agent的软件度量研究.pdf_第4页
(计算机软件与理论专业论文)面向agent的软件度量研究.pdf_第5页
已阅读5页,还剩84页未读 继续免费阅读

(计算机软件与理论专业论文)面向agent的软件度量研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

r e s e a r c h on a g e n t - or i e n t e d s o f t w a r e me t r i c s abs tract i n t h i s p a p e r , t h e s o f t w a r e m e t r i c s、a g e n t a n d a g e n t t e c h n o l o g y a n d a g e n t - o r i e n t e d s o f t w a r e m e t r i c s a r e s t u d i e d , a s u i t e o f m e t r i c s s u i t a b l e f o r a g e n t - o r i e n t e d s o f t w a r e a n d a ma ( me t r i c a g e n t ) a r e p r e s e n t e d a s a n i m p o r ta n t e m b r a n c h m e n t o f s o f t w a r e e n g i n e e r i n g , t h e a i m o f s o f t w a r e m e t r i c s i s t o c o n t ro l a n d a s s u r e s o f t w a r e q u a l i t y a n d t o i m p r o v e t h e e ffic i e n c y o f s o f t w a r e d e v e l o p m e n t . r e c e n t l y , s o ft w a r e m e t r i c s a b o u t a g e n t - o r i e n t e d s o f t w a r e i s u r g e n t l y n e e d e d b e c a u s e o f r a p i d d e v e l o p m e n t i n a g e n t - o r i e n t e d t e c h n o l o g y , a l o n g w i th t h e d e v e l o p m e n t o f c o m p u t e r n e t w o r k a n d n e t w o r k - b a s e d d i s t r i b u t e d c o m p u t i n g t e c h n o l o g y . a ft e r t h o r o u g h l y a n a l y z i n g t h e c u r r e n t s u i t e o f s o ft w a r e m e t r i c s a b o u t a g e n t - o r i e n t e d s o f t w a r e , s o m e n e w m e t r i c c o n c e p t s a n d t h e o ry h a v e b e e n p r o p o s e d in o u r r e s e a r c h . t h e s u i t e o f m e t r ic s i n cl u d e s : q u a n t i ty o f k n o w l e d g e ( q o k ) , l e a r n i n g c a p a b il i ty ( l c ) , r e s p o n s i v e t im e ( r t ) , t o t a l n u m b e r o f a g e n t ( t n o a ) , n u m b e r o f i n te r a c t io n ( n 0 1) , t o t a l n u m b e r o f a g e n t ( t n o a ) , d e p e n d i n g d e g r e e ( d g d ) , d e p e n d e d d e g r e e ( d d d ) , s o c ia l r a t i o n a l i ty ( s r ) a n d i n t e l l ig e n c e q u o t i e n t o f a g e n t ( i q o a o n t h e b a s i s o f a b o v e r e s e a r c h , w e h a v e d e v e l o p e d a m e a s u r e t o o l m o d e l : ma . b y c o m m u n i c a t i n g w i t h t h e o t h e r a g e n t , ma a b t a i n s t h e d a t a o f t h e n u m b e r , s t a t e a n d c o o p e r a t i o n o f t h e a g e n t a p p l ic a t o n , a n d a n a l y z e s , c o m p u t e s t h e d a t a . t h e n t h e v a l u e s o f t h e m e t r i c s a r e a c h i e v e d . t h e v a l u e s o f t h e m e t r ic s n o t o n l y c a n e v a lu a t e t h e q u a l i t y o f t h e m e t r i c e d a g e n t - o r i e n t e d s o ft w a r e , b u t a l s o c a n g u i d e t h e d e v e l o p m e n t o f t h e a g e n t - o r i e n t e d s o f t w a r e ke y wor d s : s o ft w a r e e n g i n e e r i n g ; s o ft w a r e m e t r i c ; a g e n t ; ma ; t h e me t r i c s a b o u t a g e n t - o r i e n t e d s o f t w a r e 独 创 性 声 明 本人声明所nr . 交的学位论文是本人在导师指导下进行的研究工作及取得的研究 成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人己 经发表或撰写过的研究成果,也不包含为获得合肥工业大学或其他教育机 构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均 己在论文中做了明确的说明并表示感谢。 学位论文作者签名签字日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解 一宣丛 n 工业去全一有关保留、使用学位论文的规定, 有权保留并向国家有关部门或机构送交论文的复印件或磁盘,允许论文被查阅和借 阅。本人授权一0d e 逃) -r -, 一可以将学位论文的全部或部分内容编入有关数据库 进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后适用木授权书) 学4 1c 论文作者签名导师签名 签字日期:年月日签字日期:年月日 学位论文作者毕业后去向: 工作单位: 通讯地址: 电话: 邮编: 致谢 衷心感谢我的导师李心科博士和袁兆山教授在整个论文撰写的 过程 当中给予的悉心指 导和热情 的帮助与鼓励 。他们 的鼓励给 了我 充分 的信心 :他们提 出的许多富有启发性及建 设性的宝贵建议,使 我受益it浅;他们在生活上的帮助和关心,使我心中无限温暖.特 别要感谢李心科导师,他在论文的选题、修改直至定稿的过程中, 投入了大量的精力和时间。没有 导师的培养和教诲 ,本论文是不可 能完成的。两位 导师严 谨的治学态度和渊博的知识给我留下 了深刻 的印象,是我学习的楷模。 感谢王浩老师和学院办公室的王老师对我的帮助,感谢他们在 生活上和学习上给予我的帮助和支持. 感谢武鹏程、潘帮传、贾丽、王bi等同学的帮助和建议.感谢 他们在生活上和学习上给予的帮助和支持。 感谢我的爱人苏辛女士,感谢她平时对我生活的关心和照顾, 对我学习的理解和支持.正是她放弃自己攻读硕士学位的机会,独 自一人在家不辞劳苦地一边承担繁重的教学工作任务,一边照顾不 到四周岁的儿子和操劳家务,才使我能够安心地在校完成论文。 感谢合肥下业大学研究生部及计算机与信息学院的老师和领导 对我的帮助和支持。 合肥工业大学硕士论文 第一章绪论 1 . 1软件与软件工程 1 . 1 . 1软件 程序是计 算机可识别的源程序代码或机器可直接执行的程序代码。按照现 代软件工程的观点, 软件是程序加上开发、使用和维护该程序所需的全部文档。 软件的发展大致经历了 二个时期。一是程序时期 ( 1 9 4 7 - 6 0年代初) ,该时期程 序作为机器运行时必须进行的准各 作.程序设计全凭设计者个人经验和技艺 独立进行,是一种典型的手工艺智力劳动.计算机系统基本就是指硬件系统。 二是软件等于程序加说明时期 ( 2 0 世纪6 0 年代末一 2 0 世纪7 0 年代初) ,该时期 的程序规模较大,需许多人协作才能完成,属于 “ 作坊式”生产.程序不再是 c 1 算机硬件的附属部分,而是e 1 算机系统中与硬件相互依存的不可缺少的部分。 二是软件等于程序加文档时期 ( 2 0 世纪 7 0 年代初至今) ,用 “ 工程化”的思想 作指导来解决软件研究和开发中面临的困 难和混乱,故也称为软件工程时期。 1 . 1 . 2软件工程 软件工程是应用于计算机软件的定义、开发和维护的整套方法、工具、文 档、实践标准和一 序。软件的生命期包括软件计划、甜求分析、软件设计、软 件编码、软件测试和软件维护。软件工程的程序设计方法的发展可分为以下四 代 7 6 1, 见图 ( 1 ) . 第一代 面向 过程的 程序设 计方法 ( p - 0 ) 面向软件系统的信息流程图,采用面向过程的程序设计语言 ( p r o c e s s - o r i e n t e d l a n g u a g e ) 或面向 进程的 程序设 计语言( p r o c e d u r e - o r i e n t e d l a n g u a g e ) 如f o r t a r a n . a l g o l . c o b o l 等 编 程, 实 现软件设 计流 程图 所描 述的 信 息 处理过程的功能,称为面向过程的程序设计或面向进程的程序设计或线性程序 设计。线性程序趋于运行在一个长序列中,由跳转来控制。但程序常常缺乏如 何跳转和为什么跳转的明显标志,且线性语言的所有数据项都是全局的,它可 以被程序中的任何部分修改。这些都给线性程序的管理和维护带来很多问题. 所以 p - o方法只适用于设计小规模的专用软件包,软件的通用性、重用性、扩 展性差。 第二代 面向 “ 模块”的程序设计方法 ( m- o ) 合肥工业大学硕士论文 第一章绪论 1 . 1软件与软件工程 1 . 1 . 1软件 程序是计 算机可识别的源程序代码或机器可直接执行的程序代码。按照现 代软件工程的观点, 软件是程序加上开发、使用和维护该程序所需的全部文档。 软件的发展大致经历了 二个时期。一是程序时期 ( 1 9 4 7 - 6 0年代初) ,该时期程 序作为机器运行时必须进行的准各 作.程序设计全凭设计者个人经验和技艺 独立进行,是一种典型的手工艺智力劳动.计算机系统基本就是指硬件系统。 二是软件等于程序加说明时期 ( 2 0 世纪6 0 年代末一 2 0 世纪7 0 年代初) ,该时期 的程序规模较大,需许多人协作才能完成,属于 “ 作坊式”生产.程序不再是 c 1 算机硬件的附属部分,而是e 1 算机系统中与硬件相互依存的不可缺少的部分。 二是软件等于程序加文档时期 ( 2 0 世纪 7 0 年代初至今) ,用 “ 工程化”的思想 作指导来解决软件研究和开发中面临的困 难和混乱,故也称为软件工程时期。 1 . 1 . 2软件工程 软件工程是应用于计算机软件的定义、开发和维护的整套方法、工具、文 档、实践标准和一 序。软件的生命期包括软件计划、甜求分析、软件设计、软 件编码、软件测试和软件维护。软件工程的程序设计方法的发展可分为以下四 代 7 6 1, 见图 ( 1 ) . 第一代 面向 过程的 程序设 计方法 ( p - 0 ) 面向软件系统的信息流程图,采用面向过程的程序设计语言 ( p r o c e s s - o r i e n t e d l a n g u a g e ) 或面向 进程的 程序设 计语言( p r o c e d u r e - o r i e n t e d l a n g u a g e ) 如f o r t a r a n . a l g o l . c o b o l 等 编 程, 实 现软件设 计流 程图 所描 述的 信 息 处理过程的功能,称为面向过程的程序设计或面向进程的程序设计或线性程序 设计。线性程序趋于运行在一个长序列中,由跳转来控制。但程序常常缺乏如 何跳转和为什么跳转的明显标志,且线性语言的所有数据项都是全局的,它可 以被程序中的任何部分修改。这些都给线性程序的管理和维护带来很多问题. 所以 p - o方法只适用于设计小规模的专用软件包,软件的通用性、重用性、扩 展性差。 第二代 面向 “ 模块”的程序设计方法 ( m- o ) 合肥工业大学硕士论文 结构上将软件系统化分为若千功能 “ 模块”( mo d u l e ) ,分别采用模块化程 序设计语言如 p a s c a l编程实现:在由各模块联结、组合成相应结构的软件系 统,称为血向模块的程序设计方法或模块化程序设计方法或结构化程序设计方 法。结构化语言的共同特点是都支持结构化程序设n原理,即程序中的任何逻 辑问题都可用 “ 顺序” 、 “ 选择”和 “ 循环”二种基本结构加以描述。结构化程 序设计中还引入 了“ 抽象”这一重要概念。m- o 方法适用于设计模块化、结构 化程序,可 提高软件系统的模块化、结构化水平, 设计和组装较大规模的系统, 有助于提高软件的通用性、it 用性、扩展性。 第二代 面向对象的程序设计方法 ( o - o ) 所谓 “ 对象”是指具有一定结构、属性和功能的 “ 实体” ,它封装了属性 和操作。 采用 “ 对象”和“ 对象类” ,以及对象之间相互通信的“ 消息” 描述客 观世界中的各种事物及其相互关系, 建立面向对象和消息的具有层次结构的“ 世 界模型” 。ifs a 对象的程序设 计方法 ( o b j e c t - o r i e n t e d p r o g r a m m i n g ) 基于上述 面lid 对象世界 模型, 采用面lid 对象的 程序设计 语言 ( o b j e c t - o r ie n t e d l a n g u a g e ) 如c 十 + 、 s m a l l t a l k等 编程实 现。 这 种。 - o方法具 有 通用性, 适用于广泛应 用领域的大规模软件系统设计,有助于提高软件的重用性、扩展性、移植性。 提高编程效率和程序自动化水平. 第四 代 面向a g e n t 的 程序设计方 法 ( a - 0 ) 新一代的 程序设计方 法. 面向a g e n t 的 程序设计方 法 a g e n t - o r i e n t e d p r o g r a m m i n g ) 是 面向 对 象 程 序设计 方 法 的 发 展. 由 于a g e n t ( 在 第 三 章中 详 述) 是对象的继承与发展,是具有自 主性、主动性的智能化、拟人化的对象。因而 a - o方法不仅继承了o - o方法和 m- o方法的优点, 具有通用性、模块性、 重 用性、扩展性、移植性. 而且进一步发展了 o - o方法和 m- o方法,提高了 软 件系统的智能性、互操作性、灵活性、编程效率和程序的自 动化水平、智能化 水平。 第四代 第二代 第二代 第一代面向过程的程序设计( p - o 图 ( 1 ) 软件设计方法的发展 合肥工业大学硕十论文 1 . 2对面向a g e n t 软件质量度量进行研究的 必要性 计算机科学技术发展至今,其面临的应用发生了深刻的变化,尤其是 i n t e r n e t /i n t r a n e t 的出现和应用的不断扩大, 越来越多的应用呈现出分布( 数据、 资源、能力等) 、开放、动态、复杂等特征, 现有的计算机技术如对象技术在开 发这类应用系统中面临许多问题,如不能较好地适应系统的动态性、异构性和 复杂性,开放的系统难于管理和维护等等。a g e n t 技术在解决上述问 题、 适应 应用系 统新的 特征 等方而 表现出 一定的 有效 性和灵活 性。 所以, 对于 a g e n t 及 a g e n t 技 术的 研究,已 逐 渐成为 计算机科学 领域一个新的热点。 a g e n t 这一 概念 的产生、发展和引用极大地改变了 人们对计算机系统尤其是计算机软件的理解 和认识, 推动了计 算 机技术的 推广和应用。 基于a g e n t 系统代表了 一种新的方 式和途径用于概念化、分析、描述和实现复杂庞大的系统,因而体现了一种新 的软 件开发范型 12 9 7 。 有些学者 甚至认为 基于a g e n t 的计算是 软件工 程领域下一 个具 有重要意义的突 破口以 及软件一 1 程领域的 一次重 大革 命 i5 7 为了 处 理存在的问 题而 主张 提供 新方法( n e w w a y ) 的 每 种科学的 新发展需要适当的 ( 比如形式化的和量化的) 数值方法 (e v a lu a t io n m e t h o d s) 和基于一致性的标准 ( c o n s e n s u s - b a s e d c r it e r ia )来街量 ( m e a s u re)其主张的正 确性。这些方法和标准的综合便构成了 度量 (m e t r i c s ) ,通过度童,并与他 们的主张相比较,新的发展得到了衡量. 智能软件 a g e n t 及其技术与面向对象方法相比 取得了 惊人的进展。如果 a g e n t 技 术 要 实 现a g e n t 的 智 能 化并 能 维 持 其 持 久的 影响, 软 件a g e n t 也 需 要 正 规的度量。软件度量学,作为软件工程的一个新的分支,对于面向过程和面向 对象的软 件度量不论 是理论 还是实践都 取得了 很大的 进步。 而随 着 a g e n t 及其 技术的出 现,面向 对象软 件度量已 不完全 适用于面向a g e n t 。目 前, 关于面向 a g e n t 软件度量的研究刚刚处于萌芽时期,仅局限在度盆元的层次上。所以 有 必要对面向a g e n t 的软件度量理论和实践进行进一步的研究. 软 件质量问 题是软件 工 程界 普遍关 注的 焦点问 题。 我 们对面向a g e n t 的 软 件度量进行研究,目 的是 要 有效的 对面向a g e n t 的软 件进行软件质盆 控制和 保 证,提高软件开发效率. 1 .3本文的内 容及组织 1 .3 . 1本文的主要内容 本论文的 主要内 容包 括软 件 度量学、 a g e n t 及其技术、 面向a g e n t 的软 件 质量 度量。介 绍了 软 件质量 度量学 基本理论, 系统阐 述了a g e n t 的 概念、 属性 合肥工 业大学硕士论 文 和结 构, 并 对 o b j e c t 和a g e n t 做了 比 较。 根 据比 较结 果, 一 方 面 指出 从o b j e c t 到 a g e n t 是必然趋势;另一方面也指出 传统软件质量度量理论和方法不完全适 应于 基于a g e n t 的 软 件, 并 对现 有的为 数不多的面向a g e n t 软件的 度量理 论进 行分析, 指出 它们的 不 足之处。 在此基础上, 提出了 新的面向a g e n t 的 软件 度 量指标, 并 给出了 一个面向a g e n , 的 软 件度量t具 模型: 度 量a g e n t m a . 1 . 3 .2本文的组织结构 第一章 绪论 介绍了 软件工 程的 有关概 念及其发 展, 分析了 对面向a g e n t 软 件质量 度量 进行研究的必要性,给出了木文研究的主要内容及组织结构. 第二章 度量学 介绍了软件度量对软件质量控制和保证的作用和意义,软件度量的概念以 及国内外的研究情况。 第二章a g e n t 是 本文 的 主体 部 分 之一 , 介绍了a g e n t 产 生 的 背 景, 系 统分 析了a g e n t 的 概念、属性、结构、 应用和它的不 足之处。 第四章 面向a g e n t 的 软 件度量 是本文的最主要部分,也是本文的创新之处。在第二、三章的基础上,把 a g e n t 与o 句 e c t 进行了 比 较, 对文献中 提出 的面向a g e n t 的 软件 度盘指 标进行 评 析并 指出 其不 足, 从而 提出了 新的 面向a g e n t 的 软 件度f 指标, 指出了 新指 标的 应 用 意 义。 并 给出 了 一 个 度量a g e n t m a 的 结 构 和 工 作 原 理。 第五章 结束语 总结全文,井指出了下一 步要做的工作。 合肥工业大学硕士论文 第二章软件度量学 2 . 1软件质量 随着社会的进步和科学技术的发展,计算机的应用己经深入到全社会的每 个领域,人们对计 算机及其软件的依赖程度越来越来大,于是它们的质量问题 也就越发引起人们的关注,而其中软件的质量对人们生活和整个社会的影响更 为突出。象英国的塞兹韦尔核电站核反应堆温度控制失灵等诸多事故都严重危 及到人类和社会的安全.最为突出的实例就是美国i b m 公司在 1 9 6 3 年至 1 9 6 6 年开发的 i b m3 6 0机的操作系统,该项目花了 5 0 0 0人年的工作量,写了近 1 0 0 万行的源程序,结果却非常之糟糕。该项目 的负责人 f .d .b r o o k s 在事后总结沉 痛教训时说: “ 一 正像一只逃亡的野兽落到泥潭中作垂死的挣扎,越是挣扎, 陷得越深. 最后无法逃脱灭顶的灾难, 程序设计工作正像这样一个泥潭, 一批批程序员被迫在泥潭中拼命挣扎,谁也没有料到问题竟会陷入这样的 困境” 。 所以,生产出高质量的软件已经是精疲力尽的软件工作者追求的主要目 标。那么,什么是软件质量?影响软件质量的因素有哪些?又如何对软件质量 进行保证和控制呢? 2 . 1 . 1软件质量的概念 有关 软 件 质最 的定 义 在 很多 文 献中 都 有论 述。 如 在a n s i / i e e e s t d 7 2 9 - 1 9 8 3 中,软件质量的定义为:“ 与软件产品满足规定的和脸含的播求的能力有关的 特 征和 特性的 主体” . r o g e r s . p r e s s m a n 把软 件质f定义为: “ 要与 所规定的 清 晰的功能和性能需求相一致,要有清晰的文档产生标准,要有所有的已产出的 同类软件所要求的固有特性” 这些定义存在的问题是可以被修改或扩充。实际上,一个软件质量的定义 可以 被无 休止的 讨论 下去。 r o g e r s . p r e s s 的 软 件质盆定义重点强 调了 三点: 二是软件需求是基础,通过需求软件质i可以被衡it.缺乏与软件需求的一致 就是缺乏质量;二是有效的 标准尺度指导了 软件生产的方式, 如果没有尺度, 质量的降低几乎是必然结果:三是有一些需求是隐含的 ( 如容易使用和维护) , 如果软件只与明确的需求相一致而不与隐含的需求相一致,那么软件的质量也 是令人怀疑的。 软件质量是多个软件质量要素的复杂组合。构成软件质量的特性因素分为 合肥工业大学硕士论文 第二章软件度量学 2 . 1软件质量 随着社会的进步和科学技术的发展,计算机的应用己经深入到全社会的每 个领域,人们对计 算机及其软件的依赖程度越来越来大,于是它们的质量问题 也就越发引起人们的关注,而其中软件的质量对人们生活和整个社会的影响更 为突出。象英国的塞兹韦尔核电站核反应堆温度控制失灵等诸多事故都严重危 及到人类和社会的安全.最为突出的实例就是美国i b m 公司在 1 9 6 3 年至 1 9 6 6 年开发的 i b m3 6 0机的操作系统,该项目花了 5 0 0 0人年的工作量,写了近 1 0 0 万行的源程序,结果却非常之糟糕。该项目 的负责人 f .d .b r o o k s 在事后总结沉 痛教训时说: “ 一 正像一只逃亡的野兽落到泥潭中作垂死的挣扎,越是挣扎, 陷得越深. 最后无法逃脱灭顶的灾难, 程序设计工作正像这样一个泥潭, 一批批程序员被迫在泥潭中拼命挣扎,谁也没有料到问题竟会陷入这样的 困境” 。 所以,生产出高质量的软件已经是精疲力尽的软件工作者追求的主要目 标。那么,什么是软件质量?影响软件质量的因素有哪些?又如何对软件质量 进行保证和控制呢? 2 . 1 . 1软件质量的概念 有关 软 件 质最 的定 义 在 很多 文 献中 都 有论 述。 如 在a n s i / i e e e s t d 7 2 9 - 1 9 8 3 中,软件质量的定义为:“ 与软件产品满足规定的和脸含的播求的能力有关的 特 征和 特性的 主体” . r o g e r s . p r e s s m a n 把软 件质f定义为: “ 要与 所规定的 清 晰的功能和性能需求相一致,要有清晰的文档产生标准,要有所有的已产出的 同类软件所要求的固有特性” 这些定义存在的问题是可以被修改或扩充。实际上,一个软件质量的定义 可以 被无 休止的 讨论 下去。 r o g e r s . p r e s s 的 软 件质盆定义重点强 调了 三点: 二是软件需求是基础,通过需求软件质i可以被衡it.缺乏与软件需求的一致 就是缺乏质量;二是有效的 标准尺度指导了 软件生产的方式, 如果没有尺度, 质量的降低几乎是必然结果:三是有一些需求是隐含的 ( 如容易使用和维护) , 如果软件只与明确的需求相一致而不与隐含的需求相一致,那么软件的质量也 是令人怀疑的。 软件质量是多个软件质量要素的复杂组合。构成软件质量的特性因素分为 合肥工业大学硕士论文 可以直接度量的因素和可以问接度量的因素两大类. m c c a l l , r i c b a r d s 和w a l t e r s 提出了月个表明软件质量的特性3 0 正确性、可靠性、效率、完整性、 使用性、 维护性、测试性,灵活性、移植性、复用性、互操作性) ,这些特性聚焦在软件 产品的二个主要方面:操作、移植和修订 ( 如图 ( 2 ) 所示) ,h e w l e t t - p a c k a r d 提出 缩略词为f u r p s的一组软件质量特性 ( 功能性、使用性、可靠性、性能和 支持性) ,另外还有 i s o 9 2 1 6的质量特性 ( 功能性、可靠性、实用性、效率、 可维护性和移植性) 及将在2 .2 节中详述的s s c软件质量要素等。 m a i n t a i n a b i l i t y f l e x i b i l i t y / t e s t a b i l i p r o d u c y p o r t a b i l i t y r e u s a b i l i ty n , , i n te r o p e r a b ility r e vi s i on i p r od uc t t r an s i t i o n 蔚 尸 / p r o d u 熙 下 o p e 砰 打峥 n燕 卜 兮 c o r r e c t n e s s r e l i a b i l i ty u s a b i li ty i n t e g r ity e f f i c i e n c y 图 ( 2 ) m c c a l l s s o ft w a r e q u a l it y f a c t o r s 2 . 1 . 2影响软件质蚤的因素 一 般认为, 影响软 件质童的因素主要有以 下三个: ( 1 ) 人的因素 人是开 发和生产产品的主体,软件是人类通过脑力劳动进行创造性思维的成果,人的 因素在软件的开发过程中起着更为显著的作用.只有充分发挥人的作用,才能 完成高质量的软件产品。 ( 2 )软件需求 需求的确定是一个软件项目中非常重要 的工作, 已 的好坏直接决定后续工作的成败。实际工作表明, 需求的差错必将 极大影响后续阶段的工作,轻者造成人力物力资源的浪费,重者可能会前功尽 弃。( 3 )开发过程 开发过程的优劣也制约着软件质量的好坏。目 前的开发方式 往往都涉及到很多环节,每个环节及各个环节之间的衔接处很容易发生问题, 而且每个环节人力等资源的分配合理与否、 对每步工作的估计合理与否等都将 影响软件开发过程.除此之外,影响软件质量的因素还有:测试的局限性、 质 量管理的困难、软件人员的习 惯、开发的 规范、开 发工具的支持是否充足等。 2 . 1 . 3软件度量对软件质量的控制与保证作用 软件度量对软件质量的控制与保证作用主要包括以下两个方面 合肥工业大学硕士论文 可以直接度量的因素和可以问接度量的因素两大类. m c c a l l , r i c b a r d s 和w a l t e r s 提出了月个表明软件质量的特性3 0 正确性、可靠性、效率、完整性、 使用性、 维护性、测试性,灵活性、移植性、复用性、互操作性) ,这些特性聚焦在软件 产品的二个主要方面:操作、移植和修订 ( 如图 ( 2 ) 所示) ,h e w l e t t - p a c k a r d 提出 缩略词为f u r p s的一组软件质量特性 ( 功能性、使用性、可靠性、性能和 支持性) ,另外还有 i s o 9 2 1 6的质量特性 ( 功能性、可靠性、实用性、效率、 可维护性和移植性) 及将在2 .2 节中详述的s s c软件质量要素等。 m a i n t a i n a b i l i t y f l e x i b i l i t y / t e s t a b i l i p r o d u c y p o r t a b i l i t y r e u s a b i l i ty n , , i n te r o p e r a b ility r e vi s i on i p r od uc t t r an s i t i o n 蔚 尸 / p r o d u 熙 下 o p e 砰 打峥 n燕 卜 兮 c o r r e c t n e s s r e l i a b i l i ty u s a b i li ty i n t e g r ity e f f i c i e n c y 图 ( 2 ) m c c a l l s s o ft w a r e q u a l it y f a c t o r s 2 . 1 . 2影响软件质蚤的因素 一 般认为, 影响软 件质童的因素主要有以 下三个: ( 1 ) 人的因素 人是开 发和生产产品的主体,软件是人类通过脑力劳动进行创造性思维的成果,人的 因素在软件的开发过程中起着更为显著的作用.只有充分发挥人的作用,才能 完成高质量的软件产品。 ( 2 )软件需求 需求的确定是一个软件项目中非常重要 的工作, 已 的好坏直接决定后续工作的成败。实际工作表明, 需求的差错必将 极大影响后续阶段的工作,轻者造成人力物力资源的浪费,重者可能会前功尽 弃。( 3 )开发过程 开发过程的优劣也制约着软件质量的好坏。目 前的开发方式 往往都涉及到很多环节,每个环节及各个环节之间的衔接处很容易发生问题, 而且每个环节人力等资源的分配合理与否、 对每步工作的估计合理与否等都将 影响软件开发过程.除此之外,影响软件质量的因素还有:测试的局限性、 质 量管理的困难、软件人员的习 惯、开发的 规范、开 发工具的支持是否充足等。 2 . 1 . 3软件度量对软件质量的控制与保证作用 软件度量对软件质量的控制与保证作用主要包括以下两个方面 合肥工业大学硕士论文 可以直接度量的因素和可以问接度量的因素两大类. m c c a l l , r i c b a r d s 和w a l t e r s 提出了月个表明软件质量的特性3 0 正确性、可靠性、效率、完整性、 使用性、 维护性、测试性,灵活性、移植性、复用性、互操作性) ,这些特性聚焦在软件 产品的二个主要方面:操作、移植和修订 ( 如图 ( 2 ) 所示) ,h e w l e t t - p a c k a r d 提出 缩略词为f u r p s的一组软件质量特性 ( 功能性、使用性、可靠性、性能和 支持性) ,另外还有 i s o 9 2 1 6的质量特性 ( 功能性、可靠性、实用性、效率、 可维护性和移植性) 及将在2 .2 节中详述的s s c软件质量要素等。 m a i n t a i n a b i l i t y f l e x i b i l i t y / t e s t a b i l i p r o d u c y p o r t a b i l i t y r e u s a b i l i ty n , , i n te r o p e r a b ility r e vi s i on i p r od uc t t r an s i t i o n 蔚 尸 / p r o d u 熙 下 o p e 砰 打峥 n燕 卜 兮 c o r r e c t n e s s r e l i a b i l i ty u s a b i li ty i n t e g r ity e f f i c i e n c y 图 ( 2 ) m c c a l l s s o ft w a r e q u a l it y f a c t o r s 2 . 1 . 2影响软件质蚤的因素 一 般认为, 影响软 件质童的因素主要有以 下三个: ( 1 ) 人的因素 人是开 发和生产产品的主体,软件是人类通过脑力劳动进行创造性思维的成果,人的 因素在软件的开发过程中起着更为显著的作用.只有充分发挥人的作用,才能 完成高质量的软件产品。 ( 2 )软件需求 需求的确定是一个软件项目中非常重要 的工作, 已 的好坏直接决定后续工作的成败。实际工作表明, 需求的差错必将 极大影响后续阶段的工作,轻者造成人力物力资源的浪费,重者可能会前功尽 弃。( 3 )开发过程 开发过程的优劣也制约着软件质量的好坏。目 前的开发方式 往往都涉及到很多环节,每个环节及各个环节之间的衔接处很容易发生问题, 而且每个环节人力等资源的分配合理与否、 对每步工作的估计合理与否等都将 影响软件开发过程.除此之外,影响软件质量的因素还有:测试的局限性、 质 量管理的困难、软件人员的习 惯、开发的 规范、开 发工具的支持是否充足等。 2 . 1 . 3软件度量对软件质量的控制与保证作用 软件度量对软件质量的控制与保证作用主要包括以下两个方面 合肥工业大学硕十论文 1 事前软件质量控制 由上述影响软件质量的因素可知,要控制和提高软件的质量必须从影响软 件的因素入手,而软件度量恰恰能有效的避免或减弱上述的一些因素,从而起 到控制和提高软件质量的作用。 通过度量,高级管理者能为软件工程过程的改进而建立有意义的目 标。对 于很多公司来说,软件开发是一个战略性的商业问题.如果开发过程能够被改 进,对最终产品的产生是大有裨益的。而为了改进过程,软件发展的当前状态 必须被 理解, 因 此, 度量可以 用来建 立过程基 线 ( p r o c e s s b a s e l i n e ) , 并通过它 评估所作的改进。软件项月一 作在日复一日的花很少的时间来进行战略上的考 虑,软件项目管理者更多的考虑一些急功近利的问题:有意义的项目 评估、生 产高质量的系统、按时交付产品等等。而通过度蛋建立了 项目 基线 ( p r o j e c t b a s e li n e ) , 使上述的 每一 个问 题都更易于 管理。 通过度量,我们可以在系统设计之前了解系统的规模、可能需要的人力和 时间、系统的结构等信息。在系统设计好之后了 解系统的数据复杂度、任务功 能划分情况等,从而较好的分配人力和物力, 尽可能的优化软件过程:通过 度 量,我们可以了解哪个部分的工作量较大,哪个部分的工作难度较大,从而较 合理的分配任务,减小人的因紊的影响:通过度最,我们可以知道软件的哪个 部分更容易出 错并对之进行强度较大的测试,从而削弱了测试的局限性等等。 2 . 事后软件质量评估 对于一个开发好的软件,我们事后可以对软件的质童进行度童,以对该软 件各方面的质量特性 ( 如2 . 1 . 1 节所述)进行测定,从而评价该软件质量的整体 好坏。 软件质量评价就是对软件质量特性进行评价,分为定性评价和定量评价两 种,其中定量评价就需运用软件度量学的理论来进行。可见,软件度量学对软 件质量的保证和控制都起着至关重要的作用。 2 .2软件度量学 r u b e y 和h u r tw ic k 于1 9 5 8 年 首 先 提出 了 软 件 度 盘 学 ( s o ft w a r e m e t r i c s ) , 希 望用软件度量学的方法来科学地评价软件质量,更有力地对软件开发过程进行 控制和管理, 合理地组织和分配资源, 制定切实可行的软件开发计划,以 低成 本获得高质量软件。1 9 7 0 年h a l s t e a d 提出了 软件科学 ( s o ft w a r e s c i e n c e ) 概念, 认为任一门学科要成为科学必须理论和实践结合,而软件度量学正是反映了这 合肥工业大学硕十论文 1 事前软件质量控制 由上述影响软件质量的因素可知,要控制和提高软件的质量必须从影响软 件的因素入手,而软件度量恰恰能有效的避免或减弱上述的一些因素,从而起 到控制和提高软件质量的作用。 通过度量,高级管理者能为软件工程过程的改进而建立有意义的目 标。对 于很多公司来说,软件开发是一个战略性的商业问题.如果开发过程能够被改 进,对最终产品的产生是大有裨益的。而为了改进过程,软件发展的当前状态 必须被 理解, 因 此, 度量可以 用来建 立过程基 线 ( p r o c e s s b a s e l i n e ) , 并通过它 评估所作的改进。软件项月一 作在日复一日的花很少的时间来进行战略上的考 虑,软件项目管理者更多的考虑一些急功近利的问题:有意义的项目 评估、生 产高质量的系统、按时交付产品等等。而通过度蛋建立了 项目 基线 ( p r o j e c t b a s e li n e ) , 使上述的 每一 个问 题都更易于 管理。 通过度量,我们可以在系统设计之前了解系统的规模、可能需要的人力和 时间、系统的结构等信息。在系统设计好之后了 解系统的数据复杂度、任务功 能划分情况等,从而较好的分配人力和物力, 尽可能的优化软件过程:通过 度 量,我们可以了解哪个部分的工作量较大,哪个部分的工作难度较大,从而较 合理的分配任务,减小人的因紊的影响:通过度最,我们可以知道软件的哪个 部分更容易出 错并对之进行强度较大的测试,从而削弱了测试的局限性等等。 2 . 事后软件质量评估 对于一个开发好的软件,我们事后可以对软件的质童进行度童,以对该软 件各方面的质量特性 ( 如2 . 1 . 1 节所述)进行测定,从而评价该软件质量的整体 好坏。 软件质量评价就是对软件质量特性进行评价,分为定性评价和定量评价两 种,其中定量评价就需运用软件度量学的理论来进行。可见,软件度量学对软 件质量的保证和控制都起着至关重要的作用。 2 .2软件度量学 r u b e y 和h u r tw ic k 于1 9 5 8 年 首 先 提出 了 软 件 度 盘 学 ( s o ft w a r e m e t r i c s ) , 希 望用软件度量学的方法来科学地评价软件质量,更有力地对软件开发过程进行 控制和管理, 合理地组织和分配资源, 制定切实可行的软件开发计划,以 低成 本获得高质量软件。1 9 7 0 年h a l s t e a d 提出了 软件科学 ( s o ft w a r e s c i e n c e ) 概念, 认为任一门学科要成为科学必须理论和实践结合,而软件度量学正是反映了这 合肥 e a p . 大学硕十论文 种结合的学科。b o e h m 于 1 9 7 6年提出对软件属性不能仅有定性的研究,还必 须有定量的研究,软件度量学正是顺应这种趋势而产生的阴。 2 . 2 . 1软件质量度量体系 现在软件度量学己 成为软件工程的一个重要的新的分支。 a n s i i e e e s t d 1 0 6 1 - 1 9 9 2 ( s t a n d a r d f o r a s o ft w a r e q u a l i ty m e tr i c s me t h o d s 中对软件质量度量 学的术语作了明确的定义,对软件度量学的目 的作了阐述,并且给出了一个指 导性的软件质量度量框架。 软件质量度量 ( s q m) 就是从整体上评价软件质量, 用于软件开发过程中 对软件质最进行控制,并对最终软件产品进行评价和验收。 软件质量度量模型有多种,其基本点在于将软件质量的概念分解为若千层 次,而对于最低层次的软件质量概念再引入量化的指标,从而得到软件

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论