This document outlines a project for developing a C++ program profiler that uses an abstract syntax tree (AST) to keep track of function and statement executions in source code. It details the objectives, implementation phases, and requirements for the project, including using a parsing tool called src2srcml to convert C++ code to a structured XML format. The document also specifies various elements that need to be implemented, such as profiling function calls, maintaining execution counts, and generating output files.