Title: Comparative Development Methodologies Revision Lecture
1Comparative Development MethodologiesRevision
Lecture
- Niki Trigoni
- Department of Computer Science
- and Information Systems
- Birkbeck College, University of London
- Email niki_at_dcs.bbk.ac.uk
- Office Hours Wednesdays, 6 - 7 pm
- Web Page http//www.dcs.bbk.ac.uk/niki
2Revision lecture roadmap
- Outline of the main material covered in the
second half of CDM sample questions that one
should be able to answer (not an exhaustive list) - Guidelines for writing exams
- Discussion
3Development methodologies
- A methodology is a recommended series of steps to
be followed in the course of developing an
information system. It has several components - Philosophy
- Phases
- Procedures, rules
- Tools, techniques
- Documentation
- Management and training for developers
4Types of methodologies
- Process-oriented methodologies
- Blended methodologies
- Object-oriented methodologies
- Rapid development methodologies
- Organizational-oriented methodologies
5Process-oriented methodologies
- Emphasis is placed on the analysis of processes
- STRADIS (Structured Analysis and Design of
Information Systems) has a top-down approach to
analyzing processes - YSM (Yourdon Systems Method) has a middle-up
approach to analyzing processes and puts emphasis
on the analysis of data
6STRADIS
- Does it focus on analysis or design?
- Is it applicable to information systems
independent of their size or level of automation? - For which scenario is STRADIS particularly
suitable? - Which is the most important idea used in STRADIS?
- How many stages does it have and which activities
are carried out in each stage?
7YSM (Yourdon Systems Method)
- How does YSM resemble STRADIS?
- How is YSM different from STRADIS?
- Which are the stages of YSM, and which tasks are
performed in each stage? - What is the purpose of essential modeling (stage
2 of YSM)? - What is the difference between the environmental
and behavioral models of essential modeling in
YSM?
8Blended methodologies
- Emphasis is placed on the analysis of processes
and data - SSADM (Structured Systems Analysis and Design
Methodology) is a standard methodology in most UK
government applications. It has detailed steps
and guidelines and standard documentation
templates - Merise is a widely used methodology in France. It
regards data and processes as equally important,
and analyzes them in parallel. - IE (Information Engineering) has more emphasis on
data, considered to be the most stable part of a
system. It takes a data-oriented
entity-relationship approach, but also includes
process-oriented aspects.
9SSADM
- Would you choose SSADM if you would like a
flexible and light development strategy without
predefined steps and the need for documentation? - Which are the stages of SSADM and which tasks do
they involve? - Would SSADM be sufficient as a methodology if the
goal is to do analyze, design, implement and
maintain a system?
10Merise
- Which are the objectives of the decision, life
and abstraction cycles in Merise? - Which stages (phases) constitute the life cycle?
- Explain the differences of conceptual, logical
and physical levels of concern for data and
processing in the abstraction cycle.
11IE (Information Engineering)
- Which is the main philosophical belief
underpinning IE? - Does IE cover all stages of a systems lifecycle?
- Which are the stages of IE and which tasks to
they involve? - What is the main difference between IE and SSADM
or Merise?
12Object-oriented methodologies
- The UP (Unified Process) is an iterative
methodology that uses the object-oriented
paradigm for analysis and design. - Which are the central ideas in the UP?
- Which are the UP phases, and how do they relate
with the UP iterations? - Name the main disciplines of the UP, and discuss
when they are applied.
13The Unified Process
- Can you identify and reproduce domain model
diagrams, DCDs and interaction diagrams? What is
the diagram below?
Sales LineItem quantity
Item
Records-sale-of
0..1
1
1..
Contained-in
1
Sale date time
Payment amount
Paid-by
1
1
14The Unified Process
15The Unified Process
Sample UP Disciplines
Business modeling
Requirements
Design
Implementation
Test
Deployment
Configuration and Change Mngmnt
Project Mngmnt
Environment
16Rapid development methodologies
- XP (Extreme Programming) aims at speeding up the
development process in order to cope with rapidly
changing business needs. - In which scenarios is XP particularly suitable?
- Would you apply XP to a large system development
project? - How is XP different from Process-oriented,
Blended and OO methodologies? - Which are the main ideas in XP?
- Which are the XP phases and which tasks do they
include?
17Organizational-oriented methodologies
- In some organizational problem situations, it is
not enough to break up a complex situation into
its constituent parts in order to solve it - The whole is greater than the sum of the parts
- Human activity systems it is relatively easy to
model data and processes (like in previous
methodologies) but to understand the real world
it is essential to include people in the model - Hard-systems thinking vs. soft-systems thinking
- Soft Systems Methodology (SSM)
18SSM
- Which are the stages of SSM and which tasks do
they include? - Which kind of problems is SSM suitable for?
- Does SSM implement a system? If not what is the
main outcome of SSM?
19Issues rationale for a methodology
- A better end product
- Acceptability (do people find the product
satisfactory?) - Availability (is the product accessible
when/where required?) - Cohesiveness (are information and manual systems
integrated?) - Compatibility (does the system fit with other
parts of the organization?) - Documentation
- Ease of learning
- Economy (is the system cost effective, within
resources and constraints?) - Effectiveness (does the system meet
business/organizational objectives?) - Efficiency (does the system utilizes resources to
their best advantage?) - Fast development rate (time relative to project
size and complexity) - Flexibility (is the system easily modifiable?)
- Functionality (does the system cater for the
requirements?) - Implementability (feasible changeover from the
old to the new system?) - Low coupling (is there low interaction between
subsystems so that changes of one does not affect
the others significantly?)
20Issues rationale for a methodology
- A better development process
- Tight control of the development process
- Well-specified deliverables at each stage
- Improved management, planning and project control
- Increase of productivity
- Reduction of skills required of analysts gt
reduction of cost - A standardized process
- Staff can change between projects without
retraining - Common experience and knowledge can be
accumulated - Easy system maintenance
- Better systems integration
21Issues adopting a methodology in practice
- Variation points of different methodologies
- fully fledged product detailing every stage and
task or vague outline of basic principles - high-level strategic and organizational problem
solving or details of implementing a computer
system - conceptual issues or physical design procedures
or the whole range of intermediate stages - applicable to specific problem types or
all-encompassing general-purpose methodology - usable with or without special training
- people it requires to complete tasks (if
specified) - tools and toolsets used
22Methodology comparison framework
- Philosophy
- Paradigm
- Objectives
- Domain
- Target
- Model
- Techniques and tools
- Scope
- Outputs
- Practice
- Background
- User base
- Participants
- Product
23Method. comp. framework philosophy
- Philosophy (cont.)
- Four distinguishing factors (cont.)
- Domain situations that methodologies address
- narrow problem vs. wider organization-level
problems - individual problems vs. many interrelated
problems viewed as a whole - Target applicability of the methodology
- general-purpose vs. application/organization
specific
24Method. comp. framework model
- Model abstraction and representation of the
important factors of the information system or
the organization - Verbal
- Analytic or mathematical
- Iconic, pictorial or schematic
- Simulation
- Most methodologies are iconic, pictorial or
schematic. - Models are used as a means of communication,
particularly between users and analysts
25Method. comp. fram. techniques tools
- Techniques and Tools
- Are techniques and tools essential to the
methodology? - Which techniques/tools are used in a methodology?
- Examples
- Rich pictures, root definitions, etc
- Entity modeling and normalization
- DFDs, decision tables, decision trees, entity
life cycles - OO design and UML
- Various organizational and people techniques
26Method. comp. framework scope
- Scope indication of the stages of the life cycle
of systems development that the methodology
covers - Recall SDLC (Systems development life cycle)
- Feasibility study
- System investigation
- Systems analysis
- Systems design
- Implementation
- Review and maintenance
27Method. comp. fram. outputs product
- Outputs what the methodology is producing
- Deliverables at each stage
- Nature of final deliverable
- Decision about whether to computerize a process
- Analysis specification
- Working implementation of a system
-
- Product what purchasers actually get for their
money - Software
- Written documentation
- Agreed number of hours training, consultancy
- Telephone help service
- ...
28Method. comp. framework practice
- Practice
- Methodology background academic vs. commercial
- User base numbers and types of users
- Participants and skill levels required
- Assessment of difficulties and problems
encountered - Perception of success and failure
- Degree to which the methodology is altered by the
users according to the requirements of the
situation - Differences between the theory and the practice
of the methodology
29Summary
- We considered a number of different methodologies
(STRADIS, YSM, SSADM, Merise, IE, UP, XP, SSM) - We compared them in terms of
- Philosophy, model, techniques and tools, scope,
outputs, product and practice - Given a certain scenario, we should be able to
make an educated decision about which (type of)
methodology is the most suitable.
30Tips for exams
- Allocate time cautiously dont spend too much
time on a single question. - Read the questions carefully. Sometimes we tend
to answer what we want to be asked, rather than
what we are actually asked. - Make your answers legible.
- At the end, look over your answers to see what
you have done. - Dont make your answers too long be concise.
31Examination paper
- Date of examination 10.00 am, Monday 13th June
2005 - Duration of paper 2 hours
- The paper is divided into two sections
- Section A (answer only one question out of two)
- Section B (answer only two questions out of four)
- Overall answer three questions (one from Sect. A,
and two from Sect. B) - Each question has 33 marks
- You get 1 extra mark if you write the question
numbers that you selected to answer in the front
page of the exam paper. - Total marks 333 1 100
32Good luck! Questions?