Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 96

DFC40243

SYSTEM ANALYSIS & DESIGN


TOPIC 1 INTRODUCTION TO SYSTEM
ANALYSIS AND DESIGN
1.1 INFORMATION
SYSTEM
Information

Data that has been changed into a


useful form of output.
Information System
An information system combines
information technology, people, and
data to support business
requirements.

• For example, information systems handle daily


business transactions, improve company productivity,
and help managers make sound decisions.
• The IT department team includes systems analysts
who plan, develop, and maintain information systems.
Information System Components
a) Hardware
A computer and its peripheral equipment:
input, output and storage devices; hardware
also includes data communication
equipment.

• hardware can include


servers, workstations,
networks,
telecommunications
equipment, fiber-optic
cables, mobile devices,
scanners, digital
capture devices, and
other technology-based
infrastructure.
b) Software
Software refers to the programs that control
the hardware and produce the desired
information or results. Software consists of
system software and application software.

Application software consists


System software manages
of programs that support day-to-
the hardware components,
day business functions and
which can include a single
provide users with the
workstation or a global
information they require.
network with many thousands
Examples :
of clients.
enterprise applications, include
Examples: operating system,
order processing systems,
security software, device
payroll systems, and company
drivers
communications networks.
c) Data
Data is the raw material that an information
system transforms into useful information.

In a typical payroll system,


data is stored in separate
tables, which are joined
together to form a
database that contains all
the information.
d) Processes
Processes describe the tasks and business
functions that users, managers, and IT staff
members perform to achieve specific
results.

To
build a successful
information system,
analysts must
understand business
processes and
document them
carefully.
e) People
People who have an interest in an information
system are called stakeholders.

Stakeholders include the management group


responsible for the system, the users (end users)
inside and outside the company who will interact with
the system, and IT staff members, such as systems
analysts, programmers, and network administrators
who develop and support the system.
Types of Information System

Knowledge
Business
Management
Support System
System

Transaction User
Processing Productivity
System System

Enterprise Information
Computing
INFORMATION System
System SYSTEM Integration
Types of Information System

Enterprise • Information systems that support company-wide operations and


data management requirements.
Computing • Examples: customer relationships management (CRM), enterprise
resource planning (ERP), and supply chain management (SCM).
System

Transaction • process data generated by day-to-day business operations.


Processing • Examples: customer order processing, accounts receivable, and
warranty claim processing.
System

• Analyze transactional data, generate information needed to manage


and control business processes, and provide information that leads
Business to better decision-making.
• Examples: deals with the taking of orders, payment issues,
Support System revenues, etc. It supports four processes: product management,
order management, revenue management and customer
management.
Types of Information System
• Knowledge management systems (expert systems)
simulate human reasoning by combining a knowledge
base and inference rules that determine how the
Knowledge knowledge is applied.
Management • Any technology solutions, combined with processes
and people, that store and organize knowledge so
System teams can collaborate, stay aligned, and do their best
work.
• Examples: Google Drive, Canva

• Companies provide employees at all levels with


technology that improves productivity.
User Productivity • Examples: e-mail, voice mail, fax, video and Web
System conferencing, word processing, presentation graphics,
company intranets, and high-speed Internet access .

• Most large companies require systems that combine


transaction processing, business support, knowledge
Information management, and user productivity features.
System • A combination of software that combine different
databases from various sources with data integration
Integration tools, visualization and models
1.2 SYSTEM
DEVELOPMENT
APPROACH
System Development Method

Many options exist for developing information systems, but


the most popular alternatives are:

• structured analysis, which is a traditional method that still


is widely used,

• object-oriented (O-O) analysis, which is a more recent


approach that many analysts prefer, and

• agile methods, also called adaptive methods, which


include the latest trends in software development.
Structured Analysis Object Oriented Agile/Adaptive
Analysis Method
Description • Represents the system in • View the system • Stresses
terms of data and the
processes that act upon
in terms of intense team-
the data. objects that based effort.
• System development is combine data • Break
organized into phases, with and processes. development
deliverables and milestone
to measure progress. • More interactive. process down
• It is a logical, systematic • An object- into cycles, or
approach, which is often oriented system iteration that
seen as a sequential
process rather than an
allows the user to add
iterative one. focus functionality.
• It is well suited to completely on • Each iteration
procedural problems where tasks rather than is designed,
the overall objective is
clear and in which the tools. Examples built, and
requirements are well of object-oriented tested in an
defined. programming ongoing
languages process.
include C++ and
Smalltalk.
Structured Analysis Object Oriented Agile/Adaptive Method
Analysis
Modeling • Data Flow • Various object- • Tools that enhance
Tools Diagrams(DFDs) oriented diagrams communication,
and process depict system such as
descriptions. actors, methods collaborative
• Business Process and messages. software,
modeling. • Business process brainstorming and
modeling. whiteboards.
• Business process
modeling, works
well with agile
method.
Structured Analysis Object Oriented Agile/Adaptive
Analysis Method
Pros • Traditional method, which • Integrates easily • Very flexible and
has been very popular with object- efficient in
over time. oriented dealing with
• Relies heavily on written programming change.
documentation. languages. • Stresses team
• Frequent phase iteration • Code is modular interaction and
can provide flexibility and reusable, reflects a set of
comparable with other which can reduce community-
methods. cost and based values.
• Well-suited to project development time. • Frequent
management tools & • Easy to maintain deliverables
techniques. and expand. constantly
validate the
project and
reduce risk.
Structured Analysis Object Oriented Agile/Adaptive Method
Analysis
Cons • Changes can be • Somewhat newer • Team members need
costly, especially in method might be a high level of
later phases. less familiar to technical and
• Requirements are development team communications skills.
defined early, and members. • Lack of structure and
can change during • Interaction of documentation can
development. objects and classes introduce risk factors.
• Users might not be can be complex in • project might be
able to describe larger systems. subject to scope
their needs until change as user
they can see requirement change.
examples of
features and
functions.
What is SDLC
• SDLC is a process followed for a software
project, within a software organization.
• It consists of a detailed plan describing how
to develop, maintain, replace and alter or
enhance specific software.
• The life cycle defines a methodology for
improving the quality of software and the
overall development process.
SYSTEM DEVELOPMENT LIFE CYLE

Planning

Maintenance Analyze

SDLC
ACTIVITIES

Implementation Design

Testing Development
SYSTEM DEVELOPMENT LIFE CYLE

Purpose – identify the nature and scope of the business


opportunity or problem.
Systems request-begins the process & describes problems or
Planning desired changes
Includes preliminary investigation - key part is a feasibility study
The deliverable for planning is Preliminary Investigation Report
Purpose - to build a logical model of the new system
Perform fact-finding using techniques such as interviews, surveys,
Analyze document review, observation, and sampling.
Build business models, data and process models, and object models
The deliverable for the systems analysis phase is the system
requirements document.

Purpose- to create a physical model that will satisfy all documented


requirements for the system
Design Design the user interface and identify necessary outputs, inputs, and processes.
Avoid misunderstanding through manager and user involvement.
The deliverable for this phase is the system design specification.
SYSTEM DEVELOPMENT LIFE CYLE

The work is divided in modules/units and actual coding is


started.
Development The code is produced so it is the main focus for the developer.
This is the longest phase of the software development life cycle.

After the code is developed it is tested against the


requirements to make sure that the product is actually solving
Testing the needs addressed and gathered during the requirements
phase.
During this phase unit testing, integration testing, system
testing, acceptance testing are done.
The objective of the systems implementation phase is to deliver
a completely functioning and documented information
system.
Implementation Final preparations include converting data to the new system’s
files, training users, and performing the actual transition to the
new system.
.
SYSTEM DEVELOPMENT LIFE CYLE

New system supports operations.


Maintenance changes correct errors or
meet requirements.
Maintenance Enhancements increase system capability
(scalable design – system can expand to
meet new business requirements & volume).
Deliverables-Operational information system
Group Activities

Discuss and Describe various types of life


cycle models below:

Waterfall Iterative and


Model Spiral Model increment
development

Rapid Extreme
Agile Prototyping
Application Programming
Model Model
Development

Joint Application
Rapid Application
Development
Development (RAD)
(JAD)
Waterfall Model

• A linear-sequential life cycle model.


• Each phase must be completed before the next phase
can begin and there is no overlapping in the phases.
Waterfall Model

• All these phases are cascaded to each other in which


progress is seen as flowing steadily downwards (like a
waterfall) through the phases.
• The next phase is started only after the defined set of
goals are achieved for previous phase and it is signed
off, so the name "Waterfall Model".
• Model phases do not overlap.
The
Click to edit usagetitle style
Master
• For projects which not focus on
changing the requirements, for
example, projects initiated from a
request for proposals (RFPs), the
customer has very clear
documented requirements

DFC3043 System Analysis & Design rohaliza@pmu.edu.my


Click toAdvantages and style
edit Master title
Disadvantages

DFC3043 System Analysis & Design rohaliza@pmu.edu.my


Spiral Model

• The spiral model combines the idea of


iterative development with the systematic,
controlled aspects of the waterfall model.
Spiral Model

• Spiral model is a combination of iterative


development process model and sequential
linear development model i.e. waterfall
model with very high emphasis on risk
analysis.
• It allows for incremental releases of the
product, or incremental refinement through
each iteration around the spiral.
The
Click to edit usagetitle style
Master
• It is used in large applications and
systems which built-in small
phases or segments.
• It is combining elements of both
design and prototyping-in-stages,
in an effort to combine advantages
of top-down and bottom-up
concepts.

DFC3043 System Analysis & Design rohaliza@pmu.edu.my


Click toAdvantages and style
edit Master title
Disadvantages

DFC3043 System Analysis & Design rohaliza@pmu.edu.my


Iterative and Incremental
Development
• Iterative(repeated cycles) process starts with a
simple implementation of a subset of the software
requirements and iteratively enhances the evolving
versions until the full system is implemented.
Iterative and Incremental
Development
• In incremental model the whole
requirement is divided into various builds.
• During each iteration, the development
module goes through the requirements,
design, implementation and testing
phases.
• Each subsequent release of the module
adds function to the previous release.
• The process continues till the complete
system is ready as per the requirement.
The
Click to edit usagetitle style
Master
• It is developed to overcome the
weaknesses of the waterfall model.
• It starts with initial planning and ends
with deployment with the cyclic
interactions in between.
• The basic idea behind this method is to
develop a system through repeated
cycles (iterative) and in smaller portions
at a time (incremental).

DFC3043 System Analysis & Design rohaliza@pmu.edu.my


Click toAdvantages and style
edit Master title
Disadvantages

DFC3043 System Analysis & Design rohaliza@pmu.edu.my


Agile Model

• Combination of iterative and incremental process models


with focus on process adaptability and customer
satisfaction by rapid delivery of working software product.
Agile Model

• Agile Methods break the product into small


incremental builds. These builds are
provided in iterations. Each iteration typically
lasts from about one to three weeks. Every
iteration involves cross functional teams
working simultaneously on various areas like
planning, requirements analysis, design,
coding, unit testing, and acceptance testing.
• At the end of the iteration a working product
is displayed to the customer and important
stakeholders.
Agile Model-advantages

• Advantages:
– Very flexible and efficient in
dealing with change.
– team interaction and reflect a set
of community-based values.
– frequent deliverables constantly
validate the project and reduce
risk.
Agile Model-Disadvantages

• Disadvantages:
– team members need a high level of
technical and interpersonal skills.
– a lack of structure and documentation
– can introduce risk factors.
– the overall project may be subject to
significant change in scope as user
requirements continue to evolve
during the project.
Prototyping Model

• The Software Prototyping refers to building


software application prototypes which display
the functionality of the product under
development but may not actually hold the
exact logic of the original software.
Prototyping Model

• Prototype is a working model of software with


some limited functionality.
• The prototype does not always hold the exact
logic used in the actual software application
and is an extra effort to be considered under
effort estimation.
• Prototyping is used to allow the users
evaluate developer proposals and try them out
before implementation.
• It also helps understand the requirements
which are user specific and may not have
been considered by the developer during
product design.
The
Click to edit usagetitle style
Master

DFC3043 System Analysis & Design rohaliza@pmu.edu.my


Rapid Application Development
(RAD)
• Rapid application development (RAD) is a team-
based technique that speeds up information
systems development and produces a functioning
information system..
Rapid Application Development
(RAD)
• Companies use RAD to reduce cost and
development time, and increase the
probability of success.
• RAD relies heavily on prototyping and user
involvement.
• The RAD process allows users to examine a
working model as early as possible,
determine if it meets their needs, and
suggest necessary changes.
Rapid Application Development
(RAD) –Advantage & disadvantages
• Advantage-systems can be developed more
quickly with significant cost savings.
• Disadvantage:
– RAD stresses the mechanics of the system
itself and does not emphasize the company’s
strategic business needs.
– The risk is that a system might work well in
the short term, but the corporate and long-
term objectives for the system might not be
met.
– the accelerated time cycle might allow less
time to develop quality, consistency, and
design standards.
Joint Application Development
(JAD)
• Joint Application Development (JAD) is a user
requirements elicitation process that involves the
system owner and end users in the design and
development of an application through a succession of
collaborative workshops.
• The JAD approach leads to shorter development
lifecycles and greater client satisfaction because it
draws users and information systems analysts
together to jointly design systems in facilitated group
sessions.
Joint Application Development
(JAD)
• A JAD team usually meets over a period of days or
weeks in a special conference room or at an off-site
location.
• It is most applicable to the development of business
systems, but it can be used successfully for shrink-
wrap and systems software.
• It produces its savings by shortening the elapsed
time required to gather a system’s requirements and
by gathering requirements better, thus reducing the
number of costly downstream requirements
changes.
Joint Application Development
(JAD)-Advantages & disadvantages
• Compared with traditional methods, JAD is
more expensive and can be cumbersome if the
group is too large relative to the size of the
project.
• JAD allows key users to participate effectively
in the requirements modeling process.
• JAD can result in a more accurate statement of
system requirements, a better understanding
of common goals, and a stronger commitment
to the success of the new system.
Systems Development Guidelines

• Prepare an overall project plan and stick


to it. Complete the tasks in a logical
Develop a sequence.
Plan • Develop a clear set of ground rules and
be sure that everyone on the team
understands them clearly.

Involve • Ensure that users are involved in the


Users and development process, especially when
identifying and modeling system
Listen requirements.
Carefully to • When you interact with users, listen
them closely to what they are saying.
Systems Development Guidelines

• Try to keep the project on track and


Use Project avoid surprises.
Management • Create a reasonable number of
Tools and checkpoints — too many can be
Techniques burdensome, but too few will not provide
adequate control.

• Managers need to know the cost of


Develop developing and operating a system, and
Accurate Cost the value of the benefits it will provide.
and Benefit • You must provide accurate, realistic cost
Information and benefit estimates, and update them
as necessary.
Systems Development Guidelines

• Be flexible within the framework of


your plan. Systems development is a
dynamic process, and overlap often
Remain exists among tasks.
• The ability to react quickly is especially
Flexible important when you are working on a
system that must be developed rapidly
1.3 PROJECT
MANAGEMENT
Project Management

• Project management is the discipline of planning,


organizing, and managing resources to bring about the
successful completion of specific project goals and
objectives.
• Project management for IT professionals includes
planning, scheduling, monitoring and controlling,
and reporting on information system development.
• The primary challenge of project management is to
achieve all of the project goals and objectives while
honoring the preconceived project constraints.
a) Project Planning

• Project planning includes identifying all


project tasks and estimating the
completion time and cost of each.
b) Project Scheduling

• Project scheduling involves the creation of a specific


timetable, usually in the form of charts that show
tasks, task dependencies, and critical tasks that might
delay the project.
• Scheduling also involves selecting and staffing the
project team and assigning specific tasks to team
members.
• Project scheduling uses Gantt charts and Program
Evaluation Report Technique (PERT) / Critical
Path Method (CPM) charts.
c) Project Monitoring

• Project monitoring requires


guiding, supervising, and
coordinating the project team’s
workload.
• The project manager must
monitor the progress, evaluate
the results, and take
corrective action when
necessary to control the project
and stay on target.
d) Project Reporting

• Project reporting includes regular progress


reports to management, users, and the project
team itself.
• Effective reporting requires strong
communication skills and a sense of what others
want and need to know about the project.
Project Management
Steps in Project Planning

• 3 key steps:
a) Create a work breakdown
structure.
b) Identify task patterns.
c) Calculate the critical path.
Step 1: Work Breakdown
Structure
• A work breakdown structure (WBS) involves
breaking a project down into a series of smaller tasks.
Step 2: Identify Task Pattern

• Tasks in a work breakdown structure


must be arranged in a logical
sequence.
• In any project, large or small, tasks
depend on each other and must be
performed in a sequence
Step 2: Identify Task Pattern

• Task patterns can involve dependent


tasks, multiple successor tasks, and
multiple predecessor tasks.
• In larger projects, these patterns can
be very complex, and an analyst
must study the logical flow carefully.
What Are the Main Types of Task
Patterns?
Dependent Tasks
• When tasks must be completed one after another, like
the relay race
• Task 2 cannot start until Task 1 is completed

Multiple Successor Tasks


• When several tasks can start at the same time, each
is called a concurrent task
• successor Tasks 2 and 3 both can begin as soon as
Task 1 is finished.

Multiple Predecessor Tasks


• Suppose that a task requires two or more prior tasks
to be completed before it can start.
• Task 3 cannot begin until Tasks 1 and 2 are both
completed
Types of Task Patterns
Types of Task Patterns
Step 3: Calculate Critical Path
Analysis
• A critical path is a series of tasks which, if
delayed, would affect the completion date
of the overall project.
• If any task on the critical path falls behind
schedule, the entire project will be delayed.
• Project managers always must be aware of
the critical path, so they can respond quickly
to keep the project on track.
Create Work Breakdown Structure

• Before creating work breakdown structures,


you should understand the two primary
chart types:
– Gantt charts
– PERT/CPM charts.
Gantt Chart
• A Gantt chart is a horizontal bar chart that
represents a set of tasks.
• A Gantt chart also can simplify a complex project by
combining several activities into a task group.
• Gantt charts can present an overview of the
project’s status, but they do not provide enough
detailed information, which is necessary when
managing a complex project.
Gantt Chart
• The position of the bar shows the planned starting
and ending time of each task, and the length of the
bar indicates its duration.
• On the horizontal axis, time can be shown as elapsed
time from a fixed starting point, or as actual calendar
dates.
PERT/CPM Chart

• PERT is a bottom-up technique, because it


analyzes a large, complex project as a series of
individual tasks.
• To create a PERT chart, you first identify all the
project tasks and estimate how much time each
task will take to perform.
• Next, you must determine the logical order in which
the tasks must be performed. For example, some
tasks cannot start until other tasks have been
completed.
PERT/CPM Chart
• In other situations, several tasks can be performed
at the same time.
The top screen is a Gantt chart with 11 tasks, and a PERT
chart in the bottom screen shows the same project. Although
not visible in this zoomed-out view, the PERT chart boxes
provide detailed information about task duration, start dates,
and finish dates.
Create Work Breakdown Structure
(WBS)

• Identify task in a WBS


– Listing the task
– Estimating task duration
TASK

• A task, or activity, is any work that has a


beginning and an end and requires the use
of company resources such as people,
time, or money.
• Examples : conducting interviews,
designing a report, selecting software,
waiting for the delivery of equipment, or
training users.
EVENT

• Event, or milestone is a recognizable


reference point that you can use to monitor
progress.
• In addition to tasks, every project has events,
or milestones
• Example : an event might be the start of user
training, the conversion of system data, or the
completion of interviews.
• A milestone such as Complete 50 percent of
program testing would not be useful
information unless you could determine
exactly when that event will occur.
a) Listing the task

1. Highlighting the individual tasks


a) Listing the task

2. Adding bullets makes the tasks


stand out more clearly
a) Listing the task

3. Number the tasks and create a table


a) Listing the task

• Gantt Chart
b) Estimating task duration

• Task duration can be hours, days, or


weeks — depending on the project.
• Project managers often use a weighted
formula for estimating the duration of each
task.
• The project manager first makes three time
estimates for each task:
– optimistic, or best-case estimate (B),
– probable-case estimate (P),
– pessimistic, or worst-case estimate (W).
b) Estimating task duration

• Project managers consider four factors


affecting duration:
– Project size
– Human resources
– Experience with similar projects
– Constraints
Sample Task Summary
Sample Task Summary

• If you are using Microsoft Project or Open


Workbench, the process is exactly the
same.
• You must identify the tasks, durations, and
task patterns. You might have to develop
this information on your own.
Using Gantt Chart

• Enter the tasks, durations, and predecessor


tasks, the program automatically performs the
calculations, detects the task patterns, and
creates a Gantt chart
Using PERT/CPM CHART
Project Management Software

• Microsoft Project - is a full-featured


project management program that holds the
dominant share of the market.
• Open Workbench - is available as free
software, complete with manuals and
sample projects.
Project Management Software

• Open Workbench is open-source software


that is supported by a large group of users and
developers.
• Support options include community forums that
are open to all users, various training
packages, and third-party support.
• cost-effective alternative that would compare
favorably to Microsoft Project.
• Open Workbench also can exchange files with
Microsoft Project by importing and exporting
the data in XML file format.
Open Workbench
Microsoft Project
Leadership and Project Manager

• Usually is a senior systems analyst or an


IT department manager if the project is
large.
Leadership and Project Manager

• Project managers typically perform four


activities, or functions:

Project Planning

Project Scheduling

Project Monitoring

Project Reporting
Leadership and Project Manager

• Includes identifying all


project tasks and estimating
Project the completion time and cost
Planning of each.

• Involves the creation of a


specific timetable
Project • Involves selecting and
Scheduling staffing the project team and
assigning specific tasks to
team members
Leadership and Project Manager

• Requires guiding, supervising, and


coordinating the project team’s
Project workload.
• The project manager must monitor the

Monitoring progress, evaluate the results, and take


corrective action when necessary to
control the project and stay on target.

• Includes regular progress reports to


management, users, and the project
Project team itself.
• Effective reporting requires strong

Reporting communication skills and a sense of


what others want and need to know
about the project.
Leadership and Project Manager
• In addition to the project manager, most large
projects have a project coordinator.
• A project coordinator handles administrative
responsibilities for the team and negotiates
with users who might have conflicting
requirements or want changes that would
require additional time or expense.

You might also like