🔧

Understanding Advanced System Implementation Strategies

May 3, 2025

Advanced Systems Analysis and Design: Moving into Implementation and Transition to the New System

Course Overview

  • Course Code: SOFT 30121
  • Instructor: Arshad Sher
  • Textbook Reference: Alan Dennis, Barbara Haley Wixom, Roberta M. Roth, 2019
  • Lecture Date: 03 May 2025

Learning Objectives

  • Manage programming processes.
  • Understand coding standards.
  • Develop user documentation.
  • Differentiate conversion strategies and appropriate usage.

Implementation Phase

  • Importance of thorough analysis and design phases for smooth implementation.
  • Programmers transform specifications into code; analysts design tests and finalize documentation.

Managing the Programming Process

Key Tasks for Project Managers

  • Assigning Programming Tasks
    • Group use cases by relatedness and assign based on experience/skill.
    • Address potential skill mismatches with training/mentoring.
    • Consider additional time for training in scheduling.
  • Coordinating Activities
    • Regular brief meetings (standups) to discuss progress and issues.
    • Standup questions: Yesterday's work, today's tasks, blocking issues.
  • Managing the Schedule
    • Avoid scope creep; manage day-by-day slippages to prevent delays.

Coding Standards

  • Ensures code is reliable, maintainable, secure, etc.
  • Examples of Standards: CERT Coding Standards, used for Java, C++.
  • Automated Reviews:
    • Tools like SonarQube for continuous inspection and static analysis.
    • Detects bugs, code smells, security vulnerabilities.

Developing Documentation

  • System Documentation:
    • Aids programmers and analysts for software understanding and maintenance.
    • Includes code comments, source control logs, etc.
  • User Documentation:
    • Types include procedures manuals, tutorials, and reference documents.
    • Designed to instruct and help users operate the system.

Transition to the New System

Conversion Strategies

  • Direct Conversion:
    • Abrupt change from old to new system.
    • Simple but risky if problems arise.
  • Parallel Conversion:
    • Operate old and new systems side-by-side to reduce risk.
    • Requires dual tasking.
  • Pilot Conversion:
    • Test the system at one location first before full rollout.
    • Reduces risk but is time-intensive.
  • Phased Conversion:
    • Gradual implementation across sites.
    • Similar to pilot but in multiple steps.
  • Simultaneous Conversion:
    • New system installed everywhere at once.
    • Requires ample staff for training and conversion.
  • Whole System Conversion:
    • Install entire system at once.
    • Simple if system is integrated; challenging for complex systems.
  • Module by Module Conversion:
    • Install one module at a time to ease training load.
    • Adds cost due to dual compatibility requirements.

Conclusion

  • Key understanding of programming processes, coding standards, documentation development, and conversion strategies for system implementation.

Questions

  • [Placeholder for student questions]