System Implementation: A Comprehensive Guide

System Implementation

Six Major Activities:

  • Coding
  • Testing
  • Installation
  • Documentation
  • Training
  • Support

System Implementation (Cont.)

Purpose:

  • To convert final physical system specifications into working and reliable software
  • To document work that has been done
  • To provide help for current and future users

The Process of Coding, Testing, and Installation

Coding

Physical design specifications are turned into working computer code.

Testing

  • Tests are performed using various strategies.
  • Testing performed in parallel with coding.

Installation

The current system is replaced by the new system.

Software Application Testing

  • A master test plan is developed during the analysis phase.
  • During the design phase, unit, system, and integration test plans are developed.
  • The actual testing is done during implementation.
  • Test plans provide improved communication among all parties involved in testing.

Seven Different Types of Tests

Static or Dynamic Techniques

  • Static testing means that the code being tested is not executed.
  • Dynamic testing involves the execution of the code.

Test is Automated or Manual

  • Automated means a computer conducts the test.
  • Manual means that people complete the test.

Seven Different Types of Tests (Cont.)

  • Inspection: a testing technique in which participants examine program code for predictable language-specific errors
  • Walkthrough: a peer group review of any product created during the systems development process, including code
  • Desk checking: a testing technique in which the program code is sequentially executed manually by the reviewer

Seven Different Types of Tests (Cont.)

  • Unit testing: each module is tested alone to discover any errors in its code
  • Integration testing: the process of bringing together all of the modules that a program comprises for testing purposes
    • Modules are typically integrated in a top-down incremental fashion.

Seven Different Types of Tests (Cont.)

  • System testing: the bringing together of all of the programs that a system comprises for testing purposes
    • Programs are typically integrated in a top-down, incremental fashion.

Seven Different Types of Tests (Cont.)

  • Stub testing: a technique used in testing modules, especially where modules are written and tested in a top-down fashion, where a few lines of code are used to substitute for subordinate modules

The Testing Process

  • The purpose of testing is to confirm that the system satisfies the requirements.
  • Testing must be planned.
  • Test case is a specific scenario of transactions, queries, or navigation paths.

The Testing Process (Cont.)

  • Test cases represent either:
    • Typical system use
    • Critical system use, or
    • Abnormal system use.
  • Test cases and results should be thoroughly documented so they can be repeated for each revision of an application.

Automated Testing

  • Improves testing quality
  • Reduces testing time up to 80%
  • Functions:
    • Create recorded data entry and user action scripts
    • Compare test results between test cases
    • Simulate high-volume for stress-testing

Combining Coding and Testing

  • Coding and testing often go together.
  • Big companies have dedicated test staff.
  • With eXtreme programming (XP) a common technique is refactoring.
  • Refactoring = making a program simpler after adding a new feature.

Acceptance Testing by Users

Acceptance testing: the process whereby actual users test a completed information system, the end result of which is the users’ acceptance of it

Primary purpose: ensure the system, as built, meets all requirements

Acceptance Testing by Users (Cont.)

Additional Types of Acceptance Test:

  • Recovery testing — forces software (or environment) to fail to verify that recovery is properly performed
  • Security testing — verifies that protection mechanisms built into the system will protect it from improper penetration
  • Stress testing — tries to break the system
  • Performance testing — determines how the system performs on the range of possible environments in which it may be used

Installation

Installation: the organizational process of changing over from the current information system to a new one

Four Installation Strategies:

  • Direct Installation
  • Parallel Installation
  • Single-location installation
  • Phased Installation

Direct Installation

Direct installation: changing over from the old system to a new one by turning off the old system when the new system is turned on

Parallel Installation

Parallel installation: running the old information system and the new one at the same time until management decides the old system can be turned off

Single-Location Installation

Single-location installation: trying out an information system at one site and using the experience to decide if and how the new system should be deployed throughout the organization

Also known as location or pilot installation

Single-Location Installation (cont.)

Phased Installation

Phased Installation: changing from the old information system to the new one incrementally, starting with one or a few functional components and then gradually extending the installation to cover the whole new system

Phased Installation (cont.)

Planning Installation

Considerations

  • Data conversion
    • Error correction
    • Loading from the current system
  • Planned system shutdown
  • Business cycle of the organization

Documenting the System

System documentation: detailed information about a system’s design specifications, its internal workings, and its functionality

  • Intended for maintenance & support

User documentation: written or other visual information about an application system, how it works, and how to use it

  • Intended for system users

Training and Supporting Users

Support: providing ongoing educational and problem-solving assistance to information system users

For in-house developed systems, support materials and jobs will have to be prepared or designed as part of the implementation process.

Training Information Systems Users

Potential Training Topics

  • Use of the system
  • General computer concepts
  • Information system concepts
  • Organizational concepts
  • System management
  • System installation

Types of Training Methods

  • Resident expert
  • Traditional instructor-led classroom training
  • E-learning, distance learning
  • Blended learning (instructor plus e-learning)
  • External sources (e.g., vendors)

Training Information Systems Users

Electronic performance support system (EPSS): component of a software package or an application in which training and educational information is embedded

An EPSS can take several forms, including a tutorial, an expert system shell, and hypertext jumps to reference materials.

Supporting Information Systems Users

  • Support is extremely important to users.
  • Providing support can be expensive and time-consuming.

Providing Support Through a Help Desk

Help desk: a single point of contact for all user inquiries and problems about a particular information system or for all users in a particular department

Providing Support Through a Help Desk (Cont.)

Requires

  • Technical skills: extensive knowledge about how to use the system and typical problems that can be encountered
  • People skills: good listening and communication, dealing with complaints and frustrations

Organizational Issues in Systems Implementation

  • Biggest measure of success: Will it be used?
  • Major factors influencing implementation success:
    • Management support
    • User involvement
    • Commitment to the project
    • Commitment to change
    • Extent of project definition and planning

Project Close-Down

  • Evaluate the team.
    • Reassign members to other projects.
  • Notify all affected parties that the development project is ending and that you are switching to operation and maintenance mode.
  • Conduct post-project reviews.
  • Close out customer contract.
    • Formal signoff