Skip to main content
Log in

Automated merging of software prototypes

  • Published:
Journal of Systems Integration

Abstract

As software becomes more complex, more sophisticated development and maintenance methods are needed to ensure software quality. Computer-aided prototyping achieves this via quickly built and iteratively updated prototypes of the intended system. This process requires automated support for keeping track of many independent changes and for exploring different combinations of alternative changes and refinements. This article formalizes the update and change merging process, extends the idea to multiple changes to the same base prototype, and introduces a new method of slicing prototypes. Applications of this technology include automatic updating of different versions of existing software with changes made to the baseline version of the system, integrating changes made by different design teams during development, and checking consistency after integration of seemingly disjoint changes to the same software system.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. S. Badr and V. Bernzins, “A design management and job assignment system,”Technical Report NPS CS-92-020, Computer Science Department, Naval Postgraduate School, 1992.

  2. V. Berzins, “On merging software extensions,”Acta Informatica, Springer-Verlag, pp. 607–619, 1986.

  3. V. Berzins, “Software merge: Semantics of combining changes to programs,”Technical Report NPS 52-91-5, Computer Science Department, Naval Postgraduate School, 1990.

  4. V. Berzins, “Software merge: Models and methods for combining changes to programs,”Journal of Systems Integration, vol. 1, no. 2, pp. 121–141, August 1990.

    Google Scholar 

  5. V. Berzins and Luqi,Software Engineering with Abstractions. Addison-Wesley: Reading, MA, 1991.

    Google Scholar 

  6. V. Berzins, Luqi, and A. Yehudai, “Using transformations in specification-based prototyping,” IEEE Transactions on Software Engineering, vol. 19, no. 5, pp. 436–452, May 1993.

    Google Scholar 

  7. N. Boudriga, F. Elloumi, and A. Mili, “On the lattice of specifications: Applications to a specification methodology,”Formal Aspects of Computing, Springer-Verlag, vol. 4, pp. 544–571, 1992.

  8. D. Dampier,A Model for Merging Different Versions of a PSDL Program. Master's Thesis, Naval Postgraduate School, Menterey, California, June 1990.

    Google Scholar 

  9. S. Horwitz, J. Prins, and T. Reps, “Integrating non-interfering versions of programs,” Conference Record of the Fifteenth ACM Symposium on Principles of Programming Languages, Association for Computing Machinery, New York, New York, pp. 133–145, 13–15 January 1988.

  10. S. Horwitz, T. Reps, and D. Binkley, “Interprocedural Slicing Using Dependence Graphs,”ACM Transactions on Programming Languages and Systems, pp. 26–60, January 1990.

    Google Scholar 

  11. Luqi, V. Berzins, and R. Yeh, “A Prototyping Languge for Real Time Software,”IEEE Transactions on Software Engineering, pp. 1409–1423, October 1988.

    Google Scholar 

  12. Luqi, “Software Evolution Through Rapid Prototyping,”IEEE Computer, pp. 13–25, May 1989.

    Google Scholar 

  13. Luqi, “A Graph Model for Software Evolution,”IEEE Transaction on Software Engineering, vol. 16, no. 8, pp. 917–927, August 1990.

    Google Scholar 

  14. Luqi, “Computer-Aided Prototyping for a Command-And-Control System Using CAPS,”IEEE Software, pp. 56–67, January 1992.

    Google Scholar 

  15. R. Longer, H. Mill, B. Witt, Struetured Programming: Theory and Practice, Addison-Wesley: Reading, MA, 1979.

    Google Scholar 

  16. T. Reps, and W. Yang, “The semantics of program slicing,”Computer Science Technical Report #777, University of Wisconsin-Madison, 1988.

  17. T. Reps, “On the algebraic properties of program integration,”Computer Sciences Technical Report #856, University of Wisconsin at Madison, June 1989.

  18. I. Silverberg,Source File Management with SCCS. Prentice Hall: Englewood Cliffs, NJ, 1992.

    Google Scholar 

  19. M. Tanik, and R. Yeh, “Rapid Prototyping in Software Development,”Computer, vol. 22, pp. 9–10, May 1989.

    Google Scholar 

  20. W. Tichy, “Design, Implementation, and Evaluation of a Revision Control System,” inProceedings of the 6th International Conference on Software Engineeing, IEEE, Tokyo, September 1982, pp. 58–67.

  21. M. Weiser, “Program Slicing,”IEEE Transactions on Software Engineering, vol. 10, no. 4, pp. 352–357, July 1984.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Dampier, D.A., Luqi & Berzins, V. Automated merging of software prototypes. Journal of Systems Integration 4, 33–49 (1994). https://doi.org/10.1007/BF01975671

Download citation

  • Received:

  • Revised:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01975671

Key Words

Navigation