ABSTRACT
This study presents a survey and an analysis of the literature on software engineering principles. The literature survey, covering a period of thirty years, has come up with 14 different papers and books, which have proposed a total of 313 distinct principles for software engineering. Our analysis of these works is carried out based on a rigorous definition of the term 'principle' and on the identification a set of explicit criteria to assess whether or not any of the proposed principles qualify as fundamental principles of software engineering. The analytical approach makes it possible to arrive at a set of 24 candidate software engineering principles which all meet the required criteria.
- Abran, A., Séguin, N., Bourque, P., and Dupuis, R. 2004. The search for software engineering principles: An overview of results. Conference on Principles of Software Engineering - PRISE 2004, Buenos Aires, Argentina, 51--60.Google Scholar
- Abran, A., Moore, J. W., Bourque, P., Dupuis, R., and Tripp, L. L. 2004. Software Engineering Body of Knowledge, Los Alamitos: IEEE Computer Society Press.Google Scholar
- Aslaksen, W. 1996. The changing nature of engineering. Sydney: McGraw-Hill.Google Scholar
- Boehm, B. W. 1983. Seven basic principles of software engineering. The Journal of Systems and Software 3, 1 (May 1983), 366--371.Google ScholarDigital Library
- Booch G. and Bryan D. 1994. Software Engineering with Ada (3rd ed.). California: Benjamin/Cummings Publishing. Google ScholarDigital Library
- Bourque P., Dupuis R., Abran, A., Moore, J. W., Tripp, L. L., and Wolff, S. 2002. Fundamental Principles of Software Engineering - A Journey. Journal of Systems and Software, 62, 1, 59--70. Google ScholarDigital Library
- Bunge, M. 2003. Philosophical Dictionary. New York: Prometheus Books.Google Scholar
- Bushmann, F., Meunier, R., Rohnert, H., Sommerlad, P., and Stal, M. 1996. Pattern-Oriented Software Architecture. England: Wiley. Google ScholarDigital Library
- Davis, A. M. 1995. 201 Principles of Software Development. New York: McGraw-Hill. Google ScholarDigital Library
- Davis, M. 1998. Thinking like an engineer. New York: Oxford University Press.Google Scholar
- Ghezzi, C., Jazayeri, M., and Mandrioli, D. 2003. Fundamentals of Software Engineering (2nd ed.). New Jersey: Prentice Hall. Google ScholarDigital Library
- ISO 1995. ISO/IEC 12207: International Standard 12207 - Information Technology: Software Life Cycle Processes. Geneva: International Organization for Standardization.Google Scholar
- Lehman, M. 1980. On understanding laws, evolution, and conservation in the large-program life cycle. Journal of Systems and Software, 1, 3 (July 1980), 213--221.Google Scholar
- Littré. E. 2000. LeLittré: dictionnaire de la langue française en un volume. Paris: Hachette, 2000.Google Scholar
- Meyer, B. 2001. Software Engineering in the Academy. IEEE Computer (May 2001), 28--36. Google ScholarDigital Library
- Mills, H. D. 1980. The management of software engineering - Part I: Principles of software engineering. IBM Systems Journal, 19, 4, 414--420. Google ScholarDigital Library
- Moore, J. W. 2006. The Road Map to Software Engineering - A Standards-Based Guide. Los Alamitos: IEEE Computer Society, Wiley-Interscience. Google ScholarDigital Library
- Robert, P. 2002. Le Robert. Paris: Dictionnaire Le Robert.Google Scholar
- Rodgers, G. F. C. 1983. The nature of engineering. London: The MacMillan Press Ltd.Google Scholar
- Ross, D. T. and Goodenough, CA. 1975. Softech Inc., Irvine, California. Software engineering: Process, principles, and goals, Computer (May 1975), 17--27. Google ScholarDigital Library
- Royce, W. 1970. Managing the development of Large Software Systems. Reprinted in the Proceedings of the 9th International Conference on Software Engineering, IEEE Computer Society Press, 328--338. Google ScholarDigital Library
- Séguin, N. 2006. Inventaire, analyse et consolidation des principes fondamentaux du génie logiciel. Thesis. École de technologie supérieure, Montréal, Canada.Google Scholar
- Taylor, P. 2001. Interpreting Mayall's 'Principles in Design'. Proceedings of the Software Engineering Conference, 297--305. Google ScholarDigital Library
- 2002. Universalis Encyclopaedia, 5, Paris, Universalis.Google Scholar
- Wasserman, A. I. 1996. Toward a discipline of software engineering. IEEE Software (November 1996), 23--31. Google ScholarDigital Library
- Wiegers, K. E. 1996. Creating a software engineering culture. New York: Dorset House Publishing. Google ScholarDigital Library
Index Terms
- Software engineering principles: a survey and an analysis
Recommendations
Teaching software engineering principles using maintenance-based projects
CSEET '97: Proceedings of the 10th Conference on Software Engineering Education and TrainingWe describe a first undergraduate course in software engineering based on maintenance exercises. The approach has been successful in teaching important software engineering principles in a 10-week quarter to undergraduates inexperienced in these ...
Fifteen Principles of Software Engineering
Because the product of software engineering is not physical, physical laws do not form a suitable foundation. Instead, software engineering has had to evolve its principles based solely on observations of thousands of projects. The following are ...
Putting engineering into software engineering: Upholding software engineering principles in the classroom
Highlights- We integrate software testing within a broader context of specification, verification and testing.
AbstractEver since it emerged in the late (nineteen) sixties, the discipline of software engineering has set itself apart from other engineering disciplines in a number of ways, including: the pervasiveness of its products; the complexity of ...
Comments