Chapter 8 Information Systems Development & Acquisition
Chapter 8 Objectives
Understand the process of IS management Understand the system development life cycle (SDLC) Understand alternative approaches to system development Understand in-house system development Understand external acquisition, outsourcing, and end-user development
The Need for Structured Systems Development
Systems analysis and design the process of
designing, building, and maintaining information systems The individual who performs this task is called Systems analyst Organization wants to hire System analyst because they have both technical and managerial expertise.
The Need for Structured Systems Development
Evolution of IS development
From art to a discipline: In the early days of computing it was considered an art that a very few people could master Standardized development methods: The techniques used to build an IS varies greatly from individual to individual. It was very difficult to integrate and maintain. To address this problem, info. Sys. professionals decided to use a disciplined approach of introducing common methods, techniques, and tools for building information systems Software engineering: This evolution led to the use of the term software engineering to define what system analyst & programmer do.
The Need for Structured Systems Development
Options for Obtaining Information Systems
1. 2. Build your own Buy a prepackaged system from a software development company or consulting firm. Example: Payroll system. Outsource development to a 3rd party: outside organization custom build a system to an organizations specifications. Good option when an organization does not have adequate resources or expertise. End user development: Individual users and departments build their own custom systems to support their individuals. Example MS. Excel.
3.
4.
The Need for Structured Systems Development
The Need for Structured Systems Development
System Construction Process
1. Identify a large IT problem to solve 2. Break the large problem into several smaller, more manageable pieces 3. Translate each piece (small problem) into computer programs 4. Piece together each program into an overall comprehensive IS that solves the problem
The Need for Structured Systems Development
The Role of Users in the Systems Development Process
It is important for all members of the organization to understand what is meant by system development and what activities occur. Effective partnership: A close and mutually respectful working relationship between analysts and users is a key to project success.
Steps in the Systems Development Process
Steps in the Systems Development Process
Systems Development Life Cycle (SDLC) - describes the life of an information system from
conception to retirement. 1. System identification, selection, and planning 2. System analysis 3. System design 4. System implementation 5. System maintenance
Steps in the Systems Development Process
Phase 1: System Identification, Selection, and Planning
Undertake only those projects critical to mission, goals, and objectives Select a development project from all possible projects that could be performed Different evaluation criteria used to rank potential projects
Steps in the Systems Development Process
Phase 1: System Identification, Selection, and Planning Evaluation criteria
Strategic alignment: The extent to which the project is viewed as helping the organization achieve its strategic objectives an d longterm goal. Potential benefits: The extent to which the project is viewed as improving profits, customer service, and the duration of the benefits Potential costs and resource availability: The number and types of resources the project requires and their availability Project size / duration: The number of individuals and the length of time needed to complete the project Technical difficulty / risks: The level of technical difficulty involved to complete the project within a given time and resources
Steps in the Systems Development Process
Phase 2: System Analysis
Collecting System Requirements: Requirement collection is process of gathering and organizing information from users, managers, business processes, an documents to understand how a proposed system should work System analysts use a variety of techniques to collect system requirements
Interviews: analysts interview people Questionnaires: analysts design and administer surveys. Observations: analysts observe workers at selected times Document analysis: analysts study business documents
Critical Success Factors (CSF): analysts ask each person to define her own personal CSFs. Joint Application Design (JAD): Special type of a group meeting where all users and analysts meet at the same time
Steps in the Systems Development Process
Phase 2: System Analysis
Modeling Organizational Data: To construct an information system, systems analysts must understand what data the information system needs in order to accomplish the intended tasks. To do this they use data modeling tools to collect and describe data to users.
Entity Relationship Diagram (ERD)
Modeling Organizational Processes and Logic
Data flows Processing logic
A sample ERD for students
Steps in the Systems Development Process
Phase 3: System Design
Designing forms and reports Designing interfaces and dialogues Designing databases and files Designing processing and logic
Steps in the Systems Development Process
Phase 4: System Implementation
Software programming Software testing Developmental: Programmers test the correctness of individual modules and the integration of multiple modules Alpha: Software tester tests whether it meets design specifications Beta: Actual system users test the capability of the system in the user environment with actual data
Steps in the Systems Development Process
Phase 4: System Implementation
System conversion
Parallel Direct Phased Pilot
System documentation, training, and support
User and reference guides Training and tutorials Installation procedures and troubleshooting guides
Steps in the Systems Development Process
Phase 5: System Maintenance
Maintenance process steps: 1. Obtain maintenance request 2. Transform requests into changes 3. Design changes 4. Implement changes
Steps in the Systems Development Process
Phase 5: System Maintenance
Maintenance types: 1. Corrective maintenance 2. Adaptive maintenance 3. Perfective maintenance 4. Preventive maintenance
Other Approaches to Designing and Building Systems
Prototyping Rapid Application Development (RAD) Object-Oriented Analysis & Design (OOA&D)
Prototyping
Need for Alternatives to Building Systems Yourself
1. 2. 3. 4. Limited IS staff IS staff has limited skill set IS staff is overworked Problems with performance of IS staff
Common Alternatives to In-house Systems Development
External acquisition
1. 2. 3.
4.
5.
System identification, selection and planning Systems analysis Development of a request for proposal (RFP) Proposal evaluation Vendor selection
Common Alternatives to In-house Systems Development
Outsourcing the practice of turning over
responsibility of some to all of an organizations information systems development and operations to an outside firm
Common Alternatives to In-house Systems Development
Why Outsource?
Cost and quality concerns Problems in IS performance Supplier pressures Simplifying, downsizing, and reengineering Financial factors Organizational culture Internal irritants
Common Alternatives to In-house Systems Development
Managing the IS outsourcing relationship
Strong CIO oversight Measurement of milestones, costs, and benefits Customer relationship management
Not all outsourcing relationships are the same
Basic relationship Preferred relationship Strategic relationship
Common Alternatives to In-house Systems Development
End-user development
Benefits of end-user development Encouraging end-user development End-user development pitfalls