36
From Requirements to From Requirements to Code: A Full Model-Driven D l tP ti Development Perspective Óscar Pastor López Óscar Pastor López Centro de Investigación en Métodos de Producción de Software (ProS) Universidad Politécnica de Valencia C i d V / 46071 V l i E ñ (S i) Camino de V era s/n, 46071 V alencia, España (Spain) [email protected] Phone: +34 96 387 7000, Fax: +34 96 3877359

From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Embed Size (px)

Citation preview

Page 1: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

From Requirements toFrom Requirements to Code: A Full Model-Driven D l t P tiDevelopment Perspective

Óscar Pastor LópezÓscar Pastor López

Centro de Investigación en Métodos de Producción de Software (ProS)Universidad Politécnica de ValenciaC i d V / 46071 V l i E ñ (S i )Camino de Vera s/n, 46071 Valencia, España (Spain)[email protected]: +34 96 387 7000, Fax: +34 96 3877359

Page 2: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

SYSTEMATIC   APPROACHMETHODOLOGICAL GUIDANCE

MODELLING  TECHNIQUES OFFER!!!TAKE 3 PAY 2METHODOLOGICAL   GUIDANCETAKE 3, PAY 2

CRITERIAYET ANOTHER

METHODNICE & CHEAP NICE & CHEAP

Page 3: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Business process modelling (BPM) Specification of the (current and/or proposed) enterprise processes.

Important practice in Requirements Engineering and Software Engineering

Multiple BPM techniques

P t i N tMerodeBPMN

IDEF0DFD

Use Cases TaxisPetri Nets SADT

PSL/PSA

Merode

DFDNIAM Merise Workflow

REVS ISACS UML Activity Diagrams

Page 4: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Business process modelling (BPM) Specification of the (current and/or proposed) enterprise processes.

Important practice in Requirements Engineering and Software Engineering

Multiple BPM techniques

N t tiTh ti l M th d l i lNotation

MODELLING

Theoreticalunderpinning

Methodologicalguidance

MODELLING PRIMITIVESCONCEPTS CRITERIA

Page 5: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

OLIVANOVA

CONCEPTUAL MODELLING The OLIVANOVA approach: Conceptual modellingCLASS

DIAGRAMATION

▪ Object Model

▪ Dynamic ModelDYNAMIC

DIAGRAMATION

▪ Functional Model

▪ Presentation Model

Model compilation

FUNCTIONALDIAGRAMATION

PRESENTATION Model compilation

PRO

BLE

M

SPA

CE

PRESENTATIONDIAGRAMATION

LUTI

ON

SPA

CEMODEL COMPILATION

FINAL APPLICATION SOL

INTERFACE LAYER

BUSINESS LAYER

PERSISTENCE LAYER

5

Page 6: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

REQUIREMENTS ENGINEERING

(1) STRATEGIC

Communication Analysis

Communication Analysis: Requirements engineering 

(1) STRATEGIC DESCRIPTION OF ORGANISATION

approach for information systems

Provides a requirements structure(2) COMMUNICATIVE

EVENT DIAGRAMATION

(3) BUSINESS OBJECTS

IDENTIFICATION

Provides a flow of activities(5) BUSINESS

OBJECTS(4) COMMUNICATIVE

EVENT BLE

M

E

The OLIVANOVA approach: Conceptual modelling

OBJECTS SPECIFICATION

EVENT SPECIFICATION

OLIVANOVAPR

OB

SPA

CN E

▪ Object Model

▪ Dynamic Model

F ti l M d l

O OSO

LUTI

ON

SPA

CE

CONCEPTUAL MODELLING

▪ Functional Model

▪ Presentation Model

Model compilationMODEL COMPILATION

Model compilation

6

FINAL APPLICATION

Page 7: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Good practices in IS requirements Engineering: Offer external view of the IS.

A communicational approach to IS analysis.

Offer external view of the IS. 

pp y

interactionscommunicative

i interactionscommunicativeinteractionsrequirements

specificationinteractions

Page 8: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Good practices in IS requirements Engineering: Offer external view of the IS.

A communicational approach to IS analysis.

Differentiate problem space vs. solution space.

Problem spacemessage

Solution spacepin person web form

Page 9: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Good practices in IS requirements Engineering: Offer external view of the IS.

A communicational approach to IS analysis.

Differentiate problem space vs. solution space.

(Stepwise) refinement of complex systems.

Page 10: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Wise (stepwise) refinement of complex systems

L1. System /L1. System /

Subsystems

L2L2

System /subsystemsSystem /subsystems

space

space

C i iL2.ProcessL2.Process

L3L3Prob

lem s

Prob

lem s

Logical eventsCommunicative events(                          )

L3.Communicative interaction

L3.Communicative interaction

PP

Physical eventsL4. Usage  environment

L4. Usage  environment

space

space

Physical events

L5. Operational environment

L5. Operational environmentSo

lutio

n Solutio

Page 11: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

An observer wants to interpret a domain.(e.g. an analyst wants to understand and model organisational processes)

A set of concepts is the result of the interpreting action. Concepts are structured by composition relations (part‐of).

Page 12: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Conception of Communication Analysis Stems from research on IS fundamental concepts

▪ Extension of the FRISCO report.

Evolves in collaboration with industry▪ Valencia Port Authority

▪ Infrastructure and Transport Ministry of the Valencian Regional Government

▪ Anecoop S. Coop.  (2nd grade cooperative that aggregates +100 agricultural cooperatives)cooperatives)

Page 13: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Requirements structure and method activitiesl

(1)  STRATEGIC DESCRIPTION OF

Requirements levels Communication Analysis activitiesDynamic perception              Static perception

L1. System/L1. System/ DESCRIPTION OF 

ORGANISATION

COMMUNICATIVE (2)COMMUNICATIVE  (3) BUSINESS 

PROBLEMDECOMPOSITION

L2L2

System/subsystemsSystem/subsystems

space

space

( )EVENT 

DIAGRAMATION

( )OBJECTS 

IDENTIFICATIONCOMMUNICATIVE EVENT DIAGRAM

BUSINESS OBJECT GLOSSARY

L2.ProcessL2.Process

L3L3Prob

lem s

Prob

lem s

(5) BUSINESS OBJECTS 

SPECIFICATION

(4)COMMUNICATIVE EVENT 

SPECIFICATIONCOMMUNICATIVE EVENT TEMPLATES

DETAILED B.O.G.

L3.Communicative interaction

L3.Communicative interaction

PP

(6) USAGE REQ. CAPTURE AND 

INTERFACE DESIGN

(7) OBJECT CLASSES 

MODELLING

S

INTERFACE I S MEMORY

L4. Usage  environment

L4. Usage  environment

space

space

IMPLEMENTATION

COMPONENT DESIGN  LOGICAL DESIGN

INTERFACE DESIGN MODEL

I.S. MEMORY MODEL

L5. Operational environment

L5. Operational environmentSo

lutio

n Solutio

IMPLEMENTATION

LEGEND                         Activity                    Influence                     Outcome                     ProductionLEGEND                         Activity                    Influence                     Outcome                     Production

Page 14: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Activity 1. Strategic description of organisation.

Describe the Organisational System from a strategic p.o.v

Decompose the problemL1. System/L1. System/ Decompose the problem

L2L2

System/subsystemsSystem/subsystems

space

space • Customer Service Departments (salesmen)

• Production Department (clerks)L2.ProcessL2.Process

L3L3Prob

lem s

Prob

lem s oduct o epa t e t (c e s)

• Accounting Department (accountant)• Management Board 

Strategic business indicatorsL3.Communicative interaction

L3.Communicative interaction

PP

• Increase in the number of photographersL4. Usage  environment

L4. Usage  environment

space

space

• Increase in the number of photographers• Increase in the number of exclusives• Cash flow

tL5. Operational environment

L5. Operational environmentSo

lutio

n Solutio

n  • etc.

Page 15: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Requirements structure and method activitiesl

(1)  STRATEGIC DESCRIPTION OF

Requirements levels Communication Analysis activitiesDynamic perception              Static perception

L1. System/L1. System/ DESCRIPTION OF 

ORGANISATION

COMMUNICATIVE (2)COMMUNICATIVE  (3) BUSINESS 

PROBLEMDECOMPOSITION

L2L2

System/subsystemsSystem/subsystems

space

space

( )EVENT 

DIAGRAMATION

( )OBJECTS 

IDENTIFICATIONCOMMUNICATIVE EVENT DIAGRAM

BUSINESS OBJECT GLOSSARY

L2.ProcessL2.Process

L3L3Prob

lem s

Prob

lem s

(5) BUSINESS OBJECTS 

SPECIFICATION

(4)COMMUNICATIVE EVENT 

SPECIFICATIONCOMMUNICATIVE EVENT TEMPLATES

DETAILED B.O.G.

L3.Communicative interaction

L3.Communicative interaction

PP

(6) USAGE REQ. CAPTURE AND 

INTERFACE DESIGN

(7) OBJECT CLASSES 

MODELLING

S

INTERFACE I S MEMORY

L4. Usage  environment

L4. Usage  environment

space

space

IMPLEMENTATION

COMPONENT DESIGN  LOGICAL DESIGN

INTERFACE DESIGN MODEL

I.S. MEMORY MODEL

L5. Operational environment

L5. Operational environmentSo

lutio

n Solutio

IMPLEMENTATION

LEGEND                         Activity                    Influence                     Outcome                     ProductionLEGEND                         Activity                    Influence                     Outcome                     Production

Page 16: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Activity 2. Communicative event diagramation

Communicative interaction. Interaction between actors in order to exchange information.L1. 

System/L1. System/ ▪ Ingoing communicative interaction primarily feed the IS memory 

with new meaningful information.

▪ Outgoing communicative interaction primarily consult IS memoryL2L2

System/subsystemsSystem/subsystems

space

space

▪ Outgoing communicative interaction primarily consult IS memory.L2.ProcessL2.Process

L3L3Prob

lem s

Prob

lem s

Communicative event. An ingoing communicative interaction that fulfils the following unity criteria.L3.

Communicative interaction

L3.Communicative interaction

PP interaction that fulfils the following unity criteria.

L4. Usage  environment

L4. Usage  environment

space

space

L5. Operational environment

L5. Operational environmentSo

lutio

n Solutio

[ISO 1982] Extended from [FRISCO 1998]

Page 17: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Activity 2. Communicative event diagramation

L1. System/L1. System/

Communicative event. An ingoing communicative interaction that fulfils the following unity criteria.

L2L2

System/subsystemsSystem/subsystems

space

space UNITY CRITERIA FOR BUSINESS PROCESS MODELLING

TRIGGER Trigger responsibility is externalL2.ProcessL2.Process

L3L3Prob

lem s

Prob

lem s TRIGGER

UNITYTrigger responsibility is external. The event occurs as a response to an external interaction.S t t bli h t t ith th IS dL3.

Communicative interaction

L3.Communicative interaction

PP Some actor establishes contact with the IS and triggers organisational reaction. 

COMMUNICATION Each and every event involves providing new L4. Usage  environment

L4. Usage  environment

space

space

UNITYy p g

meaningful information. Input messages are representations of something that happens in the IS environment

L5. Operational environment

L5. Operational environmentSo

lutio

n Solutio

n  that happens in the IS environment.

REACTIONUNITY

The event triggers IS reaction, which is a composition of synchronous activities.Events are asynchronous among each other.

Page 18: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Illustrative example

PhotographyA IPhotographer

Publishing houseAgency, IncPhotographer

1

2

1

2

Page 19: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Communicative event diagram of Photography Agency, Inc.

L1. System/L1. System/

L2L2

System/subsystemsSystem/subsystems

space

space

L2.ProcessL2.Process

L3L3Prob

lem s

Prob

lem s

L3.Communicative interaction

L3.Communicative interaction

PP

L4. Usage  environment

L4. Usage  environment

space

space

L5. Operational environment

L5. Operational environmentSo

lutio

n Solutio

Page 20: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Activity 3. Business objects identification. Business Object Glossary. Structure that specifies business objects. 

Business objects are conceptions of entities of the Subject SystemL1. System/L1. System/ ▪ Business objects are conceptions of entities of the Subject System 

in which the Organisational System is interested.

▪ Complex aggregates of properties (not o‐o fragmentation)L2L2

System/subsystemsSystem/subsystems

space

space

L2.ProcessL2.Process

L3L3Prob

lem s

Prob

lem s

• Report record• Photographer record R t d li t

▪ Business forms are catalogued.

L3.Communicative interaction

L3.Communicative interaction

PP • Report delivery note

Business indicators at the process level.L4. Usage  environment

L4. Usage  environment

space

space

L5. Operational environment

L5. Operational environmentSo

lutio

n Solutio

•Production department: productivity and profitability indicators• Delivery performance to customer• Photographer productivity• Photographer productivity

Page 21: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Requirements structure and method activitiesl

(1)  STRATEGIC DESCRIPTION OF

Requirements levels Communication Analysis activitiesDynamic perception              Static perception

L1. System/L1. System/ DESCRIPTION OF 

ORGANISATION

COMMUNICATIVE (2)COMMUNICATIVE  (3) BUSINESS 

PROBLEMDECOMPOSITION

L2L2

System/subsystemsSystem/subsystems

space

space

( )EVENT 

DIAGRAMATION

( )OBJECTS 

IDENTIFICATIONCOMMUNICATIVE EVENT DIAGRAM

BUSINESS OBJECT GLOSSARY

L2.ProcessL2.Process

L3L3Prob

lem s

Prob

lem s

(5) BUSINESS OBJECTS 

SPECIFICATION

(4)COMMUNICATIVE EVENT 

SPECIFICATIONCOMMUNICATIVE EVENT TEMPLATES

DETAILED B.O.G.

L3.Communicative interaction

L3.Communicative interaction

PP

(6) USAGE REQ. CAPTURE AND 

INTERFACE DESIGN

(7) OBJECT CLASSES 

MODELLING

S

INTERFACE I S MEMORY

L4. Usage  environment

L4. Usage  environment

space

space

IMPLEMENTATION

COMPONENT DESIGN  LOGICAL DESIGN

INTERFACE DESIGN MODEL

I.S. MEMORY MODEL

L5. Operational environment

L5. Operational environmentSo

lutio

n Solutio

IMPLEMENTATION

LEGEND                         Activity                    Influence                     Outcome                     ProductionLEGEND                         Activity                    Influence                     Outcome                     Production

Page 22: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Activity 4. Communicative event specification. HeaderContact 

requirementsqCommunicational 

content requirementsReaction 

requirementsL1. System/L1. System/

Template structure

HeaderL2L2

System/subsystemsSystem/subsystems

space

space

Contact requirementsL2.ProcessL2.Process

L3L3Prob

lem s

Prob

lem s

Communicational content 

L3.Communicative interaction

L3.Communicative interaction

PP

requirementsL4. Usage  environment

L4. Usage  environment

space

space

Reaction requirementsL5. Operational environment

L5. Operational environmentSo

lutio

n Solutio

Page 23: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Activity 4. Communicative event specification. HeaderContact 

requirementsqCommunicational 

content requirementsReaction 

requirementsL1. System/L1. System/

L2L2

System/subsystemsSystem/subsystems

space

space

L2.ProcessL2.Process

L3L3Prob

lem s

Prob

lem s

S

CONTACTRECEIVERINFORMATION 

SYSTEML3.Communicative interaction

L3.Communicative interaction

PP SENDER MESSAGE

RECEIVERREACTION

L4. Usage  environment

L4. Usage  environment

space

space

RECEIVER

L5. Operational environment

L5. Operational environmentSo

lutio

n Solutio

Page 24: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Activity 4. Communicative event specification. HeaderContact 

requirementsqCommunicational 

content requirementsReaction 

requirementsL1. System/L1. System/

L2L2

System/subsystemsSystem/subsystems

space

space

PHO 3. Management board resolves applicationsL2.ProcessL2.Process

L3L3Prob

lem s

Prob

lem s g ppPHO 3. Management board resolves applications

Goals: The IS aims to obtain a response to outstanding photographer applications.Description: Monday mornings the management board holds a meeting AL3.

Communicative interaction

L3.Communicative interaction

PP Description: Monday mornings, the management board holds a meeting. A member of each department is present. A Production Department clerk has prepared a list of outstanding (pending) photographer applications and a résumé of each applicant. Management board proceeds to evaluate and

L4. Usage  environment

L4. Usage  environment

space

space

résumé of each applicant. Management board proceeds to evaluate and resolve each application. Depending on the documentation, a photographer is either accepted or rejected. Accepted photographers are classified into a quality level (this level will determine their rates). After the meeting, the list of 

L5. Operational environment

L5. Operational environmentSo

lutio

n Solutio

q y ( ) g,resolved applications is returned to Production Department.Explanatory diagram: 

PHOTOGRAPHY AGENCYPHOTOGRAPHY AGENCYPHOTOGRAPHER

TECHNICAL DEPARTMENT CLERK MANAGEMENT BOARD

PREPARE LIST OF OUTSTANDING

Page 25: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Goals: The IS aims to obtain a response to outstanding photographer applications.Description: Monday mornings, the management board holds a meeting. A member of each department is present A Production Department clerk has

Activity 4. Communicative event specification.

member of each department is present. A Production Department clerk has prepared a list of outstanding (pending) photographer applications and a résumé of each applicant. Management board proceeds to evaluate and resolve each application. Depending on the documentation, a photographer is

HeaderContact 

requirements

L1. System/L1. System/

resolve each application. Depending on the documentation, a photographer is either accepted or rejected. Accepted photographers are classified into a quality level (this level will determine their rates). After the meeting, the list of resolved applications is returned to Production Department.

qCommunicational 

content requirementsReaction 

requirements

L2L2

System/subsystemsSystem/subsystems

space

space

eso ed app cat o s s etu ed to oduct o epa t e tExplanatory diagram: 

PHOTOGRAPHY AGENCYPHOTOGRAPHER

TECHNICAL DEPARTMENT CLERK MANAGEMENT BOARDL2.ProcessL2.Process

L3L3Prob

lem s

Prob

lem s

PREPARE LIST OF OUTSTANDING APPLICATIONS

OUTSTANDINGL3.Communicative interaction

L3.Communicative interaction

PP OUTSTANDING APLICATIONS

EVALUATE AND RESOLVE

APPLICATIONS

CREATE PHOTOGRAPHER

RECORD

L4. Usage  environment

L4. Usage  environment

space

space

SEND LETTER INFORMING OF RESOLUTION

RECEIVE LETTER

RESOLVED APPLICATIONS

L5. Operational environment

L5. Operational environmentSo

lutio

n Solutio

n  RESOLUTION ACCEPTANCE /

REJECTIONLETTER

LEGENDLEGEND

INFORMATIONFLOW

PHYSICALEVENT

ACTORPOOL

INFORMATION OBJECTS

C i

Page 26: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

OUTSTANDING APPLICATIONS

OUTSTANDING APLICATIONS

Activity 4. Communicative event specification.EVALUATE AND

RESOLVE APPLICATIONS

CREATE PHOTOGRAPHER

RECORD

RESOLVED APPLICATIONS

HeaderContact 

requirements

L1. System/L1. System/

SEND LETTER INFORMING OF RESOLUTION

ACCEPTANCE /REJECTION

RECEIVE LETTER

APPLICATIONS qCommunicational 

content requirementsReaction 

requirements

L2L2

System/subsystemsSystem/subsystems

space

space

LETTER

LEGEND

L2.ProcessL2.Process

L3L3Prob

lem s

Prob

lem s INFORMATION

FLOWPHYSICAL

EVENTACTORPOOL

INFORMATION OBJECTS

Contact  requirementsContact  requirementsP i t M t b d C i ti h l IL3.

Communicative interaction

L3.Communicative interaction

PP Primary actor: Management board. Communication channel: In person.Temporal restrictions: This communicative event occurs Monday mornings. Frequency: Of the 10‐20 monthly applications, around 5 are accepted.

L4. Usage  environment

L4. Usage  environment

space

space Communicational content  requirementsCommunicational content  requirements

Support actor: Production Department clerkCommunication Structure: 

L5. Operational environment

L5. Operational environmentSo

lutio

n Solutio

RESOLUTIONS ={ Application()=< ID card # + i text

PHOTOGRAPHER(ID card #)=< 19 345 631 Q

FIELD OP DOMAIN BUSINESS OBJ. EXAMPLE VALUE LEGEND

CSs Primitives< ID card # +

Name +Address +Postcode +City +

idddd

texttexttexttexttext

< 19.345.631-QSergio Pastor GonzálezCamino de Vera s/n46022Valencia

<+> aggregation{ } iteration[ | ] alternative( ) selection

Page 27: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Activity 4. Communicative event specification. HeaderContact 

requirementsqCommunicational 

content requirementsReaction 

requirements

Communication Structure of event PHO 3

RESOLUTIONS ={ Application()=

PHOTOGRAPHER(ID card #)=

FIELD OP DOMAIN BUSINESS OBJ. EXAMPLE VALUE LEGEND

CSs Primitives{ Application()=< ID card # +

Name +Address +

idd

texttexttext

(ID card #)=< 19.345.631-Q

Sergio Pastor GonzálezCamino de Vera s/n

CSs Primitives

<+> aggregation{ } iteration

Postcode +City +Phone # +Equipment +

dddd

texttexttexttext

46022Valencia9638700000 ext 83534Canon A1 w telemacro

[ | ] alternative( ) selection

InformationEquipment +Experience +Portfolio +Resol. date +

dddi

texttextdocumentdate resol date +

Canon A1 w. telemacroWorked for Mangum PhN/A (sample of work)November 21, 2008

Information aquisition operations

Decision +[ Accepted =

< Level > ]>

i

i

[acc|rej]Decision=accRate<level>

decision +

level>

acc

1 (highest quality level)

d derivationi input

>}

>

Page 28: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Contact requirements

Activity 4. Communicative event specification.

qContact  requirementsPrimary actor: Management board. Communication channel: In person.Temporal restrictions: This communicative event occurs Monday mornings. Frequency: Of the 10 20 monthly applications around 5 are accepted

HeaderContact 

requirementsFrequency: Of the 10‐20 monthly applications, around 5 are accepted.

Communicational content  requirementsCommunicational content  requirementsSupport actor: Production Department clerkL1. 

System/L1. System/

qCommunicational 

content requirementsReaction 

requirements

Communication Structure: 

RESOLUTIONS = PHOTOGRAPHERFIELD OP DOMAIN BUSINESS OBJ. EXAMPLE VALUE LEGEND

L2L2

System/subsystemsSystem/subsystems

space

space

{ Application()=< ID card # +

Name +Address +Postcode +

iddd

texttexttexttext

(ID card #)=< 19.345.631-Q

Sergio Pastor GonzálezCamino de Vera s/n46022

CSs Primitives

<+> aggregation{ } iteration[ | ] alternative

L2.ProcessL2.Process

L3L3Prob

lem s

Prob

lem s

City +Phone # +Equipment +Experience +Portfolio +

ddddd

texttexttexttextdocument

Valencia9638700000 ext 83534Canon A1 w. telemacroWorked for Mangum PhN/A (sample of work)

[ | ] alternative( ) selection

Information aquisition operations

L3.Communicative interaction

L3.Communicative interaction

PP

Portfolio +Resol. date +Decision +[ Accepted =< Level > ]

>

dii

i

documentdate[acc|rej]Decision=accRate<level>

resol date +decision +

level>

N/A (sample of work)November 21, 2008acc

1 (highest quality level)

operations

d derivationi input

L4. Usage  environment

L4. Usage  environment

space

space

>>

>

Reaction requirements

L5. Operational environment

L5. Operational environmentSo

lutio

n Solutio

qqBusiness object: If the application is accepted, the photographer becomes part of the agency The

Page 29: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Requirements structure and method activitiesl

(1)  STRATEGIC DESCRIPTION OF

L1. System/L1. System/

Requirements levels Communication Analysis activitiesDynamic perception              Static perception

DESCRIPTION OF ORGANISATION

COMMUNICATIVE (2)COMMUNICATIVE  (3) BUSINESS L2L2

System/subsystemsSystem/subsystems

space

space PROBLEM

DECOMPOSITION

( )EVENT 

DIAGRAMATION

( )OBJECTS 

IDENTIFICATION

L2.ProcessL2.Process

L3L3Prob

lem s

Prob

lem s

COMMUNICATIVE EVENT DIAGRAM

BUSINESS OBJECT GLOSSARY

(5) BUSINESS OBJECTS 

SPECIFICATION

(4)COMMUNICATIVE EVENT 

SPECIFICATION

L3.Communicative interaction

L3.Communicative interaction

PP

COMMUNICATIVE EVENT TEMPLATES

DETAILED B.O.G.

(6) USAGE REQ. CAPTURE AND 

INTERFACE DESIGN

(7) OBJECT CLASSES 

MODELLING

L4. Usage  environment

L4. Usage  environment

space

space

S

INTERFACE I S MEMORY

IMPLEMENTATION

COMPONENT DESIGN  LOGICAL DESIGNL5. Operational environment

L5. Operational environmentSo

lutio

n Solutio

n  INTERFACE DESIGN MODEL

I.S. MEMORY MODEL

IMPLEMENTATION

LEGEND                         Activity                    Influence                     Outcome                     ProductionLEGEND                         Activity                    Influence                     Outcome                     Production

Page 30: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Communication Analysis offers a systemic way to structure requirements

Specific techniques for IS analysis Communicative Event Diagram. 

▪ Communicational perspective on business process modelling

▪ Unity criteria to deal with encapsulation (granularity of processes)

Communication Structures▪ Specifies messages related to communicative events

▪ Derivation of IS memory from communication structures

Future work Future work Propose precise guidelines to derive IS memory

D i i f f i i Design user interface from communication structures

Report industrial case studies in the use of Communication Analysis

Take advantage of MDD and code generation frameworks

Extremely long etcetera under the proposed “full MDD” perspective…

Page 31: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Model Driven Development permits Reason about the system prior to its construction Reason about the system prior to its construction

▪ You can simulate the behavior to foresee the consequences of a system

Derivate the final system in an automatic wayDerivate the final system in an automatic way▪ Obtaining a consistent result

Page 32: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

We have been building Traditional Information Systems Web‐based Information Systems

b d SOA‐based systems Pervasive Systems

… but, what is next?

Page 33: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Conceptual models are needed for a systematic development of biological systems

Page 34: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

00010011 00000111 00000011 00001000 Physical Level

ADD $7 $3 $8

Semantics: Add the values from the processor

Instruction Level

Semantics: Add the values from the processor registers ‘3’ and store the result in the register ‘8’

Representation Level

3 + 4 = 7

Page 35: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

AUG GAA CAC GAC GAG UAA Physical Level

START STOPGlu GluHis Asp

Semantics: Process a protein with the four Instruction LevelSemantics: Process a protein with the four selected aminoacids

R t tiYou haveHowever Representation Level

You have blue eyesHowever, ¿Why?

Page 36: From Requirements toFrom Requirements to Code: …€¦ · From Requirements toFrom Requirements to Code: A Full Model-Driven Dl tP tiDevelopment Perspective Óscar Pastor LópezÓscar

Thanks for your attention!Thanks for your attention!

Centro de Investigación en Métodos de Producción de Software (ProS)Universidad Politécnica de ValenciaC i d V / 46071 V l i E ñ (S i )Camino de Vera s/n, 46071 Valencia, España (Spain)[email protected]: +34 96 387 7000, Fax: +34 96 3877359