This project has been written in C++ programming language, using an object oriented (OO) paradigm. This choice helped us in separating structure into few autonomous parts, and providing transparency to all existing package managers. PackageFS classes will be examined in depth in chapter 5. In this section, anyway, we are going to analyze the project plan and the role that each part has been projected for.