This document discusses software measurement and different types of metrics. It covers size-oriented metrics like lines of code, function-oriented metrics like function points that measure functionality, and extended function point metrics. Software measurement provides quantitative attributes of software products and processes to assess quality and assist with project management decisions. Measures can be direct, measured from the project itself, or indirect, where attributes are not immediately quantifiable.
STATISTICAL ANALYSIS OF METRICS FOR SOFTWARE QUALITY IMPROVEMENT ijseajournal
Software product quality can be defined as the features and characteristics of the product that meet the user needs. The quality of any software can be achieved by following a well defined software process. These software process results into various metrics like Project metrics, Product metrics and Process metrics. Software quality depends on the process which is carried out to design and develop software. Even though the process can be carried out with utmost care, still it can introduce some error and defects. Process metrics are very useful from management point of view. Process metrics can be used for improving the software development and maintenance process for defect removal and also for reducing the response
time.
This paper describes the importance of capturing the Process metrics during the quality audit process and also attempts to categorize them based on the nature of error captured. To reduce such errors and defects found, steps for corrective actions are recommended.
A Review on Software Fault Detection and Prevention Mechanism in Software Dev...iosrjce
IOSR Journal of Computer Engineering (IOSR-JCE) is a double blind peer reviewed International Journal that provides rapid publication (within a month) of articles in all areas of computer engineering and its applications. The journal welcomes publications of high quality papers on theoretical developments and practical applications in computer technology. Original research papers, state-of-the-art reviews, and high quality technical notes are invited for publications.
Human factors in software reliability engineering - Research PaperMuhammad Ahmad Zia
In this paper, Maria Spichkova et al. have presented theri vision of the integration of human factors engineering into the software development process. The aim of this approach is to improve the quality of software and to deal with human errors in a systematic way.
Categories and Subject Descriptors
D.4.5 [Reliability]: Fault-tolerance; D.2.5 [Software Engineering]: Testing and Debugging
General Terms
Reliability, Verification
STATISTICAL ANALYSIS OF METRICS FOR SOFTWARE QUALITY IMPROVEMENT ijseajournal
Software product quality can be defined as the features and characteristics of the product that meet the user needs. The quality of any software can be achieved by following a well defined software process. These software process results into various metrics like Project metrics, Product metrics and Process metrics. Software quality depends on the process which is carried out to design and develop software. Even though the process can be carried out with utmost care, still it can introduce some error and defects. Process metrics are very useful from management point of view. Process metrics can be used for improving the software development and maintenance process for defect removal and also for reducing the response
time.
This paper describes the importance of capturing the Process metrics during the quality audit process and also attempts to categorize them based on the nature of error captured. To reduce such errors and defects found, steps for corrective actions are recommended.
A Review on Software Fault Detection and Prevention Mechanism in Software Dev...iosrjce
IOSR Journal of Computer Engineering (IOSR-JCE) is a double blind peer reviewed International Journal that provides rapid publication (within a month) of articles in all areas of computer engineering and its applications. The journal welcomes publications of high quality papers on theoretical developments and practical applications in computer technology. Original research papers, state-of-the-art reviews, and high quality technical notes are invited for publications.
Human factors in software reliability engineering - Research PaperMuhammad Ahmad Zia
In this paper, Maria Spichkova et al. have presented theri vision of the integration of human factors engineering into the software development process. The aim of this approach is to improve the quality of software and to deal with human errors in a systematic way.
Categories and Subject Descriptors
D.4.5 [Reliability]: Fault-tolerance; D.2.5 [Software Engineering]: Testing and Debugging
General Terms
Reliability, Verification
Testability measurement model for object oriented design (tmmood)ijcsit
Measuring testability early in the development life cycle especially at design phase is a criterion of crucial importance to software designers, developers, quality controllers and practitioners. However, most of the
mechanism available for testability measurement may be used in the later phases of development life cycle.
Early estimation of testability, absolutely at design phase helps designers to improve their designs before
the coding starts. Practitioners regularly advocate that testability should be planned early in design phase.
Testability measurement early in design phase is greatly emphasized in this study; hence, considered significant for the delivery of quality software. As a result, it extensively reduces rework during and after implementation, as well as facilitate for design effective test plans, better project and resource planning in a practical manner, with a focus on the design phase. An effort has been put forth in this paper to recognize the key factors contributing in testability measurement at design phase. Additionally, testability
measurement model is developed to quantify software testability at design phase. Furthermore, the relationship of Testability with these factors has been tested and justified with the help of statistical measures. The developed model has been validated using experimental tryout. Finally, it incorporates the empirical validation of the testability measurement model as the author’s most important contribution.
Systematic review on evaluating planning process in agile development methodsTELKOMNIKA JOURNAL
Agile development methods have been catering the need of faster delivery of theever-demanding domain of software engineering. These methods are able to deliver value to users and businesses via fast, reliable, and repeatable process. Planning requirements and processes takes the driving seat in a dynamic environment because the value proposition rapidly changes. This paper exhibits asystematic literature review of planning processes implementedby various agile methods in order to find the best suited agile method in terms of robust planning. Keywords: It was found that Scrum is the best suited agile method for planning processes.
The presentation covers the overview of software metrics, its need, classification and important product metrics. It also explains GQM approach of metrics programme.
A Review and Analysis on Mobile Application Development Processes using Agile...IJORCS
Over a last decade, mobile telecommunication industry has observed a rapid growth, proved to be highly competitive, uncertain and dynamic environment. Besides its advancement, it has also raised number of questions and gained concern both in industry and research. The development process of mobile application differs from traditional softwares as the users expect same features similar to their desktop computer applications with additional mobile specific functionalities. Advanced mobile applications require assimilation with existing enterprise computing systems such as databases, legacy applications and Web services. In addition, the lifecycle of a mobile application moves much faster than that of a traditional Web application and therefore the lifecycle management associated therein must be adjusted accordingly. The Security and application testing are more stimulating and interesting in mobile application than in Web applications since the technology in mobile devices progresses rapidly and developers must stay in touch with the latest developments, news and trends in their area of work. With the rising competence of software market, researchers are seeking more flexible methods that can adjust to dynamic situations where software system requirements are changing over time, producing valuable software in short duration and within low budget. The intrinsic uncertainty and complexity in any software project therefore requires an iterative developmental plan to cope with uncertainty and a large number of unknown variables. Agile Methodologies were thus introduced to meet the new requirements of the software development companies. The agile methodologies aim at facilitating software development processes where changes are acceptable at any stage and provide a structure for highly collaborative software development. Therefore, the present paper aims in reviewing and analysing different prevalent methodologies utilizing agile techniques that are currently in use for the development of mobile applications. This paper provides a detailed review and analysis on the use of agile methodologies in the proposed processes associated with mobile application skills and highlights its benefit and constraints. In addition, based on this analysis, future research needs are identified and discussed.
Software Development Metrics You Can Count On Parasoft
When trying to analyze software quality today, we have a bewildering array of possible metrics. Some purport to be the one true answer. Which metrics mean what? Which ones can you trust? Which ones can be dangerous? Learn how to get the most out of your software metrics.
A lean model based outlook on cost & quality optimization in software projectsSonata Software
A large quantum of effort and research is being invested to address the Cost and Quality factors in software projects. Though the solutions, models and methodologies are well established through experimented processes, adoption and optimization of the required parameters for a specific project to obtain predictable and acceptable quality with minimum costs has always remained a challenge.
This paper discusses the Lean process in detail with the help of project data and demonstrates that simple, affordable and adoptable processes are more economical and focused on quality. Also, it is observed that the Lean Model enables a project to be well monitored and controlled by focusing on critical elements, thereby reducing overheads of bulky documentation and irrelevant processes. The above findings are statistically analyzed using the coefficient of variation, which strikes a direct correlation with the predictable quality in a project.
Metrics serve as important indicator of the efficiency and effectiveness of software process. Analysis of defined metrics helps identify area of improvement and devise subsequent actions.......Read more
Testability measurement model for object oriented design (tmmood)ijcsit
Measuring testability early in the development life cycle especially at design phase is a criterion of crucial importance to software designers, developers, quality controllers and practitioners. However, most of the
mechanism available for testability measurement may be used in the later phases of development life cycle.
Early estimation of testability, absolutely at design phase helps designers to improve their designs before
the coding starts. Practitioners regularly advocate that testability should be planned early in design phase.
Testability measurement early in design phase is greatly emphasized in this study; hence, considered significant for the delivery of quality software. As a result, it extensively reduces rework during and after implementation, as well as facilitate for design effective test plans, better project and resource planning in a practical manner, with a focus on the design phase. An effort has been put forth in this paper to recognize the key factors contributing in testability measurement at design phase. Additionally, testability
measurement model is developed to quantify software testability at design phase. Furthermore, the relationship of Testability with these factors has been tested and justified with the help of statistical measures. The developed model has been validated using experimental tryout. Finally, it incorporates the empirical validation of the testability measurement model as the author’s most important contribution.
Systematic review on evaluating planning process in agile development methodsTELKOMNIKA JOURNAL
Agile development methods have been catering the need of faster delivery of theever-demanding domain of software engineering. These methods are able to deliver value to users and businesses via fast, reliable, and repeatable process. Planning requirements and processes takes the driving seat in a dynamic environment because the value proposition rapidly changes. This paper exhibits asystematic literature review of planning processes implementedby various agile methods in order to find the best suited agile method in terms of robust planning. Keywords: It was found that Scrum is the best suited agile method for planning processes.
The presentation covers the overview of software metrics, its need, classification and important product metrics. It also explains GQM approach of metrics programme.
A Review and Analysis on Mobile Application Development Processes using Agile...IJORCS
Over a last decade, mobile telecommunication industry has observed a rapid growth, proved to be highly competitive, uncertain and dynamic environment. Besides its advancement, it has also raised number of questions and gained concern both in industry and research. The development process of mobile application differs from traditional softwares as the users expect same features similar to their desktop computer applications with additional mobile specific functionalities. Advanced mobile applications require assimilation with existing enterprise computing systems such as databases, legacy applications and Web services. In addition, the lifecycle of a mobile application moves much faster than that of a traditional Web application and therefore the lifecycle management associated therein must be adjusted accordingly. The Security and application testing are more stimulating and interesting in mobile application than in Web applications since the technology in mobile devices progresses rapidly and developers must stay in touch with the latest developments, news and trends in their area of work. With the rising competence of software market, researchers are seeking more flexible methods that can adjust to dynamic situations where software system requirements are changing over time, producing valuable software in short duration and within low budget. The intrinsic uncertainty and complexity in any software project therefore requires an iterative developmental plan to cope with uncertainty and a large number of unknown variables. Agile Methodologies were thus introduced to meet the new requirements of the software development companies. The agile methodologies aim at facilitating software development processes where changes are acceptable at any stage and provide a structure for highly collaborative software development. Therefore, the present paper aims in reviewing and analysing different prevalent methodologies utilizing agile techniques that are currently in use for the development of mobile applications. This paper provides a detailed review and analysis on the use of agile methodologies in the proposed processes associated with mobile application skills and highlights its benefit and constraints. In addition, based on this analysis, future research needs are identified and discussed.
Software Development Metrics You Can Count On Parasoft
When trying to analyze software quality today, we have a bewildering array of possible metrics. Some purport to be the one true answer. Which metrics mean what? Which ones can you trust? Which ones can be dangerous? Learn how to get the most out of your software metrics.
A lean model based outlook on cost & quality optimization in software projectsSonata Software
A large quantum of effort and research is being invested to address the Cost and Quality factors in software projects. Though the solutions, models and methodologies are well established through experimented processes, adoption and optimization of the required parameters for a specific project to obtain predictable and acceptable quality with minimum costs has always remained a challenge.
This paper discusses the Lean process in detail with the help of project data and demonstrates that simple, affordable and adoptable processes are more economical and focused on quality. Also, it is observed that the Lean Model enables a project to be well monitored and controlled by focusing on critical elements, thereby reducing overheads of bulky documentation and irrelevant processes. The above findings are statistically analyzed using the coefficient of variation, which strikes a direct correlation with the predictable quality in a project.
Metrics serve as important indicator of the efficiency and effectiveness of software process. Analysis of defined metrics helps identify area of improvement and devise subsequent actions.......Read more
Software metricsIntroduction
Attributes of Software Metrics
Activities of a Measurement Process
Types
Normalization of Metrics
Help software engineers to gain insight into the design and construction of the software
Activities of a Measurement Process
To answer this we need to know the size & complexity of the projects.
But if we normalize the measures, it is possible to compare the two
For normalization we have 2 ways-
Size-Oriented Metrics
Function Oriented Metrics
A study of various viewpoints and aspects software quality perspectiveeSAT Journals
Abstract The software quality is very important research of software engineering grown from the last two decades. The software engineering paradigm adopted by many organizations to develop the high quality software at affordable cost. The high quality software is considered as one of the key factor in the rapid growth of Global Software Development. The software metrics computes and evaluates the quality characteristics and used to take quantitative and qualitative decisions for risk assessment and reduction. The multiple stakeholders can view the software quality in multiple angles with various aspects. In this paper we present multiple views of the software quality with respect to various quality aspects. Key Words : Stakeholders, Functional aspect, Structural aspect, Process aspect, Metrics etc.
7.significance of software layered technology on size of projects (2)EditorJST
The objective of the software engineering is committed to build software projects within the budget, time and required quality. Software engineering is a layered paradigm comprised of process, methods, tools and quality focus as bedrock to develop the product. Software firms build software projects of varying sizes constrained on resources, time and functional requirement. Impact of software engineering layered technology may vary according to the size of the projects during their development. Quantitative evaluation of layer significance on size of the software project could be categorized as a complex task because it involves a collective decision on multiple criteria. Analytic Hierarchy Process (AHP) provides an effective quantitative approach for finding the significance of software layered technology on size of the projects. This paper presents the estimations through quantitative approach on real time data collected from several software firms. These findings help for a better project management with respect to the cost, time and resources during building a software project.
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdfTechSoup
In this webinar you will learn how your organization can access TechSoup's wide variety of product discount and donation programs. From hardware to software, we'll give you a tour of the tools available to help your nonprofit with productivity, collaboration, financial management, donor tracking, security, and more.
Honest Reviews of Tim Han LMA Course Program.pptxtimhan337
Personal development courses are widely available today, with each one promising life-changing outcomes. Tim Han’s Life Mastery Achievers (LMA) Course has drawn a lot of interest. In addition to offering my frank assessment of Success Insider’s LMA Course, this piece examines the course’s effects via a variety of Tim Han LMA course reviews and Success Insider comments.
Read| The latest issue of The Challenger is here! We are thrilled to announce that our school paper has qualified for the NATIONAL SCHOOLS PRESS CONFERENCE (NSPC) 2024. Thank you for your unwavering support and trust. Dive into the stories that made us stand out!
Embracing GenAI - A Strategic ImperativePeter Windle
Artificial Intelligence (AI) technologies such as Generative AI, Image Generators and Large Language Models have had a dramatic impact on teaching, learning and assessment over the past 18 months. The most immediate threat AI posed was to Academic Integrity with Higher Education Institutes (HEIs) focusing their efforts on combating the use of GenAI in assessment. Guidelines were developed for staff and students, policies put in place too. Innovative educators have forged paths in the use of Generative AI for teaching, learning and assessments leading to pockets of transformation springing up across HEIs, often with little or no top-down guidance, support or direction.
This Gasta posits a strategic approach to integrating AI into HEIs to prepare staff, students and the curriculum for an evolving world and workplace. We will highlight the advantages of working with these technologies beyond the realm of teaching, learning and assessment by considering prompt engineering skills, industry impact, curriculum changes, and the need for staff upskilling. In contrast, not engaging strategically with Generative AI poses risks, including falling behind peers, missed opportunities and failing to ensure our graduates remain employable. The rapid evolution of AI technologies necessitates a proactive and strategic approach if we are to remain relevant.
How to Make a Field invisible in Odoo 17Celine George
It is possible to hide or invisible some fields in odoo. Commonly using “invisible” attribute in the field definition to invisible the fields. This slide will show how to make a field invisible in odoo 17.
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...Levi Shapiro
Letter from the Congress of the United States regarding Anti-Semitism sent June 3rd to MIT President Sally Kornbluth, MIT Corp Chair, Mark Gorenberg
Dear Dr. Kornbluth and Mr. Gorenberg,
The US House of Representatives is deeply concerned by ongoing and pervasive acts of antisemitic
harassment and intimidation at the Massachusetts Institute of Technology (MIT). Failing to act decisively to ensure a safe learning environment for all students would be a grave dereliction of your responsibilities as President of MIT and Chair of the MIT Corporation.
This Congress will not stand idly by and allow an environment hostile to Jewish students to persist. The House believes that your institution is in violation of Title VI of the Civil Rights Act, and the inability or
unwillingness to rectify this violation through action requires accountability.
Postsecondary education is a unique opportunity for students to learn and have their ideas and beliefs challenged. However, universities receiving hundreds of millions of federal funds annually have denied
students that opportunity and have been hijacked to become venues for the promotion of terrorism, antisemitic harassment and intimidation, unlawful encampments, and in some cases, assaults and riots.
The House of Representatives will not countenance the use of federal funds to indoctrinate students into hateful, antisemitic, anti-American supporters of terrorism. Investigations into campus antisemitism by the Committee on Education and the Workforce and the Committee on Ways and Means have been expanded into a Congress-wide probe across all relevant jurisdictions to address this national crisis. The undersigned Committees will conduct oversight into the use of federal funds at MIT and its learning environment under authorities granted to each Committee.
• The Committee on Education and the Workforce has been investigating your institution since December 7, 2023. The Committee has broad jurisdiction over postsecondary education, including its compliance with Title VI of the Civil Rights Act, campus safety concerns over disruptions to the learning environment, and the awarding of federal student aid under the Higher Education Act.
• The Committee on Oversight and Accountability is investigating the sources of funding and other support flowing to groups espousing pro-Hamas propaganda and engaged in antisemitic harassment and intimidation of students. The Committee on Oversight and Accountability is the principal oversight committee of the US House of Representatives and has broad authority to investigate “any matter” at “any time” under House Rule X.
• The Committee on Ways and Means has been investigating several universities since November 15, 2023, when the Committee held a hearing entitled From Ivory Towers to Dark Corners: Investigating the Nexus Between Antisemitism, Tax-Exempt Universities, and Terror Financing. The Committee followed the hearing with letters to those institutions on January 10, 202
The French Revolution, which began in 1789, was a period of radical social and political upheaval in France. It marked the decline of absolute monarchies, the rise of secular and democratic republics, and the eventual rise of Napoleon Bonaparte. This revolutionary period is crucial in understanding the transition from feudalism to modernity in Europe.
For more information, visit-www.vavaclasses.com
The French Revolution Class 9 Study Material pdf free download
Bca 5th sem seminar(software measurements)
1. INFORMATICS & COMPUTATIONAL SCIENCE PROGRAMME
UNIVERSITY COLLEGE OF SCIENCE
MOHANLAL SUKHADIA UNIVERSITY
(NAAC Accredited A Grade University)
UDAIPUR-313001(INDIA)
YEAR- 2017-18
BCA- V semester
2. SUBMITTED TO : Dr. Pooja Shrimali Mam
SUBMITTED BY : Ankit malvi
TOPIC :
SOFTWARE PROCESS AND
PROJECT METRICS:-
MEASURE,METRICS AND
INDICATOR
4. SOFTWARE ENGINEERING
Software is more than just a program code. A program is an
executable code, which serves some computational purpose.
Software is considered to be collection of executable
programming code, associated libraries and documentations.
Software, when made for a specific requirement is called software
product.
Engineering on the other hand, is all about developing products,
using well-defined, scientific principles and methods.
5. SOFTWARE ENGINEERING
Software engineering is an engineering branch associated with
development of software product using well-defined scientific
principles, methods and procedures. The outcome of software
engineering is an efficient and reliable software product.
9. Measure
Measure is a quantitative indication of the extent,
amount, dimension, or size of some attribute of a
product or process.
10. Metrics
Metrics: The quantitative measure of the degree to which a
system, component, or process possesses a given attribute.
Relates several measures (e.g. average number of errors
found per person hour)
Direct Metrics: Immediately measurable attributes (e.g. line
of code, execution speed, defects reported)
Indirect Metrics: Aspects that are not immediately
quantifiable (e.g. functionality, quantity, reliability)
Example: length of a pipe is a direct measure.
the quality of the pipes can only be measured
indirectly by finding the ratio of the accepted pipes to the
rejected.
11. INDICATORS
Indicators is a combination of metrics that provides
insight into the software process, project or product
itself.
An indicator provides insight that enables the project
manager or software engineers to adjust the process, the
project, or the product to make things better.
12. Conclusion…
A software engineer collects measures and
develops metrics so that indicators will be
obtained.
13. Why do we measure?
To characterize
To evaluate
To predict
To improve
14. To characterize in an effort to gain an understanding “of
processes, products , resources and environment and to
establish baselines for comparisons with future
assessments.
To evaluate “to determine status with respect to plans”.
To predict by “gaining understandings of relationships
among processes and products and building models of
these relationships”.
To improve by “identify[ing] roadblocks, root causes,
inefficiencies and other opportunities for improving
product quality and process performance.
15. NEED OF METRICS
We take metrics for a variety of reasons :-
to measure the quality of a product
to assess the productivity of the people building the product
to assess the benefits (productivity and quality) of new
software tools
to form a baseline so we can estimate for new tools
to help justify requests for new tools or additional training
17. Process METRICS
Process Metrics:-
Are collected across all projects and over long periods of
time. Their intent is to provide a set of process indicator
that lead to long term software process improvement.
They are used for making strategic decisions.
The only way to know how/where to improve any process is
to:-
- measure specific attributes of the project.
- develop a set of meaningful metrics based on these
attributes.
- use the metrics to provide indicators that will lead to a
strategy for improvement.
19. PROCESS METRICS
Process at the center connecting 3 factors that
have a profound influence on software quality
and organizational performance.
Process triangle exists within a circle of
environmental conditions that include the
development environment, business conditions
and customer characteristics.
20. PROCESS METRICS
We measure the effectiveness of a software process by deriving
a set of metrics based on the outcomes of the process.
Outcomes include
measures of errors uncovered before release of the
software
defects delivered to and reported by end-users
work products delivered (productivity)
human effort expended
calendar time expended
schedule conformance
other measures.
21. PROCESS METRICS
Some process metrics are private metrics or public metrics.
Private metrics:
The Private metrics are those metrics which are collected by
individual software professionals. They are mostly used by any
software professional to get an insight regarding how is his
productivity or any other parameter of interests to him.
For example, a test engineer may keep ‘errors found in a week’ as a
private metric. Similarly, for a development engineer, ‘lines of code
written in a week’ could be a private metric of interests to him. Also,
an IT professional may keep ‘Number of new technology studied in
a month’ as a private metric.
22. PROCESS METRICS
Public metrics:
The public metrics has more meaning on a overall team basis.
The public metrics can be computed depending upon the private
metrics made public by the individual software professional. They
are more concerned with the project team rather than any individual
software professional.
The examples are, ‘Errors found per engineer-month’, ‘Lines of
code written per engineer-month’, etc.
23. SSPI
A more rigorous approach: Statistical software process improvement
helps an organization to discover where they are strong and where they
are weak.
statistical software process improvement (SSPI):
1. All errors and defects are categorized by origin (flaw in spec, flaw in
logic, nonconformance to standards).
2. The cost to correct each error and defect is recorded.
3. The number of errors and defects in each category is counted and
ranked in descending order.
4. The overall cost of errors and defects in each category is computed.
24. SSPI
5. Resultant data are analyzed to uncover the categories that result in
the highest cost to the organization.
6. Plans are developed to modify the process with the intent of
eliminating (or reducing the frequency of) the class of errors and
defects that is most costly.
25. PROJECT METRICS
Project metrics are used by a project manager and a software team to
adapt project work flow and technical activities.
Occurred during:
• estimation monitor and control progress.
• production rates: pages of documentation, review hours, function
points, and delivered source lines
• errors
• technical metrics quality
26. PROJECT METRICS
Project Metrics are the measures of Software Project and are used
to monitor and control the project.
Project Metrics enables a software project manager to :-
1) Assess the status of an ongoing project
2) Track potential risks.
3) Uncover problem areas before they go “Critical”
4) Adjust work flow or tasks
5) Evaluate the project team’s ability to control quality of software
work products.
27. PROJECT METRICS
The intent of project metrics are two folds: -
to minimize the development schedule by making the
adjustments necessary to avoid delays and mitigate potential
problems.
- to assess product quality on an ongoing basis and, when
necessary, modify the technical approach to improve quality.
28. PROJECT METRICS
project metrics suggests that every project should measure:-
• Inputs – measures of the resources required to do the work
• Outputs – measures of the deliverables or work products
created during the software engineering process
• Results – measures that indicate the effectiveness of the
deliverables
29. PROJECT METRICS
As quality improves, defects are minimized and as the defect
count goes down, the amount of rework required during the
project is also reduced.
This leads to a reduction in overall project cost.
30. Conclusion…
Process metrics have long-term impact.
Their intent is to improve the process itself.
Project metrics often contribute to the development of process
metrics.
31. Metrics
ETIQUETTE
(Guidelines)
Use common sense and organizational
sensitivity when interpreting metrics
data
Provide regular feedback to the
individuals and teams who have
worked to collect measures and
metrics.
Don’t use metrics to appraise
individuals
Work with practitioners and teams to
set clear goals and metrics that will be
used to achieve them
32. Metrics
ETIQUETTE
(Guidelines)
Never use metrics to threaten
individuals or teams
Metrics data that indicate a
problem area should not be
considered “negative.” These
data are merely an indicator for
process improvement
Don’t obsess on a single metric
to the exclusion of other
important metrics
33.
34. INFORMATICS & COMPUTATIONAL SCIENCE PROGRAMME
UNIVERSITY COLLEGE OF SCIENCE
MOHANLAL SUKHADIA UNIVERSITY
(NAAC Accredited A Grade University)
UDAIPUR-313001(INDIA)
YEAR- 2017-18
BCA- V semester
35. SUBMITTED TO : Dr. Pooja Shrimali Mam
SUBMITTED BY : Akanksha
TOPIC :
SOFTWARE PROCESS AND
PROJECT METRICS:-
SOFTWARE MEASUREMENT
38. SOFTWARE MEASUREMENT
Software measurement can be used by software
engineers to help assess the quality of work products
and to assist in tactical decision making as a project
proceeds.
Software measurement is a quantified attribute of a
characteristic of a software product or the software
process.
It is a discipline within software engineering.
39. Direct Measures are the one which are
measured directly from the software project
itself. In the software concern, they are line
of code (LOC), memory size, execution
speed etc.
Direct Measures Indirect Measures
The Indirect measures are not measured
directly, like complexity, reliability,
maintainability etc.
Type Of Measurement
40. An example
Two different project teams are working to record errors in a
software process
Team A – Finds 342 errors during software process before release
Team B- Finds 184 errors
All other things being equal….
Q. Which team do you think is more effective in finding errors?
…. Because you do not know the size or complexity of the projects,
you cannot answer this question….
41. But if we normalize the measures, it is possible to compare the
two by creating software metrics.
For normalization we have 2 ways-
~ Size-Oriented
~ Function Oriented Metrics
43. SIZE-ORIENTED METRICS
The size oriented metrics are those metrics, which are computed
keeping size of the software as main consideration.
Built on the past experiences of projects.
The size of the software are usually expressed in terms of KLOC (
Thousand Line Of Code ).
The table on the following slide gives various project data (
measures ) for three different projects executed over 3 successive
years.
Using those project data one can come out with different size
oriented metrics.
45. SIZE-ORIENTED METRICS
The four different metrics which can be computed from the previous table
are,:-
Errors per KLOC(thousand lines of code)
Defects per KLOC
Cost per KLOC and
Doc (documentation) per KLOC
In addition, other metrics:
Errors per person-month
LOC per person-month
$ per page of documentation
46. ADVANTAGES
Size-oriented metrics are not universally accepted as the best way to
measure the software process.
Proponents of the LOC measure claims that :-
LOC is an “artifact” of all software development projects that can
be easily counted
Many existing software estimation models use LOC or KLOC as a
key input.
A large body of literature and data based on LOC already exists
47. DISADVANTAGES
On the other hand, opponents argue that:-
Programming language-dependent
Well-designed, but shorter programs are penalized.
Does not easily accommodate non-procedural languages
Difficult to develop a figure for LOC early in the development
49. FUNCTION-ORIENTED METRICS
It use a measure of functionality delivered by the application as a
normalization value.
Since ‘functionality’ cannot be measured directly, it must be
derived indirectly using other direct measures
Function Point (FP) is widely used as function oriented metrics.
FP derived using an empirical relationship based on countable
(direct) measures of software’s information domain and
assessments of software complexity.
FP is based on characteristic of Software information domain and
complexity.
Like LOC measure, FP is controversial.
51. Software INFORMATION DOMAIN VALUES.
Number of user inputs: user inputs.
Number of user outputs: reports, screens, error messages, etc.
Number of user inquiries: an on-line input that generates an immediate on-
line output response.
Number of files: each logical (logical grouping of data) master file is
counted.
Number of external interfaces: all machine readable interfaces (e.g. data
files on some storage media) that are used to transmit information to
another system are counted.
53. RATE COMPLEXITY FACTORS
For each complexity adjustment factor (F), give a rating on a scale
of 0 to 5
0 - No influence
1 - Incidental
2 - Moderate
3 - Average
4 - Significant
5 - Essential
55. COMPLEXITY ADJUSTMENT FACTORS
1. Does the system require reliable backup and recovery?
2. Are data communications required?
3. Are there distributed processing functions?
4. Is performance critical?
5. System to be run in an existing, heavily utilized
environment?
6. Does the system require on-line data entry?
7. On-line entry requires input over multiple screens or
operations?
8. Are the master files updated on-line?
56. COMPLEXITY ADJUSTMENT FACTORS
9. Are the inputs, outputs, files, or inquiries complex?
10. Is the internal processing complex?
11. Is the code designed to be reusable?
12. Are conversion and instillation included in the design?
13. Multiple installations in different organizations?
14. Is the application designed to facilitate change and ease-of-
use?
58. EXAMPLE(QUESTION)
Compute the Function Point value for a project with the
following information
domain characteristics:
Number of Users Inputs = 24
Number of Users Outputs = 16
Number of Inquiries = 22
Number of Files = 4
Number of External Interfaces = 2
Assume , the complexity weighting factor is average. And the
various complexity Adjustment Values as:-
4,2,0,4,3,4,5,3,5,5.4,3,5,5
59. solution
To Compute Function Point, the following equation is used :
∑ Fi = F1 + F2 + F3 + _ _ _ _ _ _ _ + F14
= 4 + 2 + 0 + 4 +3 + 4 + 5 + 3 + 5 + 5 + 4 + 3 + 5 + 5
= 52
Complexity Adjustment Factor (CAF)
= 0.65 + 0.01 * ∑ ( Fi)
= 0.65 + 0.01 * 52
= 0.65 + 0.52
= 1.17
60. Function Point (FP) = Count_Total * Complexity Adjustment Factor
= 318 * 1.17
= 372.06
= 372
61. Example of Function-Oriented Metrics
Errors per FP
Defects per FP
$ (COST) per FP
Pages of documentation per FP
FP per person month
62. FORMULAS
Productivity = Function point / Effort
Total page of Documentation= Technical Document + User
Document
Documentation= page of Documentation / Function Point
Cost per function point = cost / productivity
63. Advantages
Proponents claims that:-
Programming language-independent
Ideal for applications using conventional and nonprocedural
languages.
Based on data which are known early in the evolution of a project
As an estimation approach : FP is more attractive.
64. DISADVANTAGES
Opponents claims that:-
Many computations are based on subjective rather than objective
data.
Function Points have no physical meaning… it’s just a number.
Counts of information domain can be difficult to collect after the
fact.
66. EXTENDED FUNCTION-POINT METRICS
Function point was inadequate for many engineering and
embedded systems.
The feature point metric counts a new software characteristic –
algorithms.
Another function point extension – developed by Boeing
integrate data dimension of software with functional and control
dimensions. “3D function point”.
“Counted, quantified, and transformed”
68. FEATURE POINT
A function point extension called feature points.
Feature point is a superset of the function point measure that can
be applied to systems and engineering software applications.
Accommodate applications in which algorithmic complexity is
high(like real time, process control and embedded systems are the
examples of its.)
69. Feature point
The Feature point metrics and their related aspects are shows in table. the
feature points is computed by using the following equations:
feature Point = Count_Total x [0.65 + 0.01 x (F )]
feature Point = Count_Total x (complexity adjustment factor)
i
complexity adjustment factor (CAF) = [0.65 x 0.01 F ]i
Fi represents the ‘complexity adjustment
values’, where i =1 to 14
70. Feature point
Feature Point matrices include, one more characteristic that is ‘Algorithm’.
An Algorithm is defined as-
Step by step process to solve a problem.
71. 3D Function point Metrics
Data Dimension Control DimensionFunctional Dimension
Three dimensions
72. 3D Feature point:-
Data Dimensions
The Data Dimension is evaluated similarly as the
function point is used. In this dimension, counts are
made for input, output, Inquire, external interfaces and
files.
73. 3D Feature point:-
Functional Dimensions
In the Functional Dimension, one or more characteristic.
Transformation is added into the characteristics of function points.
Transformation is the sequence of steps which transforms the input
and output.
74. 3D Feature point:-
CONTROL Dimensions
The Control Dimension adds one more characteristic, i.e.,
Transition and make it the total 7 characteristics.
This Dimension is measured by counting the total number of
transitions between states.
A State represents some externally observable mode of behavior and
a transmission occur as a result of some event that causes the
software or system to change its mode of behavior.
76. Complexity Weighted Value= Nil Wil + Nia Wia + Nih Wih
Nil , Nia, Nih represent
the number of
occurrence of element
i
Wil , Wia, Wih are
the corresponding
weights
77. 3D Feature point
Complexity Weighted Value= Nil Wil + Nia Wia + Nih Wih
Similarly F,E,O,Q,T and R can be find out.
Extended Function-oriented Metrics are also Programming
Language independent.