Queen's Logo

Beyond Code: An Introduction to Model-Driven Software Development (CISC 836, Fall 2021)

Schedule & Reading List

[Home] [Content] [Schedule] [Projects]

Tentative course schedule

Notes:

Week Date Topic Slides Lead reviewers
1 Sept 7, 9 Course info: Intro, motivation, admin
Content: What is a model? Models in software development.
Readings: None
part1_4up, part2_4up  
2 Sept 14, 16 Expressing software models: UML
Content: Class diagrams, object diagrams, state machines, sequence diagrams.
Readings: None
4-up  
3 Sept 21, 23 MDSD with UML-RT and IBM RSARTE I
Content: UML-RT: Basic concepts (capsules, protocols, ports, basic state machines) [Moh21a,Moh21b]. RSARTE: Installation, basic use, examples.
Readings: None
Assignments: Assignment 1
RSARTE download and installation instructions: See Assignment 1
UML-RT web interface: Go here
Video tutorial: Informal system description, how to define structure, how to define the behaviour
Sample models: Go to here. Instructions on how to import these models into RSARTE can be found on the Assignment 1 page.
In class exercise: What is a restaurant?
Parts 1 to 3, 4-up  
4 Sept 28, 30 MDSD with UML-RT and IBM RSARTE I
Content: UML-RT: Basic concepts (capsules, protocols, ports, basic state machines) [Moh21a,Moh21b]. RSARTE: Installation, basic use, examples.
Readings R1 (Complexity): [Boo18], [Sub18]
Readings R2 (Abstraction): [Kra07], [Spo02]
Assignments: Assignment 2
 
R1: Paul-Mark
R2: Youssef
5 Oct 5, 7 MDSD with UML-RT and IBM RSARTE II
Content: UML-RT: More on ports and state machines [Moh21a,Moh21b]
Readings R3 (Actors): [Akka17], [KCM16]
Readings R4 (State machines): [Sam09, pages 1-1 to 1-8 and 3-1 to 3-6], [RG21]
Assignments: Assignment 2
Sample models: Go to UML-RT sample models
In class exercise (on Thursday): Can you get there from here?
Part 4, 4-up  
R3: Christina
R4: Aaron
  Oct 12, 14 Fall break, no class    
6 Oct 19,21 MDSD with UML-RT and IBM RSARTE III
Content: UML-RT: Design guidelines, advanced features [Moh21a,Moh21b]
Readings: None
Assignments: Assignment 3
Part 5, 4-up,
Part 6, 4-up

 
7 Oct 26,28 Domain Specific Languages I
Content: Meta modeling, Eclipse Modeling Framework (EMF)
Readings: None
In class exercise (on Thursday): Take it Apart
   
8 Nov 2,4 Domain Specific Languages II
Content: Eclipse Modeling Framework (EMF), DSL examples, pros and cons, definition, metamodeling
Readings R5 (Modeling applications: data analytics): [ROH+19]
Readings R6 (Modeling applications: security: [TSS+20]
Assignments: Assignment 4

DSLs, 4-up
EMF, 4-up
 
R5: Bara'
R6: Mohammad
9 Nov 9,11 Domain Specific Languages III
Content: Abstract syntax, concrete syntax, semantics, tooling, Xtext, debugging models
Readings R7 (Modeling applications: robotics, adaptive systems): [CCF+20]
Readings R8 (DSLs: Examples): [Tom17, sections on 'what?' and 'why?'], [Voe21]
Sample EMF projects: Go to Samples of EMF projects

 
 
R7: Jeffrey
R8: Ibrahim
10 Nov 16,18 Domain Specific Languages IV
Content: Abstract syntax, concrete syntax, semantics, tooling, Xtext, debugging models
Readings R9 (DSLs: Examples: autonomous vehicles) [SBO+20]
Readings R10 (DSLs: Evaluation): [HSS14]
Sample DSLs: Go to Examples of DSLs in Xtext

 
 
R9: Sudhandar
R10: Manar
11 Nov 23,25 MDE
Content: MDE: strengths and weaknesses
Readings R11 (Statistical models): [RVY14]
Readings R12 (MDE: obstables to adoption): [Sel12]

 
 
R11: Tindur
R12: Zhimin
12 Nov 30, Dec2 Slack, work on projects    

Readings (tentative)

Supporting material

Last modified: Mon Mar 15 2021 14:49:12