Software Environment and Reverse Engineering Assessment
Lecture 39 of CS605 Software Engineering - II explores reverse engineering methodologies and the assessment of legacy software environments. Reverse engineering is the process of analyzing a subject system to identify system components and their interrelationships, and create representations of the system at a higher level of abstraction than source code. Students study the reverse engineering workflow: parsing legacy source code, constructing abstract syntax trees (AST), extracting control flow graphs, and synthesizing structural entity-relationship diagrams and class hierarchies. The lecture examines Sneed's legacy system assessment framework, evaluating technical quality against business value. Systems possessing high business value but low technical quality are identified as prime candidates for re-engineering, whereas systems with low business value and low technical quality are recommended for retirement. Mastering these foundational software engineering paradigms empowers prospective system architects to deliver resilient, high-quality software systems. Analytical exercises and real-world case evaluations help students prepare thoroughly for Virtual University midterm and final term examinations. The curriculum systematically aligns practical industry development workflows with formal IEEE standards and CMMI process maturity levels. Reviewing the accompanying lecture handouts and conceptual diagrams reinforces understanding of project monitoring, statistical process control, and configuration baselines. Consistent evaluation of planning templates, estimation equations, and decomposition hierarchies ensures robust preparation for academic assessments. Students investigate the role of software process engineering in synchronizing development activities across multidisciplinary engineering teams. The discussion highlights how requirements traceability matrices prevent scope creep and ensure strict adherence to customer specifications. Key concepts such as configuration item identification, version control baselines, and formal change control board procedures are thoroughly analyzed. The lecture details algorithmic cost estimation models including Function Point Analysis to produce reliable effort and duration forecasts. Structured decomposition methods are demonstrated using task networks and PERT charts to evaluate critical path scheduling and project float. Network diagramming techniques provide deterministic and probabilistic insights into project milestones and resource dependencies. Risk mitigation, monitoring, and management plans are formulated to identify technical, operational, and commercial exposure early in the lifecycle.
No questions available yet.
There are currently no examination questions published for Software Environment and Reverse Engineering Assessment. Explore other curriculum units or build a custom quiz with the practice builder.