2/25/2019
ITC 244; Systems Analysis and Design
Lecture 3:
1.The Systems Development
Methodologies.
2. Project Team Skills.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 1
Lecture Objectives
• By the end of the lecture, the student will be able to:
1. Explain what a methodology is in IS projects.
2. Identify the categories of systems development
methodologies.
3. Describe how each system development methodology
implements the SDLC.
4. Use schematic diagrams to explain the system
development methodologies.
5. Choose the appropriate system development
methodology for a given IS project.
6. Explain project team skills and roles for IS projects.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 2
1
2/25/2019
Introduction - 1
• A methodology is a formalized approach to implementing
the SDLC.
• Each system development methodology is unique because
of its emphasis on
• Business Processes, the Data that support the businesses,
or both.
• The order and focus on each phase of the SDLC.
• Some methodologies are formal standards used by
government agencies whiles others are developed by
consulting firms to sell to clients.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 3
Introduction -2
• All system development methodologies lead to a
representation of the system in terms of business
processes and the data that support the businesses.
• Methodologies therefore vary in terms of whether the
emphasis is on business processes or on data that support
the business.
• This leads to
• Process-centered methodologies,
• Data-centered methodologies and
• Object-oriented methodologies
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 4
2
2/25/2019
Introduction -3
• Apart from focusing on business processes or the data that
support businesses, system development methodologies are
also informed by the order and the focus on each phase of the
SDLC.
• Discussing the system development methodologies with
regard to the order and the focus on each phase of the
SDLC leads to three(3) major categories of the methodologies.
• These are:
• Category I: Structured Design
• Category II: Rapid Application Development(RAD)
• Category III: Agile Development
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 5
Process-Centered Methodologies
• These methodologies focus first on defining the
activities associated with the system – the processes.
• Process-centered methodologies utilize process
models as the core of the system concept.
• A process model is a formal way of representing how
a business system operates.
• Analysts concentrate initially on representing the
system concept as a set of processes with information
flowing into and out of the processes.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 6
3
2/25/2019
Data-Centered Methodologies
• These methodologies focus first on defining the contents of
data storage container and how the contents are organized.
• Data-centered methodologies utilize data models as the core
of the system concept.
• A data model is a formal way of representing the data that are
used and created by a business system.
• Analysts concentrate initially on identifying the data that must
be available to produce the desired outputs and organizing the
data into well-defined structures.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 7
Object-Oriented Methodologies
• These methodologies attempt to balance the focus between
business processes and the data that support the businesses.
• Object-oriented methodologies utilize the Unified Modeling
Language(UML) to describe the system concept as a collection
of objects incorporating data and processes.
• The project team focusing on object-oriented methodologies
use UML diagrams such as Use case, class, sequence, and
deployment diagrams to represent the system being
developed.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 8
4
2/25/2019
Methodologies based on the order and phase of the
SDLC
• Another important factor in categorizing
methodologies is the sequencing of the SDLC phases
and the amount of time and effort devoted to each.
• In the early stages of computing, the need for formal
and well-planned life cycle methodologies were not
well understood.
• Programmers mostly moved directly from a very
fuzzy, not well-thought-out system requests the real
system implementation.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 9
System Development Methodologies
Waterfall Parallel
Development Development V-Model
Category I: Structured
Design
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 10
5
2/25/2019
Structured Design - Waterfall Development
• With the waterfall development, analysts and users proceed
sequentially from one phase to the next.
• The key deliverables for each phase are typically voluminous and are
presented to the approval committee and project sponsor for
approval as the project moves from phase to phase.
• Once the work produced in one phase is approved, the phase ends
and the next phase begins.
• As the project progresses from phase to phase, it moves forward in
the same manner as a waterfall.
• While it is possible to go backward through the phases it is quite
difficult.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 11
Structured Design - Waterfall Development
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 12
6
2/25/2019
Structured Design – Parallel Development
• The parallel development methodologies evolved to address the lengthy
time frame of waterfall development.
• In parallel development, instead of doing the design and implementation
in sequence, a general design for the whole system is performed.
• The project is then divided into a series of subprojects that can be
designed and implemented in parallel.
• Once all subprojects are complete, there is a final integration of the
separate pieces, and the system is delivered.
• Parallel development reduces the time required to deliver a system, so
changes in the business environment are less likely to produce the need
for rework.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 13
Structured Design – Parallel Development
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 14
7
2/25/2019
Structured Design – V-Model
• The V-model is another variation of waterfall development that pays more
explicit attention to testing.
• In the V-model, the development process proceeds down the left-hand slope
of the V, defining requirements and designing system components.
• At the base of the V, the codes are written, and on the upward-sloping right
side of the model, testing of components, integration testing, and, finally,
acceptance testing are performed.
• A key concept of this model is that as requirements are specified and
components designed, testing for those elements is also defined.
• In this manner, each level of testing is clearly linked to a part of the analysis
or design phase, helping to ensure high quality and relevant testing and
maximize test effectiveness.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 15
Structured Design – V-Model
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 16
8
2/25/2019
System Development Methodologies
Iterative System Throwaway
Development Prototyping Prototyping
Category II: Rapid
Application
Development (RAD)
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 17
What is Rapid Application Development? - 1
• Rapid application development(RAD) is a collection of
methodologies that emerged in response to the weaknesses of
waterfall development and its variants.
• RAD incorporates special techniques and computer
tools to speed up the analysis, design, and implementation phases
in order to get some portion of the system developed quickly and
into the hands of the users for evaluation and feedback.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 18
9
2/25/2019
What is Rapid Application Development? - 2
• CASE tools, JAD sessions, fourth-generation/visual programming
languages and code generators may all play a key role in RAD.
• While RAD can improve the speed and quality of systems development,
it may also introduce a problem in managing user expectations.
• As systems are developed more quickly and users gain a better
understanding of information technology, user expectations may
dramatically increase and system requirements may expand
during the project.
• This may lead to the moving target problem, also known as scope
creep or feature creep.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 19
RAD – Iterative Development
• In the Iterative development methodology, the overall project is broken into
a series of versions that are developed sequentially.
• The most important and fundamental requirements are bundled into the
first version of the system.
• This version is developed quickly by a mini-waterfall process, and once
implemented, the users can provide valuable feedback to be incorporated
into the next version of the system.
• Iterative development gets a preliminary version of the system
to the users quickly so that business value is provided.
• Users must accept that only the most critical requirements of the system
will be available in the early versions and must be patient with the repeated
introduction of new system versions.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 20
10
2/25/2019
RAD – Iterative Development
21
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019
RAD – System Prototyping
• In System prototyping methodology, the analysis, design, and implementation
phases of the SDLC are performed concurrently in order to quickly develop a
simplified version of the proposed system.
• The prototype so developed is given to the users for evaluation and feedback.
• The system prototype is a “quick and dirty” version of the system and
provides minimal features.
• Following reaction and comments from the users, the developers reanalyze,
redesign, and re-implement a second prototype that corrects deficiencies and
adds more features.
• This cycle continues until the analysts, users, and sponsor agree
that the prototype provides enough functionality to be installed and used in
the organization.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 22
11
2/25/2019
RAD – System Prototyping
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 23
RAD – Throwaway Prototyping
• Throwaway prototyping includes the development of prototypes, but uses
the prototypes primarily to explore design alternatives rather than as the
actual new system (as in system prototyping).
• It has a fairly thorough analysis phase that is used to gather requirements
and to develop ideas for the system concept.
• Many of the features suggested by the users may not be well understood,
however, and there may be challenging technical issues to be solved.
• Each of these issues is examined by analyzing, designing, and building a
design prototype.
• A design prototype is not intended to be a working system but, it contains
only enough details to enable users to understand the issues under
consideration. Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 24
12
2/25/2019
RAD - Throwaway Prototyping
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 25
System Development Methodologies
eXtreme Dynamic Systems
Programming SCRUM Development Method
(XP)
(DSDM)
Category III: Agile
Development
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 26
13
2/25/2019
Agile Development
• This is a group of programming-centric methodologies
that focus on streamlining the SDLC.
• Much of the modeling and documentation overhead is
eliminated; instead, face-to-face communication is
preferred.
• The following are discussed under this category:
• eXtreme Programming (XP)
• *Scrum
• *Dynamic Systems Development Method(DSDM)
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 27
Agile Development – XP - 1
• Extreme programming emphasizes customer satisfaction and
teamwork.
• The core values of XP are Communication, simplicity, feedback,
and courage .
• Developers frequently communicate with customers and fellow
programmers. Designs are kept simple and clean.
• Early and frequent testing provides feedback, and developers are
able to courageously respond to changing requirements and
technology.
• Project teams are kept small.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 28
14
2/25/2019
Agile Development – XP - 2
• An XP project begins with user stories that describe what the system
needs to do.
• The programmers then code in small, simple modules and test to meet
those needs.
• Users are required to be available to clear up questions and issues as
they arise.
• Standards are very important to minimize confusion, so XP teams use a
common set of names, descriptions, and coding practices.
• XP projects deliver results sooner than even the RAD approaches, and
they rarely get bogged down in gathering requirements for the system
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 29
Agile Development - XP
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 30
15
2/25/2019
Systems Development Methodologies
Selecting Appropriate
Development Methodology
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 31
Selecting Appropriate Methodology
• Choosing a methodology is not simple, because no one
methodology is always best.
• Many organizations have standards and policies to
guide the choice of methodology.
• You will find that organizations range from having one
“approved” methodology to having several
methodology options to having no formal policies at all.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 32
16
2/25/2019
Factors to Consider when Selecting Development
Methodology
• Selecting a methodology for an IS project can be very
challenging even for the experienced analysts.
• The following factors are useful and must be taken into
consideration when selecting a methodology for a project:
1. Clarity of user Requirements
2. Familiarity with Technology
3. System Complexity
4. System Reliability
5. Short Time Schedules
6. Schedule Visibility
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 33
Choosing Appropriate Methodology
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 34
17
2/25/2019
Systems Development Methodologies
Project Team Skills and
Roles
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 35
Project Team Skills
• Projects should consist of a variety of skilled individuals in
order for a system to be successful.
• Six major skill sets an analyst should have include:
• Technical
• Business
• Analytical
• Interpersonal
• Management
• Ethical
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 36
18
2/25/2019
Categories of Analysts
• Business Analyst
• Systems Analyst
• Infrastructure Analyst
• Change Management Analyst
• Project Manager
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 37
Roles and Responsibilities
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 38
19
2/25/2019
Summary - 1
• A methodology is the formalized implementation of
the SDLC.
• Apart from categorizing system development
methodology based on business processes and the
data that support the businesses, the system
development methodologies are also categorized
based on the order and the focus of each phase of the
SDLC.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 39
Summary - 2
• Categorizing system development methodology based
on business processes and the data that support the
businesses, leads to Process-centered, Data-
centered, and Object-oriented methodologies.
• Categorized based on the order and the focus of each
phase of the SDLC leads to Structured design, Rapid
Application Development, and Agile methodologies.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 40
20
2/25/2019
Summary - 3
• Structured design methodologies are Waterfall
development, Parallel development, and V-Model
• RAD methodologies are Iterative development,
System prototyping, and Throwaway prototyping
• Agile methodologies are XP, Scrum, and DSDM.
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 41
QUITTING TIME
QUITTING TIME
42
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019
21
2/25/2019
Next Week Lecture
Information Systems
Project Initiation
Systems Analysis and Design Lecture Slides. Maxwell Dorgbefu Jnr. - 2019 43
22