This repository has been archived on 2025-12-15. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files

2.8 KiB

Software Maintenance


Use the following information to determine the function point, productivity, documentation, and cost per function for a software program with various Processing Factors 5, 1, 0, 4, 3, 5, 4, 3, 4, 5, 2, 3, 4, 2.  The average number of External Inputs was 22, the average number of External Outputs was 45, the average number of External Inquiries was 6, the average number of Internal Logic Files was 5, and the average number of External Logic Files was 2. Effort: 37 Per Month. 250 pages were devoted to the technical documentation for the software, 120 pages to user-related materials, and $7520 was the monthly budget and cost.

  • \text{Sum of Processing Factors} = 5+1+0+4+3+5+4+3+4+5+2+3+4+2 = 45
  • \text{External Inputs} = 22 \times 4 = 88
  • \text{External Outputs} = 45 \times 5 = 225
  • \text{External Inquiries} = 6 \times 4 = 24
  • \text{Internal Logic Files} = 5 \times 10 = 50
  • \text{External Logic Files} = 2 \times 7 = 14
  • \text{Effort} = 37\text{/month}
  • \text{Monthly Budget and Cost} = 7520
\text{Unadjusted Function Point (UFP)} = 88 + 225 + 24 + 50 + 14 = 401 \text{Complexity Adjustment Factor (CAF)} = 0.65 + 0.01 \times 14 \times 45 = 6.95 \text{Function Point (FP)} = \text{UFP} \times \text{CAF} = 2786.95 \text{Productivity} = \frac{\text{FP}}{Effort} = \frac{2786.95}{37} ≈ 75.32 \quad \text{(FP/month)} \text{Total Documentation} = 250+120 = 370 \quad \text{(pages)} \text{Cost per Function} = \frac{\text{Total cost}}{\text{FP}} = \frac{7520}{2786.95} ≈ 2.70 \quad \text{(\$/FP)}

What is the importance of maintenance in software development life cycle?

Maintenance plays a crucial role within the Software Development Life Cycle by significantly improving its quality and reliability over time. In real-life scenarios, software often encounters unforeseen bugs and vulnerabilities post-development and testing phases. Maintenance serves to identify and fix them, thereby enhancing software quality, improving user satisfaction, and reducing support costs, all while prolonging the software's lifespan. Furthermore, maintenance helps to adapts software to evolving business or technical demands resulting from changes in the markets, technologies, or regulations. Updates, upgrades, or new features ensure that software remains up-to-date with evolving requirements, effectively supporting business objectives. Through continuous monitoring and updating, maintenance helps to address system failures, security breaches, or performance deterioration, thereby mitigating associated risks such as downtime or data loss. This proactive approach to maintenance underscores its crucial role in sustaining software systems and ensuring their continued functionality and relevance within the dynamic modern world.