language and metamodels for semat - universitetet i · pdf file05.03.2012 1 language and...

15
05.03.2012 1 Language and Metamodels for SEMAT Arne J. Berre Shihong Huang Brian Elvesæter

Upload: phamtuyen

Post on 12-Mar-2018

234 views

Category:

Documents


4 download

TRANSCRIPT

05.03.2012

1

Language and Metamodels for SEMAT

Arne J. Berre Shihong Huang Brian Elvesæter

05.03.2012

2

Layer 1 - Core

Layer 2 - PracticeAndAlpha

05.03.2012

3

Layer 3 Activity Space and Activity elements

Layer 3 Competency and Skill elements

05.03.2012

4

Layer 3 Pattern elements

Layer 4 MethodAndLibrary

05.03.2012

5

SEMAT Diagrams – Graphical Notation

05.03.2012

6

SEMAT – Textual Notation

05.03.2012

7

Introduction to ISO/IEC 24744

Cesar Gonzalez-Perez Brian Henderson-Sellers

Comparison at a glance

SPEM ISO 24744

Process aspects only

Method domain only

Obscure and informal extension mechanisms

Unable to express non-trivial scenarios

Highly dependent on UML

Process, product and quality aspects

Method and endeavour domains

Easy and intuitive extension mechanisms

Copes with complex scenarios

Self-contained

05.03.2012

8

Comparison, graphically

24744

scope

abstr

action

SPEM

UML

History of 24744

ISO/IEC 24744 is an international standard

Based on experience: ◦ Fujitsu, Microsoft, SQI, JPL, plus other 20

◦ Input from 25+ countries

◦ Australian AS 4651 (2004)

◦ Field consulting from UTS, Neco

◦ Top-notch academic research

◦ Errors of previous attempts

Led from academia

2003-2007

Submission to OMG, February 20th, 2012

05.03.2012

9

Moving on to metamodelling

Task Kind

Name Purpose MinCapLev

“Code Writing” “To write code…” 1

Task

Start End Duration

Code Writing

Language

12-Sep-07 15-Sep-07 3 “C#”

partitioned type

powertype

clabject

metamodel

method

endeavour

Putting things in context

Task Kind

Name Purpose MinCapLev

“Code Writing” “To write code…” 1

Task

Start End Duration

Code Writing

Language

12-Sep-07 15-Sep-07 3 “C#”

05.03.2012

10

Metamodel areas

Resources Templates

Endeavour elements

Methodology elements

MethodologyElement

+Purpose

+MinCapabilityLevel

WorkUnitKind

+Description

WorkProductKind

+Definition

ModelUnitKind

+Name

Template Resource

+Name

Language

+Name

Notation

+Expression

Constraint

+Description

+MinCapabilityLevel

Outcome

EndeavourElement

+StartTime

+EndTime

+Duration

WorkUnit

+CreationTime

+LastChangeTime

+Status

WorkProduct

ModelUnit

+Description

GuidelineProducerKind

+Name

ProducerStage

StageKind

Metamodel overview

05.03.2012

11

Summary

24744: ◦ Captures what developers do (endeavour) by enhancing expressiveness

◦ Integrate endeavour and method domains (powertype patterns)

◦ Integrate process and product

◦ Address quality and capability issues (MinCapabilityLevel attribute)

◦ Support for affordable extensibility (regular OO mechanisms)

SEMDM Diagrams – Graphical Notation

Lifecycle diagrams, which represent the overall structure of a method (or part of it).

Enactment diagrams, which represent a specific endeavour (or part of it) and its relationship to the corresponding method.

Dependency diagrams, which represent the abstract support/dependency relationships among the major components (i.e. producer kinds, work unit kinds and work product kinds) of a methodology.

Process diagrams, which describe the details of the process kinds used in a method.

Action diagrams, which show the detailed usage interactions between task kinds and work product kinds.

05.03.2012

12

StageWithDurationKind TimeCycleKind PhaseKind

BuildKind InstantaneousStageKind MilestoneKind

ProcessKind ProcessKind TechniqueKind

OutCome WorkProductKind DocumentKind

ModelKind SoftwareItemKind HardwareItemKind

CompositeWorkProductKind ProducerKind TeamKind

05.03.2012

13

RoleKind ToolKind Person

PreCondition PostCondition Conglomerate

Guideline

05.03.2012

14

05.03.2012

15

A dependency diagram based on a refinement

An action diagram showing how requirements-related task kinds interact

with requirements- related work products.