Framework can be explained as a platform for making software applications. It provides the basis on which developers can build programs for a specific platform. A framework may also include predetermined classes, libraries as well as functions. It can be used to process inputs, manage hardware, and interact with system software.