--- Video Title: Project Estimation Description: Project Estimation Watch more Videos at https://www.tutorialspoint.com/videotutorials/index.htm Lecture By: Mr. Arnab Chakraborty, Tutorials Point India Private Limited --- In this session, we are discussing project estimation. That means how the cost of a project can get estimated. We are going to discuss into details on it. For an effective management, accurate estimation of various measures is a must. And then only with the correct estimation, managers can manage and control the project for more efficiently and for more effectively way. So, that is why this estimation is very important for the manager, so that the manager can control the cost of the project effectively and efficiently. So that is the multiple different ways we can do the estimation. So, at first we are going for software size estimation. So, we are thinking that if the size of the software, if the number So, the number of lines written in the software is huge. So, obviously, the cost of the project will be also increasing accordingly. Software size may be estimated either in terms of KLOC that is kilo line of code. That means, in how many thousands of lines it has got written. It has got written by the developers or the coders to develop the software or by calculating the number of function points in the software. So, function points will actually implement the business functional requirements. So, how many such functional points we have used? How many function points we have implemented in our software? That may be also a good measure of the software cost. The function points vary according to the user or the software requirement. So, depending upon the requirement list, how many features, how many functional points we are going to develop? So, that will get decided. Next one is our effort estimation. The manager estimates effort in terms of personal requirement and man hour required to produce the software. So, how many man power are working on that very project? And what is the man hour? That is the number of man power into number of hours they have worked. So, if you go on multiplying, you are going to get the value which is known as the man hour. So, depending upon the number of personal required to develop the software and also the man hour count will be a good measure for this project estimation. For effort estimation, software size would be known. This can either be delivered by manager's experience or historical data of organization or software size can be converted into efforts by using some standard formula. So, whenever we are doing this effort estimation from our prior experience that we have developed such software earlier. So, from the prior experience or doing the data mining of the prior existing data, we can get the idea that what will be the effort estimation value. So, managers must have that amount of experience so that they can guess, they can estimate this effort estimation. Always remember estimation this term is very much related with approximation. So, in reality obviously, there will be some deviation or the deviation should be very less. If you can do the estimation a very realistic one then obviously, the deviation from that estimated value will be very less. So, next we are going for time estimation. One size and efforts are estimated. So, how to estimate the size? We have discussed that is KLOC, Kilo lines of code or number of function points. And how this efforts can be estimated? By using the number of personnel working on that or calculating the man hour from the prior experience, doing the data mining, consulting with the consultant, we can do this effort estimation. So, once size and effort estimations are estimated, the time required to produce the software can also be estimated. So, efforts required is segregated into subcategories as per the requirement specifications and interdependency of various components of the software. The software tasks are divided into smaller tasks, activities or events by work breakdown structure. The tasks are scheduled on day to day basis or in a calendar month. So, now, you know that whenever we are going for a software development, the software can be divided into multiple different modules. And we shall have to do the scheduling that which module will be executed after which one or which are the modules which they can be executed in parallel. So, that sort of scheduling is to be done at first. So, whenever we shall do such scheduling, those modules will be consisting of certain activities. Those activities can also be divided into sub-activities or say sub-sub-activities. And all these activities will have some numbering format known as WBS. This WBS is having the full form that is a work breakdown structure. Just take one example. Let us suppose we are having four activities. So, activities have got numbered as one, two, three and four. The second activity has got two sub-activities. So, those two sub-activities will be numbered as 2.1 and 2.2. The second sub-activity has got three sub-sub-activities. So, they will be numbered as 2.2.1, 2.2.2 and the last one will be 2.2.3. So, this is known as the work breakdown structure. It is not like that always it will be coming like in this 1.2 and 3. It may be also in this way 1.A, 1.B, 1.C or we can put some prefix before this WBS code that is the project code also. So, in this way there will be different formats. The respective project management team will decide the format of the WBS code. So, accordingly the tasks will be divided into sub-tasks. The sub-tasks will be divided into sub-sub-tasks and so on. But always keep this one in mind that we should not divide a task in such a minute level that it would get very difficult to get monitored, controlled and obviously to do the estimations. The sum of the time required to complete all tasks, hours or days is the total time invested to complete the project. So, in this way we can find out that what is the total duration of the projects. Because if the tasks are getting executed sequentially one after another, just go on adding the task duration will be getting the project duration. But that may not be true. Because in some cases we might be having some tasks which are overlapping. We might be having some tasks which are occurring concurrently, in parallel, simultaneous. In those cases obviously the project estimation of the duration of the project should be done accordingly. So, next one we are going for the cost estimation. This might be considered as the most difficult of all because it depends on more elements than any of the previous one. The estimating project cost, it is required to consider the size of the software, the software quality, the hardware on which this particular software is going to get deployed or say is going to get developed. And additional software or tools, licenses, etcetera. And skilled personnel with the task specific skills, travel involved, communication cost and also training and the support. So, these are the different cost factors which should be kept in mind while doing the cost estimation. So, a same manpower, say one developer, say that developer can work on say PHP, say on say dot net, on say Java platform. And as he knows Java, so he has also upgraded himself with the Kotlin platform also. So, when that particular developer will be asked to work on a certain task in a task specific skill, in the case he or she might be charging different for different technologies. So, it is not like that. This manpower, this software engineer will always charge X dollar per hour. It is not like that. It might be X1, X2, X3, X4 depending upon the platform, depending upon the criticalness on of the task on which he is going to get deployed. So, that are different issues are there while doing the cost estimations. When you will be working in the real life scenarios, you can easily face that cost estimation is not a matter of joke. It is very difficult because different resources you are going to deploy on different tasks with a particular skill set. And in this way, the cost estimation of the software can be done efficiently. So, in this particular session, we have discussed how the project cost estimations can be done and what are the different variations and the cost components. Thanks for watching this video.