0% found this document useful (0 votes)
48 views39 pages

Modern Systems Analysis and Design: The Systems Development Environment

This document provides an overview of modern systems analysis and design. It describes the systems development life cycle (SDLC) process and alternatives like prototyping, rapid application development, and agile methodologies. Object-oriented analysis and design and the Rational Unified Process are also explained. Computer-aided software engineering tools, service-oriented architecture, and extreme programming are discussed as approaches to improving the development process.

Uploaded by

hamza alaswadi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views39 pages

Modern Systems Analysis and Design: The Systems Development Environment

This document provides an overview of modern systems analysis and design. It describes the systems development life cycle (SDLC) process and alternatives like prototyping, rapid application development, and agile methodologies. Object-oriented analysis and design and the Rational Unified Process are also explained. Computer-aided software engineering tools, service-oriented architecture, and extreme programming are discussed as approaches to improving the development process.

Uploaded by

hamza alaswadi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 39

Modern Systems Analysis

and Design

Chapter 1
The Systems Development
Environment
Learning Objectives
 Define information systems analysis and design.
 Describe the information Systems Development Life
Cycle (SDLC).
 Explain Rapid Application Development (RAD),
prototyping, Computer Aided Software Engineering
(CASE), and Service-Oriented Architecture (SOA).
 Describe agile methodologies and eXtreme
programming.
 Explain Object Oriented Analysis and Design and the
Rational Unified Process (RUP).

2
Introduction
 Information Systems Analysis and Design
 Complex organizational process
 Used to develop and maintain computer-
based information systems
 Used by a team of business and systems
professionals

3
Introduction (Cont.)

FIGURE 1-1 An organizational approach to systems analysis and


design is driven by methodologies, techniques, and tools

4
A Modern Approach to Systems
Analysis and Design
 1950s: focus on efficient automation of
existing processes
 1960s: advent of 3GL, faster and more
reliable computers
 1970s: system development becomes
more like an engineering discipline

5
A Modern Approach to Systems
Analysis and Design (Cont.)
 1980s: major breakthrough with 4GL,
CASE tools, object oriented methods
 1990s: focus on system integration, GUI
applications, client/server platforms,
Internet
 The new century: Web application
development, wireless PDAs, component-
based applications

6
A Modern Approach to Systems
Analysis and Design (Cont.)
 Application Software
 Computer software designed to support
organizational functions or processes
 Systems Analyst
 Organizational role most responsible for
analysis and design of information systems

7
Developing Information Systems

 System Development Methodology is a


standard process followed in an
organization to conduct all the steps
necessary to analyze, design, implement,
and maintain information systems.

8
Systems Development Life
Cycle (SDLC)
 Traditional methodology used to develop,
maintain, and replace information systems.
 Phases in SDLC:
 Planning
 Analysis
 Design
 Implementation
 Maintenance

9
Standard and Evolutionary Views of
SDLC

FIGURE 1-3 Evolutionary model


FIGURE 1-2
The systems development life cycle

10
Systems Development Life Cycle
(SDLC) (Cont.)
 Planning – an organization’s total
information system needs are identified,
analyzed, prioritized, and arranged
 Analysis – system requirements are
studied and structured

11
Systems Development Life Cycle
(SDLC) (Cont.)
 Design – a description of the
recommended solution is converted into
logical and then physical system
specifications
 Logical design – all functional features of
the system chosen for development in
analysis are described independently of
any computer platform

12
Systems Development Life Cycle
(SDLC) (Cont.)
 Physical design – the logical
specifications of the system from logical
design are transformed into the
technology-specific details from which all
programming and system construction can
be accomplished

13
Systems Development Life Cycle
(SDLC) (Cont.)
 Implementation – the information system
is coded, tested, installed and supported in
the organization
 Maintenance – an information system is
systematically repaired and improved

14
15
The Heart of the Systems Development Process
FIGURE 1-7 FIGURE 1-8
The analysis–design–code–test loop The heart of systems development

Current practice combines analysis, design, and implementation


into a single iterative and parallel process of activities.
Traditional Waterfall SDLC

One phase begins


when another
completes, with
little backtracking
and looping.

FIGURE 1-9
A traditional waterfall SDLC

17
Problems with Waterfall Approach

 System requirements “locked in” after


being determined (can't change)
 Limited user involvement (only in
requirements phase)
 Too much focus on milestone deadlines of
SDLC phases to the detriment of sound
development practices

18
Different Approaches to Improving
Development
 Prototyping
 CASE Tools
 Rapid Application Development
(RAD)
 Agile Methodologies
 eXtreme Programming

19
Prototyping
 Prototyping
 Isa form of Rapid Application Development.
 Building a scaled-down working version of the system
 Advantages:
 Users are involved in design
 Captures requirements in concrete form

20
Computer-Aided Software
Engineering (CASE) Tools
 Diagramming tools enable graphical
representation.
 Computer displays and report generators
help prototype how systems “look and
feel”.

21
Computer-Aided Software
Engineering (CASE) Tools (Cont.)
 Analysis tools automatically check for
consistency in diagrams, forms, and
reports.
 A central repository provides integrated
storage of diagrams, reports, and project
management specifications.

22
Computer-Aided Software
Engineering (CASE) Tools (Cont.)
 Documentation generators standardize
technical and user documentation.
 Code generators enable automatic
generation of programs and database
code directly from design documents,
diagrams, forms, and reports.

23
CASE Tools (Cont.)

FIGURE 1-10
A class diagram from
IBM’s Rational Rose

(Source: IBM)

24
CASE Tools (Cont.)

25
Rapid Application Development
(RAD)
 Methodology to radically decrease
design and implementation time
 Involves: extensive user involvement,
prototyping, JAD sessions, integrated
CASE tools, and code generators

26
Rapid Application Development
(RAD) (Cont.)

FIGURE 1-11
RAD life cycle

27
Service-Oriented Architecture
(SOA)
 An approach to systems development
based on building complete systems
through assembling software
components, each of which model
generic business functions

28
Service-Oriented Architecture (SOA)
(Cont.)

FIGURE 1-12
Illustration of a service, a credit check,
used by applications and other services
29
Agile Methodologies
 Motivated by recognition of software
development as fluid, unpredictable, and
dynamic
 Three key principles
 Adaptive rather than predictive
 Emphasize people rather than roles
 Self-adaptive processes

30
The Agile
Methodologies group
argues that software
development
methodologies
adapted from
engineering generally
do not fit with real-
world software
development.

31
When to use Agile Methodologies
 If your project involves:
 Unpredictable or dynamic requirements
 Responsible and motivated developers
 Customers who understand the process and
will get involved

32
eXtreme Programming
 Short, incremental development cycles
 Automated tests
 Two-person programming teams

33
eXtreme Programming (Cont.)
 Coding and testing operate together
 Advantages:
 Communication between developers
 High level of productivity
 High-quality code

34
Object-Oriented Analysis and
Design (OOAD)
 Based on objects rather than data or
processes
 Object: a structure encapsulating
attributes and behaviors of a real-
world entity

35
Object-Oriented Analysis and
Design (OOAD) (Cont.)
 Object class: a logical grouping of
objects sharing the same attributes
and behaviors
 Inheritance: hierarchical
arrangement of classes enable
subclasses to inherit properties of
superclasses

36
Rational Unified Process (RUP)
 An object-oriented systems development
methodology
 RUP establishes four phase of
development: inception, elaboration,
construction, and transition.
 Each phase is organized into a number of
separate iterations.

37
FIGURE 1-13
Phases of OOSAD-based development

38
Our Approach to Systems
Development
 The SDLC is an organizing and guiding
principle in this book.
 We may construct artificial boundaries or
artificially separate activities and
processes for learning purposes.
 Our intent is to help you understand all the
pieces and how to assemble them.

39

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy