Download presentation
Presentation is loading. Please wait.
Published byOliver Thomas Modified over 9 years ago
1
Teaching UML Using Umple: Applying Model-Oriented Programming in the Classroom CSEE&T 2011 Timothy C. Lethbridge, Gunter Mussbacher, Andrew Forward and Omar Badreddin University of Ottawa tcl@site.uottawa.ca http://www.site.uottawa.ca/~tcl
2
Motivation Students and practitioners are not good UML modelers They have many patterns of misconception about —Semantics —What you can do with UML Lack of skill hinders adoption of model driven development —Slows down development in all industries I learned how to teach UML through trial and error, but it requires slow ‘board work’ to do well I needed a faster tool T. Lethbridge CSEE&T 20112
3
Overview of Umple: www.umple.orgwww.umple.org A tool set for Model-Oriented Programming A textual language for UML class and state diagrams —Which you can embed in Java, PHP, Ruby —Can reduce code volume by 90% for some types of code State-of the art code generation of top quality code Online tool (Umpleonline at try.umple.org )try.umple.org —Allows editing of the diagram or text Eclipse plugin Open source on Google code code.umple.org T. Lethbridge CSEE&T 20113
4
Example of textual Umple We will visualize the following in UmpleOnline, then edit the diagram and see the text changingUmpleOnline class Student { Integer id; status { entered { register -> registered; } registered { pay -> paid; } paid {} } class CourseSection { description; 1 -- * Student registrants; } T. Lethbridge CSEE&T 20114
5
My Classroom Technique When Teaching UML Modeling 45% PowerPoint Slides (as designed for my book) 30% Blackboard work 25% UmpleOnline T. Lethbridge CSEE&T 20115
6
Use of Umple to Date Used by me for teaching in Second year Introduction to Software Engineering Fourth year Advanced Design Used by other professors including in a graduate course Used in several student projects in various universities Including one of the SCORE finalists here at ICSESCORE Umple is written in itself T. Lethbridge CSEE&T 20116
7
Key Benefits from Classroom Use of Umple Faster and easier than using the black/white board for UML modeling Textual mode twice as fast as board Graphical editor 25% faster than board Ability to load saved designs to edit Easier to rearrange design Can explore design alternatives then save them for later Ability to umplify, i.e. convert Java code to a model Ability to generate good-quality code for discussion Low footprint: Only requires a browser Although Eclipse version could also be used T. Lethbridge CSEE&T 20117
8
Sample Student Exercises Using Umple Steps we might ask students to follow: 1.Enter a model graphically 2.Generate code 3.Explain the semantics of UML by studying generated code 4.Enter another model textually 5.Write a main program and test the generated code T. Lethbridge CSEE&T 20118
9
Student Satisfaction Survey In a Sept-Dec 2010 Course: SEG2105: Introduction to Software Engineering 10 Likert-scale questions —Took five minutes Voluntary: 30 out of 68 students participated No lecture time consumed —Just before start of class On the next two slides, error bars indicate standard deviation T. Lethbridge CSEE&T 20119
10
Results of survey T. Lethbridge CSEE&T 201110 Umple in the classroom helped me understand concepts Umple in the lab helped me understand concepts I will get better grades because of Umple Prof. Lethbridge should use it in future courses As of Dec 2010, Umple is too incomplete or buggy Other tools would have been just as effective I would use Umple in the future, assuming bugs fixed
11
T. Lethbridge CSEE&T 201111 Availability of a textual form for models and diagrams Ability to edit diagram or text & have the other reflect changes Ability to generate code to represent the model
12
Comparison of Grades Comparison of 4 offerings of the same course before introducing Umple, and 2 offerings afterwards Midterm examination grades on UML modeling question rose from 75.8% to 82.3% 8.6% improvement Final exam grades on UML modeling questions rose from 76.4% to 83.6% 9.4% improvement Highly statistically significant p<0.00002 on T Test n=332 prior to Umple; n=137 afterwards Similar results in 4 th year course SEG4110 No difference in non-UML questions T. Lethbridge CSEE&T 201112
13
Threats to Validity Students may have been trying to ‘please the professor’ by giving positive reviews of Umple We think this is unlikely —The survey was anonymous —Students tend to be critical when they want to be Not all students participated Perhaps those who didn’t would have been more negative This is a universal problem with all surveys Exams differed from year to year Perhaps UML questions became easier, by chance Perhaps we are becoming more lenient when marking UML questions T. Lethbridge CSEE&T 201113
14
Conclusions To help students better understand modeling concepts, we highly recommend: Live modeling in the classroom with an easy-to-use web-based modeling tool such as UmpleOnlineUmpleOnline Showing the results of good-quality code generation so students understand the consequences of modeling decisions Umple has been designed with the above goals in mind Simple web interface Text-based or graphical modeling in UML State-of-the-art, but easy-to-understand generated code for class and state diagrams T. Lethbridge CSEE&T 201114
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.