基于构件的软件包度量方法研究
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
大多数设计良好的软件架构都趋向于支持系统的可扩展性、可维护性和可靠性。遗憾的是,在软件开发和维护的过程中存在诸多的严重问题,一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。对质量问题的疏忽极可能使软件架构师的努力白费。而且现在的软件规模变得越来越庞大,为了提高开发的效率,根据一些原则对应用程序中的类进行划分,然后把划分之后的类分配到包中,可以在更高的层次上来理解设计和提高开发效率,而且也可以通过包来管理软件的开发和发布。
     本文首先分析了软件架构中包的一些设计原则,以及度量包设计的理论,然后在这些理论的基础上总结出了一些算法,系统以这些算法为核心,通过分析源文件,构建数据模型,并根据相应的算法对数据进行处理,从而得出包设计的度量结果。结果中既有每个包具体的相关数据,也有全部包的统计数据。所有数据通过依赖关系图和统计分布图表示,结果非常直观,使设计人员可以很方便地看到当前的设计中存在的问题,然后结合实际的情况进行修正
Most well-designed software architectures are intended to support a system's extensibility, maintainability, and reliability. Unfortunately, has many serious problems in the software development and in the maintenance process, on the one hand with software's characteristic related, on the other hand is also not correct with the software development and the maintenance method concerns. Inattention to quality issues can easily undermine a software architect's best effort. Moreover present's software scale changes is getting more and more huge, to enhance the development the efficiency, according to some of the principles divide the class of the application, and then assigned those category to the package, not only does it can be at a higher abstract level of understanding of the design and raises the development efficiency, but also can manage the software development and publishing through the package.
     After learning a number of design principles of software package and theory of measuring the package in the software architecture, summing up a number of algorithms based on these theories. System took these algorithms as the core. It got the measure results of the package design by analyzing the source files, building data model, and in accordance with the appropriate algorithm for data processing. There were specific relevant data for each of packages as well as the statistical data for all packages in the results. There were specific relevant data for each of packages as well as the statistical data for all packages in the results.All data showed through a dependent relational graph and statistical distribution graph, the result is direct-viewing that allows designers to be very intuitive to see the current existing problems of the design, Then the union actual situation carries on the revision.
引文
[1][4] NATO Communications and Information Systems Agency. NATO Standard for Management of a Reusable Software Component Library.1991
    [2][5] Neighbors J. M., An Assessment of Reuse Technology after Ten Years, Proceedings of the 22"d International Conference on Software Engineering. Limerick, Ireland.2000:32-41
    [3][6] Richard Lajoie et al. Design and Reuse in Objected-Oriented Framework:Patterns, Contracts and Motifs in concert". Centre de recherche informatique de Montreial, PQ H3A2N4. Canada,1994
    [4][7] Reuse Libray Interoperability Group. RIG Basic Data Model (BIDM). RPS-0001.1993
    [5][8] Reuse Library Interoperability Group. RIG Uniform Data Model for Reuse Libraries(UDM)
    [6]RPS-0002.1994.
    [7][9] STARS Technical Committee. Asset Library Open Architecture Framework Versionl.2[R]. Informal Technology Report, STARS-TC-04041/001/02.1992
    [8][10] Chengjen Tang. A Software Synthesis Methodology for Developing Component-Based Applications. The M.S. dissertation of Syracuse University. June,2001:27-32
    [9]张海藩.软件工程导论.清华大学出版社,2003,(6):25-269
    [10]杨艳,王德江.软件工程的发展动态.信息技术,2001,(2):46-47
    [11]王立福.软件工程概述.http://www. etc. edu. cn/application-development8/soft-pro-sum. htm
    [12]伽玛.设计模式-可复用面向对象软件的基础.机械工业出版社,2005:93-100
    [13]姜滨.深入理解软件架构.甘肃科技纵横,2007:7-8
    [14]Gamma E, Heml R, Johnson R, ect. Design patterns:Elements of reusable object2oriented software. Addison-Wesley,1995:160-165
    [15]Andrew Glover. Use coupling metrics to support your system architecture. http://www. ibm. com/develop.erworks/cn/java/j-cq04256/
    [16]Robert. C. Martin.敏捷软件开发:原则、模式与实践.清华大学出版社,2003:250-290
    [17]Don Awalt, Rick McUmber.伟大架构师的秘密.清华大学出版社,2004:17-22
    [18]蒋剑平,赵铭伟.JAVA程序设计.大连理工大学出版社,1997:1-3
    [19]王茂森.软件质量的重要性及提高方法.山东省农业管理干部学院学报,2007:168-169
    [20]埃克尔.Java编程思想.机械工业出版社,2007:359-367
    [21]科曼.算法导论.机械工业出版社,2006:192-200
    [22]同济大学数学教研室.线性代数(第2版).高等教育出版社,1991:50-55
    [23]许卓群,杨冬青,唐世渭等.数据结构与算法.高等教育出版社,2004:180-201
    [24]德格鲁特,舍维什.概率统计.人民邮电出版社,2007:64-72
    [25]罗依.Java Swing.清华大学出版社,2004:34-40
    [26]李红,李凤洁,杨森.管理信息系统开发与应用.北京:电子工业出版社,2003:20-44页
    [27]娄不夜,王利.面向对象的程序设计与Java.清华大学出版社.2004:1-6p
    [28]刘晓华译.精通EJB.电子工业出版社.2004
    [29]John Hunt, Chris Loftus.精通J2EE-Java企业级应用.清华大学出版社2004:158-162p
    [30]丁鹏,刘方等.STRUTS技术解密及WEB开发实例.清华大学出版社.2004:25-30
    [31]邵维忠,杨芙清.面向对象的系统分析.北京:清华大学出版社,2003:125-128页
    [32]张路. 基于构件的软件配置管理技术研究.北京大学博士学位论文.2000:20-23
    [33]潘颖,赵俊峰,谢冰.软构件技术的研究与发展.计算机科学.2003.30:90-93.
    [34]张海飞,袁磊,夏宽理.构件库功能集模型.计算机工程.2000.11:87-88.
    [35]孙强,陈伟.信息安全管理.北京:清华大学出版社,2004:159-163页
    [36]段海新.基于Web和数据库的网络管理系统的设计与实现.软件学报,2000,11(4):468-472页
    [37]张友生.软件体系结构.北京:清华大学出版社,2004:35-39页
    [38]张健沛.数据库原理及应用系统开发.北京:中国水利水电出版社,1999:79-83页
    [39]Zhuge H, A problem-oriented and rule-based component repository, Journal of Systems and Software,2000,50(3):201-208
    [40]Mili H., Mili F.,Mili A. Recusing Software:Issues and Research Directions. IEEE Transaction on Software Engineering.1995.21:528-562.
    [41]International Business Machines Corporation, Microsoft Corporation. WSDL1.0 Standard, http://schemas. xmlsoap. org/w sdl
    [42]萨师煊,王珊.数据库系统概论.北京:高校教育出版社,2001:88-93

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700