Systems Analysis and Design - Project Selection and Management

SYSTEMS ANALYSIS AND DESIGN

Project Selection and Management

  • © Copyright 2011 John Wiley & Sons, Inc.


TABLE OF CONTENTS

  • Project selection.

  • Creating the project plan.

  • Managing and controlling the project.


INTRODUCTION

  • CIO Responsibilities: Chief Information Officers (CIOs) are tasked with selecting projects aimed at achieving the highest return on IT investments.

  • Importance of Project Portfolio Management: Effective project portfolio management is critical for the success of IT departments.

  • System Development Projects: Each selected system development project is required to undergo a comprehensive project management process.

  • Critical Success Factor: A crucial factor for effective project management is conducting a realistic assessment of the work and managing the project according to that established plan.


PROJECT SELECTION

  • Evaluation Context: Systems projects are assessed within the broader context of a portfolio of projects.

  • Feasibility Study: The assessment of a project's contribution to the portfolio underscores the necessity of conducting a feasibility study.

  • Portfolio Management Considerations: The different attributes of projects must be considered during portfolio management.

  • Resource Allocation: An approval committee must be discerning in allocating resources due to the limited funds most organizations face.

  • Project Selection Criteria: In scenarios with multiple high-payoff projects that share similar risk profiles, typically only one project may be selected for advancement.


CREATING THE PROJECT PLAN

  • Phases of Project Management: The project management process consists of the following phases:

    • Initiation: The formal start of the project.

    • Planning: Detailed outlining of tasks, resources, schedules, and expected results.

    • Execution: Implementation of the project plans.

    • Control: Monitoring project activities to ensure adherence to the plan.

    • Closure: Finalizing the project and closing it out.


PROJECT METHODOLOGY OPTIONS

  • Methodology Definition: A methodology refers to a structured approach used for implementing the Software Development Life Cycle (SDLC).

  • Popular Methodologies Include:

    • Waterfall Development: Linear and sequential model.

    • Parallel Development: Multiple subprojects developed simultaneously.

    • V-model: A variation of the Waterfall, emphasizing verification and validation.

    • Rapid Application Development (RAD): Focuses on rapidly developing prototypes.

    • Iterative Development: Repeatedly refining and improving the project through cycles.

    • System Prototyping: Developing a working model to understand requirements.

    • Agile Development: Adopts iterative and incremental practices, focusing on customer collaboration and adaptable planning.


WATERFALL DEVELOPMENT PROCESS

  • Phases:

    • Planning: Initial phase where project scope and requirements are established.

    • Analysis: In-depth exploration of requirements.

    • Design: Crafting the architecture and detailed specifications of the system.

    • Implementation: Coding and putting the plan into action.


PARALLEL DEVELOPMENT PROCESS

  • Key Features: Involves multiple 'subprojects' each undergoing analysis, design, and implementation concurrently.


V-MODEL OF DEVELOPMENT

  • Structure:

    • Each development phase corresponds to a testing phase:

    • Unit Testing: Validating individual components.

    • Integration Testing: Ensuring components work together.

    • System Testing: Verifying the system meets requirements.

    • Acceptance Testing: Final confirmation from the user perspective.


RAPID APPLICATION DEVELOPMENT (RAD)

  • Phases of RAD:

    • Planning: Identify and outline project goals.

    • Analysis: Conduct necessary requirements analysis.

    • Design: Develop system designs iteratively with user feedback.

    • Implementation: Rapidly build the system and deliver in increments.


AGILE DEVELOPMENT

  • Definition: A group of software development methodologies that promote iterative development, focusing on collaboration, customer feedback, and adapting to change throughout the development process.

  • Extreme Programming (XP): A specific agile methodology that prioritizes customer satisfaction and teamwork through practices such as continuous feedback and frequent releases.


SELECTING THE APPROPRIATE DEVELOPMENT METHODOLOGY

  • Criteria for Selection:

    • Clarity of User Requirements: Determines the need for flexible or rigid methodologies.

    • Familiarity with Technology: Impacts the choice of development method based on staff expertise.

    • System Complexity: Complicated systems may require iterative or agile approaches.

    • System Reliability: Certain methodologies are better suited for projects needing high reliability.

    • Short Time Schedules: Time constraints may necessitate agile or rapid methodologies.

    • Schedule Visibility: The choice can depend on how visible and manageable the project schedule needs to be.


ESTIMATING THE PROJECT TIME FRAME

  • Methods for Estimation:

    1. Using Industry Standards: Referencing historical data and benchmarks.

    2. Function Point Approach: A method that quantifies the functionality provided to the user based on their interactions with the system.


DEVELOPING THE WORK PLAN

  • Essential Components:

    • Task Information: Must include task name, start and completion dates, assignment details, deliverables, completion status, priority, resources needed, estimated time, and actual time.

  • Example of Task Information:

    • Task: Perform Economic Feasibility.

    • Start Date: Jan 05, 2013

    • Completion Date: Jan 19, 2013

    • Assigned To: Mary Smith (Project Sponsor)

    • Deliverable: Cost-benefit analysis

    • Status: Complete

    • Priority: High

    • Resources Needed: Spreadsheet software

    • Estimated Time: 16 hours

    • Actual Time: 14.5 hours


WORK BREAKDOWN STRUCTURE

  • Task Hierarchy: The structure organizes tasks to represent the overall flow and dependencies of the project.

  • Example Structure:

    • 1: Design Phase

    • 1.1: Develop Database Design Document

      • 1.1.1: Staging Database Design

      • 1.1.2: Suspense Database Design

      • 1.2: Develop Rejects-Handling Design Document

      • 1.2.1: Rejects-Handling Engine Design

      • 1.3: Develop OLAP Design Document

      • 1.3.1: Universe Design


STAFFING THE PROJECT

  • Staffing Plan Considerations:

    • Staffing levels fluctuate over the project's lifetime.

    • Adding personnel may introduce overhead without proportional productivity benefits.

    • Effective team size is typically 8-10 members in a hierarchical structure, simplifies communication.

  • Roles in Project:

    • Functional Lead: Manages the analysts.

    • Technical Lead: Oversees programmers and technical staff progress.


MOTIVATION

  • Rewards Strategy:

    • Monetary Rewards: Should be used cautiously due to diminishing motivational returns.

    • Intrinsic Rewards: More effective methods include:

    • Recognition

    • Achievement

    • Responsibility

    • Advancement opportunities

    • Learning new skills


HANDLING CONFLICT

  • Conflict Resolution Steps:

    • Clearly defined project plans.

    • Acknowledging the project's importance to the organization.

    • A project charter listing norms and ground rules.

    • Developing schedule commitments in advance.

    • Anticipating and foreseeing other priorities that may impact the project.


COORDINATING PROJECT ACTIVITIES

  • Computer-Aided Software Engineering (CASE) Tools: Software that automates parts of the development process.

    • Upper CASE: Tools focused on the early phases of the SDLC (like analysis and design).

    • Lower CASE: Tools aimed at the latter phases (like coding and testing).

    • Integrated CASE: Tools that combine both functionalities.

  • Documentation Standards: Standards governing naming files, indicating goals achieved, programming guidelines, and keeping project binders updated.


MANAGING AND CONTROLLING THE PROJECT

  • Important Concepts: Project management involves trade-offs between:

    • System size

    • Project timeline

    • Project budget

  • Tools for Management: Gantt Charts are provided as a visual representation to manage timelines.


REFINING ESTIMATES

  • Typical Margins of Error for Estimates:

    • Planning Phase:

    • System Request: 400% Cost Margin, 60% Schedule Margin

    • Project Plan: 100% Cost Margin, 25% Schedule Margin

    • Analysis Phase:

    • System Proposal: 50% Cost Margin, 15% Schedule Margin

    • Design Phase:

    • System Specifications: 25% Cost Margin, 10% Schedule Margin

  • Source: Barry W. Boehm and colleagues, "Cost Models for Future Software Life Cycle Processes: COCOMO 2.0," Annals of Software Engineering Special Volume, 1995.


MANAGING SCOPE

  • Scope Creep: The most frequent cause of schedule and cost overruns; it is essential that only critical new requirements are permitted once development is underway.


TIMEBOXING

  • Definition: A project management technique to establish a fixed deadline and focus on essential functionalities only.

  • Steps in Timeboxing:

    1. Set a delivery date for the system.

    2. Prioritize required functionality.

    3. Build the core functionalities first.

    4. Defer non-essential functionalities that do not fit the timeline.

    5. Deliver the initial system version.

    6. Repeat the process to modify and enhance the system gradually.


MANAGING RISK

  • Risk Assessment: Identifying potential risks, establishing actions to mitigate them, and maintaining an ongoing risk assessment.


SUMMARY

  • Key Points:

    • The project selection process involves reviewing all organizational projects and applying project portfolio management principles.

    • The project plan delineates tasks, estimated timeframes, and all pertinent details.

    • Effective project management relies on staffing strategies and activity coordination.

    • Controlling the project encompasses strategies such as timeboxing and thorough risk assessment.