A Comparative Analysis of Software Engineering with Mature Engineering Disciplines using a Problem-Solving Perspective

A Comparative Analysis of Software Engineering with Mature Engineering Disciplines using a Problem-Solving Perspective

Bedir Tekinerdogan (Bilkent University, Turkey) and Mehmet Aksit (University of Twente, The Netherlands)
DOI: 10.4018/978-1-60960-215-4.ch001


Software engineering is compared with traditional engineering disciplines using a domain specific problem-solving model called Problem-Solving for Engineering Model (PSEM). The comparative analysis is performed both from a historical and contemporary view. The historical view provides lessons on the evolution of problem-solving and the maturity of an engineering discipline. The contemporary view provides the current state of engineering disciplines and shows to what extent software development can actually be categorized as an engineering discipline. The results from the comparative analysis show that like mature engineering, software engineering also seems to follow the same path of evolution of problem-solving concepts, but despite promising advances it has not reached yet the level of mature engineering yet. The comparative analysis offers the necessary guidelines for improving software engineering to become a professional mature engineering discipline.
Chapter Preview


Since the early history of software development, there is an ongoing debate what the nature of software engineering is. It is assumed that finding the right answer to this question will help to cope with the software crisis, that is, software delivered too late, with low quality and over budget (Pressman, 2008; Sommerville, 2007). The underlying idea behind this quest is that a particular view on software development directly has an impact on the software process and artifacts. Several researchers fairly stated that in addition to the question what software development currently is, we should also investigate what professional software development should be. The latter question acknowledges that current practices can be unprofessional and awkward and might require more effort and time to maturate. Although both the questions on what software development is and what professional software development should be are crucial, it seems that there are still no definite answers yet and the debate is continuing from time to time after regular periods of silence. Some researchers might consider this just as an academic exercise. Yet, continuing the quest for a valid view of software development and a common agreement on this is important for a profound understanding, of the problems that we are facing with, and the steps that we need to take to enhance software development.

Complete Chapter List

Search this Book: