SlideShare a Scribd company logo
1 of 129
Download to read offline
Chapter 13




Comparison of
Methodologies



                . – p.41/192
Picking a Methodology
You’ve got a team of 10-12 developers eagerly awaiting
your instructions.
Which methodology do you pick?
Usually one of the following things is done
   Choice dictated by the methodologies used
   previously by the developer’s boss
   Using a new “hyped” methodology
   “Heard from a friend of my brother’s wife that it’s
   good.”
   There was this lecturer at the College. . .
Comparing methodologies is like comparing apples to
oranges

                                                         . – p.42/192
Comparing Apples to Oranges
Has been done before (using a Nicolet 740 FTIR
spectrometer)
In Annals of improbable research (Scott A. Sandford)




Result: the two are very similar


                                                       . – p.43/192
Comparing Apples to Oranges(2)
Other people might have different opinions
Biologist points to taxonomy, describing similarities and
differences
Nutrition expert has still another opinion...
Observation: depending on who you ask, you get
different answers




                                                        . – p.44/192
Comparing Methodologies
Same with methodologies:
  Computer scientist: tries to develop general
  (theoretical) framework for comparing methodologies
  Developer: tries to judge situation from prior
  experiences and case studies
  Senior management: tries to find out, if methodology
  will give certain quality assurances
  Vendor: tries to sell own product (so you have to
  read between the lines)




                                                    . – p.45/192
Comparing Methodologies(2)
So, how can we compare methodologies?
1. Describe “ideal” methodology, then compare to other
   methodologies
      Who determines what’s ideal?
      If we find ideal methodology, why use other
      methodologies?
2. Construct general comparison tool by selecting
   appropriate features
3. Develop a contingency framework to map
   appropriate methodology to a particular environment
4. Develop a common frame of reference for viewing
   different methodologies (provides a
   “meta-language”)

                                                     . – p.46/192
Comparing Methodologies(2)
We are going to look at:
   Theoretical model for comparison (Song and
   Osterweil) (2.)
   Checklists (3.)/Frameworks (4.)
   Capability Maturity Model (CMM levels)
We are not going to look at:
   Brochures of vendors




                                                . – p.47/192
Theoretical Model
Song and Osterweil criticize that previous comparison
methods have been very unscientific
Analysis and comparisons are activities common to
many scientific fields
E.g. comparing animals in biology in a systematic and
objective way:
  Comparison of organs and inter-organ relations
  Usually organs (e.g. eyes) are classified by their
  functions (e.g. vision)
  Using this classification, organs having the same or
  similar functions can be identified and compared
  One compares structures (e.g. shape) and relations
  to other organs (e.g. brain)
                                                        . – p.48/192
Theoretical Model(2)
Comparison of methodologies should be done similarly:
  Comparisons of components and inter-component
  relations
  Components should be classified by their functions
  (what problems they address)
  Components should then be characterized by their
  structures
Problem: methodologies and their components are
often not rigorously defined
Methodologies and their components themselves need
to be modeled



                                                      . – p.49/192
Overview
                                  Modeling
Methodology 1                     Formalism                             Methodology 2




    Build                            Base                                   Build
Process Model                     Framework                             Process Model

       Process Model                                          Process Model

                                   Classify
                                  Components

                                        Classification

  Develop                           Select                                Develop
Process Code                   Comparison Topics                        Process Code

                                        Topics

                Process Code                             Process Code
                                    Make
                                  Comparison
                  Topics                                   Topics
                                        Difference

                                  Summarize
                                  Differences

                                        Summary

                                                                                        . – p.50/192
Step 1: Build Process Model
Develop a model, a more formalized description, of
each of the two methodologies
After doing so, methodology can hopefully be
decomposed into components
Problem: many components (e.g. guidelines,
rules-of-thumb) lack precise semantics
Model must be at higher abstraction level, yet be
compact and clear
A number of Software Process Modeling Formalisms
(SPMF) have been developed for this




                                                     . – p.51/192
Build Process Model(2)
SPM by Williams is a typical SPMF
Development process is described as a set of activities:
   SPM = {activity}
An activity is described by a set of preconditions, an
action, a set of postconditions, and a set of messages:
   activity = {{precond.}, action, {postcond.}, {msg}}
Activities may be composed of other activities and may
be performed in parallel
Messages provide a means of communication and
synchronization among various activities



                                                          . – p.52/192
Step 2: Classify Components
Having identified components, they are now classified
This is done within a comparison framework, identifying
components that address similar issues
Typical issues are
   How is problem modeled?
   How is solution modeled?
   How is design documented?




                                                      . – p.53/192
Describing Comparison Issues
Concept:
   Understanding problems of IS development
   General principles of coping with these problems
   Concrete strategies that guide development
Artifact:
   A description involved in the development process
   (e.g. code, diagrams)




                                                       . – p.54/192
Describing Comparison Issues(2)
Representation:
   Means for representing artifacts (e.g. document
   templates, design/modeling languages)
Action:
   Physical and/or mental behaviors during
   development
   May create or modify an artifact




                                                     . – p.55/192
Step 3: Select Comparison Topics
Topics should be selected based upon goals of a
specific comparison
Two general criteria can always be used:
  Components should be comparable
  Comparison between them should help in showing
  key differences




                                                   . – p.56/192
Select Comparison Topics(2)
Classification may illustrate that two concepts address
similar issues
If so, one can select these two concepts for comparison
and trace
   artifacts supporting the concepts
   representations representing the artifacts
   actions creating or modifying the artifacts
And eventually find the artifacts, representations, and
actions that could be compared




                                                         . – p.57/192
Step 4a: Develop Process Code
Process model developed in step 1 may be too abstract
We have to identify detailed differences between
compared components
This more detailed modeling is called process code (to
distinguish it from process model)
This step is optional




                                                         . – p.58/192
Step 4b: Make Comparison
Typical criteria for comparing process code/model
(again this depends on goal of comparison)
  Inter-component dependency
  Degree of human involvement
  Development procedure/order
  Scope of issues that methodology addresses




                                                    . – p.59/192
Step 5: Summarize
Aims at providing readers with an overview and a
conclusion
Should be organized around the comparison topics
Should help indicate the main differences between
components




                                                    . – p.60/192
Summary of Theoretical Model
Tries to help compare methodologies more
systematically and objectively
Has limitations
   It is almost impossible to capture all details of a
   methodology in a formal, rigorous model
   Modeling a methodology is a non-trivial task (ranging
   from hours to weeks)
Conclusion: is probably not going to be used by
practitioners, but helps understand findings of scientists




                                                        . – p.61/192
Checklists/Frameworks
Lots of checklists for choosing a methodology exist
Contain many questions of the following or similar form
   How big is project? (small/medium/large)
   How much experience does project manager have
   (little/medium/much)
   What tool support is expected (no/partly/full)
   etc.
After evaluating answers according to a certain
scheme, an answer is delivered




                                                          . – p.62/192
Checklists(2)
This approach has many drawbacks:
  Methodologies (and their context) are much too
  complicated to be forced into simple recipes
  Answer materializes in a “magic” way, no knowledge
  about the rationale of the checklist creator




                                                   . – p.63/192
Frameworks
Frameworks are a more systematic way for evaluating
methodologies
Potential user (of a methodology) does not just check
boxes and waits for answer
Still somewhat subjective, will not satisfy everyone
Frameworks raise important questions that user has to
answer for him-/herself
We are looking at two frameworks:
   NIMSAD: Normative Information Model-based
   System Analysis and Design
   Framework by Avison/Fitzgerald


                                                        . – p.64/192
NIMSAD
Aims:
  Help understand the area of problem solving (in
  general)
  Help evaluate methodologies, their structures, steps,
  form, nature, etc.
  Help in drawing conclusions
Before presenting actual comparison, we take a look at
how IS development (or problem solving in general) is
perceived under NIMSAD




                                                         . – p.65/192
Rationale
NIMSAD framework has four essential elements
  Problem situation (methodology context)
  Intended problem solver (methodology user)
  Problem-solving process (methodology itself)
  Evaluation of the above




                                                 . – p.66/192
Problem Situation



           Client




Organizations serve as context for information systems
This context is important for methodologies:
   Effectiveness of IS can only be judged in this context
   Interaction with organizational members during
   development
   Interpersonal relationships formed in this context
                                                         . – p.67/192
Problem Solver



Problem Solver           Client




  However powerful, useful, and effective a methodology
  may be, success often depends on personal
  characteristics of problem solver:
      What does he/she select as relevant or dismisses as
      irrelevant?
      What are the implications of this selection?

                                                          . – p.68/192
Mental Constructs of Problem Solver
  Perceptual process:
    One of the most influential characteristics
    Acts as a filter to determine what is perceived as
    significant
    Each person perceives reality differently
    Problematic if perception of problem solver does not
    match that of stakeholder




                                                       . – p.69/192
Mental Constructs of Problem Solver(2)
   Values/Ethics:
     Beliefs that we consider to be “good”
     Help pass judgment on situations
     Example: participation
       High economic values: participation is a waste of
       time
       High social values: highly effective




                                                           . – p.70/192
Mental Constructs of Problem Solver(3)
   Motives/Prejudices
     Personal needs that we try to satisfy
     Opinions that we form from our values and
     experiences
     Becoming conscious of these is helpful




                                                 . – p.71/192
Mental Constructs of Problem Solver(4)
   Experience, knowledge, and skills
     Acquired from education, training, and practical work
     Have to match requirements of the methodology to
     be used




                                                         . – p.72/192
Mental Constructs of Problem Solver(5)
   Reasoning ability/Structuring processes
     Ability to abstract essential aspects and structure
     them in a meaningful way
     Thinking in different ways helps to gain new insights
     Communicating those thoughts in a clear way helps
     other people to understand reasons




                                                             . – p.73/192
Mental Constructs of Problem Solver(6)
   Roles
     In the development process, persons take on
     different roles
        Advisor
        Analyst
        Consultant
        Designer
        Implementer
        ...
     Conflicts between expected role behavior and
     natural behavior of a person results in stress



                                                      . – p.74/192
Problem-solving Process
Methodology is a way of problem solving
Needs to help perform three essential phases:
  Phase 1: Problem formulation
  Phase 2: Solution design
  Phase 3: Design implementation




                                                . – p.75/192
Phase 1: Problem Formulation
 Stage 1: Understanding the “situation of concern”



Mental construct




              Problem Solver   Client




 Mental construct can have several effects on grasping
 the situation
                                                         . – p.76/192
Stage 1: Understanding situation
 Deriving a boundary of concern



Mental construct




     Problem Solver
                         Client



                        Boundary of concern




                                              . – p.77/192
Boundary of Concern
If we do not subject mental constructs to self-critical
examination, we may end up
   accepting predefined boundaries of client
   construct implicit boundaries (where there are none)
   not identifying relevant elements
A methodology should support this structuring of
problem by supplying appropriate methods of
investigation




                                                          . – p.78/192
Boundary of Concern(2)
Why is boundary so important?
  It excludes many elements from subsequent steps
  If causes for identified problems lie outside of
  boundary,
     it doesn’t matter how well content of boundary is
     redesigned
     actual problem will not be solved




                                                         . – p.79/192
Stage 2: Performing Diagnosis
Where are we now?
Stage 1 is more or less a description of situation
Diagnosis aims at understanding reasons for current
situation
Helps identify gaps of knowledge or misunderstandings
Helps in communicating with clients in deriving agreed
understandings
Two levels of expression:
   Conceptual/logical level
   Physical level



                                                         . – p.80/192
Conceptual/Logical Level
Describes general and situation-specific information on
an abstract level (“what” issues)
Details include information flows, people’s tasks, roles,
functions, etc.
Expressed with the help of rich pictures, variance grids,
data flow diagrams, actigrams/datagrams, bubble
charts, etc.




                                                           . – p.81/192
Physical Level
Describes physical characteristics of a situation (“who”
or “how” issues)
Details include actual products, specific individuals,
documents, computers (performance, memory
capacities, etc.)
Expressed in descriptive of tabular form




                                                           . – p.82/192
Stage 3: Defining Prognosis
Where do we want to be and why?
Client wants to change current state
Prognosis is expression of desired state
Focus is not to create content of future state (that is role
of design), but to understand rationale for change
Depending on outcome of this stage, project may not be
started at all




                                                           . – p.83/192
Stage 4: Defining Problems
What is preventing realization of desired state?
Analyzing the gap between current and desired state
Identify and critically examine the absence and/or
relationships of elements
Results in identifying problem areas (written down in
concrete problem statements)




                                                        . – p.84/192
Stage 5: Deriving Notional Systems
 Specifying requirements of a system
 If such a system is built, we
    eliminate the identified problems
    change from current state to described state




                                                   . – p.85/192
Phase 2: Solution Design
Here we fill prognosis with content
Starting point is notional system
Consists of two stages:
   Stage 6: Conceptual/logical design
   Stage 7: Physical design




                                        . – p.86/192
Stage 6: Conceptual/Logical Design
 Design system on an abstract level (similar to the level
 used for conceptual/logical analysis)
 Most structured methodologies construct data
 flows/processes and/or ER-diagrams ignoring
 roles/functions of individuals




                                                            . – p.87/192
Stage 7: Physical Design
Selection of ways and means to realize logical design
Usually a range of different realizations are possible
Additional criteria may play a role in selection:
   Efficiency
   Reliability
   Accuracy
   Security/Safety
   Availability




                                                         . – p.88/192
Phase 3: Implementation
This phase determines success of whole development
process
Demonstrates validity of all previous steps
Consists of several tasks (that we are going to look at)




                                                           . – p.89/192
Tasks
Strategy and planning
  Identify and adapt a strategy for sequencing all
  activities
Management and control
  Set up management and control functions to help
  supervise activities




                                                     . – p.90/192
Tasks(2)
Environment Preparation
  Adjust surrounding for future system (e.g make
  changes to buildings, cabling, train users)
System development
  Identify activities and needed resources (e.g.
  recruitment of new personnel, acquisition of
  hard-/software, coding of programs, testing)
Changeover
  Integrate the new system (and introduce other
  changes) into the prepared environment



                                                   . – p.91/192
Evaluation
Methodology should not be a simple execution of steps
Should help bring about an efficient and effective
transformation of situations
Role of (evaluation) framework is to question
methodologies as to
   what they attempt to transform
   why they try to transform it
   how they help in undertaking the transformation




                                                        . – p.92/192
Evaluation(2)
Evaluation of the three elements problem situation,
problem solver, problem-solving process
Before the project:
   Initial assessment of the three elements
During the project:
   Changes may alter the use of methodology
After the project:
   Evaluate if problems were solved and how
   methodology helped in doing so




                                                      . – p.93/192
Applying NIMSAD
MIMSAD is not a methodology itself (does not provide
content to different stages)
It is about finding out what elements in the framework a
methodology addresses
   in what order
   and how
Methodology does not have to be an exact one-to-one
mapping to framework




                                                       . – p.94/192
Applying NIMSAD(2)
    NIMSAD provides important questions to check
    Answers have to be found by potential users of a
    methodology∗
    Questions for all elements of NIMSAD
    More complete list in NIMSAD book, here just an
    excerpt of most important ones
∗
 The following might be disturbing for some students: lots of questions
without answers




                                                                          . – p.95/192
Problem Situation
Who are the clients?
How strong is their commitment?
Does methodology help in identifying clients and their
concerns?
What’s the situation like? (well-structured, less
well-structured, ill-structured)
For which situation is methodology suitable?
What does situation demand (identify problems, design
solutions for already identified problems, implement an
already designed solution)?



                                                         . – p.96/192
Problem Solver
What level of abstract and technical thinking does
methodology demand from user?
Do philosophical views advocated by methodology
match user’s view?
What knowledge sets and skills does methodology
require from user?
Are mental constructs of user considered?




                                                     . – p.97/192
Problem-solving process
Stage 1: Understanding situation of concern
  Does methodology offer assistance for boundary
  construction?
  What is role of client (inclusion/participation or
  external)?
  Does methodology discuss particular methods of
  investigation?




                                                       . – p.98/192
Problem-solving process(2)
Stage 2: Diagnosis
  What techniques does methodology offer for
  expressing situation characteristics?
  What level of expression is advocated
  (conceptual/logical and/or physical)
  What environmental (context) information is
  captured?
  What tools and techniques are available?




                                                . – p.99/192
Problem-solving process(3)
Stage 3: Prognosis
  Is this stage supported at all?
  How does methodology offer help in defining
  prognosis?
  How are desired states established?




                                               . – p.100/192
Problem-solving process(4)
Stage 4: Defining Problems
  What problems or problem types are of concern to
  the methodology?
  How does it help in deriving problem statements?
  Are problem statements evaluated (or just
  accepted)?




                                                     . – p.101/192
Problem-solving process(5)
Stage 5: Deriving notional systems
  Does methodology derive notional systems from
  identified problems?
  Does it offer help in formulating notional systems?




                                                        . – p.102/192
Problem-solving process(6)
Design (Stage 6: Conceptual/Logical Design, Stage 7:
Physical Design)
  Does methodology accept client’s notional system as
  starting point?
  Does it distinguish between logical and physical
  design stages?
  Does it help in formulating design solutions?
  What aspects cannot be captured by methodology?
  Is a user on his/her own when trying to fill these
  gaps?
  How experienced is user to be expected in the
  solution domain?
  Who decides on which solution to take?

                                                       . – p.103/192
Problem-solving process(7)
Stage 8: Implementation
  What steps does methodology offer for developing
  the IS?
  What does it offer in terms of tools and techniques?
  How does it help in handling major changes in the
  notional system at this time?




                                                         . – p.104/192
Evaluation
Does methodology provide techniques for evaluating
itself and its outputs for
  problem situation?
  problem solver?
  problem-solving process?




                                                     . – p.105/192
Evaluating Methodologies
We are going to look at two methodologies in the
framework of NIMSAD:
  SSADM
  SSM




                                                   . – p.106/192
SSADM: Problem Situation
Organizational context has higher priority than in other
structured methodologies
Commitment of users is checked (partially) during
feasibility study
Still SSADM is mainly concerned with formal
descriptions of data and processes via data flow
diagrams
Irregular and changing patterns often left out of domain
of SSADM




                                                           . – p.107/192
SSADM: Problem Solver
SSADM does not alert its users to their mental
constructs
E.g. two different (competent) SSADM users may arrive
at two different sets of data flow diagrams
Most dominant knowledge and skills required are of
technical nature
In practice, however, users also need social skills to
make methodology effective (not made explicit by
methodology)




                                                         . – p.108/192
SSADM: Problem-solving Process
Stage 1: Understanding situation of concern
  Boundary construction is trial and error within
  SSADM
  Assumes that data flow diagrams can help construct
  boundary
  This often establishes an implicit boundary (anything
  that cannot be captured in DFDs remains outside)




                                                      . – p.109/192
SSADM: Problem-solving Process(2)
  Stage 2: Diagnosis
    SSADM makes most useful contribution to this stage
    Use of DFDs provide clear ways of expressing flows
    of formal data
    Starts with physical data flows (describing how data
    is processed)
    Then tries to extract underlying meaning into a
    logical data model and logical data flow model
    Does so by removing physical elements of
    elementary processes and then
    reconstructing/regrouping transformed processes



                                                      . – p.110/192
SSADM: Problem-solving Process(3)
  Stage 2: Diagnosis
    Logicalization may be problematic, as physical
    constraints may disappear
      Example: agent updates customer record on
      laptop, later this is synchronized with headquarters
      After logicalization there may only be one
      customer record file left. . .
    Regular and frequent patterns get modeled, special
    cases may be forgotten




                                                        . – p.111/192
SSADM: Problem-solving Process(4)
  Stage 3: Prognosis
    Defining prognosis is not really possible in SSADM
    Although better than in other structured approaches,
    as clients get to choose among different Business
    Systems Options (BSO)
    Feasibility study also helps in deciding if benefits
    outweigh costs
    Rationale of clients’ desired states may not become
    clear (it is assumed that clients know what they want)




                                                        . – p.112/192
SSADM: Problem-solving Process(5)
  Stage 4: Defining problems
    There is an explicit problem definition phase during
    feasibility study
    At this point things are still vague, however
    As there is no real prognosis, problems cannot be
    derived by looking at differences between diagnosis
    and prognosis




                                                      . – p.113/192
SSADM: Problem-solving Process(6)
  Stage 5: Deriving notional systems
    Strength of SSADM is in formalizing requirements of
    client
    Achieved by modeling the data flows of the required
    system with help of DFDs
    Functions and user interfaces of the system can be
    specified
    Developing specification prototype helps in getting
    feedback from client
    Again, assumes that client knows what he/she wants




                                                     . – p.114/192
SSADM: Problem-solving Process(7)
  Stages 6 and 7: Design
    SSADM distinguishes between logical and physical
    design
    We are going to look at these in turn




                                                       . – p.115/192
SSADM: Problem-solving Process(8)
  Stages 6: Logical Design
    Most useful and rigorous techniques offered by
    SSADM are DFDs
    Designs are usually created by modifying logical
    diagnosis diagram using requirements and feasibility
    study as guideline
    SSADM also very useful for structuring dialogues
    Does not take any interest in how design decisions
    will affect environment (BSO only looks at
    requirements)




                                                       . – p.116/192
SSADM: Problem-solving Process(9)
  Stages 7: Physical Design
    SSADM provide mainly generic guidelines
    Many decisions depend on technical issues specific
    to chosen environment
    Environment is chosen in Technical System Option
    (TSO) phase of SSADM
    In TSO technical alternatives drawn up from
    requirements are presented to clients for decision
    Better than other structured approaches (where
    there is no TSO)
    Still problems for non-computerized areas of design



                                                      . – p.117/192
SSADM: Problem-solving Process(10)
  Stages 8: Implementation
    Completely missing (one of the weakest points)




                                                     . – p.118/192
SSADM: Evaluation
Completely missing (the other of the weakest points)




                                                       . – p.119/192
SSADM: Summary
SSADM is/was popular methodology for formal design
of IS
Better in “soft”, non-technical aspects than other
structured approaches
However, still a technical methodology with weak points
in “soft” aspects of IS development, the implementation
phase, and self-evaluation
At least, does not claim to cover “soft” aspects
adequately




                                                      . – p.120/192
SSM: Problem Situation
SSM is one of the few methodologies that makes
comments about problem situation
SSM is applicable to ill-structured situations
In contrast to structured methodologies (which seek a
“single” truth), SSM considers many different views
Encourages its users to develop new perceptions of
organizations through systems thinking
SSM recognizes three roles: client (initiates study),
problem owner (identifies relevant systems), problem
solver (uses SSM to resolve client’s concerns)




                                                        . – p.121/192
SSM: Problem Solver
SSM recognizes the need for reflection
Considers mental constructs of its users
Methodology user takes on role of debate facilitator and
learner
However, SSM relies on its users to have considerable
conceptualization, abstraction, philosophical, and
political skills




                                                        . – p.122/192
SSM: Problem-solving Process
Stage 1: Understanding situation of concern
  SSM provides insightful contributions to boundary
  construction
  Boundaries, problem ownership, problem content,
  and context issues are all open to question
  Context of a problem situation can be captured in
  rich pictures




                                                      . – p.123/192
SSM: Problem-solving Process(2)
Stage 2: Diagnosis
  SSM does not prescribe particular form of
  expression to capture essential aspects of an
  organization
  Any technique may be used: graphs, text, animation,
  pictures, charts, tables, etc. (“rich pictures”)
  This is a strength and a weakness:
    Gives users a lot of freedom
    But also a lot of responsibility (user has to know
    what he/she is doing)
  SSM does not distinguish between logical and
  physical diagnosis descriptions


                                                     . – p.124/192
SSM: Problem-solving Process(3)
Stage 3: Prognosis/Stage 4: Defining problems are
skipped (details later)
Are handled a little differently in SSM




                                                   . – p.125/192
SSM: Problem-solving Process(4)
Stage 5: Deriving notional systems
  SSM does not derive notional systems from
  identified problems (see Stage 4)
  Attempts to develop many potentially relevant
  notional systems
  Formulates notional systems with root definitions
  (CATWOE)




                                                     . – p.126/192
SSM: Problem-solving Process(5)
Stage 6/7: Design
  No distinction between logical and physical design
  Uses root definitions as guide for design process
  Design is not a strong point of SSM
  Not quite clear how to derive at an activity-based
  design from system-based root definition




                                                       . – p.127/192
SSM: Problem-solving Process(6)
Stage 8: Implementation
  Missing




                                  . – p.128/192
SSM: Problem-solving Process(7)
Stage 3: Prognosis
  SSM operates in environment where there are
    multiple desired states
    clients who are unsure of their desired states
  SSM does not attempt to construct clear prognosis
  outline
  Each root definition implies a particular desired state
  There are many potentially relevant notional systems




                                                      . – p.129/192
SSM: Problem-solving Process(8)
Stage 4: Defining problems
  As there is no clear prognosis, it is difficult to derive
  problem statements from mapping diagnosis to
  prognosis
  SSM maps design models against diagnosis to
  determine relevance
  Decision on relevance is carried out by conducting
  debate with participants
  Practically, Stage 4 is deferred until design is finished




                                                        . – p.130/192
SSM: Evaluation
SSM does not have an explicit step for evaluation
Nevertheless, it propagates learning
When evaluation is done, usually focus on
problem-solving process
Mostly done through SSM case studies (UK Health
Service, Shell, IS planning)




                                                    . – p.131/192
SSM: Summary
SSM is a methodology for ill-structured problem
situations
Allows discussions on different viewpoints of
participants
Author of SSM also encourages debate and
discussions about SSM
SSM is in constant process of refinement to meet valid
criticism




                                                        . – p.132/192
Framework by Avison/Fitzgerald
Has seven basic elements:
  Philosophy
  Model
  Techniques and Tools
  Scope
  Outputs
  Practice
  Product




                                 . – p.133/192
Philosophy
The principle (or set of principles) that underlies a
methodology
Several areas are distinguished
   Paradigm
   Objectives/Domain
   Target




                                                        . – p.134/192
Paradigm
Science paradigm vs. systems paradigm
Science paradigm explains world through reductionism,
repeatability, refutation
Systems paradigm is concerned with whole picture,
interrelationships between parts of the whole
Simplified this means
  Science paradigm ≡ “hard” thinking
  Systems paradigm ≡ “soft” thinking




                                                    . – p.135/192
Paradigm(2)
Debate has been extended to
  Epistemology: study of knowledge, how we acquire
  knowledge
  Ontology: study of being (or what “is”)
Let’s make a short excursion into philosophy




                                                     . – p.136/192
Epistemology
The two extreme positions are positivism and
interpretivism
Positivism
   There is an objective reality beyond the human mind
   Ideas and theories need to be tested against this
   reality
   This is done via experiments, surveys, field studies,
   etc.




                                                      . – p.137/192
Epistemology(2)
     Interpretivism
         Knowledge of world is constructed through a
         person’s lived experience
         Reality is constructed socially
         Interpretivists use case studies, hermeneutics,
         phenomenology, etc.
           Hermeneutics: theory and practice of
           interpretation∗
           Phenomenology: study of phenomena
           (appearance of things) from a first person point of
           view
∗
 Hermeneutic cycle is process by which we return to a text (or the world),
and derive a new interpretation – perhaps a new one every time or a new
one for every interpreter                                               . – p.138/192
Ontology
The two extreme positions here are realism and
nominalism
Realism
  There are universal entities and universal terms to
  describe them
  E.g. many individual horse entities, but there is also
  general concept of an “ideal” horse
Nominalism
  There are no universal entities, we can only refer to
  concrete, individual entities
  E.g. many individual horse entities, speaking of
  horses in general is mere convenience for speaking
  of many things at once
                                                           . – p.139/192
Excursion into Philosophy
Usually extreme positions not encountered in pure form
A positivist confronted with a loaded gun will not start
calculating trajectories, possible areas of impact, he will
experience strong (subjective) emotions
An interpretivist paying £1000 into his bank account will
not accept the teller’s subjective point of view that
crediting £800 is close enough




                                                          . – p.140/192
Paradigm(3)



               Positivism
                                   Objectivist
Epistemology
               Interpretivism      approaches




                                                 Subjectivist
                                                 approaches



                                Realism            Nominalism
                                          Ontology
                                                                . – p.141/192
Objectives/Domain
What is methodology trying to achieve within an
organization?
  Development of a purely “computerized” IS?
  Does it take wider view including other tasks?
  Does it try to reengineer whole business
  processes/change strategy of organization?




                                                   . – p.142/192
Target
For what

   types of problems
   environments
   types or sizes of organizations

is methodology applicable?




                                     . – p.143/192
Model
What constructs does methodology use to model the
real world?
  Verbal
  Analytic/mathematical
  Iconic/pictorial/schematic
  Simulation




                                                    . – p.144/192
Techniques and Tools
What techniques and tools are provided to support user
of methodology?




                                                     . – p.145/192
Scope
Which phases of life cycle of IS development does
methodology cover?
   strategy, feasibility, analysis, logical design, physical
   design, programming, testing, implementation,
   evaluation, maintenance
Problematic if methodology does not follow life cycle




                                                           . – p.146/192
Outputs
What is methodology producing in terms of
deliverables?
This can range from feasibility studies, requirements
and analysis specifications up to working
implementations of IS
When are these outputs generated?




                                                        . – p.147/192
Practice
What is the background of methodology (commercial or
academic)?
What is the user base (numbers and types of users)?
Who are the participants and what are their required
skill levels (can users apply methodology themselves or
are highly skilled consultants necessary)?




                                                      . – p.148/192
Product
What do you get for your money, i.e. when purchasing
methodology, what is included?
  Software tools
  Written documentation
  Training
  Help service




                                                       . – p.149/192
Applying Avison/Fitzgerald Framework
   We are looking at SSADM and SSM in light of
   Avison/Fitzgerald framework
   Some arguments have already been presented in
   NIMSAD framework
   Therefore, this is kept shorter




                                                   . – p.150/192
Philosophy
Paradigm
  SSADM
   Follows science paradigm
   Belongs to objectivist approaches
  SSM
   Clearly follows systems paradigm
   Belongs to subjectivist approaches




                                        . – p.151/192
Philosophy(2)
Objectives/Domain
  SSADM
   Has objective of developing computerized IS
   Neglects organizational aspects
  SSM
   Tries to capture a broader view, including
   organizational context




                                                 . – p.152/192
Philosophy(3)
Target
  SSADM
   Data flow diagrams not applicable for all types of
   problems (decision support systems, web
   applications)
   Targets large organizations (although there is
   slimmer version called MicroSSADM)
  SSM
   Applicable in human activity situations with
   ill-structured problems




                                                       . – p.153/192
Model
SSADM
 Main modeling concept: data flow diagrams
SSM
 Very flexible “rich pictures”




                                            . – p.154/192
Techniques and Tools
SSADM
 Main technique: structured approach to modeling
 and design
 Tools like drawing tools, tools for project
 management, code generation seen as useful, but
 not essential
SSM
 Organizational techniques
 Does not advocate or mention specific tools




                                                   . – p.155/192
Scope
SSADM includes
  (Strategy), feasibility, analysis, logical design,
  physical design
SSM includes
  Strategy, (feasibility), analysis, (logical design)




                                                        . – p.156/192
Outputs
SSADM
 Basically follows SDLC, so in each phase certain
 documents are produced (e.g. feasibility study,
 requirements specification, design documents)
SSM
 Divided into seven stages, at the end of which
 certain documents are produced (e.g. rich pictures,
 root definitions)




                                                       . – p.157/192
Practice
SSADM
 Commercial background
 “Traditional” participants: analysts, designers,
 (programmers)
SSM
 Academic background
 Participants: much greater role of client and problem
 owner




                                                     . – p.158/192
Practice(2)
Difficult to evaluate user base, some numbers:
  Fitzgerald 1999: 57% of organizations use
  methodologies: 11% purely commercial ones, 30%
  adopted commercial ones, 59% unique ones
  Russo/Wynekoop 1995: of 132 organizations using a
  methodology, 77% used structured approach, 8%
  prototyping/iterative approach, 5% RAD approach




                                                 . – p.159/192
Product
SSADM
 Large store of manuals, books, etc.
 Certificate of proficiency can be acquired
SSM
 A set of academic papers and books




                                            . – p.160/192
Capability Maturity Model (CMM)
 Created by the Software Engineering Institute at
 Carnegie Mellon
 Originally aimed at helping Department of Defense
 assess capabilities of vendors and sub-contractors
 Not so much about methodologies themselves, but
 about how well an organization organizes its processes
 Has five levels, level 5 being the best one




                                                      . – p.161/192
Overview

                    Improving         Optimizing
                      process

              Predictable       Managed
                 process

        Standard            Defined
         process

Disciplined        Repeatable
    process

               Initial

                                                   . – p.162/192
Initial (Level 1)
Development is characterized as being ad hoc or even
chaotic
Processes are not defined
Everything depends on skilled individuals to get their
act together
Software is typically delivered late and over budget
Little effective management and control
Unfortunately, too many organizations are still at this
level




                                                          . – p.163/192
Repeatable (Level 2)
Basic project management processes are established
Allows tracking of costs, schedules, functionality
Somme process discipline is in place
Earlier success on projects with similar applications can
be repeated




                                                       . – p.164/192
Defined (Level 3)
Management and engineering activities are
documented, standardized, and integrated into a
standard process
All projects use an approved, tailored version of the
organization’s process
Training programs are implemented to ensure that staff
has necessary skill




                                                        . – p.165/192
Managed (Level 4)
Detailed measures of the process and product quality
are collected and analyzed
Process and products are quantitatively understood and
controlled
Risks in moving to new application domains are known
and carefully managed




                                                       . – p.166/192
Optimizing (Level 5)
Entire organization is focused on continuous process
improvement
Organization can identify weaknesses and prevent
potential defects beforehand
Cost/benefit analyses of new technologies base on data
on effectiveness of current process




                                                       . – p.167/192
Summary
CMM is based on manufacturing and product-building
view of systems development
This is not always appropriate as often IS development
is more of a creative art than a science
CMM is mainly concerned with (technical) aspects of
software development, not the wider area of IS
development
High levels in CMM do not always lead to high quality
software, just well-documented processes




                                                        . – p.168/192
Chapter Summary
Comparing methodologies is a very difficult task
Unfortunately, no silver bullet for doing so has been
found yet
As many views as writers on the subject




                                                        . – p.169/192

More Related Content

What's hot

Business Process Modeling
Business Process ModelingBusiness Process Modeling
Business Process ModelingSandy Kemsley
 
Strategy & Business Process Management
Strategy & Business Process ManagementStrategy & Business Process Management
Strategy & Business Process Management451 Research
 
Business Process Maturity and Centers of Excellence
Business Process Maturity and Centers of ExcellenceBusiness Process Maturity and Centers of Excellence
Business Process Maturity and Centers of ExcellenceSandy Kemsley
 
Enterprise Analysis
Enterprise AnalysisEnterprise Analysis
Enterprise AnalysisMihika-QA
 
Enterprise BPM Framework
Enterprise BPM Framework Enterprise BPM Framework
Enterprise BPM Framework Frank Luyckx
 
Machine learning Chapter 1
Machine learning Chapter 1Machine learning Chapter 1
Machine learning Chapter 1JagadishPogu
 
Object Oriented Approach for Software Development
Object Oriented Approach for Software DevelopmentObject Oriented Approach for Software Development
Object Oriented Approach for Software DevelopmentRishabh Soni
 
Implementing BPMN 2.0 with Microsoft Visio
Implementing BPMN 2.0 with Microsoft VisioImplementing BPMN 2.0 with Microsoft Visio
Implementing BPMN 2.0 with Microsoft VisioGoutama Bachtiar
 
Chapter 22- Software Configuration Management.ppt
Chapter 22- Software Configuration Management.pptChapter 22- Software Configuration Management.ppt
Chapter 22- Software Configuration Management.pptTanzinAhammad
 
Object oriented-systems-development-life-cycle ppt
Object oriented-systems-development-life-cycle pptObject oriented-systems-development-life-cycle ppt
Object oriented-systems-development-life-cycle pptKunal Kishor Nirala
 
How to establish SEPG and SPI functions?
How to establish SEPG and SPI functions?How to establish SEPG and SPI functions?
How to establish SEPG and SPI functions?Panitta Kaewkallaya
 

What's hot (20)

V model in SDLC
V model in SDLCV model in SDLC
V model in SDLC
 
Business Process Modeling
Business Process ModelingBusiness Process Modeling
Business Process Modeling
 
What is BPM?
What is BPM?What is BPM?
What is BPM?
 
Strategy & Business Process Management
Strategy & Business Process ManagementStrategy & Business Process Management
Strategy & Business Process Management
 
Business Process Maturity and Centers of Excellence
Business Process Maturity and Centers of ExcellenceBusiness Process Maturity and Centers of Excellence
Business Process Maturity and Centers of Excellence
 
Chapter 5
Chapter 5Chapter 5
Chapter 5
 
Unit 2
Unit 2Unit 2
Unit 2
 
Enterprise Analysis
Enterprise AnalysisEnterprise Analysis
Enterprise Analysis
 
Enterprise BPM Framework
Enterprise BPM Framework Enterprise BPM Framework
Enterprise BPM Framework
 
Machine learning Chapter 1
Machine learning Chapter 1Machine learning Chapter 1
Machine learning Chapter 1
 
The V Model
The V ModelThe V Model
The V Model
 
Comparison and evaluation of alternative designs
Comparison and evaluation of alternative designsComparison and evaluation of alternative designs
Comparison and evaluation of alternative designs
 
Object Oriented Approach for Software Development
Object Oriented Approach for Software DevelopmentObject Oriented Approach for Software Development
Object Oriented Approach for Software Development
 
Implementing BPMN 2.0 with Microsoft Visio
Implementing BPMN 2.0 with Microsoft VisioImplementing BPMN 2.0 with Microsoft Visio
Implementing BPMN 2.0 with Microsoft Visio
 
ch3.pptx
ch3.pptxch3.pptx
ch3.pptx
 
Chap4 RE validation
Chap4 RE validationChap4 RE validation
Chap4 RE validation
 
Good/Bad design
Good/Bad designGood/Bad design
Good/Bad design
 
Chapter 22- Software Configuration Management.ppt
Chapter 22- Software Configuration Management.pptChapter 22- Software Configuration Management.ppt
Chapter 22- Software Configuration Management.ppt
 
Object oriented-systems-development-life-cycle ppt
Object oriented-systems-development-life-cycle pptObject oriented-systems-development-life-cycle ppt
Object oriented-systems-development-life-cycle ppt
 
How to establish SEPG and SPI functions?
How to establish SEPG and SPI functions?How to establish SEPG and SPI functions?
How to establish SEPG and SPI functions?
 

Viewers also liked

Comparative Development Methodologies
Comparative Development MethodologiesComparative Development Methodologies
Comparative Development Methodologiesguestc990b6
 
System Development Methodologies
System Development MethodologiesSystem Development Methodologies
System Development MethodologiesDevon Ravihansa
 
An overview of software development methodologies.
An overview of software development methodologies.An overview of software development methodologies.
An overview of software development methodologies.Masoud Kalali
 
Software Engineering The Multiview Approach And Wisdm
Software Engineering   The Multiview Approach And WisdmSoftware Engineering   The Multiview Approach And Wisdm
Software Engineering The Multiview Approach And Wisdmguestc990b6
 
Environmental value systems
Environmental value systemsEnvironmental value systems
Environmental value systemsnjcotton
 
Software Development Model - Waterfall, RAD & Agile
Software Development Model - Waterfall, RAD & AgileSoftware Development Model - Waterfall, RAD & Agile
Software Development Model - Waterfall, RAD & AgileFakrudin Abu Bakar
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologiesnaina-rani
 
Valuation Methods
Valuation MethodsValuation Methods
Valuation MethodsFITT
 
Implementing Rational Unified Process Within A Prince2 Envir
Implementing Rational Unified Process Within A Prince2 EnvirImplementing Rational Unified Process Within A Prince2 Envir
Implementing Rational Unified Process Within A Prince2 EnvirLaurence Archer
 
Research methods for socio-technical systems analysis (LSCITS EngD 2012)
Research methods for socio-technical systems analysis (LSCITS EngD 2012)Research methods for socio-technical systems analysis (LSCITS EngD 2012)
Research methods for socio-technical systems analysis (LSCITS EngD 2012)Ian Sommerville
 
Comparison of SSADM and XP using NIMSAD framework
Comparison of SSADM and XP using NIMSAD frameworkComparison of SSADM and XP using NIMSAD framework
Comparison of SSADM and XP using NIMSAD frameworkWael Almadhoun, MSc, PMP®
 
Comparison Shopping Engines Study: goals, recommendations & opportunities to ...
Comparison Shopping Engines Study: goals, recommendations & opportunities to ...Comparison Shopping Engines Study: goals, recommendations & opportunities to ...
Comparison Shopping Engines Study: goals, recommendations & opportunities to ...Matthieu Dejardins
 
1.1 Environmental value systems
1.1 Environmental value systems1.1 Environmental value systems
1.1 Environmental value systemsScott Lucas
 
PRODUCT DEVELOPMENT METHODOLOGY
PRODUCT DEVELOPMENT METHODOLOGYPRODUCT DEVELOPMENT METHODOLOGY
PRODUCT DEVELOPMENT METHODOLOGYArul Nambi
 
Agile and Lean Software Development
Agile and Lean Software DevelopmentAgile and Lean Software Development
Agile and Lean Software DevelopmentTathagat Varma
 
Agile methodologies in_project_management
Agile methodologies in_project_managementAgile methodologies in_project_management
Agile methodologies in_project_managementPravin Asar
 
Agile Development unleashed
Agile Development unleashedAgile Development unleashed
Agile Development unleashedlivgeni
 

Viewers also liked (20)

Comparative Development Methodologies
Comparative Development MethodologiesComparative Development Methodologies
Comparative Development Methodologies
 
System Development Methodologies
System Development MethodologiesSystem Development Methodologies
System Development Methodologies
 
System development methodologies
System development methodologiesSystem development methodologies
System development methodologies
 
An overview of software development methodologies.
An overview of software development methodologies.An overview of software development methodologies.
An overview of software development methodologies.
 
Software Engineering The Multiview Approach And Wisdm
Software Engineering   The Multiview Approach And WisdmSoftware Engineering   The Multiview Approach And Wisdm
Software Engineering The Multiview Approach And Wisdm
 
Soft Systems Methodology
Soft Systems MethodologySoft Systems Methodology
Soft Systems Methodology
 
Environmental value systems
Environmental value systemsEnvironmental value systems
Environmental value systems
 
Software Development Model - Waterfall, RAD & Agile
Software Development Model - Waterfall, RAD & AgileSoftware Development Model - Waterfall, RAD & Agile
Software Development Model - Waterfall, RAD & Agile
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
 
Valuation Methods
Valuation MethodsValuation Methods
Valuation Methods
 
Implementing Rational Unified Process Within A Prince2 Envir
Implementing Rational Unified Process Within A Prince2 EnvirImplementing Rational Unified Process Within A Prince2 Envir
Implementing Rational Unified Process Within A Prince2 Envir
 
Research methods for socio-technical systems analysis (LSCITS EngD 2012)
Research methods for socio-technical systems analysis (LSCITS EngD 2012)Research methods for socio-technical systems analysis (LSCITS EngD 2012)
Research methods for socio-technical systems analysis (LSCITS EngD 2012)
 
Comparison of SSADM and XP using NIMSAD framework
Comparison of SSADM and XP using NIMSAD frameworkComparison of SSADM and XP using NIMSAD framework
Comparison of SSADM and XP using NIMSAD framework
 
Comparison Shopping Engines Study: goals, recommendations & opportunities to ...
Comparison Shopping Engines Study: goals, recommendations & opportunities to ...Comparison Shopping Engines Study: goals, recommendations & opportunities to ...
Comparison Shopping Engines Study: goals, recommendations & opportunities to ...
 
1.1 Environmental value systems
1.1 Environmental value systems1.1 Environmental value systems
1.1 Environmental value systems
 
Externalities
ExternalitiesExternalities
Externalities
 
PRODUCT DEVELOPMENT METHODOLOGY
PRODUCT DEVELOPMENT METHODOLOGYPRODUCT DEVELOPMENT METHODOLOGY
PRODUCT DEVELOPMENT METHODOLOGY
 
Agile and Lean Software Development
Agile and Lean Software DevelopmentAgile and Lean Software Development
Agile and Lean Software Development
 
Agile methodologies in_project_management
Agile methodologies in_project_managementAgile methodologies in_project_management
Agile methodologies in_project_management
 
Agile Development unleashed
Agile Development unleashedAgile Development unleashed
Agile Development unleashed
 

Similar to Comparison Of Methodologies

Presentation VMBO 18 2-2013
Presentation VMBO 18 2-2013Presentation VMBO 18 2-2013
Presentation VMBO 18 2-2013Ben Roelens
 
UNIT V TESTING.pptx
UNIT V TESTING.pptxUNIT V TESTING.pptx
UNIT V TESTING.pptxanguraju1
 
CS8592 Object Oriented Analysis & Design - UNIT IV
CS8592 Object Oriented Analysis & Design - UNIT IV CS8592 Object Oriented Analysis & Design - UNIT IV
CS8592 Object Oriented Analysis & Design - UNIT IV pkaviya
 
Ranking The Refactoring Techniques Based on The External Quality Attributes
Ranking The Refactoring Techniques Based on The External Quality AttributesRanking The Refactoring Techniques Based on The External Quality Attributes
Ranking The Refactoring Techniques Based on The External Quality AttributesIJRES Journal
 
Testing the Component Based Adoption Techniques during Runtime Configuration
Testing the Component Based Adoption Techniques during Runtime ConfigurationTesting the Component Based Adoption Techniques during Runtime Configuration
Testing the Component Based Adoption Techniques during Runtime Configurationijtsrd
 
Information Systems Action design research method
Information Systems Action design research methodInformation Systems Action design research method
Information Systems Action design research methodRaimo Halinen
 
Vadim Tsapok:” Seven requirements elicitation techniques: real-life examples,...
Vadim Tsapok:” Seven requirements elicitation techniques: real-life examples,...Vadim Tsapok:” Seven requirements elicitation techniques: real-life examples,...
Vadim Tsapok:” Seven requirements elicitation techniques: real-life examples,...Dakiry
 
Expected influence of ethics on product development process.
Expected influence of ethics on product development process.Expected influence of ethics on product development process.
Expected influence of ethics on product development process.Abdullah Al Mahmud
 
Alianna Maren STOMP ePortfolio
Alianna Maren STOMP ePortfolioAlianna Maren STOMP ePortfolio
Alianna Maren STOMP ePortfoliosburakharper
 
Software Quality Models: A Comparative Study paper
Software Quality Models: A Comparative Study  paperSoftware Quality Models: A Comparative Study  paper
Software Quality Models: A Comparative Study paperMoutasm Tamimi
 
Mda start up
Mda start upMda start up
Mda start upLai Ha
 
Object Oriented System Design
Object Oriented System DesignObject Oriented System Design
Object Oriented System DesignMurugeswari Ravi
 
The Pragmatic Evaluation of Tool System Interoperability
The Pragmatic Evaluation of Tool System InteroperabilityThe Pragmatic Evaluation of Tool System Interoperability
The Pragmatic Evaluation of Tool System InteroperabilityCommunitySense
 
System Development Overview Assignment 3
System Development Overview Assignment 3System Development Overview Assignment 3
System Development Overview Assignment 3Ashley Fisher
 
Lecture2 2
Lecture2 2Lecture2 2
Lecture2 2soloeng
 
Object oriented analysis
Object oriented analysisObject oriented analysis
Object oriented analysisMahesh Bhalerao
 
Unit No 6 Design Patterns.pptx
Unit No 6 Design Patterns.pptxUnit No 6 Design Patterns.pptx
Unit No 6 Design Patterns.pptxDrYogeshDeshmukh1
 

Similar to Comparison Of Methodologies (20)

Presentation VMBO 18 2-2013
Presentation VMBO 18 2-2013Presentation VMBO 18 2-2013
Presentation VMBO 18 2-2013
 
UNIT V TESTING.pptx
UNIT V TESTING.pptxUNIT V TESTING.pptx
UNIT V TESTING.pptx
 
CS8592 Object Oriented Analysis & Design - UNIT IV
CS8592 Object Oriented Analysis & Design - UNIT IV CS8592 Object Oriented Analysis & Design - UNIT IV
CS8592 Object Oriented Analysis & Design - UNIT IV
 
Ranking The Refactoring Techniques Based on The External Quality Attributes
Ranking The Refactoring Techniques Based on The External Quality AttributesRanking The Refactoring Techniques Based on The External Quality Attributes
Ranking The Refactoring Techniques Based on The External Quality Attributes
 
Testing the Component Based Adoption Techniques during Runtime Configuration
Testing the Component Based Adoption Techniques during Runtime ConfigurationTesting the Component Based Adoption Techniques during Runtime Configuration
Testing the Component Based Adoption Techniques during Runtime Configuration
 
Information Systems Action design research method
Information Systems Action design research methodInformation Systems Action design research method
Information Systems Action design research method
 
Vadim Tsapok:” Seven requirements elicitation techniques: real-life examples,...
Vadim Tsapok:” Seven requirements elicitation techniques: real-life examples,...Vadim Tsapok:” Seven requirements elicitation techniques: real-life examples,...
Vadim Tsapok:” Seven requirements elicitation techniques: real-life examples,...
 
Expected influence of ethics on product development process.
Expected influence of ethics on product development process.Expected influence of ethics on product development process.
Expected influence of ethics on product development process.
 
Alianna Maren STOMP ePortfolio
Alianna Maren STOMP ePortfolioAlianna Maren STOMP ePortfolio
Alianna Maren STOMP ePortfolio
 
Object oriented framework
Object oriented frameworkObject oriented framework
Object oriented framework
 
Software Quality Models: A Comparative Study paper
Software Quality Models: A Comparative Study  paperSoftware Quality Models: A Comparative Study  paper
Software Quality Models: A Comparative Study paper
 
Mda start up
Mda start upMda start up
Mda start up
 
Object Oriented System Design
Object Oriented System DesignObject Oriented System Design
Object Oriented System Design
 
The Pragmatic Evaluation of Tool System Interoperability
The Pragmatic Evaluation of Tool System InteroperabilityThe Pragmatic Evaluation of Tool System Interoperability
The Pragmatic Evaluation of Tool System Interoperability
 
System Development Overview Assignment 3
System Development Overview Assignment 3System Development Overview Assignment 3
System Development Overview Assignment 3
 
Lecture2 2
Lecture2 2Lecture2 2
Lecture2 2
 
Object oriented analysis
Object oriented analysisObject oriented analysis
Object oriented analysis
 
3 analysis and design overview
3 analysis and design overview3 analysis and design overview
3 analysis and design overview
 
It2403 spm
It2403 spmIt2403 spm
It2403 spm
 
Unit No 6 Design Patterns.pptx
Unit No 6 Design Patterns.pptxUnit No 6 Design Patterns.pptx
Unit No 6 Design Patterns.pptx
 

More from guestc990b6

Lascas Failure Learn A Big Lession From The Most Terrible Problems In The W...
Lascas Failure   Learn A Big Lession From The Most Terrible Problems In The W...Lascas Failure   Learn A Big Lession From The Most Terrible Problems In The W...
Lascas Failure Learn A Big Lession From The Most Terrible Problems In The W...guestc990b6
 
Action Research - David Avison
Action Research  - David AvisonAction Research  - David Avison
Action Research - David Avisonguestc990b6
 
Review Of Mutiview
Review Of MutiviewReview Of Mutiview
Review Of Mutiviewguestc990b6
 
Career Hub Rich Picture
Career Hub Rich PictureCareer Hub Rich Picture
Career Hub Rich Pictureguestc990b6
 
IED Classification Avison & Taylor
IED Classification   Avison & TaylorIED Classification   Avison & Taylor
IED Classification Avison & Taylorguestc990b6
 
Rich Picture One Of The Tools
Rich Picture   One Of The ToolsRich Picture   One Of The Tools
Rich Picture One Of The Toolsguestc990b6
 
The Rich Picture A Tool For Reasoning About Work Context
The Rich Picture   A Tool For Reasoning About Work ContextThe Rich Picture   A Tool For Reasoning About Work Context
The Rich Picture A Tool For Reasoning About Work Contextguestc990b6
 

More from guestc990b6 (12)

Las Failure
Las FailureLas Failure
Las Failure
 
Lascas Failure Learn A Big Lession From The Most Terrible Problems In The W...
Lascas Failure   Learn A Big Lession From The Most Terrible Problems In The W...Lascas Failure   Learn A Big Lession From The Most Terrible Problems In The W...
Lascas Failure Learn A Big Lession From The Most Terrible Problems In The W...
 
Las Failure
Las FailureLas Failure
Las Failure
 
Qc Vs Qa
Qc Vs QaQc Vs Qa
Qc Vs Qa
 
Sigma Table
Sigma TableSigma Table
Sigma Table
 
Monte Carlo
Monte CarloMonte Carlo
Monte Carlo
 
Action Research - David Avison
Action Research  - David AvisonAction Research  - David Avison
Action Research - David Avison
 
Review Of Mutiview
Review Of MutiviewReview Of Mutiview
Review Of Mutiview
 
Career Hub Rich Picture
Career Hub Rich PictureCareer Hub Rich Picture
Career Hub Rich Picture
 
IED Classification Avison & Taylor
IED Classification   Avison & TaylorIED Classification   Avison & Taylor
IED Classification Avison & Taylor
 
Rich Picture One Of The Tools
Rich Picture   One Of The ToolsRich Picture   One Of The Tools
Rich Picture One Of The Tools
 
The Rich Picture A Tool For Reasoning About Work Context
The Rich Picture   A Tool For Reasoning About Work ContextThe Rich Picture   A Tool For Reasoning About Work Context
The Rich Picture A Tool For Reasoning About Work Context
 

Recently uploaded

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 

Recently uploaded (20)

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 

Comparison Of Methodologies

  • 2. Picking a Methodology You’ve got a team of 10-12 developers eagerly awaiting your instructions. Which methodology do you pick? Usually one of the following things is done Choice dictated by the methodologies used previously by the developer’s boss Using a new “hyped” methodology “Heard from a friend of my brother’s wife that it’s good.” There was this lecturer at the College. . . Comparing methodologies is like comparing apples to oranges . – p.42/192
  • 3. Comparing Apples to Oranges Has been done before (using a Nicolet 740 FTIR spectrometer) In Annals of improbable research (Scott A. Sandford) Result: the two are very similar . – p.43/192
  • 4. Comparing Apples to Oranges(2) Other people might have different opinions Biologist points to taxonomy, describing similarities and differences Nutrition expert has still another opinion... Observation: depending on who you ask, you get different answers . – p.44/192
  • 5. Comparing Methodologies Same with methodologies: Computer scientist: tries to develop general (theoretical) framework for comparing methodologies Developer: tries to judge situation from prior experiences and case studies Senior management: tries to find out, if methodology will give certain quality assurances Vendor: tries to sell own product (so you have to read between the lines) . – p.45/192
  • 6. Comparing Methodologies(2) So, how can we compare methodologies? 1. Describe “ideal” methodology, then compare to other methodologies Who determines what’s ideal? If we find ideal methodology, why use other methodologies? 2. Construct general comparison tool by selecting appropriate features 3. Develop a contingency framework to map appropriate methodology to a particular environment 4. Develop a common frame of reference for viewing different methodologies (provides a “meta-language”) . – p.46/192
  • 7. Comparing Methodologies(2) We are going to look at: Theoretical model for comparison (Song and Osterweil) (2.) Checklists (3.)/Frameworks (4.) Capability Maturity Model (CMM levels) We are not going to look at: Brochures of vendors . – p.47/192
  • 8. Theoretical Model Song and Osterweil criticize that previous comparison methods have been very unscientific Analysis and comparisons are activities common to many scientific fields E.g. comparing animals in biology in a systematic and objective way: Comparison of organs and inter-organ relations Usually organs (e.g. eyes) are classified by their functions (e.g. vision) Using this classification, organs having the same or similar functions can be identified and compared One compares structures (e.g. shape) and relations to other organs (e.g. brain) . – p.48/192
  • 9. Theoretical Model(2) Comparison of methodologies should be done similarly: Comparisons of components and inter-component relations Components should be classified by their functions (what problems they address) Components should then be characterized by their structures Problem: methodologies and their components are often not rigorously defined Methodologies and their components themselves need to be modeled . – p.49/192
  • 10. Overview Modeling Methodology 1 Formalism Methodology 2 Build Base Build Process Model Framework Process Model Process Model Process Model Classify Components Classification Develop Select Develop Process Code Comparison Topics Process Code Topics Process Code Process Code Make Comparison Topics Topics Difference Summarize Differences Summary . – p.50/192
  • 11. Step 1: Build Process Model Develop a model, a more formalized description, of each of the two methodologies After doing so, methodology can hopefully be decomposed into components Problem: many components (e.g. guidelines, rules-of-thumb) lack precise semantics Model must be at higher abstraction level, yet be compact and clear A number of Software Process Modeling Formalisms (SPMF) have been developed for this . – p.51/192
  • 12. Build Process Model(2) SPM by Williams is a typical SPMF Development process is described as a set of activities: SPM = {activity} An activity is described by a set of preconditions, an action, a set of postconditions, and a set of messages: activity = {{precond.}, action, {postcond.}, {msg}} Activities may be composed of other activities and may be performed in parallel Messages provide a means of communication and synchronization among various activities . – p.52/192
  • 13. Step 2: Classify Components Having identified components, they are now classified This is done within a comparison framework, identifying components that address similar issues Typical issues are How is problem modeled? How is solution modeled? How is design documented? . – p.53/192
  • 14. Describing Comparison Issues Concept: Understanding problems of IS development General principles of coping with these problems Concrete strategies that guide development Artifact: A description involved in the development process (e.g. code, diagrams) . – p.54/192
  • 15. Describing Comparison Issues(2) Representation: Means for representing artifacts (e.g. document templates, design/modeling languages) Action: Physical and/or mental behaviors during development May create or modify an artifact . – p.55/192
  • 16. Step 3: Select Comparison Topics Topics should be selected based upon goals of a specific comparison Two general criteria can always be used: Components should be comparable Comparison between them should help in showing key differences . – p.56/192
  • 17. Select Comparison Topics(2) Classification may illustrate that two concepts address similar issues If so, one can select these two concepts for comparison and trace artifacts supporting the concepts representations representing the artifacts actions creating or modifying the artifacts And eventually find the artifacts, representations, and actions that could be compared . – p.57/192
  • 18. Step 4a: Develop Process Code Process model developed in step 1 may be too abstract We have to identify detailed differences between compared components This more detailed modeling is called process code (to distinguish it from process model) This step is optional . – p.58/192
  • 19. Step 4b: Make Comparison Typical criteria for comparing process code/model (again this depends on goal of comparison) Inter-component dependency Degree of human involvement Development procedure/order Scope of issues that methodology addresses . – p.59/192
  • 20. Step 5: Summarize Aims at providing readers with an overview and a conclusion Should be organized around the comparison topics Should help indicate the main differences between components . – p.60/192
  • 21. Summary of Theoretical Model Tries to help compare methodologies more systematically and objectively Has limitations It is almost impossible to capture all details of a methodology in a formal, rigorous model Modeling a methodology is a non-trivial task (ranging from hours to weeks) Conclusion: is probably not going to be used by practitioners, but helps understand findings of scientists . – p.61/192
  • 22. Checklists/Frameworks Lots of checklists for choosing a methodology exist Contain many questions of the following or similar form How big is project? (small/medium/large) How much experience does project manager have (little/medium/much) What tool support is expected (no/partly/full) etc. After evaluating answers according to a certain scheme, an answer is delivered . – p.62/192
  • 23. Checklists(2) This approach has many drawbacks: Methodologies (and their context) are much too complicated to be forced into simple recipes Answer materializes in a “magic” way, no knowledge about the rationale of the checklist creator . – p.63/192
  • 24. Frameworks Frameworks are a more systematic way for evaluating methodologies Potential user (of a methodology) does not just check boxes and waits for answer Still somewhat subjective, will not satisfy everyone Frameworks raise important questions that user has to answer for him-/herself We are looking at two frameworks: NIMSAD: Normative Information Model-based System Analysis and Design Framework by Avison/Fitzgerald . – p.64/192
  • 25. NIMSAD Aims: Help understand the area of problem solving (in general) Help evaluate methodologies, their structures, steps, form, nature, etc. Help in drawing conclusions Before presenting actual comparison, we take a look at how IS development (or problem solving in general) is perceived under NIMSAD . – p.65/192
  • 26. Rationale NIMSAD framework has four essential elements Problem situation (methodology context) Intended problem solver (methodology user) Problem-solving process (methodology itself) Evaluation of the above . – p.66/192
  • 27. Problem Situation Client Organizations serve as context for information systems This context is important for methodologies: Effectiveness of IS can only be judged in this context Interaction with organizational members during development Interpersonal relationships formed in this context . – p.67/192
  • 28. Problem Solver Problem Solver Client However powerful, useful, and effective a methodology may be, success often depends on personal characteristics of problem solver: What does he/she select as relevant or dismisses as irrelevant? What are the implications of this selection? . – p.68/192
  • 29. Mental Constructs of Problem Solver Perceptual process: One of the most influential characteristics Acts as a filter to determine what is perceived as significant Each person perceives reality differently Problematic if perception of problem solver does not match that of stakeholder . – p.69/192
  • 30. Mental Constructs of Problem Solver(2) Values/Ethics: Beliefs that we consider to be “good” Help pass judgment on situations Example: participation High economic values: participation is a waste of time High social values: highly effective . – p.70/192
  • 31. Mental Constructs of Problem Solver(3) Motives/Prejudices Personal needs that we try to satisfy Opinions that we form from our values and experiences Becoming conscious of these is helpful . – p.71/192
  • 32. Mental Constructs of Problem Solver(4) Experience, knowledge, and skills Acquired from education, training, and practical work Have to match requirements of the methodology to be used . – p.72/192
  • 33. Mental Constructs of Problem Solver(5) Reasoning ability/Structuring processes Ability to abstract essential aspects and structure them in a meaningful way Thinking in different ways helps to gain new insights Communicating those thoughts in a clear way helps other people to understand reasons . – p.73/192
  • 34. Mental Constructs of Problem Solver(6) Roles In the development process, persons take on different roles Advisor Analyst Consultant Designer Implementer ... Conflicts between expected role behavior and natural behavior of a person results in stress . – p.74/192
  • 35. Problem-solving Process Methodology is a way of problem solving Needs to help perform three essential phases: Phase 1: Problem formulation Phase 2: Solution design Phase 3: Design implementation . – p.75/192
  • 36. Phase 1: Problem Formulation Stage 1: Understanding the “situation of concern” Mental construct Problem Solver Client Mental construct can have several effects on grasping the situation . – p.76/192
  • 37. Stage 1: Understanding situation Deriving a boundary of concern Mental construct Problem Solver Client Boundary of concern . – p.77/192
  • 38. Boundary of Concern If we do not subject mental constructs to self-critical examination, we may end up accepting predefined boundaries of client construct implicit boundaries (where there are none) not identifying relevant elements A methodology should support this structuring of problem by supplying appropriate methods of investigation . – p.78/192
  • 39. Boundary of Concern(2) Why is boundary so important? It excludes many elements from subsequent steps If causes for identified problems lie outside of boundary, it doesn’t matter how well content of boundary is redesigned actual problem will not be solved . – p.79/192
  • 40. Stage 2: Performing Diagnosis Where are we now? Stage 1 is more or less a description of situation Diagnosis aims at understanding reasons for current situation Helps identify gaps of knowledge or misunderstandings Helps in communicating with clients in deriving agreed understandings Two levels of expression: Conceptual/logical level Physical level . – p.80/192
  • 41. Conceptual/Logical Level Describes general and situation-specific information on an abstract level (“what” issues) Details include information flows, people’s tasks, roles, functions, etc. Expressed with the help of rich pictures, variance grids, data flow diagrams, actigrams/datagrams, bubble charts, etc. . – p.81/192
  • 42. Physical Level Describes physical characteristics of a situation (“who” or “how” issues) Details include actual products, specific individuals, documents, computers (performance, memory capacities, etc.) Expressed in descriptive of tabular form . – p.82/192
  • 43. Stage 3: Defining Prognosis Where do we want to be and why? Client wants to change current state Prognosis is expression of desired state Focus is not to create content of future state (that is role of design), but to understand rationale for change Depending on outcome of this stage, project may not be started at all . – p.83/192
  • 44. Stage 4: Defining Problems What is preventing realization of desired state? Analyzing the gap between current and desired state Identify and critically examine the absence and/or relationships of elements Results in identifying problem areas (written down in concrete problem statements) . – p.84/192
  • 45. Stage 5: Deriving Notional Systems Specifying requirements of a system If such a system is built, we eliminate the identified problems change from current state to described state . – p.85/192
  • 46. Phase 2: Solution Design Here we fill prognosis with content Starting point is notional system Consists of two stages: Stage 6: Conceptual/logical design Stage 7: Physical design . – p.86/192
  • 47. Stage 6: Conceptual/Logical Design Design system on an abstract level (similar to the level used for conceptual/logical analysis) Most structured methodologies construct data flows/processes and/or ER-diagrams ignoring roles/functions of individuals . – p.87/192
  • 48. Stage 7: Physical Design Selection of ways and means to realize logical design Usually a range of different realizations are possible Additional criteria may play a role in selection: Efficiency Reliability Accuracy Security/Safety Availability . – p.88/192
  • 49. Phase 3: Implementation This phase determines success of whole development process Demonstrates validity of all previous steps Consists of several tasks (that we are going to look at) . – p.89/192
  • 50. Tasks Strategy and planning Identify and adapt a strategy for sequencing all activities Management and control Set up management and control functions to help supervise activities . – p.90/192
  • 51. Tasks(2) Environment Preparation Adjust surrounding for future system (e.g make changes to buildings, cabling, train users) System development Identify activities and needed resources (e.g. recruitment of new personnel, acquisition of hard-/software, coding of programs, testing) Changeover Integrate the new system (and introduce other changes) into the prepared environment . – p.91/192
  • 52. Evaluation Methodology should not be a simple execution of steps Should help bring about an efficient and effective transformation of situations Role of (evaluation) framework is to question methodologies as to what they attempt to transform why they try to transform it how they help in undertaking the transformation . – p.92/192
  • 53. Evaluation(2) Evaluation of the three elements problem situation, problem solver, problem-solving process Before the project: Initial assessment of the three elements During the project: Changes may alter the use of methodology After the project: Evaluate if problems were solved and how methodology helped in doing so . – p.93/192
  • 54. Applying NIMSAD MIMSAD is not a methodology itself (does not provide content to different stages) It is about finding out what elements in the framework a methodology addresses in what order and how Methodology does not have to be an exact one-to-one mapping to framework . – p.94/192
  • 55. Applying NIMSAD(2) NIMSAD provides important questions to check Answers have to be found by potential users of a methodology∗ Questions for all elements of NIMSAD More complete list in NIMSAD book, here just an excerpt of most important ones ∗ The following might be disturbing for some students: lots of questions without answers . – p.95/192
  • 56. Problem Situation Who are the clients? How strong is their commitment? Does methodology help in identifying clients and their concerns? What’s the situation like? (well-structured, less well-structured, ill-structured) For which situation is methodology suitable? What does situation demand (identify problems, design solutions for already identified problems, implement an already designed solution)? . – p.96/192
  • 57. Problem Solver What level of abstract and technical thinking does methodology demand from user? Do philosophical views advocated by methodology match user’s view? What knowledge sets and skills does methodology require from user? Are mental constructs of user considered? . – p.97/192
  • 58. Problem-solving process Stage 1: Understanding situation of concern Does methodology offer assistance for boundary construction? What is role of client (inclusion/participation or external)? Does methodology discuss particular methods of investigation? . – p.98/192
  • 59. Problem-solving process(2) Stage 2: Diagnosis What techniques does methodology offer for expressing situation characteristics? What level of expression is advocated (conceptual/logical and/or physical) What environmental (context) information is captured? What tools and techniques are available? . – p.99/192
  • 60. Problem-solving process(3) Stage 3: Prognosis Is this stage supported at all? How does methodology offer help in defining prognosis? How are desired states established? . – p.100/192
  • 61. Problem-solving process(4) Stage 4: Defining Problems What problems or problem types are of concern to the methodology? How does it help in deriving problem statements? Are problem statements evaluated (or just accepted)? . – p.101/192
  • 62. Problem-solving process(5) Stage 5: Deriving notional systems Does methodology derive notional systems from identified problems? Does it offer help in formulating notional systems? . – p.102/192
  • 63. Problem-solving process(6) Design (Stage 6: Conceptual/Logical Design, Stage 7: Physical Design) Does methodology accept client’s notional system as starting point? Does it distinguish between logical and physical design stages? Does it help in formulating design solutions? What aspects cannot be captured by methodology? Is a user on his/her own when trying to fill these gaps? How experienced is user to be expected in the solution domain? Who decides on which solution to take? . – p.103/192
  • 64. Problem-solving process(7) Stage 8: Implementation What steps does methodology offer for developing the IS? What does it offer in terms of tools and techniques? How does it help in handling major changes in the notional system at this time? . – p.104/192
  • 65. Evaluation Does methodology provide techniques for evaluating itself and its outputs for problem situation? problem solver? problem-solving process? . – p.105/192
  • 66. Evaluating Methodologies We are going to look at two methodologies in the framework of NIMSAD: SSADM SSM . – p.106/192
  • 67. SSADM: Problem Situation Organizational context has higher priority than in other structured methodologies Commitment of users is checked (partially) during feasibility study Still SSADM is mainly concerned with formal descriptions of data and processes via data flow diagrams Irregular and changing patterns often left out of domain of SSADM . – p.107/192
  • 68. SSADM: Problem Solver SSADM does not alert its users to their mental constructs E.g. two different (competent) SSADM users may arrive at two different sets of data flow diagrams Most dominant knowledge and skills required are of technical nature In practice, however, users also need social skills to make methodology effective (not made explicit by methodology) . – p.108/192
  • 69. SSADM: Problem-solving Process Stage 1: Understanding situation of concern Boundary construction is trial and error within SSADM Assumes that data flow diagrams can help construct boundary This often establishes an implicit boundary (anything that cannot be captured in DFDs remains outside) . – p.109/192
  • 70. SSADM: Problem-solving Process(2) Stage 2: Diagnosis SSADM makes most useful contribution to this stage Use of DFDs provide clear ways of expressing flows of formal data Starts with physical data flows (describing how data is processed) Then tries to extract underlying meaning into a logical data model and logical data flow model Does so by removing physical elements of elementary processes and then reconstructing/regrouping transformed processes . – p.110/192
  • 71. SSADM: Problem-solving Process(3) Stage 2: Diagnosis Logicalization may be problematic, as physical constraints may disappear Example: agent updates customer record on laptop, later this is synchronized with headquarters After logicalization there may only be one customer record file left. . . Regular and frequent patterns get modeled, special cases may be forgotten . – p.111/192
  • 72. SSADM: Problem-solving Process(4) Stage 3: Prognosis Defining prognosis is not really possible in SSADM Although better than in other structured approaches, as clients get to choose among different Business Systems Options (BSO) Feasibility study also helps in deciding if benefits outweigh costs Rationale of clients’ desired states may not become clear (it is assumed that clients know what they want) . – p.112/192
  • 73. SSADM: Problem-solving Process(5) Stage 4: Defining problems There is an explicit problem definition phase during feasibility study At this point things are still vague, however As there is no real prognosis, problems cannot be derived by looking at differences between diagnosis and prognosis . – p.113/192
  • 74. SSADM: Problem-solving Process(6) Stage 5: Deriving notional systems Strength of SSADM is in formalizing requirements of client Achieved by modeling the data flows of the required system with help of DFDs Functions and user interfaces of the system can be specified Developing specification prototype helps in getting feedback from client Again, assumes that client knows what he/she wants . – p.114/192
  • 75. SSADM: Problem-solving Process(7) Stages 6 and 7: Design SSADM distinguishes between logical and physical design We are going to look at these in turn . – p.115/192
  • 76. SSADM: Problem-solving Process(8) Stages 6: Logical Design Most useful and rigorous techniques offered by SSADM are DFDs Designs are usually created by modifying logical diagnosis diagram using requirements and feasibility study as guideline SSADM also very useful for structuring dialogues Does not take any interest in how design decisions will affect environment (BSO only looks at requirements) . – p.116/192
  • 77. SSADM: Problem-solving Process(9) Stages 7: Physical Design SSADM provide mainly generic guidelines Many decisions depend on technical issues specific to chosen environment Environment is chosen in Technical System Option (TSO) phase of SSADM In TSO technical alternatives drawn up from requirements are presented to clients for decision Better than other structured approaches (where there is no TSO) Still problems for non-computerized areas of design . – p.117/192
  • 78. SSADM: Problem-solving Process(10) Stages 8: Implementation Completely missing (one of the weakest points) . – p.118/192
  • 79. SSADM: Evaluation Completely missing (the other of the weakest points) . – p.119/192
  • 80. SSADM: Summary SSADM is/was popular methodology for formal design of IS Better in “soft”, non-technical aspects than other structured approaches However, still a technical methodology with weak points in “soft” aspects of IS development, the implementation phase, and self-evaluation At least, does not claim to cover “soft” aspects adequately . – p.120/192
  • 81. SSM: Problem Situation SSM is one of the few methodologies that makes comments about problem situation SSM is applicable to ill-structured situations In contrast to structured methodologies (which seek a “single” truth), SSM considers many different views Encourages its users to develop new perceptions of organizations through systems thinking SSM recognizes three roles: client (initiates study), problem owner (identifies relevant systems), problem solver (uses SSM to resolve client’s concerns) . – p.121/192
  • 82. SSM: Problem Solver SSM recognizes the need for reflection Considers mental constructs of its users Methodology user takes on role of debate facilitator and learner However, SSM relies on its users to have considerable conceptualization, abstraction, philosophical, and political skills . – p.122/192
  • 83. SSM: Problem-solving Process Stage 1: Understanding situation of concern SSM provides insightful contributions to boundary construction Boundaries, problem ownership, problem content, and context issues are all open to question Context of a problem situation can be captured in rich pictures . – p.123/192
  • 84. SSM: Problem-solving Process(2) Stage 2: Diagnosis SSM does not prescribe particular form of expression to capture essential aspects of an organization Any technique may be used: graphs, text, animation, pictures, charts, tables, etc. (“rich pictures”) This is a strength and a weakness: Gives users a lot of freedom But also a lot of responsibility (user has to know what he/she is doing) SSM does not distinguish between logical and physical diagnosis descriptions . – p.124/192
  • 85. SSM: Problem-solving Process(3) Stage 3: Prognosis/Stage 4: Defining problems are skipped (details later) Are handled a little differently in SSM . – p.125/192
  • 86. SSM: Problem-solving Process(4) Stage 5: Deriving notional systems SSM does not derive notional systems from identified problems (see Stage 4) Attempts to develop many potentially relevant notional systems Formulates notional systems with root definitions (CATWOE) . – p.126/192
  • 87. SSM: Problem-solving Process(5) Stage 6/7: Design No distinction between logical and physical design Uses root definitions as guide for design process Design is not a strong point of SSM Not quite clear how to derive at an activity-based design from system-based root definition . – p.127/192
  • 88. SSM: Problem-solving Process(6) Stage 8: Implementation Missing . – p.128/192
  • 89. SSM: Problem-solving Process(7) Stage 3: Prognosis SSM operates in environment where there are multiple desired states clients who are unsure of their desired states SSM does not attempt to construct clear prognosis outline Each root definition implies a particular desired state There are many potentially relevant notional systems . – p.129/192
  • 90. SSM: Problem-solving Process(8) Stage 4: Defining problems As there is no clear prognosis, it is difficult to derive problem statements from mapping diagnosis to prognosis SSM maps design models against diagnosis to determine relevance Decision on relevance is carried out by conducting debate with participants Practically, Stage 4 is deferred until design is finished . – p.130/192
  • 91. SSM: Evaluation SSM does not have an explicit step for evaluation Nevertheless, it propagates learning When evaluation is done, usually focus on problem-solving process Mostly done through SSM case studies (UK Health Service, Shell, IS planning) . – p.131/192
  • 92. SSM: Summary SSM is a methodology for ill-structured problem situations Allows discussions on different viewpoints of participants Author of SSM also encourages debate and discussions about SSM SSM is in constant process of refinement to meet valid criticism . – p.132/192
  • 93. Framework by Avison/Fitzgerald Has seven basic elements: Philosophy Model Techniques and Tools Scope Outputs Practice Product . – p.133/192
  • 94. Philosophy The principle (or set of principles) that underlies a methodology Several areas are distinguished Paradigm Objectives/Domain Target . – p.134/192
  • 95. Paradigm Science paradigm vs. systems paradigm Science paradigm explains world through reductionism, repeatability, refutation Systems paradigm is concerned with whole picture, interrelationships between parts of the whole Simplified this means Science paradigm ≡ “hard” thinking Systems paradigm ≡ “soft” thinking . – p.135/192
  • 96. Paradigm(2) Debate has been extended to Epistemology: study of knowledge, how we acquire knowledge Ontology: study of being (or what “is”) Let’s make a short excursion into philosophy . – p.136/192
  • 97. Epistemology The two extreme positions are positivism and interpretivism Positivism There is an objective reality beyond the human mind Ideas and theories need to be tested against this reality This is done via experiments, surveys, field studies, etc. . – p.137/192
  • 98. Epistemology(2) Interpretivism Knowledge of world is constructed through a person’s lived experience Reality is constructed socially Interpretivists use case studies, hermeneutics, phenomenology, etc. Hermeneutics: theory and practice of interpretation∗ Phenomenology: study of phenomena (appearance of things) from a first person point of view ∗ Hermeneutic cycle is process by which we return to a text (or the world), and derive a new interpretation – perhaps a new one every time or a new one for every interpreter . – p.138/192
  • 99. Ontology The two extreme positions here are realism and nominalism Realism There are universal entities and universal terms to describe them E.g. many individual horse entities, but there is also general concept of an “ideal” horse Nominalism There are no universal entities, we can only refer to concrete, individual entities E.g. many individual horse entities, speaking of horses in general is mere convenience for speaking of many things at once . – p.139/192
  • 100. Excursion into Philosophy Usually extreme positions not encountered in pure form A positivist confronted with a loaded gun will not start calculating trajectories, possible areas of impact, he will experience strong (subjective) emotions An interpretivist paying £1000 into his bank account will not accept the teller’s subjective point of view that crediting £800 is close enough . – p.140/192
  • 101. Paradigm(3) Positivism Objectivist Epistemology Interpretivism approaches Subjectivist approaches Realism Nominalism Ontology . – p.141/192
  • 102. Objectives/Domain What is methodology trying to achieve within an organization? Development of a purely “computerized” IS? Does it take wider view including other tasks? Does it try to reengineer whole business processes/change strategy of organization? . – p.142/192
  • 103. Target For what types of problems environments types or sizes of organizations is methodology applicable? . – p.143/192
  • 104. Model What constructs does methodology use to model the real world? Verbal Analytic/mathematical Iconic/pictorial/schematic Simulation . – p.144/192
  • 105. Techniques and Tools What techniques and tools are provided to support user of methodology? . – p.145/192
  • 106. Scope Which phases of life cycle of IS development does methodology cover? strategy, feasibility, analysis, logical design, physical design, programming, testing, implementation, evaluation, maintenance Problematic if methodology does not follow life cycle . – p.146/192
  • 107. Outputs What is methodology producing in terms of deliverables? This can range from feasibility studies, requirements and analysis specifications up to working implementations of IS When are these outputs generated? . – p.147/192
  • 108. Practice What is the background of methodology (commercial or academic)? What is the user base (numbers and types of users)? Who are the participants and what are their required skill levels (can users apply methodology themselves or are highly skilled consultants necessary)? . – p.148/192
  • 109. Product What do you get for your money, i.e. when purchasing methodology, what is included? Software tools Written documentation Training Help service . – p.149/192
  • 110. Applying Avison/Fitzgerald Framework We are looking at SSADM and SSM in light of Avison/Fitzgerald framework Some arguments have already been presented in NIMSAD framework Therefore, this is kept shorter . – p.150/192
  • 111. Philosophy Paradigm SSADM Follows science paradigm Belongs to objectivist approaches SSM Clearly follows systems paradigm Belongs to subjectivist approaches . – p.151/192
  • 112. Philosophy(2) Objectives/Domain SSADM Has objective of developing computerized IS Neglects organizational aspects SSM Tries to capture a broader view, including organizational context . – p.152/192
  • 113. Philosophy(3) Target SSADM Data flow diagrams not applicable for all types of problems (decision support systems, web applications) Targets large organizations (although there is slimmer version called MicroSSADM) SSM Applicable in human activity situations with ill-structured problems . – p.153/192
  • 114. Model SSADM Main modeling concept: data flow diagrams SSM Very flexible “rich pictures” . – p.154/192
  • 115. Techniques and Tools SSADM Main technique: structured approach to modeling and design Tools like drawing tools, tools for project management, code generation seen as useful, but not essential SSM Organizational techniques Does not advocate or mention specific tools . – p.155/192
  • 116. Scope SSADM includes (Strategy), feasibility, analysis, logical design, physical design SSM includes Strategy, (feasibility), analysis, (logical design) . – p.156/192
  • 117. Outputs SSADM Basically follows SDLC, so in each phase certain documents are produced (e.g. feasibility study, requirements specification, design documents) SSM Divided into seven stages, at the end of which certain documents are produced (e.g. rich pictures, root definitions) . – p.157/192
  • 118. Practice SSADM Commercial background “Traditional” participants: analysts, designers, (programmers) SSM Academic background Participants: much greater role of client and problem owner . – p.158/192
  • 119. Practice(2) Difficult to evaluate user base, some numbers: Fitzgerald 1999: 57% of organizations use methodologies: 11% purely commercial ones, 30% adopted commercial ones, 59% unique ones Russo/Wynekoop 1995: of 132 organizations using a methodology, 77% used structured approach, 8% prototyping/iterative approach, 5% RAD approach . – p.159/192
  • 120. Product SSADM Large store of manuals, books, etc. Certificate of proficiency can be acquired SSM A set of academic papers and books . – p.160/192
  • 121. Capability Maturity Model (CMM) Created by the Software Engineering Institute at Carnegie Mellon Originally aimed at helping Department of Defense assess capabilities of vendors and sub-contractors Not so much about methodologies themselves, but about how well an organization organizes its processes Has five levels, level 5 being the best one . – p.161/192
  • 122. Overview Improving Optimizing process Predictable Managed process Standard Defined process Disciplined Repeatable process Initial . – p.162/192
  • 123. Initial (Level 1) Development is characterized as being ad hoc or even chaotic Processes are not defined Everything depends on skilled individuals to get their act together Software is typically delivered late and over budget Little effective management and control Unfortunately, too many organizations are still at this level . – p.163/192
  • 124. Repeatable (Level 2) Basic project management processes are established Allows tracking of costs, schedules, functionality Somme process discipline is in place Earlier success on projects with similar applications can be repeated . – p.164/192
  • 125. Defined (Level 3) Management and engineering activities are documented, standardized, and integrated into a standard process All projects use an approved, tailored version of the organization’s process Training programs are implemented to ensure that staff has necessary skill . – p.165/192
  • 126. Managed (Level 4) Detailed measures of the process and product quality are collected and analyzed Process and products are quantitatively understood and controlled Risks in moving to new application domains are known and carefully managed . – p.166/192
  • 127. Optimizing (Level 5) Entire organization is focused on continuous process improvement Organization can identify weaknesses and prevent potential defects beforehand Cost/benefit analyses of new technologies base on data on effectiveness of current process . – p.167/192
  • 128. Summary CMM is based on manufacturing and product-building view of systems development This is not always appropriate as often IS development is more of a creative art than a science CMM is mainly concerned with (technical) aspects of software development, not the wider area of IS development High levels in CMM do not always lead to high quality software, just well-documented processes . – p.168/192
  • 129. Chapter Summary Comparing methodologies is a very difficult task Unfortunately, no silver bullet for doing so has been found yet As many views as writers on the subject . – p.169/192