Order from us for quality, customized work in due time of your choice.
Introduction
Team performance measurement plays an integral role in establishing a connection between planning, decision-making, actions, and results of a project. By analyzing team performance, determining its strengths and weaknesses, and assessing results, team members get the necessary information to avoid failures, monitor the progress, ensure continuous improvement, and achieve the defined goals (Podjavo & Berzisa, 2017). With the development of Agile software development practices, the team performance measurement techniques applicable to Agile projects have gained the most popularity. The function point analysis, which was developed in the 1970s and widely used for three decades, is now losing its relevance because of its limitations. However, it still has considerable advantages over other measurement methods and can be effectively applied to both Agile and non-Agile projects.
The purpose of the research is to determine the advantages and disadvantages of measuring team performance using function points compared to story points based on previous studies.
The research objectives include:
-
Providing a theoretical background for function point analysis, Agile software development, and story points estimation.
-
Providing a literature review on team performance evaluation methods.
-
Comparing function points and story points as methods of team performance evaluation.
-
Determining the advantages and disadvantages of function points for team performance evaluation.
The paper is divided into six sections: Introduction, Theoretical background, Methods, Findings, Discussion, and Conclusion. The Theoretical background section gives definitions of function points and function point analysis, Agile software development, and story points evaluation. In the Methods section, a short literature review is provided, and the methods used in the research are defined. The Findings section lists the results of the comparative analysis of function points and story points, and the advantages and disadvantages of function points as a method of team performance evaluation. In the Discussion section, the findings are discussed in the light of the theoretical background, and further research developments and implications are suggested. The Conclusion summarizes the results of the study and gives some ideas for future research.
Theoretical Background
Function Points
A function point is a unit of measurement that is generally used to evaluate the amount of functionality that an information system provides to a user. They were defined by Allan Albrecht of IBM in 1979 as a metric that was independent of code volumes and could measure both economic productivity and quality of software without distortions (Santana et al., 2011). Functions points quantify the functions contained within the software in terms that are meaningful to a user and relate directly to the business requirements that the software is intended to address. Over the decades, the function point analysis has been developed into a universal technique that can be applied across a wide range of development environments and throughout the life of a project.
The function point analysis procedure generally consists of several stages. The first stage is to gather the available documentation describing the functionality of the software. The second stage is scope counting, which defines the set of functional user requirements to be included in the function point count (Santana et al., 2011). Then, data functions are measured, which represent functionality provided to the user to meet the requirements, and transaction functions are evaluated, which provide functionality to the user for processing data. After that, the functional size of the software is determined. The basic procedure can be adapted for specific project objectives, including the evaluation of team performance.
Agile Software Development
In 2001, the Agile Manifesto was presented that proposed new values and principles of software engineering based on quick response to changes and increased manageability. It shifted the values of the software development process from the mechanistic, driven by processes, to organic, driven by people and their interactions (Santana et al., 2011). With Agile, solutions are developed through the collaborative effort of self-organizing and cross-functional teams and their customers. It involves adaptive planning, early delivery, and continual improvement, and encourages a flexible approach to change. Over the last two decades, Agile has become increasingly common in the organizational software development environment and is believed to significantly increase the agility of project teams.
Within Agile teams, performance management processes are usually customized to help each team work more efficiently and address specific project goals. Although there are plenty of proposed team performance measurement and effort estimation techniques, no commonly accepted standardized practice for Agile software development exists (Salmanoglu, et al., 2017). The typical estimation methods used in most Agile projects are t-shirt sizing, planning poker, and story points.
Story Points
Story points are the most popular method for team performance evaluation, which estimates the amount of effort required by a team to implement a user story. They are applied to sprints and include three main components: risk, complexity, and repetition. The risk includes vague demands, dependence on a third party, or changes mid-task. Complexity is determined by how difficult the particular feature is to develop. Repetition is determined by how familiar each team member is with the feature and how monotonous are the tasks that need to be performed. Using these three points, the team can accurately plan sprints, include a cushion for uncertainty, better estimate the results, and avoid breaking time commitments.
Methods
In this study, comparative analysis and literature analysis are used as the primary research methods. Function points are compared to story points in their effectiveness for team performance and software development process evaluation. The literature studied for the research examines the use of functions points and story points in Agile and non-Agile projects and provides different methods of function points application. Although no specified research has been identified on comparison of function points and story points as methods of team performance evaluation, the advantages and disadvantages of both techniques can be identified based on the literature analysis.
-
The study by Santana et al. (2011) addresses the question of whether function points can be an adequate measure of velocity and contrasts theoretical concepts about story points and function points as units for measuring size. It provides a detailed overview of the function point analysis procedure and compares it to the story points evaluation.
-
The study by Oliveira & Noya (2013) presents an iterative method for project cost and time estimations, which uses productivity and function points metrics. It shows how function points can be used to calculate the productivity of a particular project and compare it with other projects.
-
The study by Salmanoglu et al. (2017) discusses story points and functional size as measures of effort estimation in Agile projects. It shows that function points provide an effective and precise solution for effort estimation in organizations that use Agile methodologies.
-
In the article by Podjavo & Berzisa (2017), guidelines are provided for the evaluation of the project team performance using different methods. The paper summarizes measures for evaluation, their objectives and benefits, as well as factors that may have an influence on team performance.
Findings
Function Points vs. Story Points
Story points and functions points are the two most popular methods of measurement aimed at the same goal: efficiently manage a software development project. Story points are used in Agile projects and allow to evaluate team performance within a certain period. They are selected based on the teams perceptions of the size and complexity of work to be completed (Santana et al., 2011). The value of each story point is determined by the team during the process called Planning Poker, and then a consistent velocity is developed that serves to estimate future amounts of work.
Function points can be used both in Agile and non-Agile projects. They measure the size of requirements and design specified, which allows the managers to estimate how much effort it will take to develop a piece of software. The function point methodology identifies five key elements: inputs, outputs, inquiries, interfaces, and internal stores of data (Santana et al., 2011). Function point sizing is determined based on the description of these elements and is used to calculate the productivity and quality levels of performance.
The measure in function points is most effectively used in the beginning of the project and upon delivery of a release. In the beginning, they can be applied to estimate the charge, total costs, and project completion time, assess productivity, and refine the calibration of estimation models. At the backend of the project, they may be used to assess team performance level and compare Agile project performance levels to performance levels of other methodologies currently in use. Story points are used to manage the workflow of an Agile project and estimate the quantity of work to be done by a team in a certain period of time.
The comparison of story points and function points as team performance measurement techniques gives the following results:
-
Both function points and story points can be used for productivity assessment, but story points are relative because their perception varies from one team to another.
-
Function points measurement requires expert knowledge or the use of an automated tool. Story points are easier to measure, and the measurement can be performed by the team.
-
Function points can be used for comparing team performance with other projects. Story points cannot be used for comparison because each measure is specific to the project and the team (French, 2016).
-
Story points main strength is that they can be involved in the shared comprehension of the team and its commitment, and function points do not allow it.
-
Project assessment can be performed using function points but not story points because they are not standard.
Overall, story points are a subjective, non-reproducible, inconsistent estimation method that does not provide a reliable, objective, and defensible sizing method. Function points provide a more consistent, accurate, reproducible size metric that reduces risk and uncertainty and allows for better team performance evaluation (French, 2016). Both methods have their advantages and drawbacks, with story points being quicker and easier than function points, but not always appropriate for the task at hand.
Advantages and Disadvantages of Function Points
The main disadvantage of function points is the complexity of application. Function points require a detailed examination of the available information, and achieving reproducible counts requires exercise and practice. There are specific guidelines to be applied and calculations to be made. Regular team members do not generally possess the required set of skills, and the use of function points throughout the organization is usually performed by a centralized team of specialists, which allows for comparisons among the various Agile teams.
The second drawback of function points is the lack of motivational benefits. With story points, team members are directly involved in sizing the tasks they are going to work on, while function points are seemingly imposed by the centralized function points counting team. Third, function points cannot be easily used to estimate team performance at a sprint level. Sprints are usually time-boxed as two-week iterations, and the goal is to achieve a steady workflow from sprint to sprint, which can be adequately achieved using story points. Function points are more appropriately applied to measure the overall project outcome and the total level of effort that may be required across sprints.
Another problem associated with function points is their perception. Most managers working in Agile think that function points are not applicable to Agile projects, require too much time and effort to implement, and do not offer the flexibility required to estimate in an Agile environment (Agile estimation Whats the point?, n.d.). While this is often not the case, these perceptions need to be taken in consideration because they usually discourage managers from using function points.
The main advantage of function points is that they are easy to scale across various teams and are consistent regardless of project requirements. They provide an effective and precise method of effort estimation for organizations using Agile methodologies (Salmanoglu et al., 2017). Furthermore, function points are language, size, platform, and technology independent, which allows them to be used for Agile as well as non-Agile projects.
Discussion
With this research primarily focused on the comparison between story points and function points as team performance measurement methods, further studies need to focus on determining the factors of applicability of both methods. Story points are usually used in Agile projects, but they do not always satisfy the projects requirements, while function points are not applicable at the sprint level but can satisfy other project needs. Determining which method to use requires careful evaluation and strategic rather than short-term planning.
The real challenge with the story points is that they are hard to scale across various Agile teams. It can be a challenging situation for the organizations that want to effectively control team performance. Function points, on the other hand, points can easily be used for comparison. Function points are less flexible, but they provide a more uniform solution for team performance measurement. While story points are a relative measure, function points are a well-defined consistent method of evaluation. Effective team performance measurements solutions can be developed by using a combination of function points and story points to create both flexible and uniform methods of evaluation.
Further developments of the research may also include the comparison of function points with other methods of team performance evaluation. Apart from objective criteria measured with time variance, cost variance, and complexity metrics, subjective criteria may be applied, such as the perceptual rating of team performance by team members and stakeholders. It includes team effectiveness, system viability, professional growth, user satisfaction, teamwork satisfaction, and output quality (Podjavo & Berzisa, 2017). The analyzes of factors that can influence team performance can also be included in the comparison to provide the most effective and comprehensive solution.
Team performance evaluation is an important issue in software management for a number of reasons. A projects success largely depends on a teams efficiency. Inadequate team performance measurement can result in significant time and money losses for the organization. On the contrary, effective estimation has a substantial positive impact on project management and reduces the risks related to schedule and costs overruns. Developing successful team performance management solutions can be a challenge because it requires thorough understanding of each projects objectives and specifics. The studies aimed to compare and evaluate different solutions help project managers make informed decisions when choosing the most effective evaluation methods.
Conclusion
The measurement of team performance can be performed using two most effective methods: story points and function points. This research focuses on the comparison of these two methods with the purpose of determining the advantages and disadvantages of function points. Story points are only applicable to Agile projects, while function points can be used to evaluate and compare team performance in both Agile and non-Agile projects.
While story points are a relative measure, function points are a well-defined consistent method of evaluation. They are useful for measuring the overall product deliverable at the beginning and at the end of the project. At the beginning, the function point size information can be used to estimate overall schedule and cost of the project, and the size information upon delivery can be used to measure performance. Story points are effective for managing the flow of work in an Agile project, and they serve a purpose of estimating the amount of work that can be accomplished by the team in a defined period of time. Story points are not meant to be an accurate or comparative measure of team performance, while function points are.
In order to effectively measure team performance, a combination of function points and story points can be used. Provided that the organization can put together a team of specialists with relevant function points analysis skills, it can be used to evaluate team performance across all departments within the company. At the same time, story points can be used within each project team to evaluate its performance using its internal resources and develop customized metrics based on each projects objectives. A combination of these two methods can provide the most effective team performance measurement solution.
References
Agile estimation Whats the point? (n.d.).
French, D. (2016). Agile and function points: A winning combination [PDF document]. Web.
Oliveira, E. A., & Noya, R. C. (2013). Using productivity measure and function points to improve the software development process [PDF document].
Podjavo, I., & Berzisa, S. (2017). Performance ev aluation of software development project team. Environment. Technology. Resources. Proceedings of the 11th International Scientific and Practical Conference. Volume II, 118 123. Web.
Salmanoglu, M., Hacaloglu, T., & Demirors, O. (2017). Effort estimation for Agile software development: Comparative case studies using COSMIC functional size measurement and story points. Proceedings of the 27th International Workshop on Software Measurement and 12th International Conference on Software Process and Product Measurement, 4149.
Santana, C., Leoneo, F., Vasconcelos, A., & Gusmao, C. (2011). Using function points in Agile projects. In A. Silitti, P. Hazzan, E. Bache & X. Albaledejo (Eds.), XP 2011: Agile processes in software engineering and extreme (pp. 176191).
Order from us for quality, customized work in due time of your choice.