Project 1: srcReport Posted: September 05, 2019

The program srcReport reports various statistics including the number of expressions, LOC, and the number of functions, of a source-code project. srcML converts the C++ source into an XML format, which the program parses the XML, and collects data for a report.

The srcReport program is complete. However, it is in one large main program with very low cohesion. Your task is to take the code, improve the overall design, and extract the XML parsing part of the code. When completed, XML parsing is handled by a set of functions in the files XMLParser.hpp and XMLParser.cpp, while the main program, srcReport.cpp, generates the report using the XMLParser functions for parsing.

The steps (in order) with the associated tag are:

Tag “v1a” Add the code necessary to count the number of return statements. Due Tuesday, Sep 17

Tag “v1b” Extract functions into XMLParser that handles the XML parsing part. Due Tuesday, Sep 24

Tag “v1c” Add the code necessary to count the number of block comments. Due Tuesday, Sep 24

Your repository for this project is through GitHub Classroom. A link to create the repository is available on the Brightspace course page. Make sure to login to the GitHub account that you are going to use before you click the link.