My M.S. Thesis Proposal

95
M.S. Thesis Proposal Yaser Sulaiman

description

This is the slideshow I used to present my M.S. thesis proposal, which is tentatively titled "Planning Messages in Sequence Diagrams and Analyzing the Consistency of Use Cases and Class Diagrams Automatically using Design by Contract."

Transcript of My M.S. Thesis Proposal

Page 1: My M.S. Thesis Proposal

M.S. Thesis Proposal

Yaser Sulaiman

Page 3: My M.S. Thesis Proposal

Road map

Page 4: My M.S. Thesis Proposal

Planning Messages in Sequence Diagrams and Analyzing the Consistency of Use Cases

and Class Diagrams Automatically using Design by Contract

Page 5: My M.S. Thesis Proposal

!

Page 6: My M.S. Thesis Proposal

Planning Messages in Sequence Diagrams and Analyzing the Consistency of Use Cases

and Class Diagrams Automatically using Design by Contract

Page 7: My M.S. Thesis Proposal

Unified Modeling Language

Page 11: My M.S. Thesis Proposal

Multi-view

Page 12: My M.S. Thesis Proposal

System

Function

Behavior Structure

Page 13: My M.S. Thesis Proposal

System

UCs

Behavior Structure

Page 14: My M.S. Thesis Proposal

System

UCs

Behavior CDs

Page 15: My M.S. Thesis Proposal

System

UCs

STDs CDs

Page 16: My M.S. Thesis Proposal

System

UCs

STDs CDs

SDs

Page 17: My M.S. Thesis Proposal

Developed independently

Page 18: My M.S. Thesis Proposal

Detecting inconsistencies

Page 19: My M.S. Thesis Proposal

Cross-referencing

Page 20: My M.S. Thesis Proposal

Do it AEAP

Page 21: My M.S. Thesis Proposal

“The longer the defect stays in the software food chain, the more damage it causes further down the chain.”

—Steve McConnell

Photo by catface3

Page 22: My M.S. Thesis Proposal

Problem?

Page 24: My M.S. Thesis Proposal

Generating models from others

Page 25: My M.S. Thesis Proposal

Problem?

Page 27: My M.S. Thesis Proposal

Planning Messages in Sequence Diagrams and Analyzing the Consistency of Use Cases

and Class Diagrams Automatically using Design by Contract

Page 28: My M.S. Thesis Proposal

Automate!

Photo by mkudel

Page 29: My M.S. Thesis Proposal

How?

Page 30: My M.S. Thesis Proposal

Planning Messages in Sequence Diagrams and Analyzing the Consistency of Use Cases

and Class Diagrams Automatically using Design by Contract

Page 31: My M.S. Thesis Proposal

Combine AI planning & DbC

Page 32: My M.S. Thesis Proposal

Objectives

Page 33: My M.S. Thesis Proposal

Investigate, formulate, & instantiate

Page 34: My M.S. Thesis Proposal

Investigate, formulate, & instantiate

Page 35: My M.S. Thesis Proposal

Investigate, formulate, & instantiate

Page 36: My M.S. Thesis Proposal

Investigate, formulate, & instantiate

Page 37: My M.S. Thesis Proposal

Planning Messages in Sequence Diagrams and Analyzing the Consistency of Use Cases

and Class Diagrams Automatically using Design by Contract

Page 39: My M.S. Thesis Proposal

Correctness formulae

aka Hoare triples

Page 40: My M.S. Thesis Proposal

𝑃 𝐴 {𝑄}

Page 41: My M.S. Thesis Proposal

From a mathematical notation to a programming construct

Page 42: My M.S. Thesis Proposal

Preconditions, postconditions, & invariants

Page 43: My M.S. Thesis Proposal

The C in DbC

Photo by Pioneer Library System

Page 44: My M.S. Thesis Proposal

Obligations & benefits for suppliers & their clients

Page 45: My M.S. Thesis Proposal

Separation of responsibilities

Photo by Metro Transportation Library and Archive

Page 46: My M.S. Thesis Proposal

Examples

Page 47: My M.S. Thesis Proposal

sqrt(x:REAL): REAL require x >= 0 do .. end

Page 48: My M.S. Thesis Proposal

pop(): T require not empty do .. ensure not full count = old count - 1 end

Page 49: My M.S. Thesis Proposal

Planning Messages in Sequence Diagrams and Analyzing the Consistency of Use Cases

and Class Diagrams Automatically using Design by Contract

Page 50: My M.S. Thesis Proposal

Planning

Photo by Jeff the Trojan

Page 51: My M.S. Thesis Proposal

S0 S1 S2 … G

Page 52: My M.S. Thesis Proposal

S0 S1 S2 … G

Initial State

Page 53: My M.S. Thesis Proposal

S0 S1 S2 … G

States

Page 54: My M.S. Thesis Proposal

S0 S1 S2 … G

Actions

Page 55: My M.S. Thesis Proposal

S0 S1 S2 … G

Goal

Page 56: My M.S. Thesis Proposal

Planning languages

Page 57: My M.S. Thesis Proposal

Stanford Research Institute Problem Solver

Page 58: My M.S. Thesis Proposal

Action Description Language

Page 59: My M.S. Thesis Proposal

Preconditions & effects

Page 60: My M.S. Thesis Proposal

Striking similarity

Page 61: My M.S. Thesis Proposal

A method in a SD*

↔ An action in a plan

* DbC’ed

Page 62: My M.S. Thesis Proposal

State-space search

Page 63: My M.S. Thesis Proposal

S0 … G

Page 64: My M.S. Thesis Proposal

S0 … G

Page 65: My M.S. Thesis Proposal

“Are we there yet?”

Photo by Der Bettle

Page 66: My M.S. Thesis Proposal

Heuristics

Page 67: My M.S. Thesis Proposal

Literature Survey

Photo by cj&erson

Page 68: My M.S. Thesis Proposal

2 groups

Page 69: My M.S. Thesis Proposal

Consistency analysis

Automatic model generation

Page 70: My M.S. Thesis Proposal

Consistency analysis

Automatic model generation

Page 71: My M.S. Thesis Proposal

Consistency Checking of UML Requirements

Li, Liu, and He (2005)

Page 72: My M.S. Thesis Proposal

J. He coauthored Unifying Theories of Programming with C. Hoare

Photo by glingl

Page 73: My M.S. Thesis Proposal

Consistency analysis

Automatic model generation

Page 74: My M.S. Thesis Proposal

A Systematic Review of Transformation Approaches

between User Requirements and Analysis Models

Yue, Briand, and Labiche (2010)

Page 75: My M.S. Thesis Proposal

Automatically Deriving UML Sequence Diagrams from Use Cases

Yue, Briand, and Labiche (2010)

Page 76: My M.S. Thesis Proposal

Research Questions

Page 77: My M.S. Thesis Proposal

1

Page 78: My M.S. Thesis Proposal

How can SDs be automatically generate from UCs and a CD that

were DbC’ed?

Page 79: My M.S. Thesis Proposal

2

Page 80: My M.S. Thesis Proposal

How can that process be used to analyze the consistency between

UCs and the CD?

Page 81: My M.S. Thesis Proposal

3

Page 82: My M.S. Thesis Proposal

Which contract language should be used to enable those automated

processes?

Page 83: My M.S. Thesis Proposal

4

Page 84: My M.S. Thesis Proposal

How do the automatically-generated SDs compare to the

manually-generated ones?

Page 85: My M.S. Thesis Proposal

Object Constrain Language

Page 86: My M.S. Thesis Proposal

UML DbC OCL

Page 87: My M.S. Thesis Proposal

XML Metadata Interchange

Page 88: My M.S. Thesis Proposal

Limitations

Photo by Rice and D

Page 89: My M.S. Thesis Proposal

DbC

Page 90: My M.S. Thesis Proposal

Planning techniques & languages

Page 91: My M.S. Thesis Proposal

Formal methods & specs

Page 92: My M.S. Thesis Proposal

Informal Requirements

Formal Requirements

Page 93: My M.S. Thesis Proposal

Informal Requirements

Formal Requirements

Page 94: My M.S. Thesis Proposal

Planning Messages in Sequence Diagrams and Analyzing the Consistency of Use Cases

and Class Diagrams Automatically using Design by Contract

Page 95: My M.S. Thesis Proposal

…</presentation> <questions>…