Advertisement

Architecture Based Software Reengineering Approach for Transforming from Legacy System to Component Based System through Applying Design Patterns

  • Jung-Eun Cha
  • Chul-Hong Kim
  • Young-Jong Yang
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3026)

Abstract

Many reengineering approaches have focused on extracting an abstract representation through syntax analysis of legacy source codes. So, recovery of rationale behind the design decision, such as domain specific semantics and roles, has been ignored. In this paper, we suggest the architecture based reengineering approach using design patterns. A design pattern, as core element of software architecture, has integrated the concept of standardization about certain domain and expert experience into a set of related components that can perform specific functionality with better structure. We describe the reengineering process that defines a architecture of target system by refining architecture information of legacy system extracted through domain analysis, identifies the reengineering patterns that are applicable in that architecture, and completes a target system by mapping the identified reengineering pattern into target architecture. Also, we construct the Servlet2EJB prototyping system transforming servlet programs into EJB components as a case study for realizing our reengineering process.

Keywords

Legacy System Design Pattern Software Architecture Target System Reference Architecture 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Dolly, M., Neumann, N.: Evolution Process for Legacy System Transformation. In: IEEE Technical Applications Conference, Northcon/96(1996), pp. 57–62 (1996)Google Scholar
  2. 2.
    Weiderman, N., Smith, D., Tilley, S.: Approaches to Legacy System Evolution. CMU/SEI-97-TR- 14, http://www.sei.cmu.edu/pub/documents/97.reports/pdf/97tr014.pdf
  3. 3.
    Ulrich, W.: Legacy Systems - Transformation Strategies. Prentice Hall, Englewood Cliffs (2002)Google Scholar
  4. 4.
    SEI Reengineering Center : Perspectives on Legacy System Reengineering.(1995), http://www.sei.cmu.edu/reengineering/pubs/lsysree/lsysree.pdf
  5. 5.
    Gamma, E.: Design Patterns:Elements of Reusable Object Oriented Software. Addison- Wesley, London (1994)Google Scholar
  6. 6.
    Arsanjani, A.: Component-based Development and Integration Pattern Language. In: PLoP conference (2000) (2000)Google Scholar
  7. 7.
    CBDi Forum: Pattern Catalog, http://www.cbdiforum.com/patterns/index.php3
  8. 8.
    Kazman, R., Woods, S.G., Carriere, S.J.: Requirements for Integrating Software Architecture and Reengineering Models: CORUM II. In: Fifth Working Conference on Reverse Engineering, October(1998), pp. 154–163 (1998)Google Scholar
  9. 9.
    Abowd, G., Goel, A., Jerding, D.F., McCracken, M., Moore, M., Murdock, J.W., Potts, C., Rugaber, S., Wills, L.: MORALE. Mission ORiented Architectural Legacy Evolution. In: International Conference on Software Maintenance, pp. 150–159 (1997)Google Scholar
  10. 10.
    Antoniol, G., Fiutem, R., Cristoforetti: Design Pattern Recovery in Object Oriented Software. In: 6th Workshop on Program Comprehension (1998)Google Scholar
  11. 11.
    Kramer, C., Prechelt, L.: Design Recovery by Automated Search for Structural Design Patterns in Object-Oriented Software. In: 3rd Working Conference on Reverse Engineering( WCRE 1996), pp. 208–215 (1996)Google Scholar
  12. 12.
    Keller, R.K., Schauer, R., Robitaille, S., Pagé, P.: Pattern-Based Reverse-Engineering of Design Components. In: Conference on Software Engineering (ICSE 1999), pp. 226–235 (1999)Google Scholar
  13. 13.
    Chu, W.C., Lu, C.-W., Shiu, C.-P., He, X.: Pattern Based Software Reengineering: A Case Study. Journal of Software Maintenance: Research and Practice 12(3), 300–308 (2000)Google Scholar
  14. 14.
    Seemann, J., von Gudenberg, J.W.: Pattern-Based Design Recovery of Java Software. Communications of the ACM 38(10), 65–74 (1995)CrossRefGoogle Scholar
  15. 15.
    Bosch, J.: Design and Use of Software Architectures. Addison-Wesley, Reading (May 2000)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Jung-Eun Cha
    • 1
  • Chul-Hong Kim
    • 1
  • Young-Jong Yang
    • 1
  1. 1.S/W Engineering Department, Electronics and Telecommunications Research InstituteDaejeonKorea

Personalised recommendations