Teaching Basic Class Diagram Notation With UMLGrader Robert W. Hasker Yan Shi ASEE, 2014 Milwaukee School of Engineering University of Wisconsin – Platteville.

Slides:



Advertisements
Similar presentations
Chapter 16: Analysis and Design (a short introduction) ● As engineers in other desciplines do, it necessary for real projects to “analyse” and “design”
Advertisements

MAT 3749 Introduction to Analysis Fall 2013
Knowledge Retention from Introductory CS Courses Anthony Baxter Paul Piwowarski University of Kentucky.
Mastering Object-Oriented Analysis and Design with UML Module 4: Analysis and Design Overview.
Sucha Smanchat  Steps in OOAD using UML  Use Case Diagram  Sequence Diagram / Communication Diagram  Class Diagram  State.
SIM SOFTWARE ARCHITECTURE Instructor: Masrah Azrifah Azmi Murad, PhD Room: C masrah.azrifah [at] gmail.com OR masrah [at] fsktm.upm.edu.my.
1 COST G9 - Work group 2 meeting Székesfehérvár, Hu Modeling real property transactions Radoš Šumrada Faculty of Civil and Geodetic.
Software Engineering 1 Provisional Revision Plan.
COST G9 - Work group 2 Cadastral science meeting Aalborg, Dk Modeling methodology for real estate transactions Radoš Šumrada Faculty.
Replacing “Traditional Lectures” with Face-to-Face Directed Problem Solving Sessions and On-Line Content Delivery David G. Meyer Electrical & Computer.
Master course 'Architecture, Design, and Patterns‘ more improvements since the last year ADP 2011 Gordana Rakic, Vladimir Kurbalija.
Feb. 27, 2001CSci Clark University1 CSci 250 Software Design & Development Lecture #13 Tuesday, Feb. 27, 2001.
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September 2010 First experience in teaching HCI course Dusanka.
Charles Drew University, COSH UPH 509 An Introduction to Geographic Information Systems in Public Health Paul Robinson, PhD.
Aligning Course Competencies using Text Analytics
1 Develop a large software with IBM Rational ® Software Engineering Semester Project Chih-Hong Jeng & Farn Wang fall 2006.
…improves student performance! “I use the LearnSmart modules within Connect Management to get students familiar with the material and engaged with the.
Chapter 8: Problem Solving
SE-280 Dr. Mark L. Hornick Design Review Issues. SE-280 Dr. Mark L. Hornick 2 Many expensive defects are a result of design problems Software applications.
EECE 310 Software Engineering Lecture 0: Course Orientation.
Introduction to Information Systems and Technology MIS 213, Spring 2015 CIS 2005, CIS 1007.
An-Najah National University Faculty Of Engineering Industrial Engineering Department Implementation Of Quality Function Deployment On Engineering Faculty.
SE 2030 Software Engineering Tools and Practices SE 2030 Dr. Rob Hasker 1 Based on slides written by Dr. Mark L. Hornick Used with permission.
SCEA certification Alain Hsiung, Ideartis Java Users Group Switzerland Technopark Zurich,
Object-Oriented Analysis and Design Lecture 1 Instructor: John Cole 1Object-Oriented Analysis and Design - Intro.
Chapter 1: Introduction to Statistics
On a new cycle of lectures/assignments on 'Architecture, Design, and Patterns' ADP 2010 Gordana Rakic, Vladimir Kurbalija.
Requirements Analysis via Use Cases SE-2030 Dr. Rob Hasker 1 Based on slides written by Dr. Mark L. Hornick Used with permission.
ScWk 242 Course Overview and Review of ScWk 240 Concepts ScWk 242 Session 1 Slides.
CLASS OPENER: Is the given sequence arithmetic, if so what is the common difference? 1.1,4,9,16… 2.-21, -18, -15, -12… 3.97, 86, 75, 64… 4.0, 1, 3, 6,
1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases.
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 1: Introduction to Use-Case Modeling.
Domain Classes – Part 1.  Analyze Requirements as per Use Case Model  Domain Model (Conceptual Class Diagram)  Interaction (Sequence) Diagrams  System.
Teaching UML Using Umple: Applying Model-Oriented Programming in the Classroom CSEE&T 2011 Timothy C. Lethbridge, Gunter Mussbacher, Andrew Forward and.
CS 139 – Algorithm Development MS. NANCY HARRIS LECTURER, DEPARTMENT OF COMPUTER SCIENCE.
Developing Common Course Syllabi November 20, 2010 Heather Sass, Education Consultant Preview.
Classroom logistics and practices PROGRAMMING FUNDAMENTALS.
Using Open Source Projects in Higher Education: A Two-Way Certification Framework Pantelis M. Papadopoulos, United Nations University Ioannis G. Stamelos,
HOW EFFECTIVE IS YOUR LESSON PLAN? Sarita Nazareth, Training Specialist TCEQ Licensing Section Permitting & Registration Support 20TH ANNUAL WATER/WASTEWATER.
TK2023 Object-Oriented Software Engineering CHAPTER 9 INTRODUCTION TO OBJECT DESIGN.
Ivar Jacobson, Grady Booch, and James Rumbaugh The Unified Software Development Process Addison Wesley, : James Rumbaugh's OOMD 1992: Ivar Jacobson's.
® IBM Software Group © 2009 IBM Corporation Essentials of Modeling with the IBM Rational Software Architect, V7.5 Module 15: Traceability and Static Analysis.
CS223: Software Engineering
Developing a Useful Instrument to Assess Student Problem Solving Jennifer L. Docktor Ken Heller Physics Education Research & Development Group
Course Overview Ted Baker  Andy Wang COP 5641 / CIS 4930.
Introduction to Sport and Exercise Science Lecture 1.
What are the Command Words? Calculate Compare Complete Describe Evaluate Explain State, Give, Name, Write down Suggest Use information to…..
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 4: Analysis and Design Overview.
® IBM Software Group © 2009 IBM Corporation Essentials of Modeling with IBM Rational Software Architect V7.5 Module 0: About This Course.
Research Methods In Psychology Dr. Jacquelyn H. Berry Department of Psychology State University of New York at New Paltz Online course offering – debuted.
UML Review Sequence Diagrams SE-2030 Dr. Rob Hasker 1 Based on slides written by Dr. Mark L. Hornick Used with permission.
Defects of UML Yang Yichuan. For the Presentation Something you know Instead of lots of new stuff. Cases Instead of Concepts. Methodology instead of the.
OOAD Using the UML - Use-Case Analysis, v 4.2 Copyright  Rational Software, all rights reserved 1 Use Case Analysis – Part 4 Analysis Mechanisms.
Course Code : 15ECSC204 Object Oriented Progamming.
DEVRY CIS 339 iLab 4 Sequence, Communication, and State Diagrams Check this A+ tutorial guideline at
Software Engineering (1)
Object-Oriented Analysis & Design
Introduction to Information Systems and Technology
Inception/Elaboration
Effects of Targeted Troubleshooting Activities on
TAL 7011 Architecture of Large Software Systems
REQUIREMENT ANALYSIS AND DESIGN RESEARCH DESIGN AND IMPLEMENTATION
Welcome to GC311 Database Concepts
Welcome to GC311 Database Concepts
GTECH 709 Criteria for evaluation
EECE 310 Software Engineering
Business Analysis Entity Life History Chris Russell O2.41d
CALCULATE Use numbers given in the question to work out an answer. Always show working.
Rational Rose 2000 Instructor Notes Use Case Realization Structure
CSE 231 Section *** Teaching Assistant: YOUR NAME
Presentation transcript:

Teaching Basic Class Diagram Notation With UMLGrader Robert W. Hasker Yan Shi ASEE, 2014 Milwaukee School of Engineering University of Wisconsin – Platteville

The traditional way to teach UML Large, open-ended problems Students expected to apply learned notation Often: assigned to groups Challenges: Student may miss opportunities to apply key notation Lengthy turnaround times for grading

The traditional way to teach UML Large, open-ended problems Students expected to apply learned notation Often: assigned to groups Challenges: Student may miss opportunities to apply key notation Lengthy turnaround times for grading How well is this working?

Exam problem, junior-level SE course Snow removal drivers have routes, assigned trucks Each route has one driver Two types of trucks: dump trucks and snow plows A route = sequence of street segments A street: name + sequence of segments Segment: defined by the crossing streets at each end

Sample solutions

X

X X

X X ScoreCount+/- Class

Sample solutions X X ScoreCount+/- Class Prereqs: Intro to SE CS1/CS2 Half: OOA&D

Solution: tool to compare solutions At

Example

Errors for class names

Example Errors for class names Association errors

Example Errors for class names Association errors Attribute errors

Lab exercise Students given problem statement, asked to draw 34 of 37 students able to match with no errors Help: explained roles vs. association names, specifying role names, specifying multiplicities

Matching rules Match names, ignoring spaces Can specify alts Attributes, operations: match substrings Missing attribute

Matching rules Exact match on class names allows catching errors with plurals Match associations by role name, then multiplicities When specified, multiplicities must match

Exam 2, upper level class Problem:

Exam 2, upper level class Problem: Results: ScoreExam 1Exam Ave: 

Evaluation: Intro to Software Eng. Sophomore-level Introduces UML about half-way through semester After introduction: quiz using course registration system Average score out of 10 points: 6.46

Intro to SE exercise Diagram:

Intro to SE exercise Diagram: - Errors Encountered

Intro to SE: Exam question Real estate problem: CountMean σ Quiz Exam Student’s t-test: Significant improvement w/ t value 5.68, p <.001 (23 dof)

Intro to SE: Exam errors by type

Intro to SE: Exam question Real estate problem:

What can we conclude? Proposal: using exercises to teach UML notation: Students given description for constrained problem UMLGrader compares solution against model solution Students iterate until no errors Evaluation methodology has limits Clear issue: what would happen with no lab at all? But experience suggests this is not working! Recall first evaluation done in a course with multiple prereqs! Evidence for experimentation Radical suggestion: teaching UML notation through worksheet-like exercises

UMLGrader status Available via Supports Rational Rose, IBM Rhapsody Instructor can control which checks are applied Contact me to set up an exercise Available by September: Support for Enterprise Architect Similar comparisons for state diagrams In the works Interface for other instructors to upload, modify assignments Adding checks on named associations, navigability, containment, types Checking sequence diagrams

Thanks Thanks to the ASEE SE reviewers for a number of very helpful suggestions for improvements.