Queen's Logo

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

Schedule & Reading List

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

Tentative course schedule

Notes:

Week Date Topic Slides Lead reviewers
1 Jan 12, 14 Course info: Intro, motivation, admin
Content: What is a model? Models in software development.
Readings: None
part1_4up, part2_4up  
2 Jan 19, 21 Expressing software models: UML
Content: Class diagrams, object diagrams, state machines, sequence diagrams.
Readings: None
In class exercise: What is a restaurant?
4-up  
3 Jan 26, 28 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
Tool download and installation instructions: See Assignment 1
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 Feb 2, 4 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], [MM06, pages 1-12]
Readings R2 (Abstraction): [Kra07], [Spo02]
Assignments: Assignment 2
 
R1: Anthony
R2: Gabriele
5 Feb 9, 11 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: Nisha
R4: Steph
  Feb 16, 18 Reading week, no class    
6 Feb 23, 25 MDSD with UML-RT and IBM RSARTE III
Content: UML-RT: Design guidelines, advanced features [Moh21a,Moh21b]
Readings: None
Assignments: Assignment 3
In class exercise (on Thursday): The Debaters
Part 5, 4-up,
Part 6, 4-up

 
7 March 2, 4 Domain Specific Languages I
Content: Meta modeling, Eclipse Modeling Framework (EMF)
Readings: None
In class exercise (on Thursday): Take it Apart
   
8 March 9, 11 Domain Specific Languages II
Content: Eclipse Modeling Framework (EMF), DSL examples, pros and cons, definition, metamodeling
Readings R5 (Modeling applications: data quality): [KWT20]
Readings R6 (Modeling applications: event-based systems and IoT: [GIU+20]
Assignments: Assignment 4

DSLs, 4-up
EMF, 4-up
 
R5: Zitong
R6: Reetam
9 March 16, 18 Domain Specific Languages III
Content: Abstract syntax, concrete syntax, semantics, tooling, Xtext, debugging models
Readings R7 (Modeling applications: edge computing and fleet deployment): [SDF+20]
Readings R8 (DSLs: Examples): [Tom17, sections on 'what?' and 'why?'], [Voe21]
Sample EMF projects: Go to Samples of EMF projects

 
 
R7: Kopi
R8: Yuhao
10 March 23, 25 Domain Specific Languages IV
Content: Abstract syntax, concrete syntax, semantics, tooling, Xtext, debugging models
Readings R9 (DSLs: Examples) [RHM18]
Readings R10 (DSLs: development methodology): [CNB+19]
Sample DSLs: Go to Examples of DSLs in Xtext

 
 
R9: Liam
R10: Yihao
11 March 30, April 1 MDE
Content: MDE: strengths and weaknesses
Readings R11 (MDE, NLP, and AI): [SMG+20]
Readings R12 (MDE: obstables to adoption): [Sel12]

 
 
R11: Aadi
R12: Brennan
12 April 6, 8 Slack, work on projects    

Readings (tentative)

Supporting material

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