Putting the "Engineering" into "Software Engineering"

  • Authors:
  • Philippe Kruchten

  • Affiliations:
  • -

  • Venue:
  • ASWEC '04 Proceedings of the 2004 Australian Software Engineering Conference
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

Is software development really a form of engineering?Or is it just some kind of elaborate craftsmanship? Arewe just fooling ourselves thinking that we are doingengineering? If so, it is certainly not from lack of tryinghard over the last 20 years. But maybe we tackled theproblem from the wrong end: we tried to imposetechniques from other engineering disciplines ontosoftware development models without understanding thereal nature of software.This paper analyzes the similarities and thedifferences, and pinpoints the key discriminants (lack offundamental laws, technology churn, no manufacturingstage) that make software endeavours somewhat differentthan, for example, those in civil or mechanicalengineering. We look at a few recent developments thathelp fill the gaps: iterative development and model-drivendesign. And we use Frank Gero's Function-Behaviour-Structureframe-work to help us contrast softwareengineering with other engineering disciplines.