[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.5555/2399776.2399784dlproceedingsArticle/Chapter ViewAbstractPublication PagescasconConference Proceedingsconference-collections
research-article

Model oriented programming: an empirical study of comprehension

Published: 05 November 2012 Publication History

Abstract

Many tools and approaches support the use of modeling abstractions in textual form. However, there have been few studies about whether textual models are as comprehensible as graphical models. We present an experiment investigating the understandability of three different notations: Systems modeled in UML, and the same systems in both Java and Umple. Umple is a model-oriented programming technology that enhances languages like Java and PHP with textual modeling abstractions. It was designed to bridge the gap between textual and graphical modeling. Our experiment asked participants to answer questions reflecting their level of comprehension. The results reveal that for simple comprehension tasks, a visual model and a textual model are comparable. Java's comprehension levels were lowest of all three notations. Our results align with the intuition that raising the abstraction levels of common object-oriented programming languages enhances comprehensibility.

References

[1]
Forward, A. and Lethbridge, T. C. "Problems and opportunities for model-centric versus code-centric software development: A survey of software professionals," in MiSE '08: Proc. 2008 International Workshop on Models in Software Engineering, 2008, pp. 27--32.
[2]
OMG. "UML Human-Usable Textual Notation (HUTN)" accessed 2012, http://www.omg.org/spec/HUTN/
[3]
OMG. "Concrete Syntax for a UML Action Language, (Action Language for Foundational UML -- ALF)," accessed 2012, http://www.omg.org/spec/ALF/
[4]
Yukihiro Matsumoto. "Ruby programming language". Available: http://www.ruby-lang.org/en/, Accessed 2012
[5]
M, Martin, "StateMachine: A Ruby Library, Gem and Rails Plugin", http://slagyr.github.com/statemachine/, Accessed 2012.
[6]
RubyOnRails.org, "Active Record --- Object-relation mapping put on rails", http://ar.rubyonrails.org/, Accessed 2012
[7]
MetaUML. Open source; Accessed 2012. http://metauml.sourceforge.net, Accessed 2012
[8]
T. Harris, "yUML," accessed 2012. Available: http://yuml.me/
[9]
"TextUML," accessed 2012. Available: http://sourceforge.net/projects/textuml/
[10]
State Machine Compiler (SMC). Accessed 2012,. http://smc.sourceforge.net/
[11]
Y. Gurevich, B. Rossman and W. Schulte. "Semantic essence of AsmL". 2005. Theor.Comput.Sci. vol 343, pp. 370--412.
[12]
Chris Raistrick. "Model Driven Architecture with Executable UML (TM)". Cambridge University Press New York, NY, USA, 2004
[13]
CRuiSE Group University of Ottawa, "Umple Model Oriented Programming", http://www.umple.org, accessed 2012.
[14]
D. Hendrix, J. H. Cross II and S. Maghsoodloo. "The effectiveness of control structure diagrams in source code comprehension activities". 2002. IEEE Trans.Software Eng.pp. 463--477.
[15]
T. R. G. Green. "The cognitive dimension of viscosity: a sticky problem for HCI". 1990. Hum.-Comput.Interact.pp. 79--86.
[16]
CRuiSE Group, "Philosophy and Vision for the Umple Language and Model-Oriented Programming", http://philosophy.umple.org/ Accessed 2012
[17]
T. C. Lethbridge, A. Forward, O. Badreddin. 2010 Proc. 17th Working Conference on Reverse Engineering (WCRE), pp. 220--224. http://dx.doi.org/10.1109/WCRE.2010.32
[18]
CRuiSE Group, "Umple User Manual", http://manual.umple.org, Accessed 2012.
[19]
CRuiSE Group, "Umple API Summary", http://api.umple.org/, Accessed 2012
[20]
T. Lethbridge. "Umple - Creating a Library System Using Model-Oriented Programming" http://www.youtube.com/watch?v=HLWML9YSD_U. Accessed 2012.
[21]
T. Lethbridge. "Umple -- State Machine Details": http://www.youtube.com/watch?v=mFczzVkTZ9g. Accessed 2012.
[22]
A. Forward, O. Badreddin, T. C. Lethbridge, Solano, J., (2011) "Model-Driven Rapid Prototyping with Umple", Software Practice and Experience, 42: pp. 781--707
[23]
A. Forward, T. C. Lethbridge, and D. Brestovansky, (2009), "Improving Program Comprehension by Enhancing Program Constructs: An Analysis of the Umple language", International Conference on Program Comprehension (ICPC) 2009, Vancouver, IEEE Computer Society, pp. 311--312
[24]
O. Badreddin, and T. C. Lethbridge, T. (2012) "Combining Experiments and Grounded Theory to Evaluate a Research Prototype: Lessons from the Umple Model-Oriented Programming Technology", 2012 First International Workshop on User evaluation for Software Engineering Researchers (USER 2012), in conjunction with ICSE 2012
[25]
T. C. Lethbridge, G. Mussbacher, A. Forward and O. Badreddin, (2011) "Teaching UML Using Umple: Applying Model-Oriented Programming in the Classroom", CSEE&T 2011, pp. 421--428
[26]
O. Badreddin. (2012) "A Manifestation of Model-Code Duality: Facilitating the Representation of State Machines in the Umple Model-Oriented Programming Language". PhD. Thesis, University of Ottawa, Available: http://www.site.uottawa.ca/~tcl/gradtheses/obadreldin/
[27]
T. C. Lethbridge. "Umple -- Associations and Generalizations", http://www.youtube.com/watch?v=HIBo0ErCVtU. Accessed 2012.
[28]
W. J. Dixon and A. M. Mood. "The statistical sign test". 1946. Journal of the American Statistical Association pp. 557--566.
[29]
S. Mohammad. "From once upon a time to happily ever after: Tracking emotions in novels and fairy tales". 2011. ACL HLT 2011pp. 105.
[30]
S. M. Mohammad and P. D. Turney. "Crowd-sourcing a word--emotion association lexicon". 2011. In submission.
[31]
Sjoberg, D. I. K., Anda, B., Arisholm, E., Dyba, T., Jorgensen, M., Karahasanovic, A., Koren, E. F. and Vokác, M. "Conducting realistic experiments in software engineering," in Empirical Software Engineering, 2002. Proceedings. 2002 International Symposium n, 2002, pp. 17--26.
[32]
CRuiSE group, "Umple Online", http://try.umple.org, Accessed 2012
[33]
L. C. Briand, C. Bunse, J. W. Daly and C. Differding. "An experimental comparison of the maintainability of object-oriented and structured design documents". 1997. Empirical Software Engineering vol 2, pp. 291--312.

Cited By

View all
  • (2018)The impact of design and UML modeling on codebase quality and sustainabilityProceedings of the 28th Annual International Conference on Computer Science and Software Engineering10.5555/3291291.3291315(236-244)Online publication date: 29-Oct-2018
  • (2016)Towards promoting design and UML modeling practices in the open source communityProceedings of the 38th International Conference on Software Engineering Companion10.1145/2889160.2892649(722-724)Online publication date: 14-May-2016
  • (2013)Model oriented programmingProceedings of the 5th International Workshop on Modeling in Software Engineering10.5555/2662737.2662754(69-75)Online publication date: 18-May-2013
  1. Model oriented programming: an empirical study of comprehension

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image DL Hosted proceedings
    CASCON '12: Proceedings of the 2012 Conference of the Center for Advanced Studies on Collaborative Research
    November 2012
    291 pages

    Publisher

    IBM Corp.

    United States

    Publication History

    Published: 05 November 2012

    Qualifiers

    • Research-article

    Acceptance Rates

    Overall Acceptance Rate 24 of 90 submissions, 27%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)2
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 20 Dec 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2018)The impact of design and UML modeling on codebase quality and sustainabilityProceedings of the 28th Annual International Conference on Computer Science and Software Engineering10.5555/3291291.3291315(236-244)Online publication date: 29-Oct-2018
    • (2016)Towards promoting design and UML modeling practices in the open source communityProceedings of the 38th International Conference on Software Engineering Companion10.1145/2889160.2892649(722-724)Online publication date: 14-May-2016
    • (2013)Model oriented programmingProceedings of the 5th International Workshop on Modeling in Software Engineering10.5555/2662737.2662754(69-75)Online publication date: 18-May-2013

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media