comparison of methodologies

129
Chapter 13 Comparison of Methodologies . – p.41/192

Upload: guestc990b6

Post on 08-May-2015

8.059 views

Category:

Technology


1 download

DESCRIPTION

Comparison Of Methodologies

TRANSCRIPT

Page 1: Comparison Of Methodologies

Chapter 13

Comparison ofMethodologies

. – p.41/192

Page 2: Comparison Of Methodologies

Picking a Methodology

You’ve got a team of 10-12 developers eagerly awaitingyour instructions.

Which methodology do you pick?

Usually one of the following things is done

Choice dictated by the methodologies usedpreviously by the developer’s bossUsing a new “hyped” methodology“Heard from a friend of my brother’s wife that it’sgood.”There was this lecturer at the College. . .

Comparing methodologies is like comparing apples tooranges

. – p.42/192

Page 3: Comparison Of Methodologies

Comparing Apples to Oranges

Has been done before (using a Nicolet 740 FTIRspectrometer)

In Annals of improbable research (Scott A. Sandford)

Result: the two are very similar

. – p.43/192

Page 4: Comparison Of Methodologies

Comparing Apples to Oranges(2)

Other people might have different opinions

Biologist points to taxonomy, describing similarities anddifferences

Nutrition expert has still another opinion...

Observation: depending on who you ask, you getdifferent answers

. – p.44/192

Page 5: Comparison Of Methodologies

Comparing Methodologies

Same with methodologies:

Computer scientist: tries to develop general(theoretical) framework for comparing methodologiesDeveloper: tries to judge situation from priorexperiences and case studiesSenior management: tries to find out, if methodologywill give certain quality assurancesVendor: tries to sell own product (so you have toread between the lines)

. – p.45/192

Page 6: Comparison Of Methodologies

Comparing Methodologies(2)

So, how can we compare methodologies?

1. Describe “ideal” methodology, then compare to othermethodologies

Who determines what’s ideal?If we find ideal methodology, why use othermethodologies?

2. Construct general comparison tool by selectingappropriate features

3. Develop a contingency framework to mapappropriate methodology to a particular environment

4. Develop a common frame of reference for viewingdifferent methodologies (provides a“meta-language”)

. – p.46/192

Page 7: Comparison Of Methodologies

Comparing Methodologies(2)

We are going to look at:

Theoretical model for comparison (Song andOsterweil) (2.)Checklists (3.)/Frameworks (4.)Capability Maturity Model (CMM levels)

We are not going to look at:

Brochures of vendors

. – p.47/192

Page 8: Comparison Of Methodologies

Theoretical Model

Song and Osterweil criticize that previous comparisonmethods have been very unscientific

Analysis and comparisons are activities common tomany scientific fields

E.g. comparing animals in biology in a systematic andobjective way:

Comparison of organs and inter-organ relationsUsually organs (e.g. eyes) are classified by theirfunctions (e.g. vision)Using this classification, organs having the same orsimilar functions can be identified and comparedOne compares structures (e.g. shape) and relationsto other organs (e.g. brain)

. – p.48/192

Page 9: Comparison Of Methodologies

Theoretical Model(2)

Comparison of methodologies should be done similarly:

Comparisons of components and inter-componentrelationsComponents should be classified by their functions(what problems they address)Components should then be characterized by theirstructures

Problem: methodologies and their components areoften not rigorously defined

Methodologies and their components themselves needto be modeled

. – p.49/192

Page 10: Comparison Of Methodologies

Overview

ModelingFormalismMethodology 1 Methodology 2

BaseFramework

BuildProcess Model

BuildProcess Model

ClassifyComponents

SelectComparison Topics

MakeComparison

SummarizeDifferences

DevelopProcess Code

DevelopProcess Code

Classification

Topics

Difference

Summary

Process Model Process Model

Process Code Process Code

Topics Topics

. – p.50/192

Page 11: Comparison Of Methodologies

Step 1: Build Process Model

Develop a model, a more formalized description, ofeach of the two methodologies

After doing so, methodology can hopefully bedecomposed into components

Problem: many components (e.g. guidelines,rules-of-thumb) lack precise semantics

Model must be at higher abstraction level, yet becompact and clear

A number of Software Process Modeling Formalisms(SPMF) have been developed for this

. – p.51/192

Page 12: Comparison Of Methodologies

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, anaction, a set of postconditions, and a set of messages:

activity = {{precond.}, action, {postcond.}, {msg}}

Activities may be composed of other activities and maybe performed in parallel

Messages provide a means of communication andsynchronization among various activities

. – p.52/192

Page 13: Comparison Of Methodologies

Step 2: Classify Components

Having identified components, they are now classified

This is done within a comparison framework, identifyingcomponents that address similar issues

Typical issues are

How is problem modeled?How is solution modeled?How is design documented?

. – p.53/192

Page 14: Comparison Of Methodologies

Describing Comparison Issues

Concept:

Understanding problems of IS developmentGeneral principles of coping with these problemsConcrete strategies that guide development

Artifact:

A description involved in the development process(e.g. code, diagrams)

. – p.54/192

Page 15: Comparison Of Methodologies

Describing Comparison Issues(2)

Representation:

Means for representing artifacts (e.g. documenttemplates, design/modeling languages)

Action:

Physical and/or mental behaviors duringdevelopmentMay create or modify an artifact

. – p.55/192

Page 16: Comparison Of Methodologies

Step 3: Select Comparison Topics

Topics should be selected based upon goals of aspecific comparison

Two general criteria can always be used:

Components should be comparableComparison between them should help in showingkey differences

. – p.56/192

Page 17: Comparison Of Methodologies

Select Comparison Topics(2)

Classification may illustrate that two concepts addresssimilar issues

If so, one can select these two concepts for comparisonand trace

artifacts supporting the conceptsrepresentations representing the artifactsactions creating or modifying the artifacts

And eventually find the artifacts, representations, andactions that could be compared

. – p.57/192

Page 18: Comparison Of Methodologies

Step 4a: Develop Process Code

Process model developed in step 1 may be too abstract

We have to identify detailed differences betweencompared components

This more detailed modeling is called process code (todistinguish it from process model)

This step is optional

. – p.58/192

Page 19: Comparison Of Methodologies

Step 4b: Make Comparison

Typical criteria for comparing process code/model(again this depends on goal of comparison)

Inter-component dependencyDegree of human involvementDevelopment procedure/orderScope of issues that methodology addresses

. – p.59/192

Page 20: Comparison Of Methodologies

Step 5: Summarize

Aims at providing readers with an overview and aconclusion

Should be organized around the comparison topics

Should help indicate the main differences betweencomponents

. – p.60/192

Page 21: Comparison Of Methodologies

Summary of Theoretical Model

Tries to help compare methodologies moresystematically and objectively

Has limitations

It is almost impossible to capture all details of amethodology in a formal, rigorous modelModeling a methodology is a non-trivial task (rangingfrom hours to weeks)

Conclusion: is probably not going to be used bypractitioners, but helps understand findings of scientists

. – p.61/192

Page 22: Comparison Of Methodologies

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 certainscheme, an answer is delivered

. – p.62/192

Page 23: Comparison Of Methodologies

Checklists(2)

This approach has many drawbacks:

Methodologies (and their context) are much toocomplicated to be forced into simple recipesAnswer materializes in a “magic” way, no knowledgeabout the rationale of the checklist creator

. – p.63/192

Page 24: Comparison Of Methodologies

Frameworks

Frameworks are a more systematic way for evaluatingmethodologies

Potential user (of a methodology) does not just checkboxes and waits for answer

Still somewhat subjective, will not satisfy everyone

Frameworks raise important questions that user has toanswer for him-/herself

We are looking at two frameworks:

NIMSAD: Normative Information Model-basedSystem Analysis and DesignFramework by Avison/Fitzgerald

. – p.64/192

Page 25: Comparison Of Methodologies

NIMSAD

Aims:

Help understand the area of problem solving (ingeneral)Help evaluate methodologies, their structures, steps,form, nature, etc.Help in drawing conclusions

Before presenting actual comparison, we take a look athow IS development (or problem solving in general) isperceived under NIMSAD

. – p.65/192

Page 26: Comparison Of Methodologies

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

Page 27: Comparison Of Methodologies

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 contextInteraction with organizational members duringdevelopmentInterpersonal relationships formed in this context

. – p.67/192

Page 28: Comparison Of Methodologies

Problem Solver

ClientProblem Solver

However powerful, useful, and effective a methodologymay be, success often depends on personalcharacteristics of problem solver:

What does he/she select as relevant or dismisses asirrelevant?What are the implications of this selection?

. – p.68/192

Page 29: Comparison Of Methodologies

Mental Constructs of Problem Solver

Perceptual process:

One of the most influential characteristicsActs as a filter to determine what is perceived assignificantEach person perceives reality differentlyProblematic if perception of problem solver does notmatch that of stakeholder

. – p.69/192

Page 30: Comparison Of Methodologies

Mental Constructs of Problem Solver(2)

Values/Ethics:

Beliefs that we consider to be “good”Help pass judgment on situationsExample: participation

High economic values: participation is a waste oftimeHigh social values: highly effective

. – p.70/192

Page 31: Comparison Of Methodologies

Mental Constructs of Problem Solver(3)

Motives/Prejudices

Personal needs that we try to satisfyOpinions that we form from our values andexperiencesBecoming conscious of these is helpful

. – p.71/192

Page 32: Comparison Of Methodologies

Mental Constructs of Problem Solver(4)

Experience, knowledge, and skills

Acquired from education, training, and practical workHave to match requirements of the methodology tobe used

. – p.72/192

Page 33: Comparison Of Methodologies

Mental Constructs of Problem Solver(5)

Reasoning ability/Structuring processes

Ability to abstract essential aspects and structurethem in a meaningful wayThinking in different ways helps to gain new insightsCommunicating those thoughts in a clear way helpsother people to understand reasons

. – p.73/192

Page 34: Comparison Of Methodologies

Mental Constructs of Problem Solver(6)

Roles

In the development process, persons take ondifferent roles

AdvisorAnalystConsultantDesignerImplementer. . .

Conflicts between expected role behavior andnatural behavior of a person results in stress

. – p.74/192

Page 35: Comparison Of Methodologies

Problem-solving Process

Methodology is a way of problem solving

Needs to help perform three essential phases:

Phase 1: Problem formulationPhase 2: Solution designPhase 3: Design implementation

. – p.75/192

Page 36: Comparison Of Methodologies

Phase 1: Problem Formulation

Stage 1: Understanding the “situation of concern”

ClientProblem Solver

Mental construct

Mental construct can have several effects on graspingthe situation

. – p.76/192

Page 37: Comparison Of Methodologies

Stage 1: Understanding situation

Deriving a boundary of concern

Client

Mental construct

Problem Solver

Boundary of concern

. – p.77/192

Page 38: Comparison Of Methodologies

Boundary of Concern

If we do not subject mental constructs to self-criticalexamination, we may end up

accepting predefined boundaries of clientconstruct implicit boundaries (where there are none)not identifying relevant elements

A methodology should support this structuring ofproblem by supplying appropriate methods ofinvestigation

. – p.78/192

Page 39: Comparison Of Methodologies

Boundary of Concern(2)

Why is boundary so important?

It excludes many elements from subsequent stepsIf causes for identified problems lie outside ofboundary,

it doesn’t matter how well content of boundary isredesignedactual problem will not be solved

. – p.79/192

Page 40: Comparison Of Methodologies

Stage 2: Performing Diagnosis

Where are we now?

Stage 1 is more or less a description of situation

Diagnosis aims at understanding reasons for currentsituation

Helps identify gaps of knowledge or misunderstandings

Helps in communicating with clients in deriving agreedunderstandings

Two levels of expression:

Conceptual/logical levelPhysical level

. – p.80/192

Page 41: Comparison Of Methodologies

Conceptual/Logical Level

Describes general and situation-specific information onan 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, bubblecharts, etc.

. – p.81/192

Page 42: Comparison Of Methodologies

Physical Level

Describes physical characteristics of a situation (“who”or “how” issues)

Details include actual products, specific individuals,documents, computers (performance, memorycapacities, etc.)

Expressed in descriptive of tabular form

. – p.82/192

Page 43: Comparison Of Methodologies

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 roleof design), but to understand rationale for change

Depending on outcome of this stage, project may not bestarted at all

. – p.83/192

Page 44: Comparison Of Methodologies

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/orrelationships of elements

Results in identifying problem areas (written down inconcrete problem statements)

. – p.84/192

Page 45: Comparison Of Methodologies

Stage 5: Deriving Notional Systems

Specifying requirements of a system

If such a system is built, we

eliminate the identified problemschange from current state to described state

. – p.85/192

Page 46: Comparison Of Methodologies

Phase 2: Solution Design

Here we fill prognosis with content

Starting point is notional system

Consists of two stages:

Stage 6: Conceptual/logical designStage 7: Physical design

. – p.86/192

Page 47: Comparison Of Methodologies

Stage 6: Conceptual/Logical Design

Design system on an abstract level (similar to the levelused for conceptual/logical analysis)

Most structured methodologies construct dataflows/processes and/or ER-diagrams ignoringroles/functions of individuals

. – p.87/192

Page 48: Comparison Of Methodologies

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:

EfficiencyReliabilityAccuracySecurity/SafetyAvailability

. – p.88/192

Page 49: Comparison Of Methodologies

Phase 3: Implementation

This phase determines success of whole developmentprocess

Demonstrates validity of all previous steps

Consists of several tasks (that we are going to look at)

. – p.89/192

Page 50: Comparison Of Methodologies

Tasks

Strategy and planning

Identify and adapt a strategy for sequencing allactivities

Management and control

Set up management and control functions to helpsupervise activities

. – p.90/192

Page 51: Comparison Of Methodologies

Tasks(2)

Environment Preparation

Adjust surrounding for future system (e.g makechanges to buildings, cabling, train users)

System development

Identify activities and needed resources (e.g.recruitment of new personnel, acquisition ofhard-/software, coding of programs, testing)

Changeover

Integrate the new system (and introduce otherchanges) into the prepared environment

. – p.91/192

Page 52: Comparison Of Methodologies

Evaluation

Methodology should not be a simple execution of steps

Should help bring about an efficient and effectivetransformation of situations

Role of (evaluation) framework is to questionmethodologies as to

what they attempt to transformwhy they try to transform ithow they help in undertaking the transformation

. – p.92/192

Page 53: Comparison Of Methodologies

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 howmethodology helped in doing so

. – p.93/192

Page 54: Comparison Of Methodologies

Applying NIMSAD

MIMSAD is not a methodology itself (does not providecontent to different stages)

It is about finding out what elements in the framework amethodology addresses

in what orderand how

Methodology does not have to be an exact one-to-onemapping to framework

. – p.94/192

Page 55: Comparison Of Methodologies

Applying NIMSAD(2)

NIMSAD provides important questions to check

Answers have to be found by potential users of amethodology∗

Questions for all elements of NIMSAD

More complete list in NIMSAD book, here just anexcerpt of most important ones

∗ The following might be disturbing for some students: lots of questionswithout answers

. – p.95/192

Page 56: Comparison Of Methodologies

Problem Situation

Who are the clients?

How strong is their commitment?

Does methodology help in identifying clients and theirconcerns?

What’s the situation like? (well-structured, lesswell-structured, ill-structured)

For which situation is methodology suitable?

What does situation demand (identify problems, designsolutions for already identified problems, implement analready designed solution)?

. – p.96/192

Page 57: Comparison Of Methodologies

Problem Solver

What level of abstract and technical thinking doesmethodology demand from user?

Do philosophical views advocated by methodologymatch user’s view?

What knowledge sets and skills does methodologyrequire from user?

Are mental constructs of user considered?

. – p.97/192

Page 58: Comparison Of Methodologies

Problem-solving process

Stage 1: Understanding situation of concern

Does methodology offer assistance for boundaryconstruction?What is role of client (inclusion/participation orexternal)?Does methodology discuss particular methods ofinvestigation?

. – p.98/192

Page 59: Comparison Of Methodologies

Problem-solving process(2)

Stage 2: Diagnosis

What techniques does methodology offer forexpressing situation characteristics?What level of expression is advocated(conceptual/logical and/or physical)What environmental (context) information iscaptured?What tools and techniques are available?

. – p.99/192

Page 60: Comparison Of Methodologies

Problem-solving process(3)

Stage 3: Prognosis

Is this stage supported at all?How does methodology offer help in definingprognosis?How are desired states established?

. – p.100/192

Page 61: Comparison Of Methodologies

Problem-solving process(4)

Stage 4: Defining Problems

What problems or problem types are of concern tothe methodology?How does it help in deriving problem statements?Are problem statements evaluated (or justaccepted)?

. – p.101/192

Page 62: Comparison Of Methodologies

Problem-solving process(5)

Stage 5: Deriving notional systems

Does methodology derive notional systems fromidentified problems?Does it offer help in formulating notional systems?

. – p.102/192

Page 63: Comparison Of Methodologies

Problem-solving process(6)

Design (Stage 6: Conceptual/Logical Design, Stage 7:Physical Design)

Does methodology accept client’s notional system asstarting point?Does it distinguish between logical and physicaldesign 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 thesegaps?How experienced is user to be expected in thesolution domain?Who decides on which solution to take?

. – p.103/192

Page 64: Comparison Of Methodologies

Problem-solving process(7)

Stage 8: Implementation

What steps does methodology offer for developingthe IS?What does it offer in terms of tools and techniques?How does it help in handling major changes in thenotional system at this time?

. – p.104/192

Page 65: Comparison Of Methodologies

Evaluation

Does methodology provide techniques for evaluatingitself and its outputs for

problem situation?problem solver?problem-solving process?

. – p.105/192

Page 66: Comparison Of Methodologies

Evaluating Methodologies

We are going to look at two methodologies in theframework of NIMSAD:

SSADMSSM

. – p.106/192

Page 67: Comparison Of Methodologies

SSADM: Problem Situation

Organizational context has higher priority than in otherstructured methodologies

Commitment of users is checked (partially) duringfeasibility study

Still SSADM is mainly concerned with formaldescriptions of data and processes via data flowdiagrams

Irregular and changing patterns often left out of domainof SSADM

. – p.107/192

Page 68: Comparison Of Methodologies

SSADM: Problem Solver

SSADM does not alert its users to their mentalconstructs

E.g. two different (competent) SSADM users may arriveat two different sets of data flow diagrams

Most dominant knowledge and skills required are oftechnical nature

In practice, however, users also need social skills tomake methodology effective (not made explicit bymethodology)

. – p.108/192

Page 69: Comparison Of Methodologies

SSADM: Problem-solving Process

Stage 1: Understanding situation of concern

Boundary construction is trial and error withinSSADMAssumes that data flow diagrams can help constructboundaryThis often establishes an implicit boundary (anythingthat cannot be captured in DFDs remains outside)

. – p.109/192

Page 70: Comparison Of Methodologies

SSADM: Problem-solving Process(2)

Stage 2: Diagnosis

SSADM makes most useful contribution to this stageUse of DFDs provide clear ways of expressing flowsof formal dataStarts with physical data flows (describing how datais processed)Then tries to extract underlying meaning into alogical data model and logical data flow modelDoes so by removing physical elements ofelementary processes and thenreconstructing/regrouping transformed processes

. – p.110/192

Page 71: Comparison Of Methodologies

SSADM: Problem-solving Process(3)

Stage 2: Diagnosis

Logicalization may be problematic, as physicalconstraints may disappear

Example: agent updates customer record onlaptop, later this is synchronized with headquartersAfter logicalization there may only be onecustomer record file left. . .

Regular and frequent patterns get modeled, specialcases may be forgotten

. – p.111/192

Page 72: Comparison Of Methodologies

SSADM: Problem-solving Process(4)

Stage 3: Prognosis

Defining prognosis is not really possible in SSADMAlthough better than in other structured approaches,as clients get to choose among different BusinessSystems Options (BSO)Feasibility study also helps in deciding if benefitsoutweigh costsRationale of clients’ desired states may not becomeclear (it is assumed that clients know what they want)

. – p.112/192

Page 73: Comparison Of Methodologies

SSADM: Problem-solving Process(5)

Stage 4: Defining problems

There is an explicit problem definition phase duringfeasibility studyAt this point things are still vague, howeverAs there is no real prognosis, problems cannot bederived by looking at differences between diagnosisand prognosis

. – p.113/192

Page 74: Comparison Of Methodologies

SSADM: Problem-solving Process(6)

Stage 5: Deriving notional systems

Strength of SSADM is in formalizing requirements ofclientAchieved by modeling the data flows of the requiredsystem with help of DFDsFunctions and user interfaces of the system can bespecifiedDeveloping specification prototype helps in gettingfeedback from clientAgain, assumes that client knows what he/she wants

. – p.114/192

Page 75: Comparison Of Methodologies

SSADM: Problem-solving Process(7)

Stages 6 and 7: Design

SSADM distinguishes between logical and physicaldesignWe are going to look at these in turn

. – p.115/192

Page 76: Comparison Of Methodologies

SSADM: Problem-solving Process(8)

Stages 6: Logical Design

Most useful and rigorous techniques offered bySSADM are DFDsDesigns are usually created by modifying logicaldiagnosis diagram using requirements and feasibilitystudy as guidelineSSADM also very useful for structuring dialoguesDoes not take any interest in how design decisionswill affect environment (BSO only looks atrequirements)

. – p.116/192

Page 77: Comparison Of Methodologies

SSADM: Problem-solving Process(9)

Stages 7: Physical Design

SSADM provide mainly generic guidelinesMany decisions depend on technical issues specificto chosen environmentEnvironment is chosen in Technical System Option(TSO) phase of SSADMIn TSO technical alternatives drawn up fromrequirements are presented to clients for decisionBetter than other structured approaches (wherethere is no TSO)Still problems for non-computerized areas of design

. – p.117/192

Page 78: Comparison Of Methodologies

SSADM: Problem-solving Process(10)

Stages 8: Implementation

Completely missing (one of the weakest points)

. – p.118/192

Page 79: Comparison Of Methodologies

SSADM: Evaluation

Completely missing (the other of the weakest points)

. – p.119/192

Page 80: Comparison Of Methodologies

SSADM: Summary

SSADM is/was popular methodology for formal designof IS

Better in “soft”, non-technical aspects than otherstructured approaches

However, still a technical methodology with weak pointsin “soft” aspects of IS development, the implementationphase, and self-evaluation

At least, does not claim to cover “soft” aspectsadequately

. – p.120/192

Page 81: Comparison Of Methodologies

SSM: Problem Situation

SSM is one of the few methodologies that makescomments 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 oforganizations through systems thinking

SSM recognizes three roles: client (initiates study),problem owner (identifies relevant systems), problemsolver (uses SSM to resolve client’s concerns)

. – p.121/192

Page 82: Comparison Of Methodologies

SSM: Problem Solver

SSM recognizes the need for reflection

Considers mental constructs of its users

Methodology user takes on role of debate facilitator andlearner

However, SSM relies on its users to have considerableconceptualization, abstraction, philosophical, andpolitical skills

. – p.122/192

Page 83: Comparison Of Methodologies

SSM: Problem-solving Process

Stage 1: Understanding situation of concern

SSM provides insightful contributions to boundaryconstructionBoundaries, problem ownership, problem content,and context issues are all open to questionContext of a problem situation can be captured inrich pictures

. – p.123/192

Page 84: Comparison Of Methodologies

SSM: Problem-solving Process(2)

Stage 2: Diagnosis

SSM does not prescribe particular form ofexpression to capture essential aspects of anorganizationAny 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 freedomBut also a lot of responsibility (user has to knowwhat he/she is doing)

SSM does not distinguish between logical andphysical diagnosis descriptions

. – p.124/192

Page 85: Comparison Of Methodologies

SSM: Problem-solving Process(3)

Stage 3: Prognosis/Stage 4: Defining problems areskipped (details later)

Are handled a little differently in SSM

. – p.125/192

Page 86: Comparison Of Methodologies

SSM: Problem-solving Process(4)

Stage 5: Deriving notional systems

SSM does not derive notional systems fromidentified problems (see Stage 4)Attempts to develop many potentially relevantnotional systemsFormulates notional systems with root definitions(CATWOE)

. – p.126/192

Page 87: Comparison Of Methodologies

SSM: Problem-solving Process(5)

Stage 6/7: Design

No distinction between logical and physical designUses root definitions as guide for design processDesign is not a strong point of SSMNot quite clear how to derive at an activity-baseddesign from system-based root definition

. – p.127/192

Page 88: Comparison Of Methodologies

SSM: Problem-solving Process(6)

Stage 8: Implementation

Missing

. – p.128/192

Page 89: Comparison Of Methodologies

SSM: Problem-solving Process(7)

Stage 3: Prognosis

SSM operates in environment where there aremultiple desired statesclients who are unsure of their desired states

SSM does not attempt to construct clear prognosisoutlineEach root definition implies a particular desired stateThere are many potentially relevant notional systems

. – p.129/192

Page 90: Comparison Of Methodologies

SSM: Problem-solving Process(8)

Stage 4: Defining problems

As there is no clear prognosis, it is difficult to deriveproblem statements from mapping diagnosis toprognosisSSM maps design models against diagnosis todetermine relevanceDecision on relevance is carried out by conductingdebate with participantsPractically, Stage 4 is deferred until design is finished

. – p.130/192

Page 91: Comparison Of Methodologies

SSM: Evaluation

SSM does not have an explicit step for evaluation

Nevertheless, it propagates learning

When evaluation is done, usually focus onproblem-solving process

Mostly done through SSM case studies (UK HealthService, Shell, IS planning)

. – p.131/192

Page 92: Comparison Of Methodologies

SSM: Summary

SSM is a methodology for ill-structured problemsituations

Allows discussions on different viewpoints ofparticipants

Author of SSM also encourages debate anddiscussions about SSM

SSM is in constant process of refinement to meet validcriticism

. – p.132/192

Page 93: Comparison Of Methodologies

Framework by Avison/Fitzgerald

Has seven basic elements:

PhilosophyModelTechniques and ToolsScopeOutputsPracticeProduct

. – p.133/192

Page 94: Comparison Of Methodologies

Philosophy

The principle (or set of principles) that underlies amethodology

Several areas are distinguished

ParadigmObjectives/DomainTarget

. – p.134/192

Page 95: Comparison Of Methodologies

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” thinkingSystems paradigm ≡ “soft” thinking

. – p.135/192

Page 96: Comparison Of Methodologies

Paradigm(2)

Debate has been extended to

Epistemology: study of knowledge, how we acquireknowledgeOntology: study of being (or what “is”)

Let’s make a short excursion into philosophy

. – p.136/192

Page 97: Comparison Of Methodologies

Epistemology

The two extreme positions are positivism andinterpretivism

Positivism

There is an objective reality beyond the human mindIdeas and theories need to be tested against thisrealityThis is done via experiments, surveys, field studies,etc.

. – p.137/192

Page 98: Comparison Of Methodologies

Epistemology(2)

Interpretivism

Knowledge of world is constructed through aperson’s lived experienceReality is constructed sociallyInterpretivists use case studies, hermeneutics,phenomenology, etc.

Hermeneutics: theory and practice ofinterpretation∗

Phenomenology: study of phenomena(appearance of things) from a first person point ofview

∗ 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 newone for every interpreter

. – p.138/192

Page 99: Comparison Of Methodologies

Ontology

The two extreme positions here are realism andnominalism

Realism

There are universal entities and universal terms todescribe themE.g. many individual horse entities, but there is alsogeneral concept of an “ideal” horse

Nominalism

There are no universal entities, we can only refer toconcrete, individual entitiesE.g. many individual horse entities, speaking ofhorses in general is mere convenience for speakingof many things at once

. – p.139/192

Page 100: Comparison Of Methodologies

Excursion into Philosophy

Usually extreme positions not encountered in pure form

A positivist confronted with a loaded gun will not startcalculating trajectories, possible areas of impact, he willexperience strong (subjective) emotions

An interpretivist paying £1000 into his bank account willnot accept the teller’s subjective point of view thatcrediting £800 is close enough

. – p.140/192

Page 101: Comparison Of Methodologies

Paradigm(3)

Objectivistapproaches

Subjectivistapproaches

Realism Nominalism

OntologyPositivism

Interpretivism

Epistem

ology

. – p.141/192

Page 102: Comparison Of Methodologies

Objectives/Domain

What is methodology trying to achieve within anorganization?

Development of a purely “computerized” IS?Does it take wider view including other tasks?Does it try to reengineer whole businessprocesses/change strategy of organization?

. – p.142/192

Page 103: Comparison Of Methodologies

Target

For what

types of problems

environments

types or sizes of organizations

is methodology applicable?

. – p.143/192

Page 104: Comparison Of Methodologies

Model

What constructs does methodology use to model thereal world?

VerbalAnalytic/mathematicalIconic/pictorial/schematicSimulation

. – p.144/192

Page 105: Comparison Of Methodologies

Techniques and Tools

What techniques and tools are provided to support userof methodology?

. – p.145/192

Page 106: Comparison Of Methodologies

Scope

Which phases of life cycle of IS development doesmethodology cover?

strategy, feasibility, analysis, logical design, physicaldesign, programming, testing, implementation,evaluation, maintenance

Problematic if methodology does not follow life cycle

. – p.146/192

Page 107: Comparison Of Methodologies

Outputs

What is methodology producing in terms ofdeliverables?

This can range from feasibility studies, requirementsand analysis specifications up to workingimplementations of IS

When are these outputs generated?

. – p.147/192

Page 108: Comparison Of Methodologies

Practice

What is the background of methodology (commercial oracademic)?

What is the user base (numbers and types of users)?

Who are the participants and what are their requiredskill levels (can users apply methodology themselves orare highly skilled consultants necessary)?

. – p.148/192

Page 109: Comparison Of Methodologies

Product

What do you get for your money, i.e. when purchasingmethodology, what is included?

Software toolsWritten documentationTrainingHelp service

. – p.149/192

Page 110: Comparison Of Methodologies

Applying Avison/Fitzgerald Framework

We are looking at SSADM and SSM in light ofAvison/Fitzgerald framework

Some arguments have already been presented inNIMSAD framework

Therefore, this is kept shorter

. – p.150/192

Page 111: Comparison Of Methodologies

Philosophy

Paradigm

SSADMFollows science paradigmBelongs to objectivist approaches

SSMClearly follows systems paradigmBelongs to subjectivist approaches

. – p.151/192

Page 112: Comparison Of Methodologies

Philosophy(2)

Objectives/Domain

SSADMHas objective of developing computerized ISNeglects organizational aspects

SSMTries to capture a broader view, includingorganizational context

. – p.152/192

Page 113: Comparison Of Methodologies

Philosophy(3)

Target

SSADMData flow diagrams not applicable for all types ofproblems (decision support systems, webapplications)Targets large organizations (although there isslimmer version called MicroSSADM)

SSMApplicable in human activity situations withill-structured problems

. – p.153/192

Page 114: Comparison Of Methodologies

Model

SSADM

Main modeling concept: data flow diagrams

SSM

Very flexible “rich pictures”

. – p.154/192

Page 115: Comparison Of Methodologies

Techniques and Tools

SSADM

Main technique: structured approach to modelingand designTools like drawing tools, tools for projectmanagement, code generation seen as useful, butnot essential

SSM

Organizational techniquesDoes not advocate or mention specific tools

. – p.155/192

Page 116: Comparison Of Methodologies

Scope

SSADM includes

(Strategy), feasibility, analysis, logical design,physical design

SSM includes

Strategy, (feasibility), analysis, (logical design)

. – p.156/192

Page 117: Comparison Of Methodologies

Outputs

SSADM

Basically follows SDLC, so in each phase certaindocuments are produced (e.g. feasibility study,requirements specification, design documents)

SSM

Divided into seven stages, at the end of whichcertain documents are produced (e.g. rich pictures,root definitions)

. – p.157/192

Page 118: Comparison Of Methodologies

Practice

SSADM

Commercial background“Traditional” participants: analysts, designers,(programmers)

SSM

Academic backgroundParticipants: much greater role of client and problemowner

. – p.158/192

Page 119: Comparison Of Methodologies

Practice(2)

Difficult to evaluate user base, some numbers:

Fitzgerald 1999: 57% of organizations usemethodologies: 11% purely commercial ones, 30%adopted commercial ones, 59% unique onesRusso/Wynekoop 1995: of 132 organizations using amethodology, 77% used structured approach, 8%prototyping/iterative approach, 5% RAD approach

. – p.159/192

Page 120: Comparison Of Methodologies

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

Page 121: Comparison Of Methodologies

Capability Maturity Model (CMM)

Created by the Software Engineering Institute atCarnegie Mellon

Originally aimed at helping Department of Defenseassess capabilities of vendors and sub-contractors

Not so much about methodologies themselves, butabout how well an organization organizes its processes

Has five levels, level 5 being the best one

. – p.161/192

Page 122: Comparison Of Methodologies

Overview

Initial

Repeatable

Defined

Managed

Optimizing

Disciplinedprocess

Standardprocess

Predictableprocess

Improvingprocess

. – p.162/192

Page 123: Comparison Of Methodologies

Initial (Level 1)

Development is characterized as being ad hoc or evenchaotic

Processes are not defined

Everything depends on skilled individuals to get theiract together

Software is typically delivered late and over budget

Little effective management and control

Unfortunately, too many organizations are still at thislevel

. – p.163/192

Page 124: Comparison Of Methodologies

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 canbe repeated

. – p.164/192

Page 125: Comparison Of Methodologies

Defined (Level 3)

Management and engineering activities aredocumented, standardized, and integrated into astandard process

All projects use an approved, tailored version of theorganization’s process

Training programs are implemented to ensure that staffhas necessary skill

. – p.165/192

Page 126: Comparison Of Methodologies

Managed (Level 4)

Detailed measures of the process and product qualityare collected and analyzed

Process and products are quantitatively understood andcontrolled

Risks in moving to new application domains are knownand carefully managed

. – p.166/192

Page 127: Comparison Of Methodologies

Optimizing (Level 5)

Entire organization is focused on continuous processimprovement

Organization can identify weaknesses and preventpotential defects beforehand

Cost/benefit analyses of new technologies base on dataon effectiveness of current process

. – p.167/192

Page 128: Comparison Of Methodologies

Summary

CMM is based on manufacturing and product-buildingview of systems development

This is not always appropriate as often IS developmentis more of a creative art than a science

CMM is mainly concerned with (technical) aspects ofsoftware development, not the wider area of ISdevelopment

High levels in CMM do not always lead to high qualitysoftware, just well-documented processes

. – p.168/192

Page 129: Comparison Of Methodologies

Chapter Summary

Comparing methodologies is a very difficult task

Unfortunately, no silver bullet for doing so has beenfound yet

As many views as writers on the subject

. – p.169/192