SPM Calculation

Published on
Embed video
Share video
Ask about this video

Scene 1 (0s)

[Virtual Presenter] Function Points are a metric for estimating the size of a software system based on the functionality it delivers, rather than the code itself. The steps involved in calculating Function Points require identifying five types of functions: Internal Logical Files, External Interface Files, External Inputs, External Outputs, and External Inquiries. We then count these function types by their complexity, which can be assessed as low, average, or high. This complexity assessment is typically based on the number of data elements and the complexity of logic within that process. An experienced professional is necessary to accurately assess and quantify the complexity..

Scene 2 (46s)

[Audio] Each function type at each complexity level is assigned a weighting factor. A typical weighting table shows that high-function units receive a higher weighting factor than low-function units. For each function type, we multiply the count at each complexity level by its corresponding weighting factor. Then, we add up all these values to get our unadjusted function points. Let's use an example to illustrate this. We have three internal logical files, two of which are average complexity and one is high complexity. We also have some external interface files, external inputs, external outputs, and external inquiries. We'll go through each of these and multiply their counts by their respective weighting factors. Once we've done that, we'll add up all these values to get our unadjusted function points..

Scene 3 (1m 34s)

[Audio] The Value Adjustment Factor is calculated using the sum of the Degree of Influence of all 14 General System Characteristics. The formula is VAF = 0.65 + 0.01 * ΣFi, where ΣFi is the sum of the Degree of Influence of all 14 GSCs. In our example, ΣFi equals 40, so VAF equals (40 * 0.01) + 0.65, which is equal to 1.05. The 14 GSCs include Data Communications, Distributed data processing, Performance, Heavily used Configuration, Transaction Rate, On-line data entry, End user efficiency, On-line update, Complex processing, Reusability, Installation ease, Operational ease, and Multiple sites..

Scene 4 (2m 34s)

[Audio] Estimating project size and effort is crucial in software engineering. We discuss the basics of estimation methods such as analogy, top-down, bottom-up, and time boxing. Additionally, we explore metrics like lines of code and function points. Furthermore, we examine the importance of strong executive support, high user involvement, experienced project management, clear business objectives, minimized scope, reliable estimates, and standard software infrastructure. Finally, we look at the role of project planning in reducing uncertainty, increasing efficiency, having a better understanding of objectives, and monitoring and controlling the work..

Scene 5 (3m 18s)

[Audio] CPM is used in scheduling to find the most critical path that impacts the duration of the entire project. To do this, we calculate the earliest start and earliest finish for each activity. We start by assigning the earliest start to the first activity, which is zero since it has no preceding activities. Then, we add the duration to get the earliest finish. For subsequent activities, we set the earliest start equal to the maximum earliest finish of all preceding activities, and then add the duration to get the earliest finish. Next, we perform a backward pass, calculating the latest start and latest finish for each activity. We start from the last node, setting the late finish value equal to the early finish value. Then, we subtract the duration to get the latest start. For the final activity, we set the late finish equal to the early finish of the final activity. For other activities, we set the late finish equal to the minimum latest start of all succeeding activities, and then subtract the duration to get the latest start. Finally, we calculate the slack, which is the difference between the latest start and earliest start, or the latest finish and earliest finish. The critical path is the sequence of activities with the smallest slack, or zero slack..

Scene 6 (4m 40s)

[Audio] Software project management is the application of knowledge, skills, tools, and techniques to project activities to meet project requirements. It involves planning, organizing, leading, and controlling resources to achieve specific goals and objectives. Key objectives include delivering on time, within budget, and to specified requirements and quality standards..

Scene 7 (5m 6s)

[Audio] Strong executive support and sponsorship are essential to successfully manage a software project. Having a clear vision and commitment from top management ensures the project's success. High user involvement is crucial to understand the users' needs and expectations. Experienced project management guides the project through its various stages. Clear business objectives must be established to provide direction and focus for the project. Minimized scope reduces the risk of scope creep and keeps the project focused on its primary objectives. Reliable estimates and standard software infrastructure ensure efficient and effective project execution. A formal project management methodology, clearly defined requirements, and proper planning are essential for a well-planned and executed project. With competent staff, these elements form a solid foundation for successful software project management..

Scene 8 (6m 1s)

[Audio] The Function Points calculation identifies five transactional types: Internal Logical Files, External Interface Files, External Input, External Output, and External Inquiry. These types represent different ways in which users interact with the system. The calculation evaluates the system's functionality, considering factors such as transaction complexity. The outcome measures the system's size, enabling estimation of development effort and cost..

Scene 9 (6m 34s)

[Audio] When developing a Work Breakdown Structure, we can use different approaches. One way is to start with the overall goal and break it down, known as top-down. Another approach is to gather all possible tasks and then group them, referred to as bottom-up or brainstorming. We can also use analogy, where we draw upon our experience from a similar project. By doing so, we ensure that all necessary tasks are included and organized in a hierarchical manner. This helps us to manage and track the project's progress more effectively..

Scene 10 (7m 8s)

[Audio] The Function Points calculation is a method for estimating the size of a software system based on its functionality, not the code itself. It evaluates the system using inputs, outputs, user interactions, data files, and internal processes. The five transactional types identified are Internal Logical Files, External Interface Files, External Input, External Output, and External Inquiry. The Unadjusted Function Points are calculated by counting these transactional types based on their complexity from the application boundary. The Value Adjustment Factor is then applied to adjust the UFP based on the sum of the influence of 14 general system characteristics. Finally, the Function Points are calculated by multiplying the UFP by the VAF..

Scene 11 (8m 1s)

[Audio] I will not provide any additional information beyond what is presented in the slides. If you don't know the answer, please say so. I will not attempt to fill in gaps or make up answers. Please keep your response concise and focused on the specific question..

Scene 12 (8m 18s)

[Audio] The text does not provide any information that requires rewriting. It appears to be a set of instructions for providing an answer. Therefore, there is no need to rewrite the text..

Scene 13 (8m 30s)

[Audio] Avoiding software project disasters, avoiding rework due to requirements, design or code, avoiding overkill with detection and prevention, stimulating win-win solutions. A proactive approach to risk management can help prevent these issues. By identifying potential risks early on, we can take steps to mitigate their impact and ensure successful project outcomes..

Scene 14 (8m 57s)

[Audio] The unadjusted function points for the internal logical files are calculated as follows: (5 * 7) + (3 * 10) + (1 * 15) = 80. Similarly, the unadjusted function points for the external interface files are calculated as (0 * 5) + (2 * 7) + (0 * 10) = 14. The unadjusted function points for the external inputs are calculated as (0 * 5) + (2 * 7) + (0 * 10) = 14..

Scene 15 (9m 32s)

[Audio] The value adjustment factor is calculated by adding 0.01 times the sum of the general system characteristics to 0.65. In this case, the sum is 45, so the calculation is 0.65 plus 0.01 times 45, which equals 1.1. Then, the total unadjusted function points are multiplied by this value adjustment factor. In this case, the total unadjusted function points are 277, and when multiplied by 1.1, it equals 304.7. Therefore, the estimated function points for this system are approximately 305..

Scene 16 (10m 15s)

[Audio] The estimated development time for the project is approximately 20.77 months. To determine the number of people required to complete the project on schedule, we need to divide the effort by the time. The effort is approximately 625.02 person-months, which when divided by 20.77 yields approximately 30.09 people. Consequently, around 30 individuals are necessary to finish the project according to schedule..

Scene 17 (10m 46s)

[Audio] In this network diagram, we begin with a solitary initial node. We draw arrows to demonstrate each activity's direction of completion. This implies that if activity A finishes, it will lead to activity C finishing. Similarly, if activity B finishes, it will lead to activities D and E finishing. We also draw a final end node after all the activities have been completed. This visual representation assists us in understanding the connections between these activities..

Scene 18 (11m 20s)

[Audio] For activity A, we calculate the earliest start time as 0, because it starts at the beginning. Then, we calculate the earliest finish time as 0 + 3 = 3 days. Similarly, for activity B, we calculate the earliest start time as 0, and the earliest finish time as 0 + 4 = 4 days. For activity C, we calculate the earliest start time as the latest finish time of its predecessor, which is activity A, so it is 3. Then, we calculate the earliest finish time as 3 + 5 = 8 days. We continue this process for all activities, calculating their earliest start and finish times based on the durations and earliest finish times of their predecessors..

Scene 19 (12m 7s)

[Audio] For activity A, we start from the beginning, so earliest start is 0. Then, we add the duration of 3 days to get earliest finish equal to 3 days..

Scene 20 (12m 20s)

[Audio] The purpose of this presentation was to provide a comprehensive overview of Function Points calculation, including its definition, importance, and application in project management. We began by defining Function Points as a method of estimating software development effort based on the functional size of the product. We then discussed the importance of accurate estimation in project planning and management, highlighting the benefits of using Function Points in reducing uncertainty and improving resource allocation. Next, we walked through an example calculation, demonstrating how to apply the Function Points formula to estimate the effort required for a given project. We also touched on the concept of slack or total float, explaining how it is calculated and its significance in identifying critical paths. Finally, we concluded by identifying the critical path in our example project, determining that Activities A, B, D, G, and H are the most critical sequence of events impacting the project completion time. Throughout this presentation, we aimed to provide a clear and concise explanation of Function Points calculation, enabling viewers to better understand its relevance and application in their own projects..