面向模式软件再工程的思想与技术分析
在软件工程中,针对已经存在的系统进行调查,同时对其进行重构使其成为开发新形式代码的一个过程,就称作软件在工程。其最重要的特点之一就是最大程度地拓展其对象系统的各项资源,换句话说,也就是其开发能够重用软件和构造出能够重用软件的系统结构的具体方法是该工程中的最主要的内容。当然,就软件在工程本身来说,如何开发前者的过程中一大部分的内容是对现存系统中不可重用系统的改造。软件工程再工程是以软件工程方法学为指导,对程序全部重新设计、重新编码和测试。值得强调的是,软件的可重用程度对其在工程的工作质量的决定存在于软件的任何阶段。本文对模式软件的再工程思想进行了相应的介绍,并对其技术进行了一定的分析。
【关键词】模式软件再工程 系统结构 编码
随着科技的不断更新和快速发展,计算机技术得到了巨大的发展,同时计算机软件也随之飞速发展 ,当今的计算机软件应用客户对软件的要求也越来越高,这是当今计算机领域内的软件工程师在研发过程中必须考虑的问题,尤其是软件的回收问题。正是在这种情况下,软件再工程发挥出了它的重要作用。软件再工程主要是对遗产系统的来利用,同时利用遗产系统开发新系统是软件再工程当前的重要研究方向。面对软件再工程中的一系列问题,需要对该工程的思想进行相应的重视,同时重视和实施其技术问题。
1 软件再工程的概况
具体说来,软件再工程的具体任务就是针对已经存在的系统进行调查,同时对其进行重构使其成为开发新形式代码,其最重要的特点之一就是最大程度地拓展其对象系统的各项资源,换句话说,也就是其开发能够重用软件和构造出能够重用软件的系统结构的具体方法是该工程中的最主要的内容。当然,就软件在工程本身来说,如何开发前者的过程中一大部分的内容是对现存系统中不可重用系统的改造。
软件工程再工程是以软件工程方法学为指导,对程序全部重新设计、重新编码和测试,为此可以使用case工具(逆向工程和再工程工具)来帮助理解原有的设计。软件的可重用程度对其在工程的工作质量的决定存在于软件的任何阶段。可以分为再分析、再编码、再测试和再工程工具等。
在再分析过程中,主要是为了对原来系统的结构、功能等相关参数重新进行调查和研究。在该过程初期的研究内容之目的就是要对再工程所涉及的范围进行仔细的调查、分析和预测。与一次工程不同的是,再工程会针对具体问题进行严格的分析,他们得出的分析结果,即重用范围及相应的策略,都将对该工程的最终成败和工程系统产品的稳定性产生决定性的作用。根据再分析过程中对再工程的设计方案,再编码过程会在系统总体的研究基础上更加深入地进行分析研究。而同一次工程相比,在工程对于过程分割的问题会更加困难,换句话说,也就是原先的瀑布模型对于在工程来说会更加不适合,也无法更好得将相应的再分析、设计、编码等程序分开。
通常情况下,在再工程中,再测试是其工作中的一项工作量巨大的工作,如果能够重新使用原来的测试方法和运行结果,就能将再工程的运行成本降到最低。然而对于重用的部分,尤其是可重用的(独立性较强的)部分,可以尝试将其测试免去,这些方面正是重用技术收到再工程技术高度评价的原因之一。此外,再工程作为一个软件工具,它被用来支撑和重構出一个功能更加优良的软件系统,其工具主要是用在代码重构、程序结构重构及数据结构重构等方面。
2 软件再工程的技术分析
通常情况下,按照用户对软件改进工作的不同要求,可以将再工程分为以下三个等级:系统级、数据级以及源程序级。在过程的实际实践过程中,由于再工程的方法及技术也相当多,因此,可以从不同角度选择不用的使用方法。其中的再造是以提高可维护性为目的,研究重新构建系统的整体的方法。而再构则是在不改变既存软件外部功能的条件下,只是修改了软件的内部结构,以达到增强整个软件功能的目的,同时,也能够使其使用性能得到很大程度的提高。再结构化就是在同一抽象级上变换软件的不同表现形式。例如,从原来的C/S模式转向B/S模式表现。文档重构就是由源代码生成新文档,而这种文档必须是更加容易理解的。设计恢复是将设计判断重新恢复,从而得到其逻辑依据。程序理解则是研究取得程序相关知识的方法和途径。对软件的再工程来说,重用就是其核心所在,再工程可以重新利用原软件系统资源,其进一步的发展不能离开上述重用技术的发展。
使再工程能够通过对充分复用的形式在多个抽象层面上转化向目标化是软件再工程的目标,也是软件重用技术的功能。在逆向工程的全部过程中,抽象及具体的过程都不是分割开的,而是完好得衔接在一起的,该阶段抽象所得的资源需要提供给正向阶段进行重用,当然,其工作需要严格在用户的需求下完成。正向过程会充分利用这些可重用的资源,来实现多层次上的系统重用。
在构件库中,其在工程一种全新的开发方式,该开发方式以构件库为核心,分析和研究了现存系统,并加强理解了原系统并对其进行了相应的优化,从而对对象软件的在工程提出了新的发展方案。之后需要做的就是在构件库中放入构件,这些构件是适应了再工程需求,同时经过优质的包装的。最后就是对组装平台的建立,从而完成对目标系统的转化工作。
3 总结
在计算机软件技术快速发展的时代,软件的再工程具有十分重要的作用。随着计算机软件应用客户对软件的要求越来越高,当今计算机领域内的软件工程师在研发过程中对该问题进行了深入的考虑,尤其是软件的回收问题。在实际的应用中,软件的再工程发挥出了巨大的作用。在未来计算机的应用中,软件将发挥更大的作用,其中软件的再工程技术的发展也将具有更大的发展前景。
参考文献
[1]刘治国.面向模式软件再工程的研究[J].信息技术,2008,9(5):124-127.
[2]伍智平.面向模式的软件再工程测试自动化的研究与实践[J].湖南第一师范学报,2006,6(2):149-151.
[3]邓治国.软件再工程的深层研究与应用[J].信息与电脑,2012,2(1):47-48.
[4]刘兴瑞,郭东峰.“软件再工程”在软件开发中的应用[J].科技信息,2007,9(7):358-359.
作者单位
四川中税东方科技有限责任公司 四川省成都市 610000
推荐访问: 面向 思想 模式 分析 工程