软件再工程研究及应用
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
随着计算机和网络的广泛普及,它已经应用到了社会的各个行业中,计算机的软件系统也在日新月异地改革。尤其是隶属软件工程中软件维护阶段的软件再工程就更为重要,原因是以前大部分的系统的都是基于Web开发的,没有明显的层次结构。而由于计算机的普及,使用软件的人也越来越多。很多商业性很强的企业对软件的要求也越来越严厉,导致了原系统的过时。软件开发人员必须研发新的系统以满足其市场的要求。
     软件再工程(Reengineering),即把原有的系统进行信息的提炼,根据得到的这些有用的信息再研发出新的系统。这样不仅降低了新软件系统研发的时间和精力,也对原先的系统进行了有用的利用。而在再工程中如何从遗留系统迅速得到有用的信息,并得出对遗留系统的改造策略是其关键部分。
     当今的软件大多都是多层次架构模型的,它占据了软件的主要部分。由于Java语言的平台无关性,使其在短短的几年时间内成为编写软件的主流语言。本文所做的工作也是基于Java语言的软件开发。
     本文首先对软件再工程各个方面的内容进行了总结和概括,得出相关一系列的知识体系。然后通过遗留系统由JSP和Java Bean研发成的非结构化的系统提取信息,再加以转化成J2EE的多层次结构组件,有这些组件构建成新的软件系统。
     其次讨论了一组基于J2EE和JSP对比的系统,遗留系统存在多方面的问题。我们对其进行分析探讨,得出再工程策略。
     最后,本文的作者在基于对软件再工程的掌握和对J2EE及SSH框架的学习后把遗留系统进行了信息抽取,然后在遗留系统的基础上进行系统的重新架构以及功能的改善得出了新的系统。
As we know, Software System is changing all the time for computers and internet has been widely used in the field of industry and education and so on. In software engineering, the part of the re-engineering is more important because of most systems are based on Web development and they have no clear structure. More and more people use software due to the popularization of computer. And many commercial entrepreneurs'leaders have strict requirements for software that led to the old system is out of time. So many people must explore new software system to meet their requirements.
     Reengineering extracts information from original system and then developed a new system according to information obtained. So it not only reduces time and energy to develop the new software system, but also it can make use of old system effectively. The key point is how to get the useful and valuable information and the strategy to R&D new systems from old system.
     Most of current software is base on "Component-based-N-tier Software architecture", which drives the main part of the software fields. Java has become the mainstream language for the platform-independent characteristics in the few short years time. This easy work done is based on Java software development.
     Firstly, the essay summarizes and generalizes all aspects of contents for Software re-engineering and then obtained a series of related knowledge. Then it extract information from the original system which is unstructured and developed by JSP and Java Bean. After that it is transformed to Multi-level structure components of J2EE by which to construct the new system.
     Secondly, the essay discusses a group of system based on J2EE and JSP and some various problems existed in the original system. After analysis and discussion, we get the strategy of re-engineering.
     Finally, the author extracts information from legacy systems based on the knowledge of re-engineering of software and study of the SSH on the J2EE framework. Then we obtain the new system based on legacy systems re-architecture and functional improvement.
引文
[1]Roger S. Pressman, Software Engineering:A Practitioner's Approach (Fifth Edition), McGraw-Hill,2001
    [2]IEEE Computer Society Technical Council on Software Engineering, Reengineering Bibliography,2002
    [3]夏阳.基于J2EE系统软件再工程方法的研究与应用[D].南京:南京工业大学,2005.
    [4]彭鑫、赵文耘、夏宽理、沈铖等.基于Java的软件再工程支持工具研究[J].计算机工程与应用.2003.18 63-68
    [5]Shalloway, A., James R. Trott. Design Patterns Explained:A New Perspective on Object-Oriented Design, Addison-Wesley,2002
    [6]叶俊民.软件工程[M].北京:清华大学出版社,2006
    [7]朱三元,钱乐秋,宿为民编.软件工程技术概论[M].北京:科学出版社,2002-01
    [8]袁景凌,魏志华.软件工程[M].北京:清华大学出版社,2005
    [9]赵中华,王建新,正向工程、逆向工程、双向工程技术及应用,计算机应用,2003-06.
    [10]金涛,童永光.逆向工程技术[M].北京:机械工业出版社,2003
    [11]宋海鸿,陈平.逆向工程在软件开发中的租用和应用现状[J].电子科技,2002(01).
    [12]彭鑫,赵文耘,夏宽理,沈铖 基于Java的软件再工程支持工具研究。计算机工程与应用,VOL.63-VOL.64 2003.18
    [13]梅宏,软件复用技术研究与应用,科技与经济(南京)
    [14]Gibson, J.P. Software reuse and plagiarism:a code of practice [J].ACM Special Interest Group on Computer Science Education, 2009:55-59.
    [15]Mens, T., Demeyer, S. Software Evolution [M]. Springer,2008.
    [16]王超,陈力军,赵洪兵等,一个软件再工程的实例分析,计算机工程与 应用,2001,37(15):101-104
    [17]Chen, Y. R., Fowler, G. S., Koutsofios, E. and Wallach, R. S. Ciao: A Graphical Navigator for software and document Repositories[J]. Software Maintenance, ICSM, IEEE Computer Society,2005, (14):66-75.
    [18]Shari Lawrence Pfleeger著.吴丹史争印唐忆译Engineering Theory and Practice, Second Edition [M]北京:清华大学出版社.2003,8
    [19]唐晓君.软件再工程理论应用与研究[D].大连理工大学,2002
    [20]陈超.软件进化理论在软件开发过程中的应用[D].西安电子科技大学,2007
    [21]陈兆琪,钟林辉,张路,谢冰.软件变化管理系统研究[J].小型微型计算机系统,2002,(01)
    [22]林征.软件重构[D].上海交通大学,2008
    [23]陈雷,刘强.重构在框架开发中的研究与应用[J].计算机应用与软件,2007,(03)
    [24]吕望.重构技术及其在研究生学位管理系统中的应用研究[D].西安理工大学,2009
    [25]林治,软件重构在软件开发中的作用分析,扬州教育学院学报,2007,vo1.25,No.3
    [26]Barker, B. Determining Systems Engineering Effectiveness. Conference on System Intergration. Hoboken, NJ:Stevens Institute of Technology,2003
    [27]Software Reuse-A Holistic Approach, John Wiley &Sons,2001
    [28]付沙.基于构件技术的软件开发方法的研究[J].科技和产业,2009,(03)
    [29]伍星,郝惠娣,赵渊.设计模式应用研究[J].机械科学与技术,2003,(02)
    [30]周小健,余冬梅,张聚礼.基于设计模式的软件体系结构研究[J].甘肃工业大学学报,2003,(04)
    [31]谭薇.基于面向对象的领域分析与设计方法研究[D].青岛大学,2007.
    [32]鲁博,柴跃廷.关于统一建模语言——UML[J].计算机工程与科学,2000,(04)
    [33]刘军,王宁生.基于UML的迭代式软件开发过程[J].计算机工程与应用,2001,(17).
    [34]James Rumbaugh, Ivar Jacobson, Grady Booch著,姚淑珍,唐发跟译.UML参考手册.机械工业出版社,2001
    [35]Joseph J. Bambara, Paul R.Allen等著.J2EE技术内幕[M].北京:机械工业出版社,2002
    [36]飞思科技产品研发中心著.J2EE应用开发[M].北京:电子工业出版社,2003
    [37]Eckel, B著,陈昊鹏译Java编程思想第四版[M].北京:机械工业出版社,2008
    [38]胡彬.基于Java技术的多层次Web应用模型的研究与实现[D]武汉:武汉大学2002.5
    [39]Rod Jhonson:Expert One-on-One J2EE Design and Development.2005
    [40]张丽华,鞠淼,刘淑芬.EJB3.0集成技术的研究与比较[J].吉林大学学报(信息科学版),2009,(03).
    [41]于波.Struts框架的应用研究[J].安徽大学学报(自然科学版),2007,(06)
    [42]孙勇强,邓咏梅,李续武.基于EJB的业务规则引擎的设计和实现[J].计算机工程,2005,(20)
    [43]赵涛,李先国,胡晓东.MVC设计模式在Web应用系统框架中的扩展[J].安徽大学学报(自然科学版),2005,(04)
    [44]张友生.遗留系统的评价方法和进化策略[J].计算机工程与应用,2003(13).
    [45]赵启鹏.基于J2EE的电子商城网上购物系统的设计与实现[D].复旦大学,2010

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

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

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