11. Building Information Systems

advertisement
System Development
© Holmes Miller 1999
Why Learn About Systems Development?
 Important to learn how to:
 Initiate systems development process
 Analyze your needs with help of IS personnel
 Learn how a project can be:
 Planned
 Aligned with corporate goals
 Rapidly developed
An Overview of Systems
Development
 Managers and employees in all functional areas
work together in a business information system
 Users help and often lead the way with
development process
 Participants in systems development:
 Determine when a project fails
 Are critical to systems development success
Participants in Systems Development
 Development team consists of the following:
Project managers: coordinate system development effort
Stakeholders: directly or indirectly benefit from the project
Users: interact with the system regularly
Systems analysts: analyze and design business systems
Programmers: modify or develop programs to satisfy user
requirements
 Various support personnel: specialists, vendors





Information Systems Planning and
Aligning Corporate and IS Goals
 Information systems planning: translating strategic and
organizational goals into systems development initiatives
 Aligning organizational goals and IS goals is critical for any
successful systems development effort
 Determining whether organizational and IS goals are aligned
can be difficult
Systems Development Life Cycles
 The systems development process is also called a
systems development life cycle (SDLC)
 Common SDLCs
 Traditional systems development life cycle
 Prototyping
 Rapid application development (RAD)
 End-user development
The Traditional Systems
Development Life Cycle
Figure 8.3: The Traditional Systems Development Life
Cycle
Prototyping
 An iterative approach
to systems
development
Figure 8.4: Prototyping
Rapid Application Development, Agile Development, Joint Application
Development, and Other Systems Development Approaches
 Rapid application development (RAD)
 Systems development approach that employs tools, techniques,
and methodologies designed to speed application development
 Some iterative development approaches allow the system to
change as it is being developed
 Agile development: frequent face-to-face meetings between
systems developers and users
 XP programming: pairs of programmers work together to develop
robust systems quickly
 Joint application development (JAD)
 Process for data collection and requirements analysis in which
users, stakeholders, and IS professionals work together to
analyze existing systems, propose possible solutions, and define
the requirements of a new or modified system
 Used extensively by RAD
 Often utilizes group support systems (GSS) software to foster
positive group interactions
The End-User Systems Development
Life Cycle
 End-user systems development: any systems
development project in which the primary effort is
undertaken by a combination of business managers
and users
 End-user-developed systems can be structured as
complementary to, rather than in conflict with,
existing and emerging information systems
Outsourcing and On Demand
Computing
 An outside consulting firm or computer company
that specializes in systems development can take
over some or all of the development and operations
activities
 Reasons for using outsourcing and on demand
computing
 Reducing costs, obtaining state-of-the-art technology,
eliminating staffing and personnel problems, and
increasing technological flexibility
Use of Computer-Aided Software
Engineering (CASE) Tools
 Computer-aided software engineering (CASE):
tools that automate many of the tasks required in a
systems development effort and encourage
adherence to the SDLC
 Instill a high degree of rigor and standardization to the
entire systems development process
 Upper-CASE tools focus on investigation, analysis, and
design
 Lower-CASE tools focus on implementation
Use of Computer-Aided Software
Engineering (CASE) Tools (continued)
Table 8.2: Advantages and Disadvantages of CASE Tools
Object-Oriented Systems
Development
 Object-oriented systems
development (OOSD)
 Approach to systems
development that combines the
logic of the systems development
life cycle with the power of
object-oriented modeling and
programming
 Object-oriented systems
development typically involves:
 Identifying potential problems
and opportunities within the
organization that would be
appropriate for the OO approach
 Defining the kind of system
users require
 Designing the system
 Programming or modifying
modules
 Evaluation by users
 Periodic review and modification
Systems Investigation
 What primary problems might a
new or enhanced system solve?
 What opportunities might a new
or enhanced system provide?
 What new hardware, software,
databases, telecommunications,
personnel, or procedures will
improve an existing system or
are required in a new system?
 What are the potential costs
(variable and fixed)?
 What are the associated risks?
 Initiating Systems Investigation
 Systems request form:
document filled out by someone
who wants the IS department to
initiate systems investigation
 Helps rationalize and prioritize
the activities of the IS
department
 Includes the following
information:
 Problems in and opportunities
for system
 Objectives in investigation
 Overview, costs, and benefits
of proposed system
Feasibility Analysis
 Technical feasibility: hardware, software, and
other system components
 Economic feasibility: predicted benefits vs. cost
and time
 Legal feasibility: limitations of laws and regulations
on project
 Operational feasibility: logistical and motivational
considerations
 Schedule feasibility: completion of project in
reasonable amount of time
The Systems Investigation Report
 Systems investigation
report
 Summary of the results of
the systems investigation and
the process of feasibility
analysis
 Recommendation of a course
of action
 Continue systems analysis
 Modify the project
 Abandon the project
 Reviewed by steering
committee of senior
management and users
Systems Analysis
 Answers the question “What must the information
system do to solve the problem?”
 Overall emphasis of systems analysis is:
 Gathering data on the existing system
 Determining the requirements for the new system
 Considering alternatives within these constraints
 Investigating the feasibility of the solutions
 Primary outcome: prioritized list of systems
requirements
Data Collection
 Identifying sources of data
 Internal sources
 External sources
 Collecting data
 Interviews: structured and
unstructured
 Direct observation
 Questionnaires: structured or
unstructured
 Used when data sources
are spread over a wide
geographic area
Data Analysis
 Data analysis
 Manipulation of collected data so that systems
development team can use the data
 Data modeling
 Entity-relationship (ER) diagrams: objects, attributes,
and associations
 Activity modeling
 Data-flow diagrams (DFDs): objects, associations, and
activities
Data Analysis (continued)
Figure 8.12: Data and Activity Modeling (a) An entityrelationship diagram
Data Analysis (continued)
Figure 8.12: Data and Activity Modeling (b) A data-flow
diagram
Requirements Analysis
 Determines user,
stakeholder, and
organizational needs
through the following
techniques:
 Asking directly: best for
stable systems
 Critical success factors: asks
for critical factors in
interviewee’s area
 IS plan: translates strategic
plan into initiatives
 Requirements analysis tools:
CASE tools
Object-Oriented Systems Analysis
 Identifying problems or potential opportunities
 Identifying key participants and collecting data
 Uses classes and generalization/specialization
hierarchies instead of data-flow diagrams and
flowcharts
The Systems Analysis Report
 Systems analysis report should cover:
 Strengths and weaknesses of the existing system from a
stakeholder’s perspective
 User/stakeholder requirements for the new system (also
called the functional requirements)
 Organizational requirements for the new system
 Description of what the new information system should
do to solve the problem
Systems Design
 Answers the question “How will the information
system solve a problem?”
 Has two dimensions: logical and physical
 Logical design: description of the functional
requirements of a system
 Physical design: specification of the
characteristics of the system components
necessary to put the logical design into action
Object-Oriented Design
 Design key objects and classes
of objects in the new or updated
system
 Consideration of the problem
domain, the operating
environment, and the user
interface
 Consideration of the sequence of
events that must happen for the
system to function correctly
 Scenario: sequence of events
 Can be diagrammed in a sequence
diagram
Generating Systems Design
Alternatives
 Request for proposal
(RFP): document that
specifies in detail required
resources such as hardware
and software
 Financial options
 Purchasing
 Leasing
 Renting
 Evaluating and Selecting a
Systems Design
 Preliminary evaluation
 To dismiss unwanted
proposals
 Begins after all proposals
have been submitted
 Final evaluation
 Detailed investigation of
the proposals offered by
the vendors remaining
after the preliminary
evaluation
The Design Report
 Design report: primary result of systems design,
reflecting the decisions made and preparing the
way for systems implementation
 System specifications include technical description
of the following:
 System outputs, inputs, and user interfaces
 Hardware, software, databases, telecommunications,
personnel, and procedure components and the way these
components are related
Systems Implementation
Figure 8.19: Typical Steps in Systems Implementation
Acquiring Hardware from an IS
Vendor
 IS vendor: company that offers hardware,
software, telecommunications systems, databases,
IS personnel, and/or other computer-related
resources
 Buying computer hardware
 Leasing computer hardware
 Renting computer hardware
 “Pay-as-you-go,” “on-demand,” or “utility” computing
Acquiring Software: Make or Buy?
 Make-or-buy decision: decision regarding whether
to obtain software from external or internal
sources
 Choices include:
 Purchase software externally
 Develop software in-house
 Used a blend of external and internal software
development
 Rent software
Acquiring Database and
Telecommunications Systems
 Databases and telecommunications systems require
a blend of hardware and software
 New hardware is acquired from an IS vendor
 New or upgraded software might be purchased or
developed in-house
User Preparation
 Process of readying managers, decision makers,
employees, other users, and stakeholders for new
systems
 Provide users with proper training
IS Personnel: Hiring and Training
 Personnel that might be needed for the new system
 IS manager
 Systems analysts
 Computer programmers
 Data-entry operators
 Training programs should be conducted for the IS
personnel who will be using the computer system
Site Preparation
 Preparation of the location of a new system
 Making room for equipment
 Special wiring and air conditioning
 Special floor
 Security system
 Additional power circuits
Data Preparation
 Also called data conversion
 Ensures all files and databases are ready to be
used with new computer software and systems
Installation
 Physically placing the computer equipment on the
site and making it operational
 Normally the manufacturer is responsible for
installing computer equipment
 Someone from the organization (usually the IS
manager) should oversee the process
Testing
 Unit testing: testing of individual programs
 System testing: testing the entire system of
programs
 Volume testing: testing the application with a large
amount of data
 Integration testing: testing all related systems
together
 Acceptance testing: conducting any tests required
by the user
Start-Up
 Process of making the final tested information
system fully operational
 Approaches
 Direct conversion (plunge, direct cutover): stopping the
old system and starting the new one on a given date
 Phase-in approach (piecemeal): slowly replacing old
system components with new system components
 Pilot start-up: run new system with one group of users
 Parallel start-up: running old and new systems together
for a period of time
User Acceptance
 User acceptance document: formal agreement
signed by the user that states that a phase of the
installation or the complete system is approved
 Legal document that removes or reduces IS vendor’s
liability
Systems Operation and Maintenance
 Systems operation: use of a new or modified
system
 Help desk provides support
 Systems maintenance: checking, changing,
and enhancing the system to make it more
useful in achieving user and organizational
goals
 Difficult and costly for legacy systems
Systems Review
 Process of analyzing systems to make sure that they are operating as
intended
 Often compares the performance and benefits of the system as it was
designed with the actual performance and benefits of the system in
operation
 Event-driven review: triggered by a problem or opportunity such as an
error, a corporate merger, or a new market for products
 Time-driven review: performed after a specified amount of time
Download