Defining CPM or Critical Path Method in simple terms is to understand the time taken by each activity before we can meet the deadline of the project. The approach is to schedule a project where we breakdown a project into small tasks and display them in the form of a flowchart and then calculate the project duration. It is the longest sequence of tasks in a project plan that must be completed on time in order meet the deadline, if one activity gets delayed the whole project gets delayed. If an activity takes longer than the anticipated time the project delivery date gets delayed. It was developed probably somewhere around 1950 by Morgan R.Walker & James E. Kelly Jr. The critical path method was developed at a private sector whereas its counterpart PERT (Project Evaluation & Review Technique) was developed by the US navy probably around the same time. This method was introduced as a joint venture between Remington Rand Corporation and DuPoint Corporation. This method or algorithm is a project modelling technique where we can schedule a set of project activities. Most of the time when an activity gets delayed, re-sequencing or project acceleration is done in order to catch up with the given deadline. CPM can be used with a wide variety of projects its not only limited to software development it can be used for maintenance, research projects, product development, manufacturing, car service etc. So if we have any project with independent activities and mathematical calculations can use this algorithm to allocate resources and understand the scheduling of work in detail. The 4 main parts that should be kept in mind while designing a CPM are as follows :-a. We need to have a clear work breakdown structure with all the activities noted properly in ascending order.b. We need to calculate each activity’s time and the resource that it is going to require.c. We need to be clear of the end milestone or the end point of each activity and the last or final activity.d. Once we are done with the above steps we can get a clear idea between the dependency of one activity on the other we can identify which activity to give more priority and calculate the activity based on priority. So in CPM we need to follow the above steps in order to achieve full accuracy. The above process helps us to identify the critical activities and critical path. The CPM identifies tasks that are critical and organized in order in which the project is supposed to be completed. Once we have done that its easier to identify the longest time it will take to complete a project and the shortest time to complete a project. We can optimize our project timeline based on the critical path method. Some projects may have one critical path while others can have multiple critical paths.The various advantages of Critical Path Method are as follows :-a. Helps us to understand the critical activities of a project.b. Helps us in visualizing the activities of the project so that while presenting we can make the client or the project manager understand the project’s resources and timeline in a better way. (Its easier to visualize than imagine).c. CPM not only helps us to identify resources and tasks but it also helps us to identify the total time that the project is gonna take to complete.d. Helps the project manager predict and understand the time that a project is gonna take to complete and the parts where the project is getting delayed and helps him to modify and allocate free float (free resources and time) to that particular node/activity to meet the project deadline.The various applications of Critical Path Method are as follows :-a. It was first used in missile-defense construction project.b. It is used for hardware and software product.c. Used in R&D for most of computer program.d. Used in R&D for software and hardware development.