Building Information Systems
Structural Organizational Changes Enabled by IT
- Automation:
- Increases efficiency by replacing manual tasks.
- Rationalization of Procedures:
- Streamlines standard operating procedures.
- Often found in programs focused on continuous quality improvements, such as:
- Total Quality Management (TQM)
- Six Sigma
- Business Process Redesign:
- Involves analyzing, simplifying, and redesigning business processes.
- Reorganizes workflow, combines steps, and eliminates repetition.
- Paradigm Shifts:
- Rethinks the fundamental nature of the business.
- Defines a new business model.
- Changes the very nature of the organization.
Organizational Change: Risks and Rewards
- Automation and rationalization represent relatively slow-moving and slow-changing strategies.
- These offer modest returns with little risk.
- Faster and more comprehensive changes, such as redesign and paradigm shifts,
- Carry high potential rewards but also substantial chances of failure.
Systems Development Overview
- Systems Development:
- Encompasses the activities involved in producing an information system solution to address an organizational problem or opportunity.
- Key stages include:
- Systems analysis
- Systems design
- Programming
- Testing
- Conversion
- Production and maintenance
The Systems Development Process
- Building a system can be broken down into six core activities.
Systems Analysis
- Involves analyzing the problem that the new system aims to solve.
- Includes defining the problem and identifying its causes.
- Specifying potential solutions.
- A systems proposal report is generated to identify and examine alternative solutions.
- Identifying Information Requirements:
- Includes a feasibility study to determine if the proposed solution is feasible and a good investment.
- Considers whether the required technology and skills are available.
Systems Design
- Describes the system specifications that will deliver the functions identified during systems analysis.
- Should address all managerial, organizational, and technological components of the system solution.
- Role of End Users:
- User information requirements drive system building.
- Users must have sufficient control over the design process to ensure the system reflects their business priorities and information needs.
- Insufficient user involvement in the design effort is a major cause of system failure.
Programming
- System specifications from the design stage are translated into software program code.
Testing
- Ensures the system produces the correct results.
- Types of Testing:
- Unit Testing: Tests each program in the system separately.
- System Testing: Tests the functioning of the system as a whole.
- Acceptance Testing: Verifies that the system is ready to be used in a production setting.
- A test plan outlines all preparations for the series of tests.
Conversion
- The process of changing from the old system to the new system.
- Four Main Strategies:
- Parallel Strategy
- Direct Cutover
- Pilot Study
- Phased Approach
- Requires end-user training to ensure effective use of the new system.
- Finalization of detailed documentation showing how the system works from both a technical and an end-user perspective.
Conversion Strategies Explained
- Parallel Strategy: Both the old system and its potential replacement run together for a time, ensuring the new one functions correctly before the old one is fully retired.
- Direct Cutover Strategy: Replaces the old system entirely with the new system on a specific appointed day.
- Pilot Study Strategy: Introduces the new system to a limited area of the organization, such as a single department or operating unit, to test its effectiveness before wider implementation.
- Phased Approach Strategy: Introduces the new system in stages, either by functions or by organizational units.
Production and Maintenance
- The system is reviewed to determine if revisions are needed.
- May include a post-implementation audit document to assess the system's performance.
- Maintenance:
- Involves changes to hardware, software, documentation, or procedures of a production system to correct errors, meet new requirements, or improve processing efficiency.
Summary of Systems Development Activities
| Core Activity | Description |
|---|
| Systems Analysis | Identify problem(s), specify solutions, and establish information requirements. |
| Systems Design | Create design specifications. |
| Programming | Translate design specifications into code. |
| Testing | Unit test, systems test, and acceptance test. |
| Conversion | Plan conversion, prepare documentation, and train users and technical staff. |
| Production & Maint. | Operate the system, evaluate the system, and modify the system as needed. |
Systems Modeling Methodologies
- Structured Methodologies:
- Step-by-step, progressive techniques.
- Process-oriented, focusing on modeling processes or actions that manipulate data.
- Separate data from processes.
- Object-Oriented Development:
Data Flow Diagram
- A primary tool for representing a system’s component processes and the flow of data between them.
- Offers a logical graphic model of information flow.
- High-level and lower-level diagrams can break processes down into successive layers of detail.
- Data Dictionary: Defines the contents of data flows and data stores.
- Process Specifications: Describe the transformations occurring within the lowest level of data flow diagrams.
- Structure Chart: A top-down chart showing each level of design, its relationship to other levels, and its place in the overall design structure.
Alternative Systems-Building Methods
- Traditional systems life cycle
- Prototyping
- End-user development
- Application software packages
- Outsourcing
Traditional Systems Life Cycle
- The oldest method for building information systems.
- A phased approach that divides development into formal stages.
- Follows a “waterfall” approach, where tasks in one stage must finish before another stage begins.
- Maintains a formal division of labor between end users and information systems specialists.
- Emphasizes formal specifications and paperwork.
- Still used for building large, complex systems.
- Can be costly, time-consuming, and inflexible.
Prototyping
- Involves building an experimental system rapidly and inexpensively for end users to evaluate.
- Prototype: A working but preliminary version of an information system.
- An approved prototype serves as a template for the final system.
- Steps in Prototyping:
- Identify user requirements.
- Develop the initial prototype.
- Use the prototype.
- Revise and enhance the prototype.
Advantages of Prototyping
- Useful when there is some uncertainty in requirements or design solutions.
- Often used for end-user interface design.
- More likely to fulfill end-user requirements.
Disadvantages of Prototyping
- May gloss over essential steps.
- May not accommodate large quantities of data or a large number of users.
- May not undergo full testing or documentation.
End-User Development
- Uses fourth-generation languages to allow end-users to develop systems with little or no help from technical specialists.
- Fourth-Generation Languages: Less procedural than conventional programming languages.
- Examples:
- PC software tools
- Query languages
- Report generators
- Graphics languages
- Application generators
- Application software packages
- Very high-level programming languages
Advantages of End-User Development
- More rapid completion of projects
- High level of user involvement and satisfaction
Disadvantages of End-User Development
- Not designed for processing-intensive applications
- Inadequate management and control, testing, and documentation
- Loss of control over data
Managing End-User Development
- Require cost-justification of end-user system projects
- Establish hardware, software, and quality standards
Application Software Packages
- Save time and money.
- Many offer customization features:
- Software can be modified to meet unique requirements without destroying the integrity of the package software.
- Evaluation Criteria:
- Functions provided by the package, flexibility, user-friendliness, hardware and software resources, database requirements, installation and maintenance efforts, documentation, vendor quality, and cost.
- Request for Proposal (RFP):
- A detailed list of questions submitted to packaged-software vendors to evaluate alternative software packages.
Outsourcing
- Several Types:
- Cloud and SaaS Providers:
- Subscribing companies use software and computer hardware provided by vendors.
- External Vendors:
- Hired to design and create software.
- Domestic outsourcing is driven by a firm's need for additional skills, resources, and assets.
- Offshore outsourcing is primarily driven by cost savings.
Advantages of Outsourcing
- Allows organizations flexibility in IT needs.
Disadvantages of Outsourcing
- Hidden Costs:
- Identifying and selecting a vendor
- Transitioning to the vendor
- Opening up proprietary business processes to a third party.