Title: CIS 302 Introduction To Systems Analysis and Design
1CIS 302Introduction To Systems Analysis and
Design
- The Systems Development Environment
1.1
2Learning Objectives
- Define information systems analysis and design
- Discuss the modern approach to systems analysis
and design - Describe the organizational role of the systems
analyst
1.2
3Learning Objectives
- Describe four types of information systems
- Transaction Processing Systems (TPS)
- Management Information Systems (MIS)
- Decision Support Systems (DSS)
- Expert Systems (ES)
- Describe the information systems development life
cycle (SDLC)
1.3
4Learning Objectives
- Discuss alternatives to the systems development
life cycle - Discuss the role of computer aided software
engineering (CASE) tools in systems development
1.4
5Overview
- Systems Analysis is a proven method to help
business utilize information to its fullest - Systems Development Life Cycle (SDLC)
- Central to Information Systems Development
1.5
6Information Systems Analysis and Design
- A method used by companies to create and maintain
systems that perform basic business functions - Main goal is to improve employee efficiency by
applying software solutions to key business tasks - A structured approach must be used in order to
ensure success
1.7
7Information Systems Analysis and Design
- Systems Analyst performs analysis and design
based upon - Understanding of organizations objectives,
structure and processes - Knowledge of how to exploit information
technology for advantage
1.8
8Systems Analysis and Design Core Concepts
- Major goal to improve organizational systems by
developing or acquiring software and training
employees in its use - Application software, or a system, supports
organizational functions or processes
1.9
9Systems Analysis and Design Core Concepts
- System Turns data into information and includes
- Hardware and system software
- Documentation and training materials
- Job roles associated with the system
- Controls to prevent theft or fraud
- The people who use the software to perform their
jobs
1.10
10Software Engineering Process
- A process used to create an information system
- Consists of
- Methodologies
- A sequence of step-by-step approaches that help
develop the information system - Techniques
- Processes that the analyst follows to ensure
thorough, complete and comprehensive analysis and
design - Tools
- Computer programs that aid in applying techniques
1.11
11System
- A system is an interrelated set of business
procedures used within one business unit working
together for a purpose - A system has nine characteristics
- A system exists within an environment
- A boundary separates a system from its environment
1.12
12Characteristics of a System
- Components
- Interrelated Components
- Boundary
- Purpose
- Environment
- Interfaces
- Constraints
- Input
- Output
1.13
13Important System Concepts
- Decomposition
- The process of breaking down a system into
smaller components - Allows the systems analyst to
- Break a system into small, manageable subsystems
- Focus on one area at a time
- Concentrate on component pertinent to one group
of users - Build different components at independent times
1.14
14Important System Concepts
- Modularity
- Process of dividing a system into modules of a
relatively uniform size - Modules simplify system design
- Coupling
- Subsystems that are dependent upon each other are
coupled - Cohesion
- Extent to which a subsystem performs a single
function
1.14
15A Modern Approach to Systems Analysis and Design
- Systems Integration
- Allows hardware and software from different
vendors to work together. - Enables procedural language systems to work with
visual programming systems - Visual programming environment uses client/server
model
1.15
16Data and Processes
- Three key components of an information system
- Data
- Data Flows
- Processing Logic
- Data vs. Information
- Data
- Raw facts
- Information
- Derived from data
- Organized in a manner that humans can
- understand.
1.16
17Data and Processes
- Data
- Understanding the source and use of data is key
to good system design - Various techniques are used to describe data and
the relationship amongst data - Data Flows
- Groups of data that move and flow through the
system
1.17
18Data and Processes
- Data Flows (Continued)
- Include description of sources and destination
for each data flow - Processing Logic
- Describe steps that transform data and events
that trigger the steps
1.18
19Approaches to Systems Development
- Process-Oriented Approach
- Focus is on flow, use and transformation of data
in an information system - Involves creating graphical representations such
as data flow diagrams and charts - Data are tracked from sources, through
intermediate steps and to final destinations - Natural structure of data is not specified
- Disadvantage data files are tied to specific
applications
1.19
20Approaches to Systems Development
- Data-Oriented Approach
- Depicts ideal organization of data, independent
of where and how data are used - Data model describes kinds of data and business
relationships among the data - Business rules depict how organization captures
and processes the data
1.20
21Databases and Application Independence
- Database
- Shared collection of logically related data
- Organized to facilitate capture, storage and
retrieval by multiple users - Centrally managed
- Designed around subjects
- Customers
- Suppliers
- Application Independence
- Separation of data and definition of data from
applications
1.21
22Role of the Systems Analyst
- Study problems and needs of an organization
- Determine best approach to improving organization
through use of - People
- Methods
- Information technology
- Help system users and managers define their
requirements for new or enhanced systems
1.22
23Role of the Systems Analyst
- Assess options for system implementation
- In-house development
- Outsourced development
- Outsourced development and operation
- Commercial application
- For in-house projects, work on a team of analysts
and developers
1.23
24Skills of a Successful Systems Analyst
- Analytical
- Understanding of organizations.
- Problem solving skills
- System thinking
- Ability to see organizations and information
systems as systems - Technical
- Understanding of potential and limitations of
technology.
1.24
25Skills of a Successful Systems Analyst
- Managerial
- Ability to manage projects, resources, risk and
change - Interpersonal
- Effective written and oral communication skills
1.25
26Types of Information Systemsand Systems
Development
- Transaction Processing Systems (TPS)
- Automate handling of data about business
activities (transactions) - Management Information Systems (MIS)
- Converts raw data from transaction processing
system into meaningful form - Decision Support Systems (DSS)
- Designed to help decision makers
- Provides interactive environment for decision
making
1.26
27Types of Information Systemsand Systems
Development
- Expert Systems (ES)
- Replicates decision making process
- Knowledge representation describes the way an
expert would approach the problem
1.27
28Systems Development Life Cycle
- System Development Methodology
- Standard process followed in an organization
- Consists of
- Analysis
- Design
- Implementation
- Maintenance
1.28
29Systems Development Life Cycle
- Series of steps used to manage the phases of
development for an information system - Consists of four phases
- Planning and Selection
- Analysis
- Design
- Implementation and Operation
1.29
30Systems Development Life Cycle
- Phases are not necessarily sequential
- Each phase has a specific outcome and deliverable
- Individual companies use customized life cycle
1.30
31Phases of the Systems Development Life Cycle
- Systems Planning and Selection
- Two Main Activities
- Identification of need
- Investigation and determination of scope
- Systems Analysis
- Study of current procedures and information
systems - Determine requirements
- Generate alternative designs
- Compare alternatives
- Recommend best alternative
1.31
32Systems Development Life Cycle
- System Design
- Logical Design
- Concentrates on business aspects of the system
- Physical Design
- Technical specifications
- Implementation and Operation
- Implementation
- Hardware and software installation
- Programming
- User Training
- Documentation
1.32
33Systems Development Life Cycle
- Operation
- System changed to reflect changing conditions.
- System obsolescence
1.33
34Approaches to Development
- Prototyping
- Building a scaled-down working version of the
system - Advantages
- Users are involved in design
- Captures requirements in concrete form
- Rapid Application Development (RAD)
- Utilizes prototyping to delay producing system
design until after user requirements are clear
1.34
35Approaches to Development
- Joint Application Design (JAD)
- Users, Managers and Analysts work together for
several days - System requirements are reviewed
- Structured meetings
1.35
36Summary
- Information systems analysis and design
- Process of developing and maintaining an
information system - Modern approach to systems analysis
- Process-Oriented
- Data-Oriented
1.36
37Summary
- Role of Systems Analyst
- Four types of information systems
- Transaction Processing (TPS)
- MIS
- Decision Support (DSS)
- Expert Systems (ES)
1.37
38Summary
- Systems Development Life Cycle (SDLC)
- Systems Planning and Selection
- Systems Analysis
- Systems Design
- Systems Implementation
- Alternatives to Systems Development Life Cycle
- Prototyping
- Rapid Application Development (RAD)
- Joint Application Design (JAD)
1.38
39- (Break)
- INFORMATION SYSTEMS DEVELOPMENT
- THE SYSTEMS DEVELOPMENT LIFECYCLE (SDLC)
40Lecture Objectives
- to understand the information systems
problem-solving process - to be aware of the main phases of the systems
development lifecycle
41Business Information System Problems and
Opportunities
- The need to build new information systems or
change existing ones comes about because - there are problems in the way in which existing
systems operate - or
- changes in circumstances create opportunities to
improve things by doing them differently - or
- new functions or activities are to be undertaken
42Business Information Processing Problems
- Information problems occur when an organisations
systems fail to meet its information and
processing needs adequately. - Some causes
- changing information needs
- business expansion
- cost pressures
- competitive pressures
- new business activities
- inefficiencies
- Information processing problems can occur at any
stage of the information processing cycle
43Business Information Processing Problems
- Characteristics
- complex -
- the number and variety of components and their
interactions - non-standard -
- many organisations have similar needs, but
rarely are these identical - solutions must be customised for specific
circumstances - unstructured -
- problems cannot easily be broken down into
clearly-defined components with easily-identified
connections between them
44How do you solve problems?
- The Intuitive Approach
- versus
- The Scientific Approach
45Intuitive Problem-solving
- I don't have to think about how to solve the
problem I just do it - No conscious reasoning process or planning
involved - Use accumulated knowledge/understanding/
judgement/heuristics (i.e. rules of thumb), but
do not make them explicit - The most commonly used approach for every day
problem-solving
46'Scientific' Problem-solving
- Identify that there is a problem and describe it
- Analyse the problem and specify what needs to be
done to fix it - Identify the potential courses of action which
may fix the problem - Evaluate them and choose the best one
- Describe in detail the chosen course of action
- Put the chosen course of action into effect
- Evaluate the outcome of the chosen course of
action and check that it has fixed the problem
47Which Approach to Use?
- Depends on
- nature of the problem
- complexity of the problem
- degree of standardisation of the problem
- experience in solving this kind of problem
- extent to which the problem can be structured
into small self-contained parts
48Approaches to information systems development
- early computer information systems development
focused on technology, programming and technical
skills - systems developers were technically trained and
skilled, and used rule-of-thumb and personal
experience as the basis for developing systems - as computer use became more widespread, a backlog
of computer application requests developed,
existing applications increasingly required
changes, and changes made tended to have
unexpected and undesirable effects - these problems led to awareness of the need for
an overall accepted, standardised approach to
system development
49The Process of System Development
- There is no 'universal' problem-solving process
which can meet the needs of all system
development situations - Approaches to developing information systems to
solve business information processing problems
must be tailored to meet the needs of the
situation - Some elements of the system development process
can be 'standardised' to some degree
50The Systems Development Lifecycle (SDLC)
- The concept of the systems development life
cycle (SDLC) is an attempt at achieving this
standardisation. It provides - a systematic and orderly approach to solving
business information and processing problems - a means of managing, directing, monitoring and
controlling the process of system building,
including - a description of the process - steps to be
followed - deliverables - reports/programs/documentation/etc
- milestones - dates of completion of steps or
deliverables
51The Systems Development Lifecycle
- it has several phases that define the progress of
the development process - it is often adapted to suit the organisational,
human and technical needs of organisations and
system development projects - there are many variants of the SDLC
- traditional waterfall or linear model,
iterative model, spiral model etc. - we will consider the traditional waterfall model
first
52Benefits of SDLC
- breaks the problem-solving process into
manageable steps - identifies and defines everything which needs to
be done, and how it should be done - identifies the resources needed in each step
- identifies who will do each activity and when
they will do it - provides a basis for project planning
53Principles ofSystem Development
- get the owners and users involved
- use a problem-solving approach
- establish phases and activities
- establish standards for consistent development
and documentation - justify systems as capital investments
- dont be afraid to cancel or revise project scope
- divide and conquer
- design systems for growth and change
54Systems Development Phases
Analysts Role
Initiation
Analysis
Design
Implementation
Quality
Documentation
Review
Ethics
Project Management
Maintenance
55Initiation (Why?)
- Is this project worth doing?
System Users
Planned development project
Unplanned development project
Steering Committee
Survey Project Feasibility
Feasibility Report (scope defined)
Problem/opportunity details
Constraints
ANALYSIS
System Owners
56Initiation
- a preliminary investigation of the problems,
opportunities, constraints and available
resources in order to decide on a course of
action - enhance existing system?
- develop a new information system?
- do nothing .. add it to the backlog?
- define the system scope the functions/activities
which are to be developed/redeveloped - poor scope management often results in
unsuccessful systems
57Initiation
- Defining the project scope includes identifying
- key stakeholder groups
- perceived problems and opportunities
- constraints
- possible solutions client expectations
- Key deliverable is a feasibility report
- Includes overview of proposed solutions with
cost/benefit analyses for each solution
58Analysis (What?)
- Define the clients requirements (What?)
System Users
INITIATION
Feasibility Report
Problem/opportunity details
Analyse the problem and define requirements
System Requirements Specification Report
System Requirements Specification Report
DESIGN
System Owners
59Analysis
- Dont try to fix it unless you understand it
- Study the existing system to thoroughly
understand the problems and opportunities - Review findings with clients and revise scope if
necessary - Clearly define WHAT the new system must do
- Agree on acceptance criteria for the new system
(signoff on the system specification) - should the system specification be frozen?
- Assess feasibility again
60Design (How?)
- Define how the system will be implemented
Various Sources
System Requirements Specification Report
ANALYSIS
Design ideas/opinions
Select a design strategy and specify details
Design Options
System Vendors
Hardware/Software deals
Selected Design Option
Design in Progress Report
Technical Design Report
SystemOwners/Users
IMPLEMENTATION
61Design
- Generate a number of design options based on
technical, operational, economic, scheduling and
tendering constraints (HOW?) - The client selects the best option for their
needs (assess feasibility again) - Acquire the necessary hardware and software
- Design interfaces, databases, networks as
required - Specify integration requirements and software
requirements (programs)
62Implementation (Build)
System Users
- Build and deliver the system
User acceptance testing
Technical Design Report
DESIGN
User Documentation
Build, test, install and deliver the new system
User Training
System Vendors
Hardware/ Software
Production System
System and Technical Documentation
System Owners
Project Report
MAINTENANCE
63Implementation
- Build/modify databases and networks as required
- Build and test programs
- Prepare users for new system
- acceptance testing, user documentation, user
training, maintenance procedures - Finalise system and technical documentation
- Install the system
64Review
System Users
- What went wrong/right? Why?
System Audit Report
Problems/New ideas
Review the system and the project
Auditor
Project issues and system bugs
Fixes and enhancements
MAINTENANCE
Project Review Report
Steering Committee
Project staff
65Review
- How well were the system and project objectives
met? - Clients requirements met, within budget, on
time? - Can further benefits be realised?
- Are major changes required?
- How successful was the development process ..
what can we learn? - Review the maintenance effort
66Maintenance
System Users
Fixes and enhancements
Problems/New ideas
Maintain the new system
Additional training and documentation
Technical problems and new technology
Modifications
Escalating maintenance
Project staff
PRODUCTION SYSTEM
back to INITIATION
67Maintenance
- Corrective - fix errors
- Adaptive - satisfy changing needs
- Perfective - enhance performance
- Preventative - fix potential problems
- If the cost of maintenance is too high consider
other options - new development, purchase a software package,
re-engineer/modify
68Systems Development Cross Life Cycle Activities
- Cross Life Cycle Activities are those which
overlap many or all of the life cycle phases.
Some of these are - Quality - must be embedded in the process of
systems development to achieve a quality outcome - Project Management - to monitor and control the
project and ensure it stays on track - Documentation - essential at every stage to help
ensure project and system viability - Ethics - voluntary compliance with guidelines of
IS/IT professional societies
69 Quality
- Quality is defined as fitness for purpose and
concerns both process and product. - Error detection and correction in analysis and
design is much cheaper than after the system is
implemented. - Achieving quality requires that organisational
structures, responsibilities, procedures,
processes and resources for implementing quality
management are in place.
70Project management
- Select systems development methodology
- Plan the project tasks
- Estimate the resources and time required to
complete individual phases of the project - Staff the project team
- Organise and schedule the project
effort(tasks/time/ people/technical resources)
and therefore cost - Control the project development
- direct the team, monitor progress, replan,
restaff, reallocate resources
71Documentation
- Various types of documentation must be produced
throughout the SDLC - The data dictionary plays an important role
during and after systems development - A repository for information about and
definitions of all objects identified during
development - It supports and is maintained throughout the
system lifecycle - It provides an important source for system
documentation
72Professional ethics
- Australian Computer Society (ACS)
- Code of Ethics for IT professionals
- your reputation
- your client's interests
- confidentiality
- the clients own and their competitors'
- impartiality
- honesty
73Systems DevelopmentThe systems developers
skills
- Systems developers require many different skills
during the SDLC. Some of these are - Interpersonal skills - to communicate
effectively, facilitate groups, work in teams,
manage expectations and change, deal with
organisational politics - Analytical skills - to identify problems and
determine solutions - Business knowledge - understanding of business
systems - Technical skills and knowledge - to use the
technology, and understand its potential and
limitations - Management skills - to manage resources,
projects, risk, and organisational change
74Some Approaches to Systems Development
- There are many different approaches to developing
systems depending on the nature of the systems
and the users needs. Some of these are - Traditional Waterfall SDLC- formal approach which
partitions development into distinct phases - Prototyping - an iterative process of building an
experimental system rapidly - Application Packages - purchase commercially
available software
75Some Approaches to Systems Development
- Joint Application Development (JAD) - a workshop
approach in which a facilitator, users, managers
and developers work intensively together over a
short period (days) to specify requirements and
design a system - Participatory Design (PD) - where the central
focus is the users participating actively in
system development - RAD - rapid application development using
techniques to build systems quickly where
appropriate
76Who does Systems Development?
- The organisartions information technology
department - (in-house development)
- End-user computing - development of systems by
end-users with minimal assistance - Outsourcing - contracting development to external
providers - IT consultants
- Often a combination of the above
77There is no such thing as a 'correct,'standard'
development lifecycle approach to system
development , because all information and
processingproblems are different and need
differentsystem development approaches.
Summary