The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

Chapter 1 Introduction to System Analysis and Design

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by pnwizni, 2022-03-04 10:06:41

Chapter 1 Introduction to System Analysis and Design

Chapter 1 Introduction to System Analysis and Design

DFC40163
SYSTEM ANALYSIS & DESIGN

TOPIC 1 INTRODUCTION TO SYSTEM
ANALYSIS AND DESIGN



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.

System software manages Application software consists
the hardware components, of programs that support day-to-
which can include a single day business functions and
workstation or a global provide users with the
network with many thousands information they require.
of clients. Examples :
Examples: operating system, enterprise applications, include
security software, device order processing systems,
drivers payroll systems, and company
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

Business Knowledge
Support System Management

System

Transaction User
Processing Productivity

System System

Enterprise INFORMATION Information
Computing SYSTEM System

System Integration

Types of Information System

Enterprise • Information systems that support company-wide
Computing operations and data management requirements.

System

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

System • Examples of TP systems include customer order
processing, accounts receivable, and warranty
claim processing.

Business • Analyze transactional data, generate information
Support needed to manage and control business
System processes, and provide information that leads to
better decision-making.

Types of Information System

Knowledge • Knowledge management systems (expert
Management systems) simulate human reasoning by
combining a knowledge base and inference rules
System that determine how the knowledge is applied.

User • Companies provide employees at all levels with
Productivity technology that improves productivity.

System • Examples of user productivity systems include e-
mail, voice mail, fax, video and Web
conferencing, word processing, presentation
graphics, company intranets, and high-speed
Internet access.

Information • Most large companies require systems that
System combine transaction processing, business
support, knowledge management, and user
Integration productivity features.



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.

Description Structured Analysis Object Oriented Agile/Adaptive
Analysis Method
• Represents the
system in terms of • View the system • Stresses
data and the in terms of intense team-
processes that act objects that based effort.
upon the data. combine data
and processes. • Break
• System development development
is organized into • More interactive. process down
phases, with into cycles, or
deliverables and iteration that
milestone to measure add
progress. functionality.

• Each iteration
is designed,
built, and
tested in an
ongoing
process.

Structured Analysis Object Oriented Agile/Adaptive

Analysis Method

Modeling • Data Flow • Various object- • Tools that enhance
Tools
Diagrams(DFDs) oriented diagrams communication,

and process depict system such as

descriptions. actors, methods collaborative
software,
• Business Process and messages. brainstorming and

modeling. • Business process

modeling. whiteboards.
• Business process

modeling, works

well with agile

method.

Structured Analysis Object Oriented Agile/Adaptive

• Traditional method, which Analysis Method
has been very popular
Pros over time. • Integrates easily • Very flexible and

• Relies heavily on written with object- efficient in
documentation.
oriented dealing with
• Frequent phase iteration
can provide flexibility programming change.
comparable with other • Stresses team
methods. languages.
• Code is modular interaction and
• Well-suited to project
management tools & and reusable, reflects a set of
techniques.
which can reduce community-

cost and based values.

development time. • Frequent

• Easy to maintain deliverables

and expand. constantly

validate the

project and

reduce risk.

Cons Structured Analysis Object Oriented Agile/Adaptive Method
Analysis
• Changes can be • • Team members need
costly, especially in Somewhat newer a high level of
later phases. method might be technical and
less familiar to communications skills.
• Requirements are development team
defined early, and members. • Lack of structure and
can change during • Interaction of documentation can
development. objects and classes introduce risk factors.
can be complex in
• Users might not be larger systems. • project might be
able to describe 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
Design
SDLC
ACTIVITIES

Implementation

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
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,
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 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.
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
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.
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.
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: (Reference: E-Book)

Waterfall Spiral Model Iterative and
Model increment

development

Agile Prototyping Rapid Extreme
Model Model Application Programming
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.

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.

Iterative and Incremental
Development

• Iterative 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.

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.

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

Develop a • Prepare an overall project plan and stick
Plan to it. Complete the tasks in a logical
sequence.

• 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

Use Project • Try to keep the project on track and
Management avoid surprises.

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

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

Systems Development Guidelines

Remain • Be flexible within the framework of
Flexible your plan. Systems development is a
dynamic process, and overlap often
exists among tasks.

• The ability to react quickly is especially
important when you are working on a
system that must be developed rapidly



System 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 PERT/CPM
charts.


Click to View FlipBook Version