Skip to main content

Enabling Design Evolution in Software through Pattern Oriented Approach

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2817))

Abstract

Architectural erosion in software systems results due to the drifting of code from the existing design. This drifting happens because the changes in code supporting evolving requirements, are not reflected back in the design. The ability to control software artifacts produced in various stages of the software development lifecycle is very crucial. Powerful abstractions for modeling software design is essential for supporting evolution. We propose a pattern oriented approach to software development using patterns as building blocks of architecture. We argue that design evolution in software can best be achieved by replacing existing patterns in the design with new patterns addressing present requirements. Support for design evolution by means of a model for pattern substitution is also presented. Using this model, the design is gracefully evolved and the design changes are seamlessly mapped to code thus preventing architectural erosion.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Buschman, F., Meunier, R., Rohnert, H., Sommerlab, P., Stal, M.: Pattern Oriented Software Architecture: A System of Patterns, vol. I. John Wiley and Sons, Chichester (1996)

    Google Scholar 

  2. Schdmit, D., Stal, M., Rohnert, H., Buschmann, F.: Pattern Oriented Software Architecture: A System of Patterns, vol. II. John Wiley and Sons, Chichester (1999)

    Google Scholar 

  3. Khriss, I., Keller, R.K.: Transformations for Pattern-Based Forward-Engineering. In: Proceedings of International Workshop on Software Transformation Systems (STS 1999), Los Angeles, pp. 50–58 (May 1999)

    Google Scholar 

  4. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns, Elements of Reusable Object Oriented Software. Addison Wesley, Reading (1995)

    Google Scholar 

  5. Lehman, M.M., Perry, D.E., Ramil, J.F., Turski, W.M., Wernick, P.: Metrics and Laws of Software Evolution – the Nineties View. In: Proceedings of the 4th International Symposium on Software Metrics, Albuquerque, New Mexico, IEEE, Los Alamitos (2000)

    Google Scholar 

  6. Perry, D.E., Wolf, A.L.: Foundations for the study of Software Architecture. ACM SIGSOFT 17(4) (1992)

    Google Scholar 

  7. Khusela, J.: Architectural Evolution. In: Proceedings of the FirstWorking IFIP Conference on Software Architecture (WICSA1), San Antonio, Texas, USA, pp. 471–478. IFIP Kluwer Academic Publishers, Dordrecht (1999)

    Google Scholar 

  8. Sha, L., Rajkumar, R., Gagliardi, M.: A Software Architecture for Dependable and Evolvable Industrial Computing Systems, Technical Report CMU/SEI-95-TR-005, CMU/SEI (July 1995)

    Google Scholar 

  9. Bosch, J.: Design and Use of Software Architectures: Adopting and Evolving a Product-Line Approach. Addison Wesley, Reading (2000)

    Google Scholar 

  10. Foote, B.: A Fractal Model of the Life Cycle of Reusable Objects. In: Proceedings of OOPSLA 1992 Workshop on Reuse, Van Couver, British Columbia, Canada (October 1992)

    Google Scholar 

  11. Rajasree, M.S., Janaki Ram, D., Jithendra Kumar Reddy, P.: Composing Architectures from Patterns. In: Proceedings of the SoDA 2002, International Workshop on Software Design and Architecture, Bangalore, India (December 2002)

    Google Scholar 

  12. Rajasree, M.S., Janaki Ram, D., Jithendra Kumar Reddy, P.: Pattern Oriented Software Development: Moving Seamlessly from Requirements to Architecture. To appear in Proceedings of the STRAW 2003, International Workshop on SofTware Requirements to Architecture in association with ICSE 2003, Portland, Oregon, USA,

    Google Scholar 

  13. Janaki Ram, D., Ramakrishna, O.: The Glue Model for Reuse by Customization in Object-Oriented Systems, Technical Report No. IITM-CSE-DOS-98-02, Department of CS & Engg. IIT, Madras, India

    Google Scholar 

  14. Rajith, R.I.: Managing Evolving Designs Using Glue Patterns, M.S. Thesis, Department of CS & Engg., IIT, Madras, India

    Google Scholar 

  15. Janaki Ram, D., Babu, C.: A Framework for Dynamic Client Driven Customization. In: Proceedings of 7th International Conference of Object Oriented Information Systems (OOIS 2001) (2001)

    Google Scholar 

  16. Prechelt, L., Unger-Lamprecht, B., Philippsen, M., Tichy, W.F.: Two Controlled Experiments Assessing the Usefulness of Design Pattern Documentation in Program Maintenance. IEEE Transactions on Software Engineering 28(6) (June 2002)

    Google Scholar 

  17. Janaki Ram, D., Dwivedi, R.A., Ramakrishna, O.: An Implementation Mechanism for Design Patterns. ACM Software Engineering Notes 27(7), 52–56 (1998)

    Google Scholar 

  18. Janaki Ram, D., Vivekananda, N., Srinivas Rao, C., Krishna Mohan, N.: Constraint Meta-Object: A New Object Model for Distributed Collaborative Designing. IEEE Transaction on Man Systems and Cybernetics 27, Part A(2), 208–221 (1997)

    Google Scholar 

  19. IEEE Standards Collection: Software Engineering (IEEE Standard 610.12–1990), IEEE (1993)

    Google Scholar 

  20. Pressman, R.S.: Software Engineering: A practitioner’s Approach. Tata Mc Graw Hill Companies, Inc. (1997)

    Google Scholar 

  21. Janaki Ram, D., Anantharaman, K.N., Guruprasad, K.N., Sreekanth, M., Raju, S.V.G.K., Rao, A.A.: An Approach for Pattern Oriented Software Development Based on a Design handbook. Annals of Software Engineering 10, 329–358 (2000)

    Article  MATH  Google Scholar 

  22. Rajasree, M.S., Janaki Ram, D., Reddy, J.K.: Systematic Approach for Design of Framework for Software Productlines. In: Proceedings of the PLEES 2002, International Workshop on Product Line Engineering The Early Steps: Planning Modeling and Managing, In Association with OOPSLA 2002 (October 28, 2002)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ram, D.J., Rajasree, M.S. (2003). Enabling Design Evolution in Software through Pattern Oriented Approach. In: Konstantas, D., Léonard, M., Pigneur, Y., Patel, S. (eds) Object-Oriented Information Systems. OOIS 2003. Lecture Notes in Computer Science, vol 2817. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-45242-3_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-45242-3_17

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-40860-4

  • Online ISBN: 978-3-540-45242-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics