View
218
Download
1
Tags:
Embed Size (px)
Citation preview
SYSTEMS DEVELOPMENT METHODOLOGIES
WHAT IS A METHODOLOGY?
Procedures +Techniques +
Tools +Phases = Method
Method + Philosophy = Methodology
WHAT IS A PHILOSOPHY?
e.g. building a system that:
- makes most use of computers or- is the cheapest to run or- is implemented earliest or- is the most adaptable or- is best liked by its users or
etc.
WHY USE A METHODOLOGY?
To introduce structure into design
To increase the likelihood of success
Previously:Problem - User - Programmer - Change
- Create Problem - User - Programmer etc
With Methodologies:Problem - Analysis - Design - Implementation - Success
EXAMPLES OF SYSTEMSDEVELOPMENT METHODOLOGIES
'Hard' MethodologiesSSADM (Structured Systems Analysis and Design Methodology)
STRADIS (Structured Analysis and Design)JSD (Jackson Structured Design)
'Soft' MethodologiesETHICS
SSM (Soft Systems Methodology)
Mix of 'hard' and 'soft'MULTIVIEW
SSADM (Structured Systems Analysis and Design Methodology)
Features:
Data DrivenDetailed rules
Comprehensive manuals
ForCovers all elements of life cycle
Used by Civil ServiceIt works!
AgainstOverkill for small projects
Stages
Analysis1. Analysis of Current System2. Specification of Required System3. Technical Options
Design4. Detailed Data Design5. Detailed Procedure Design6. Physical Design Control
1. Analysis of Current System
Identify bottlenecks/dissatisfactionUse interviews/questionnaires etc.Produce DFDs, LDSsAgree current system model with users
2. Specification of Required System
Expand current system to include new requirementsInclude data and process aspectsInclude audit, security and controlsProduce a consolidation of people's views
3. Technical Options
Centralised vs. DistributedOnLine vs. BatchResponse timesStaffing level implicationsOther resource implications
4. Detailed Data Design
Define data and data relationshipsEnsure data structure meets:Screen/Report requirementsProcessing requirements
5. Detailed Procedure Design
Catalog all functionsCheck against data structurePerhaps prototypeCheck logical design meets requirements
6. Physical Design Control
Produce plan for building/testing systemInclude program specs, operating procedures Consolidate documentation
STRADIS(Structured Analysis and Design)
Features:
Solution found from a number of possible modules and interfacesUses a selection of tools and techniques
ForSuited to any size system
AgainstMore about defining the solution than the problem
Stages
1. Initial Study2. Detailed Study3. Define and Design Alternative Solutions4. Physical Design
1. Initial Study
Aim to select systems which will:Reduce costsIncrease revenueImprove servicesSpeak to users and managersProduce overview DFDDecide whether to progress to next stage
2. Detailed Study
Identify users of new systemDraw level 1 DFDProduce lower levels of DFDProduce process descriptionsProduce detailed cost/benefit analysis
3. Define and Design Alternative Solutions
Convert organisational objectives intosystem objectives(i.e. make them specific, not general)
Produce level 1 DFD for new system
Produce three alternative solutions:
quick and cheap (some objectives met)longer and more costly (most met)longest and most expensive (all met)
4. Physical Design
Produce all logic and error handlingProduce data dictionaryProduce report and screen formatsProduce files/databaseIdentify clerical tasksAll down to a level where costs can be detailed
JSD(Jackson System Development)
Features:
Extension to JSP (Jackson Structured Programming)Transformation from program specification to implementation
ForModels a dynamic world
AgainstOrientated towards software rather than organisational needsSeveral elements of life cycle missinge.g.requirements analysisuser interfacedatabase design
Stages
Entity Action stepEntity Structure stepInitial Model stepFunction stepSystem Timing stepImplementation step
Entity Action stepDefine entities that perform or suffer actionse.g. customer, supplierbut by behaviour rather than relationshipTraditional entity modelling = staticJSD = dynamic
Entity Structure stepDraw diagrams to show life history(Boxes)Initial Model stepCreate model to simulate entity activity(Pseudo-code)Function stepAdd necessary functions to produce output(e.g. account balance)System Timing stepAdd delays to reflect real world(e.g. user requirements, technical restrictions)Implementation stepAllocate processors to processes
ETHICS (Effective Technical and Human Implementationof Computer-Based systems)
Features:
Adopts an ethical philosophyTechnology + Social + OrganisationalImproved job satisfaction and working lifeInvolves users in design decisions
ForWell accepted by users
AgainstTreated with suspicion by managementUsers may not have necessary skills
STAGES
Why ChangeSystem BoundariesDescription on Existing SystemDefinition of Key Objectives and TasksDiagnosis of Efficiency NeedsDiagnosis of Job Satisfaction NeedsFuture AnalysisSpecifying and Weighing Efficiency and Job Satisfaction Needs and ObjectivesOrganisational Design of the New SystemTechnical OptionsPreparation of A Detailed Work DesignImplementationEvaluation
Why ChangeAs the name implies, If not conclusive,then don't
System BoundariesConsider effect upon the following areas:Business ActivitiesExisting TechnologyParts of the OrganisationParts of the Organisation's environment
Description of Existing SystemIn terms of inputs, outputs and processes
Definition of Key Objectives and Tasks Roles, Purposes, Responsibilities and Functions
Diagnosis of Efficiency NeedsIdentify weak links
Diagnosis of Job Satisfaction NeedsStandard Questionnaire
Future AnalysisAllow flexibility for enhancements etc
Specifying and Weighing Efficiency andJob Satisfaction Needs and ObjectivesKey stepProduce objectives based on previous stepsRank these into primary and secondaryAll primary objectives must be metAs many as possible secondary should be met
Organisational Design of the New SystemIdentify operating activitiesIdentify coordination activitiesIdentify development activitiesIdentify control activitiesIdentify special skills requiredIdentify key roles or relationships
Technical OptionsEvaluate options for software, hardware, HCIin terms of efficiency, job satisfaction and future change.
The Preparation of a DetailedWork DesignDesign the system in detailIdentify data flows, tasks, groups etcEnsure objectives are still being met
ImplementationPlan implementation in detailStrategyEducation and TrainingCo-ordination
EvaluationCheck Objectives met
SSM (Soft Systems Methodology)
Philosophy:
A System is more than the sum of its partsModels of data and processes are simple,Involve people and they become ill-defined or 'fuzzy‘
ForDeals with the real world
AgainstToo much analysis, not enough design
Stages
Produce rich picture
Include clients, participants and tasks
Identify CATWOE:
C lient - beneficiary or victimA ctor - agent of changeT ransformation - the change taking placeW orld view (Weltanschauung) - assumptionsO wner - the sponsorE nvironment - the wider system
MULTIVIEW
FeaturesMix of hard and soft
ForBest of both worldsAgainst
Hotch-Potch of techniques
Stages
Analysis of human activity systemsLook at organisation, its purpose and problems
Information modellingAnalyse entities and functions
Analysis and design of the socio-technical systemConsider people, needs, working environment
Design of the Human-Computer InterfaceCommand, Form, Menu, Icon/Mouse, Natural Language?
Design of the technical sub-systemsCombine Entity model and Technical requirements
Outputs are:
Applications - processesInformation - producedDatabase - usedControl - error checkingRecovery - repairing mistakesMonitoring - keeping track for management