Skip to main content

A model of software manufacture

  • Configuration Nersion Control
  • Conference paper
  • First Online:
Advanced Programming Environments

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

Abstract

Software manufacture is the process by which a software product is derived, through an often complex sequence of steps, from the primitive components of a system. This paper presents a model of software manufacture that addresses the amount of work that has to be done, after a given set of changes has been made, to consistently incorporate those changes in a given product.

Based on a formal definition of a software configuration that characterizes a software product in terms of how it was manufactured, the model uses difference predicates to discriminate between changes that are significant and those that are not. A difference predicate is an assertion about the relationship between two sets of components. Difference predicates determine when one set of components can be substituted for another. By predicting when existing components can be substituted for the output of a manufacturing step, difference predicates determine which steps in the manufacturing process can be omitted when incorporating a given set of changes.

This research was supported in part by a Xerox Special Opportunity Fellowship in Computer Science, and in part by the Defense Advanced Research Projects Agency (DOD), ARPA Order No. 4976, monitored by the Air Force Avionics Laboratory under Contract F33615-84-K-1520. The views and conclusions contained in this document are those of the author and should not be interpreted as representing the official policies, either expressed or implied, of the Defense Advanced Research Projects Agency or the US Government.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

9 References

  1. Reidar Conradi and Dag Heieraas Wanvik. Mechanisms and Tools for Separate Compilation. Technical Report 25/85, The University of Trondheim, The Norweigian Institute of Technology, October, 1985.

    Google Scholar 

  2. Jack Cooper. Software Development Management Planning. IEEE Transactions on Software Engineering 10(1):22–26, January, 1984.

    Google Scholar 

  3. Lee W. Cooprider. The Representation of Families of Software Systems. PhD thesis, Carnegie-Mellon University, April, 1979.

    Google Scholar 

  4. Eugene Cristofor, T. A. Wendt and B. C. Wonsiewicz. Source Control + Tools = Stable Systems. In Proceedings of the 4th Computer Science and Applications Conference, pages 527–532. IEEE Computer Society, October, 1980.

    Google Scholar 

  5. Manfred Dausmann. Reducing Recompilation Costs for Software Systems in Ada. March 30, 1984 Draft of a Karlsruhe Technical Report presented at the IFIP WG 2.4 conference in Canterbury UK in September 1984.

    Google Scholar 

  6. Frank DeRemer and Hans H. Kron. Programming-in-the-Large Versus Programming-in-the-Small. IEEE Transactions on Software Engineering 2(2):80–86, June, 1976.

    Google Scholar 

  7. V. B. Erickson and J. F. Pellegrin. Build — A Software Construction Tool. AT&T Bell Laboratories Technical Journal 63(6), July–August, 1984.

    Google Scholar 

  8. J. Estublier, S. Ghoul, S. Krakowiak. Preliminary Experience with a Configuration Control System for Modular Programs. SIGPLAN Notices 19(5), May, 1984. Proceedings of the ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments.

    Google Scholar 

  9. Stuart I. Feldman. Make — A Program for Maintaining Computer Programs. Software-Practice and Experience 9(4):255–265, April, 1979.

    Google Scholar 

  10. Gail E. Kaiser and A. Nico Habermann. An Environment for System Version Control. In Digest of Papers COMPCON Spring 83, pages 415–420. IEEE Computer Society, San Francisco, California, February, 1983.

    Google Scholar 

  11. Butler W. Lampson and Eric E. Schmidt. Organizing Software in a Distributed Environment. In Proceedings of the SigPlan '83 Symposium on Programming Language Issues in Software Systems, pages 1–13. ACM, San Francisco, California, June, 1983.

    Google Scholar 

  12. David B. Leblang, Robert P. Chase, Jr. Computer-Aided Software Engineering in a Distributed Workstation Environment. SIGPLAN Notices 19(5), May, 1984. Proceedings of the ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments.

    Google Scholar 

  13. David B. Leblang, Robert P. Chase Jr., and Gordon D. McLean Jr. The DOMAIN Software Engineering Environment for Large-Scale Software Development Efforts. In IEEE Conference on Workstations. November, 1985.

    Google Scholar 

  14. Marc J. Rochkind. The Source Code Control System. IEEE Transactions on Software Engineering 1(4):364–370, December, 1975.

    Google Scholar 

  15. B. R. Rowland and R. J. Welsch. The 3B20D Processor & DMERT Operating System: Software Development System. The Bell System Technical Journal 62(1):275–289, January, 1983.

    Google Scholar 

  16. Walter F. Tichy. Software Development Control Based on System Structure Description. PhD thesis, Carnegie-Mellon University, January, 1980.

    Google Scholar 

  17. Walter F. Tichy. Design, Implementation, and Evaluation of a Revision Control System. Technical Report CSD-TR-397, Department of Computer Science, Purdue University, March, 1982. A version of this paper appeared in Proceedings of the 6th International Conference on Software Engineering, Tokoyo, September 1982.

    Google Scholar 

  18. Walter F. Tichy and Mark C. Baker. Smart Recompilation. In Principles of Programming Languages 1985, pages 236–244. ACM SIGPLAN and SIGACT, January, 1985.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Reidar Conradi Tor M. Didriksen Dag H. Wanvik

Rights and permissions

Reprints and permissions

Copyright information

© 1987 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Borison, E. (1987). A model of software manufacture. In: Conradi, R., Didriksen, T.M., Wanvik, D.H. (eds) Advanced Programming Environments. Lecture Notes in Computer Science, vol 244. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-17189-4_99

Download citation

  • DOI: https://doi.org/10.1007/3-540-17189-4_99

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-17189-8

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics