Re-Engineering Economics Cost Estimation Models and COCOMO II
Lecture 38 of SE602 Software Re-Engineering addresses the economic planning and algorithmic cost estimation of modernization projects. Undertaking re-engineering without rigorous cost estimation leads to budget overruns and abandoned initiatives. Students study Barry Boehm COCOMO II (Constructive Cost Model) reuse and re-engineering equations. The lecture details the calculation of Equivalent Source Lines of Code (ESLOC), which adjusts adapted legacy code size using percentage factors for software design modification (DM), code modification (CM), and integration testing effort (IM). Students explore the Assessment and Assimilation (AA) factor and Software Understanding (SU) increments, learning how to project person-month effort, staffing schedules, and financial breakeven timelines for enterprise software re-engineering proposals. Cloud migration pathways including rehosting, replatforming, and cloud-native refactoring are examined as extensions of legacy modernization. The relationship between technical debt accumulation, architectural degradation, and long-term enterprise software viability is reinforced. In this lecture, students examine formal methodologies, structural transformations, and analytical metrics of software re-engineering systems. Through detailed theoretical breakdowns, the lesson explores software evolution dynamics, legacy system preservation, and maintainability enhancement. Special emphasis is placed on reverse engineering workflows, abstract syntax tree construction, and program dependency representations. Mastering these foundational software re-engineering paradigms empowers software engineers to systematically revitalize enterprise legacy platforms. Analytical exercises and architectural traces help students prepare thoroughly for Virtual University midterm and final term examinations. The curriculum systematically aligns theoretical software evolution principles with practical source code modernization across industrial codebases. Reviewing the accompanying lecture handouts and metric tables reinforces understanding of coupling, cohesion, and architectural decay. Consistent evaluation of control flow graphs, call graph hierarchies, and database schemas ensures robust preparation for academic assessments. Students investigate the trade-offs between system replacement, wrapping legacy components, and iterative code refactoring transformations. The discussion highlights how Lehman laws of evolution, system complexity growth, and declining quality necessitate continuous code restructuring. Key concepts including static program analysis, dynamic execution tracing, and characterization test safety nets are thoroughly demystified. The lecture details classical object-oriented re-engineering patterns demonstrated across standard enterprise software architectures.
No questions available yet.
There are currently no examination questions published for Re-Engineering Economics Cost Estimation Models and COCOMO II. Explore other curriculum units or build a custom quiz with the practice builder.