Skip to main content
Erschienen in: Software and Systems Modeling 4/2012

01.10.2012 | Expert’s Voice

What will it take? A view on adoption of model-based methods in practice

verfasst von: Bran Selic

Erschienen in: Software and Systems Modeling | Ausgabe 4/2012

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Model-based engineering (MBE) has been touted as a new and substantively different approach to software development, characterized by higher levels of abstraction and automation compared to traditional methods. Despite the availability of published verifiable evidence that it can significantly boost both developer productivity and product quality in industrial projects, adoption of this approach has been surprisingly slow. In this article, we review the causes behind this, both technical and non-technical, and outline what needs to happen for MBE to become a reliable mainstream approach to software development.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Fußnoten
1
I eschew here the distracting and often unproductive controversy as to whether or not software development is a form of “engineering” and shall refer to it throughout as a “technical” discipline.
 
2
In contrast, the same cycle in most engineering disciplines may take months or even years.
 
3
Another source of problems is the exceedingly low entry barrier into the profession; basic programming skills can be picked up quickly and easily by amateurs. Consequently, many practitioners lack systematic and deep training in basics of computer science and engineering.
 
4
In this discussion we are only interested in “complex” software systems, characterized by sophisticated functionality and numerous technical challenges and whose conception and construction require a variety of skills.
 
5
Although, as demand for ever more sophisticated systems increases, we are hearing more and more about cost and schedule overruns of various large engineering projects. However, unlike software, very few of these actually fail. Most high-risk projects are terminated early in the development, before significant funds and resources have been spent. This is because it is possible to reliably predict the probability of failure sufficiently early in the project.
 
6
A rough estimate, based primarily on the author’s several decades of personal experience, is that no more than 15 % of all industrial software projects currently use modeling substantively in their development.
 
7
Note that abstraction should not be interpreted as ignoring technological factors in software design, particularly since technological constraints can have a fundamental impact sometimes on the architecture of software. However, it does mean that only the essential aspects of the technology need be considered and that the application rather than the implementation technology should be the foremost concern of the implementers.
 
8
A more careful analysis of the core technical skills required for model-based software development reveals that they are, in essence, no different than the core skills required for traditional programming—except that they are based on a different technological foundation. These core skills are, in fact, technology independent.
 
9
Contrary to popular impressions, developing software tools requires major research and development investments, since a professional grade tool must not only have the required functionality but it must also be robust, scalable, and highly usable—all of which requires significant effort to achieve. Furthermore, it also requires documentation, training materials and courses, and a support and maintenance team.
 
10
Recall that one of the keystones of model-based engineering is to move the task of software design closer to the problem domain and away from the computing technology domain. Consequently, the push towards domain-specific languages is a natural outcome.
 
11
In contrast, the primary criterion in the design of programming languages is that they must be unambiguously interpreted by a compiler (such as the rigid syntactic rules that ensure computer-based parsing), a requirement that invariably takes priority over any concerns about readability.
 
12
The example of the much reviled and rather cumbersome COBOL syntax, designed naively with a view towards making programs readable by non-programmers, demonstrates the difficulty of getting this aspect right.
 
13
In fact, mathematical logic on its own is probably not sufficient for specifying language semantics in domains where quantitative aspects of physical phenomena, such as the duration or resource limitations, play a key role.
 
14
In fact, this two-step approach is analogous to the old CFront solution used in early C++ compilers—an approach long abandoned because it resulted in inefficient code.
 
15
Of course, similar scalability issues occur in traditional programming language systems as well. However, because these programs are primarily textual rather than based on semantic linkages, these types of sophisticated searches are rarely even considered.
 
16
An informal analysis of two of the most widely used commercial model authoring tools revealed that they both had in the order of 300 distinct menu items, many of them interdependent in ways that are not always obvious. Mastering such tools is, surely, a high challenge even for the most competent developers.
 
17
I have no formal verifiable proof of this as a general conclusion, but I have been directly involved with the development of at least four major modeling tool projects (commercial and open-source), and it applied in all cases.
 
Literatur
1.
Zurück zum Zitat Antkiewicz, M., Czarnecki, K., et al.: Design space of heterogeneous synchronization. In: Lammel, R., Lammel, R., et al. (eds.) Generative and Transformational Techniques in Software Engineering II. Lecture Notes in Computer Science, vol. 5235, p. 46. Springer, Berlin (2008) Antkiewicz, M., Czarnecki, K., et al.: Design space of heterogeneous synchronization. In: Lammel, R., Lammel, R., et al. (eds.) Generative and Transformational Techniques in Software Engineering II. Lecture Notes in Computer Science, vol. 5235, p. 46. Springer, Berlin (2008)
2.
Zurück zum Zitat Baber, R.: Software Reflected. North Holland, Amsterdam (1982) Baber, R.: Software Reflected. North Holland, Amsterdam (1982)
3.
Zurück zum Zitat Berry, G., Gonthier, G.: The Esterel synchronous programming language: design, semantics, implementation. Sci. Comput. Program. 19(2), 87–152 (1992)MATHCrossRef Berry, G., Gonthier, G.: The Esterel synchronous programming language: design, semantics, implementation. Sci. Comput. Program. 19(2), 87–152 (1992)MATHCrossRef
5.
Zurück zum Zitat Bone, M., Cloutier, R.: The current state of model based system engineering: results from the OMG\(^{\rm TM}\) SysML request for information 2009. In: Proceedings of the 8th Conference on Systems Engineering Research (CSER), March 2010. Hoboken, NJ (2010) Bone, M., Cloutier, R.: The current state of model based system engineering: results from the OMG\(^{\rm TM}\) SysML request for information 2009. In: Proceedings of the 8th Conference on Systems Engineering Research (CSER), March 2010. Hoboken, NJ (2010)
9.
Zurück zum Zitat Einstein, A.: Science and happiness (Speech given at the California Institute of Technology). Science 73(1893), 375–381 (1931)CrossRef Einstein, A.: Science and happiness (Speech given at the California Institute of Technology). Science 73(1893), 375–381 (1931)CrossRef
10.
Zurück zum Zitat Erlande-Brandenburg, A.: The Cathedral Builders of the Middle Ages (translated from the French by Rosemary Stonehewer). Thames and Hudson, London (2007) Erlande-Brandenburg, A.: The Cathedral Builders of the Middle Ages (translated from the French by Rosemary Stonehewer). Thames and Hudson, London (2007)
11.
Zurück zum Zitat Eveleens, J.L., Verhoef, C.: The Rise and Fall of the Chaos Report Figures. IEEE Software, pp. 30–36 (2010) Eveleens, J.L., Verhoef, C.: The Rise and Fall of the Chaos Report Figures. IEEE Software, pp. 30–36 (2010)
12.
Zurück zum Zitat France, R., Rumpe, B.: Model-driven development of complex software: a research roadmap. In: Proceedings of 2007 IEEE Conference on the Future of Software Engineering (FOSE ‘07), pp. 37–54. IEEE Computer Society (2007) France, R., Rumpe, B.: Model-driven development of complex software: a research roadmap. In: Proceedings of 2007 IEEE Conference on the Future of Software Engineering (FOSE ‘07), pp. 37–54. IEEE Computer Society (2007)
13.
Zurück zum Zitat Glass, R.: The Standish report: does it really describe a software crisis? Commun. ACM 49(8), 15–16 (2006)CrossRef Glass, R.: The Standish report: does it really describe a software crisis? Commun. ACM 49(8), 15–16 (2006)CrossRef
14.
Zurück zum Zitat Hutchinson, J., Rouncefield, M., Whittle, J.: Model-driven engineering practices in industry. In: Proceedings of 33rd International Conference on Software Engineering (ICSE’11), pp. 633–642. ACM, New York (2011) Hutchinson, J., Rouncefield, M., Whittle, J.: Model-driven engineering practices in industry. In: Proceedings of 33rd International Conference on Software Engineering (ICSE’11), pp. 633–642. ACM, New York (2011)
15.
Zurück zum Zitat Hutchinson, J., Whittle, J., Rouncefield, M., Kristofferson, S.: Empirical assessment of MDE in industry. In: Proceedings 33rd International Conference on Software Engineering (ICSE’11), pp. 471–480. ACM, New York (2011) Hutchinson, J., Whittle, J., Rouncefield, M., Kristofferson, S.: Empirical assessment of MDE in industry. In: Proceedings 33rd International Conference on Software Engineering (ICSE’11), pp. 471–480. ACM, New York (2011)
17.
Zurück zum Zitat Lin, C., et al.: Experiences deploying MBSE at NASA JPL. Frontiers in Model-Based Systems Engineering Workshop. Georgia Institute of Technology (2011). (www.pslm.gatech. edu/events/frontiers2011/2.1̱Lin.pdf) Lin, C., et al.: Experiences deploying MBSE at NASA JPL. Frontiers in Model-Based Systems Engineering Workshop. Georgia Institute of Technology (2011). (www.pslm.gatech. edu/events/frontiers2011/2.1̱Lin.pdf)
18.
Zurück zum Zitat McLuhan, M.: Understanding Media: The Extensions of Man. MIT Press, Cambridge (1994) McLuhan, M.: Understanding Media: The Extensions of Man. MIT Press, Cambridge (1994)
19.
Zurück zum Zitat Milner, R.: Communication and Concurrency, International Series in Computer Science. Prentice Hall, Upper Saddle River (1989) Milner, R.: Communication and Concurrency, International Series in Computer Science. Prentice Hall, Upper Saddle River (1989)
20.
Zurück zum Zitat Mohagheghi, P., Dehlen, V.: Where is the proof? A review of experiences from applying MDE in industry. In: Schiefendecker, I., Hartman, A. (eds.) Model Driven Architecture—Foundations and Applications (ECMDA-FA 2008), LNCS, vol. 5095, pp. 432–443. Springer, Berlin (2008) Mohagheghi, P., Dehlen, V.: Where is the proof? A review of experiences from applying MDE in industry. In: Schiefendecker, I., Hartman, A. (eds.) Model Driven Architecture—Foundations and Applications (ECMDA-FA 2008), LNCS, vol. 5095, pp. 432–443. Springer, Berlin (2008)
21.
Zurück zum Zitat Moody, D.: The ‘Physics’ of notations: toward a scientific basis for constructing visual notations in software engineering. IEEE Trans. Softw. Eng. 35(6), 756–779 (2009)CrossRef Moody, D.: The ‘Physics’ of notations: toward a scientific basis for constructing visual notations in software engineering. IEEE Trans. Softw. Eng. 35(6), 756–779 (2009)CrossRef
22.
Zurück zum Zitat Neumann, P.: Computer Related Risks. Addison Wesley, Boston (1995) Neumann, P.: Computer Related Risks. Addison Wesley, Boston (1995)
23.
Zurück zum Zitat The Object Management Group: Compilation of SysML RFI—Final Report, OMG Document syseng/2009-06-01 (2009) The Object Management Group: Compilation of SysML RFI—Final Report, OMG Document syseng/2009-06-01 (2009)
24.
Zurück zum Zitat The Object Management Group: Meta-Object facility (MOF) 2.0 Query/View/Transformation (QVT), OMG document formal/2011-01-01 (2011) The Object Management Group: Meta-Object facility (MOF) 2.0 Query/View/Transformation (QVT), OMG document formal/2011-01-01 (2011)
25.
Zurück zum Zitat Czarnecki, K., Helsen, P.: Feature-based survey of model transformation approaches. IBM Syst. J. 45(3) (2006) Czarnecki, K., Helsen, P.: Feature-based survey of model transformation approaches. IBM Syst. J. 45(3) (2006)
26.
Zurück zum Zitat Syriani, E., Vangheluwe, H.: De-/re-constructing model transformation languages. In: Electronic Communications of the EASST, 29: Graph Transformation and Visual Modeling Techniques (GT-VMT) (2010) Syriani, E., Vangheluwe, H.: De-/re-constructing model transformation languages. In: Electronic Communications of the EASST, 29: Graph Transformation and Visual Modeling Techniques (GT-VMT) (2010)
27.
Zurück zum Zitat Varro, D., Pataricza, A.: Generic and meta-transformations for model transformation engineering. In: Proceedings of the 7th International Conference on the Unified Modeling Language (UML 2004), pp. 290–304. Lisbon, Portugal (2004) Varro, D., Pataricza, A.: Generic and meta-transformations for model transformation engineering. In: Proceedings of the 7th International Conference on the Unified Modeling Language (UML 2004), pp. 290–304. Lisbon, Portugal (2004)
28.
Zurück zum Zitat Jouault, F., Kurtev, I.: Transforming models with ATL. In: Proceedings of Model Transformations in Practice Workshop. MTIP), MoDELS Conference, Montego Bay, Jamaica (2005) Jouault, F., Kurtev, I.: Transforming models with ATL. In: Proceedings of Model Transformations in Practice Workshop. MTIP), MoDELS Conference, Montego Bay, Jamaica (2005)
29.
Zurück zum Zitat Muller, P.-A., Fleurey, F., Jézéquel, J.-M.: Weaving executability into object-oriented metalanguages. In: Proceedings of the ACM/IEEE 8th International Conference on Model Driven Engineering Languages and Systems, pp. 264–278. Montego Bay, Jamaica (2005) Muller, P.-A., Fleurey, F., Jézéquel, J.-M.: Weaving executability into object-oriented metalanguages. In: Proceedings of the ACM/IEEE 8th International Conference on Model Driven Engineering Languages and Systems, pp. 264–278. Montego Bay, Jamaica (2005)
31.
Zurück zum Zitat Petriu, D.: Software model-based performance analysis. In: Post-Proceedings of the MDD4DRES Summer School, Aussois 2009. Hermès Science Publications, Paris (2012) (in press) Petriu, D.: Software model-based performance analysis. In: Post-Proceedings of the MDD4DRES Summer School, Aussois 2009. Hermès Science Publications, Paris (2012) (in press)
32.
Zurück zum Zitat Selic, B.: Personal reflections on automation. Program Cult Model-Based Softw Eng Autom Softw Eng J 14(3/4) (2008) Selic, B.: Personal reflections on automation. Program Cult Model-Based Softw Eng Autom Softw Eng J 14(3/4) (2008)
33.
Zurück zum Zitat Sokolsky, O., Lee, I., Clarke, D.: Schedulability analysis of AADL models. In: Proceedings 20th International Parallel and Distributed Processing Symposium (IPDPS 2006). IEEE (2006) Sokolsky, O., Lee, I., Clarke, D.: Schedulability analysis of AADL models. In: Proceedings 20th International Parallel and Distributed Processing Symposium (IPDPS 2006). IEEE (2006)
35.
Zurück zum Zitat United States Department of Labor—Bureau of Labor Statistics: Occupational Outlook Handbook, 2010–2011 Edition. Computer Software Engineers and Computer Programmers United States Department of Labor—Bureau of Labor Statistics: Occupational Outlook Handbook, 2010–2011 Edition. Computer Software Engineers and Computer Programmers
36.
Zurück zum Zitat Vitruvius: The Ten Books on Architecture (translated by M. H. Morgan). Dover Publications Inc. New York (1960) Vitruvius: The Ten Books on Architecture (translated by M. H. Morgan). Dover Publications Inc. New York (1960)
37.
Zurück zum Zitat Weigert, T., Weil, F.: Practical experience in using model-driven engineering to develop trustworthy systems. In: Proceedings of IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing (SUTC’06), pp. 208–217. IEEE Computer Society (2006) Weigert, T., Weil, F.: Practical experience in using model-driven engineering to develop trustworthy systems. In: Proceedings of IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing (SUTC’06), pp. 208–217. IEEE Computer Society (2006)
Metadaten
Titel
What will it take? A view on adoption of model-based methods in practice
verfasst von
Bran Selic
Publikationsdatum
01.10.2012
Verlag
Springer-Verlag
Erschienen in
Software and Systems Modeling / Ausgabe 4/2012
Print ISSN: 1619-1366
Elektronische ISSN: 1619-1374
DOI
https://doi.org/10.1007/s10270-012-0261-0

Weitere Artikel der Ausgabe 4/2012

Software and Systems Modeling 4/2012 Zur Ausgabe

Expert's Voice

Looking back at UML