Metamodeling and method engineering Systems development methods and ME - PowerPoint PPT Presentation

1 / 21
About This Presentation
Title:

Metamodeling and method engineering Systems development methods and ME

Description:

Wynekoop, Russo and Clomparens (1995) studied method use through survey study (n ... Wijers and van Dort 1990, Smolander et. al. 1990, Aaen et al. 1992, Aalto 1993) ... – PowerPoint PPT presentation

Number of Views:46
Avg rating:3.0/5.0
Slides: 22
Provided by: juhapekka
Category:

less

Transcript and Presenter's Notes

Title: Metamodeling and method engineering Systems development methods and ME


1
Metamodeling and method engineering Systems
development methods and ME
  • Juha-Pekka Tolvanen
  • 1.3.2004
  • Lecture 3 Systems Development Methods and Method
    Engineering
  • Contents
  • Popularity of local methods
  • Approaches for method development
  • Definition of ME
  • Dimensions of ME

2
Experiences of method use
  • Wynekoop, Russo and Clomparens (1995) studied
    method use through survey study (ngt 100
    organizations)

3
Experiences of method use
  • Organisations develop their own local dialects
    and
  • Hardly any uses methods as described in
    text-books
  • Selected parts used only
  • E.g. in OO-development design views typically
    cover only class and use cases
  • New usage conventions applied
  • Some methods provide even support for this, e.g.
    UML profiles
  • Different method use styles among developers
  • New modelling languages applied
  • E.g. for UI design
  • Current CASE tools offer limited support for
    flexible method use

4
Own methods versus fixed methods
5
Popularity of local methods
  • Popularity of own (local/in-house) methods
  • 65 of the organizations which use methods
    develops them in-house (Russo et al. 1995
    Fitzgerald 1995)
  • 62,5 (Flynn and Goleniewska 1993)
  • 42 (Russo et al. 1996)
  • 36 (CASE Research Corporation, cited in Yourdon
    1992)
  • 38 (Hardy et al. 1995) of organizations have
    developed own methods
  • Methods are adapted for the situation
  • 88 of the organizations adapt the methods
    in-house (Hardy et al. 1995, Russo et al. 1995)
  • Recently OMG have started to seek localization
    support via profiles and metamodels

6
Approaches for method development
  • Organizations have at least following strategies
    for local method development and method
    selection
  • Note that also vendors do method engineering
    while implementing their tools

7
Text-book approach
  • Dominating approach is based on trial and error
    while introducing 3rd-party methods
  • Organizations choose their methods, either
    consciously by selecting one of the well known
    "text-book" methods, or indirectly by with a CASE
    tool
  • A new methodical approach is then introduced in a
    "one-shot" manner
  • Ideology Situations are enough similar to be
    solved by applying universal methods
  • Flexibility is recognized in some methods (cf.
    Booch 1994, Coleman et al. 1994, UML), but they
    offer limited mechanism to modify them.

8
Contingency approach
  • There is no single universally acceptable method
    which is suitable in all circumstances.
  • Situations in practice can be classified and
    methodologies are more situation bound than what
    current "text-books" expect.
  • ISD methods (or their parts) should be selected
    from available method base, leading to choices
    between methodologies or large components of
    them.
  • The focus is on selecting appropriate
    methodologies.

9
Contingency approach
  • Contingency frameworks establish connections with
    situation dependent methodical needs and methods
    that are already available as "packages".
  • Prominent characteristics that control outcomes
    uses of methods and can predict their
    suitability.
  • These characteristics can be
  • technical, such as a type of an IS or an applied
    programming language,
  • organizational, such as a development culture and
    maturity, or
  • human, such as the level of experience and
    learning.
  • problems how to learn methodologies, how
    complete methodologies are?

10
Method engineering
  • Idea of ME ISD methods should be assembled to
    meet a particular system development needs.
  • Method engineering aims to construct or
    "engineer" an ISD method according stakeholders
    requirements.
  • The idea behind ME is same as behind building any
    system ME aims to develop and maintain systems
    for ISD

11
Method engineering
12
Method engineering
  • ME assumes that system development can not be
    carried out solely according to methods taken as
    given (i.e. without modification).
  • fundamental assumptions are uniqueness and
    difference of ISD situations
  • can not be solved solely by using general and
    universally valid methods.
  • A study by Russo et al. (1995) shows that 2/3 of
    the companies have develop their methods in-house.

13
Method engineering
  • Research on method use (cf. Wijers and van Dort
    1990, Smolander et. al. 1990, Aaen et al. 1992,
    Aalto 1993) reveals that situations cause changes
    to methods and organizations develop their own
    version of methods.
  • The second dimension in our taxonomy, type of
    development situation, distinguish two types of
    ME
  • organization based ME, and
  • project based ME.

14
Organization based ME
  • Is based on an assumption that development
    situations are alike in an organization
  • a single methodology can be developed to the
    requirements and it is believed to be appropriate
    for all projects.
  • Examples of these approaches include
  • Russo et al study half of the respondents
    believed that organization should use single
    method for all projects.
  • Pandata has developed over time various versions
    of SDM method and supporting tool (SDW) to be
    used inside the company (cf. Turner et al. 1988).
  • TietoEnator has own object-method loosely related
    to OO-methods

15
Project based ME
  • Project based ME assumes that methods should be
    "engineered" on a project-by-project basis
  • assumes development situations differ between
    various projects of an organization
  • there may be an in-house method (kernel) in the
    organization, but in the project based ME there
    is also possibility to adapt it, or even to
    develop project variants.
  • Russo et al study, 89 of respondents claimed
    that methods should be adapted on project level
  • Examples
  • Nokia Telecommunication has internal method
    called OMT which has been developed to be used
    for designing network management systems for
    mobile phones (cf. Aalto Jaaksi 1994).
  • Nokia Mobile Phones has an internal method for
    developing phone software (Kelly Tolvanen 2000)

16
Other examples of ME
  • ORGA, SIM toolkit JavaCard, 2002
  • F.A.S.T GmbH, Bayerische Landesbank, sdm AG,
    Arcus architectural metamodel, 2002
  • Honeywell, embedded software architectures, 2001
  • NASA ASE group, Amphion, 2001
  • Nokia, Mobile Phone Software, 1998
  • Pecunet, B2B E-Business insurance, 2001
  • LexiFi, mlFi, financial contracts, 2001
  • DuPont, Activity Modeling Tool, 2000
  • Lucent, FAST, 1998
  • NASA, Architecture Definition Language, 1998
  • Various languages, Montages, 1998
  • USAF, A Software Engineering Experiment in
    Software Component Generation, 1996
  • NASA JPL, embedded measurement systems, 1993

17
Universal versus application-specific methods
  • Have methods solved the problems in ISD?
  • Not as expected/hoped methods are surprisingly
    little used
  • Organizations tend to adapt/build own methods
    instead of using 3rd party methods
  • Can ISD be supported by a single method?
  • Contingency approach No!
  • Experiences from standardization efforts No big
    success!
  • Tried already in 70s with IDEF (DoD), 80s with
    SSADM (UK) and Merise (France), and in 90s with
    Euromethod
  • Now tried again with UML
  • Why not?
  • Software development tend to be
    situation-specific
  • technology evolves, systems evolves, huge
    differences in systems, organizations, cultures,
    tools in use etc.

18
Definition of ME
  • Key problem of ME
  • "How should one construct an ISD method to meet a
    particular system development need?"
  • Objective
  • "Organisation or project could have "best"
    fitting methods and related tools"

19
Definition of ME
  • Mechanisms
  • "A common model for representing, critiquing, and
    constructing methods"
  • conceptual structures and representational forms
  • procedural steps and sequences
  • role assignments
  • Analogy to software engineering
  • ME seeks to develop and improve ISD methods by
    applying systematic and rigorous principles. It
    builds metasystems or design systems for software
    engineers
  • Like software engineering is supported by ISD
    methods, similarly ME is driven by a
    (meta)methods.

20
Definition of ME
  • Definitions of method engineering
  • "A method for designing and implementing IS
    development methods" KumarWelke, 1988, 1992.
  • "Principles, tools and methods for metamodeling
    and method management" Tolvanen Lyytinen, 1993.
  • Schools of method engineering
  • Best expressive power?
  • Targeting full code generation
  • Best tool support?
  • (CASE focused, repository structure, query
    support)
  • Related to existing standards and tools?
  • Easy to use and learn, simple?
  • Universal or specific to certain method types

21
Dimensions of method engineering
  • Kumar and Welke (1992) suggest four domains that
    have to addressed in ME
  • modular method construction,
  • Part 2 in the course
  • stakeholder value based method composition,
  • need for computer aided support, and
  • Part 3 in the course
  • organizational support for ME.
Write a Comment
User Comments (0)
About PowerShow.com