Skip to main content

Using Constraints in Teaching Software Modeling

  • Conference paper
  • 759 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 7167))

Abstract

The paper presents an approach to teaching software modeling that has been put into practice at the Babeş-Bolyai University of Cluj-Napoca and Paul Sabatier University in Toulouse. This aims at persuading students of the advantages deriving from the usage of rigorous models. The development of such models, which relies on the Design by Contract technique, is a must in the context of the Model-Driven Engineering paradigm. Another goal of our approach is for students to acquire core software modeling principles and techniques, allowing them to identify and avoid various types of pitfalls enclosed by the modeling examples posted on web. Following a decade of use and teaching of OCL, we have concluded that starting with a defense of the necessity and advantages offered by the use of constraints (an “inverted curriculum” approach) is a far more efficient teaching method compared to a pure technical introduction into the language itself.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. A UML-based Specification Environment, http://www.db.informatik.uni-bremen.de/projects/USE

  2. Frame Based on the Extensive Use of Metamodeling for the Specification, Implementation and Validation of Languages and Applications (EMF_SIVLA) - Project Deliverables, http://www.cs.ubbcluj.ro/~vladi/CUEM_SIVLA/deliverables/EduSymp2011/workspaces.zip

  3. InvestorWords, http://www.investorwords.com/1079/contract.html

  4. The OCL portal, http://st.inf.tu-dresden.de/ocl/index.php?option=com_content&view=category&id=5&Itemid=30

  5. Cabot, J.: Common UML errors (I): Infinite recursive associations (2011), http://modeling-languages.com/common-uml-errors-i-infinite-recursive-associations/

  6. Chimiak-Opoka, J., Demuth, B.: Teaching OCL Standard Library: First Part of an OCL 2.x Course. ECEASST, vol. 34 (2010)

    Google Scholar 

  7. Chiorean, D., Ober, I., Petraşcu, V.: Avoiding OCL Specification Pitfalls. In: Proceedings of the 7th Educators Symposium: Software Modeling in Education at MODELS 2011 (EduSymp 2011). Electronic Communications of the EASST, vol. xx, 10 pages. EASST (2011)

    Google Scholar 

  8. Chiorean, D., Petraşcu, V., Ober, I.: Testing-Oriented Improvements of OCL Specification Patterns. In: Proceedings of the 2010 IEEE International Conference on Automation, Quality and Testing, Robotics - AQTR, vol. II, pp. 143–148. IEEE Computer Society (2010)

    Google Scholar 

  9. France, R., Rumpe, B.: Model-driven development of complex software: A research roadmap. In: 2007 Future of Software Engineering, FOSE 2007, pp. 37–54. IEEE Computer Society, Washington, DC (2007), http://dx.doi.org/10.1109/FOSE.2007.14

    Google Scholar 

  10. LCI (Laboratorul de Cercetare în Informatică): Object Constraint Language Environment (OCLE), http://lci.cs.ubbcluj.ro/ocle/

  11. Meyer, B.: Object-Oriented Software Construction, 2nd edn. Prentice Hall (1997)

    Google Scholar 

  12. Nierstrasz, O.: Synchronizing Models and Code (2011), Invited Talk at TOOLS 2011 Federated Conference, http://toolseurope2011.lcc.uma.es/#speakers

  13. OMG (Object Management Group): Object Constraint Language (OCL), Version 2.3 Beta 2 (2011), http://www.omg.org/spec/OCL/2.3/Beta2/PDF

  14. Software Technology Group at Technische Universität Dresden: Dresden OCL, http://www.dresden-ocl.org/index.php/DresdenOCL

  15. Todorova, A.: Produce more accurate domain models by using OCL constraints (2011), https://www.ibm.com/developerworks/rational/library/accurate-domain-models-using-ocl-constraints-rational-software-architect/

  16. Venners, B.: Abstraction and Efficiency. A Conversation with Bjarne Stroustrup - Part III (2004), http://www.artima.com/intv/abstreffi2.html

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Chiorean, D., Petraşcu, V., Ober, I. (2012). Using Constraints in Teaching Software Modeling. In: Kienzle, J. (eds) Models in Software Engineering. MODELS 2011. Lecture Notes in Computer Science, vol 7167. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-29645-1_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-29645-1_5

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-29644-4

  • Online ISBN: 978-3-642-29645-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics