Module 4 Feasibility Study
This is the vital phase of SDLC. The primary aim is to determine whether a software project is financially viable, technically feasible, socially acceptable, and commercially profitable.
Lesson 1 Software Project Management
Software engineering projects are distinct because the software product is intangible, changeable, and has no standard development process.
Project management ensures the product meets quality specifications, proceeds on schedule, stays within budget, and remains within the technological domain.
Roles & Activities
- Project Manager:
- Takes overall responsibility. Classifies activities into project planning, monitoring, and controlling.
- System Analyst / Major Activities:
- Proposal activity, planning, scheduling, tracking/monitoring, personnel selection, and report writing.
Project Management Difficulties
- Software systems uniqueness
- Possibility of multiple solutions
- Individuality of programmers
- Speed of technological advancements
- Invisibility of software products
Software Project Planning
Establishes reasonable plans for performing engineering and managing the product. Broadly classified into 5 categories:
- Quality plan
- Validation plan
- Configuration plan
- Maintenance plan
- Staffing plan
Lesson 2 Software Project Management Plan (SPMP)
After planning, results are arranged into the SPMP document. Its major components are:
- Introduction
- Provides an overview of project objectives, deliverables, budget, reference materials, and definitions/acronyms.
- Project Organisation
- Identifies the process model, organizational structure, application boundaries/interfaces, and project responsibilities.
- Managerial Process
- Describes management objectives, assumptions, dependencies, risk management, monitoring/controlling mechanisms, and staffing plans.
- Technical Process
- Specifies methods, tools, techniques (e.g., programming language, OS), software documentation milestones, and project support functions like quality assurance.
- Work Packages, Schedule and Budget
- Emphasizes task breakdowns, interdependencies, resource requirements over time, budget allocation, and the master schedule.
- Additional Components
- Includes plans for hardware procurement, installation/security, product maintenance, and independent validation.
Lesson 3 Software Project Scheduling
Scheduling is difficult as it relies on empirical data and individual experience.
Activities & Techniques
- Activities: Identify tasks/dependencies, estimate resources/time, allocate people, determine order.
- Techniques: Work Breakdown Structure (WBS), Activity chart, PERT, Gantt chart, CPM.
Software Project Estimation & Metrics
Measure is an attribute of an entity, while Measurement is the activity to determine the measure.
- Product metrics
- Describes product characteristics (size, complexity, reliability).
- Process metrics
- Describes effectiveness/quality of the production processes (effort required, time, defect removal).
- Project metrics
- Describes project characteristics and execution (number of developers, cost, schedule) used for managerial control.