SlideShare a Scribd company logo
Quality and Productivity
Factors
Mrs. R. Nancy Beaulah MCA., M.Phil.,
Assistant Professor
Department of Computer Applications
V.V.Vanniaperumal College for Women
Virudhunagar
Quality and Productivity
Factors
 Development and Maintenance of
software products are complex tasks.
 It requires Technical and Managerial
skills.
 It’s Quality and Productivity depends
on the processes which develop and
maintain those software products.
 Some factors that influence quality
and productivity are:
1. Individual Ability
2. Team Communication
3. Product Complexity
4. Appropriate Notations
5. Systematic Approaches
6. Change Control
7. Level of Technology
8. Level of Reliability
9. Problem Understanding
10. Available Time
11. Required Skills
12. Facilities and Resources
13. Adequacy of Training
14. Management Skills
15. Appropriate Goals
16. Rising Expectations
17. Other Factors
Individual Ability
 Software Engineering is labor –intensive. So, its
Productivity and Quality needs ability and effort.
 There are two aspects to ability.
 The general competence of the individual
 Familiarity of the individual with the particular application
area.
 On very large and extremely large projects, the
no of programmers is so large that individual
differences in programmer productivity will be
average.
 But, small and medium size projects are
extremely sensitive to the ability of the individual
programmer.
 Lack of familiarity with the application area will
result in low Productivity and poor Quality.
Team Communication
 In general, programming is an individual and
private activity.
 But, in large projects, the programmers need
to discuss the exact details of their work.
 Sometimes, the programmers may
misunderstand their roles and commit
mistakes.
 So, the communication among the
programmers must be improved and it is a
goal of Software Engineering.
 If the product size increases, then the
complexity of interactions among program
components increases. As a result,
programmer productivity decreases.
Contd…
No of communication path among
programmers = ( n ( n - 1 ) ) / 2
Where, n – no of programmers.
If the no of team members is increased from 3 to 4 to 5,
then the no of communication paths also increased from 3
to 6 to 10.
Brooks Law:
Adding more programmers to a late
project may make it later.
Product Complexity
 There are three levels of Product Complexity.
◦ Application Programs
◦ Utility Programs
◦ System – level Programs
 Application Programs:
◦ It includes scientific and data processing routines written in a high level
language such as COBOL, FORTRON, C, C++.
◦ It has the highest productivity.
◦ It can be produced at a rate 25 to 100 times that of system programs.
 Utility Programs:
◦ It includes compliers, assemblers, linkage Editors and loaders.
◦ They may be written in high level language or assembly language.
◦ It can be produced at a rate 5 to 10 times that of system programs.
 System-level Programs:
◦ It includes data communications packages, real-time process control systems
and Operating systems routines.
◦ They may be written in high-level system language.
◦ They have the lowest Productivity.
Appropriate Notations
 Programming languages provide compact notations for
the implementation phase of Software development.
 Good notations clarify the relationships and interactions
of interest, whereas, poor notations complicate.
 Generally, programming languages provide concise
notations for implementation.
 But, there are no universally accepted notations in
Software Engineering.
 Appropriate notations provide vehicles of
communication among project personnel.
 It introduces the possibility of using automated software
tools to manipulate the notations and verify proper
usage.
Systematic Approaches
 In every field, there are certain
accepted procedures and techniques.
 A single approach to software
development and maintenance will not
be adequate to cover all situations.
 Therefore, either one or a combination
of the methods is followed to software
development and maintenance.
Change Control
 The flexibility of software is a great strength and
also a great source of difficulty in Software
Engineering.
 The requirements to change may occur due to
poor understanding of the problem, changes in
hardware or software environment, or external
economic or political factors.
 Notations and procedures provide the ability to
trace and assess the impact of proposed
changes.
 Use of appropriate notations and techniques
makes controlled change possible without
degrading the Quality of work products.
 Planning for a software project must include
plans for change control.
Level of Technology
 It includes factors such as,
 Programming language
 Machine environment
 The programming practices
 Software tools.
 In the programming language, the facilities for data
definition and data usage are improved.
 The machine environment includes a set of hardware
and software facilities available for developing, using
and maintaining a software product. Its stability and
availability has a strong influence on productivity and
Quality.
 Modern programming practices include use of
systematic analysis and design techniques, appropriate
notations, structured coding, systematic techniques for
examining design documents and source code and
systematic testing.
Level of Reliability
 Every software product must possess
basic level of reliability.
 Extreme Reliability is gained only with
great care in analysis, design,
implementation, testing and
maintenance of software product.
 But, extreme reliability results in low
productivity.
Problem Understanding
 It is a difficult issue that it fails to
understand the true nature of a problem
to be solved.
 The customer may not understand the
nature of the problem. The software
Engineers don’t understand the area of
the application.
 Careful planning, customer interviews,
task observations, prototyping, user’s
manual and precise product specification
can increase the problem understanding
of both customer and developer.
Available Time
 Software projects are sensitive to total
effort and also to elapse time and the no
of people involved.
 Instead of using 6 programmers for 1
month, it is effective to use only one
programmer for 6 months. This is
because the learning curve, co-
ordination and communication occupy a
large percentage of elapsed time.
 Staffing levels and elapsed times for a
software development play an important
and difficult role in cost and resource
Required Skills
 Software Engineering requires many
skills.
 For Programmers:
◦ Good Communication Skills
 Needed to extract information from Customer
 Important for gaining user needs and constraints.
◦ Knowledge about application area.
◦ Problem solving skills.
 To create requirement definition and design
activities.
◦ Concentrated attention
 To implement the software.
Contd…
 Development of a software is similar
to publishing a book.
◦ No spelling mistakes, No errors even
punctuation.
 Deductive Skills
◦ To debug the software
 Consideration of each and every
situation
◦ For Test Planning
 Destructive Skills
◦ For Stress testing
Contd…
 Good Writing Skills
◦ Preparation of external documents.
 Interpersonal Communication and oral
skills.
◦ Working with customers and developers.
 For Software Engineers:
◦ Social Skills
 To interact with managers, customers and other
engineers.
 There is no need that every software engineer
should have all the skills for a programmer.
 But all the skills must be present inside a
programming team.
 Project manager should assign work according to
the individual programmer skills.
Facilities and Resources
 Facilities that motivate programmers
◦ Work related factors (good machine
access)
◦ Quiet place to work
◦ Giving importance to the programmer
than the status related factors.
◦ Reserved parking areas.
◦ Keys to the executive rest rooms.
 Positive aspects always create
challenges and advancement to the
professional progress.
Contd…
 Negative aspects
◦ Inappropriate management
◦ Company’s policies
◦ Organization which has rigid and procedures,
policies and constraints.
 Programmers should receive
motivational rewards according to their
work.
 They will get easily frustrated with poor
facilities and inadequate resources.
 Software engineers should balance
between motivating and frustrating
factors.
Adequacy of Training
 Product implementation is one step in
software development.
 But most of the institution train only for
this.
 Only some of the institution alone offer
courses for analysis, design, testing
and so on.
 Such institution are small in number.
Contd…
 Lacking Skill in entry level
programmers:
◦ Express oneself clearly in English.
◦ Develop and validate software
requirements and design specification.
◦ Work with in application area.
◦ Perform software maintenance.
◦ Perform economic analyses.
◦ Work with management techniques.
◦ Work in groups.
Contd…
 Reasons for Lacking Skills:
◦ It is difficult to find out the exact reasons.
◦ There is major difference in education supply
and industrial demand.
◦ Most programmers are trained as computer
scientists not as software engineers.
◦ Computer Science education provides a
basic understanding of the underlying
theories and concepts.
◦ But software engineering requires analyzing,
designing, constructing, testing, verifying and
so on.
Management Skills
 Software projects are often managed
by the people who know little about
software engineering.
 Most of the software engineering
problems are unique.
 Managers who managed software
projects even find harder for managing
software projects.
 The activities of hardware projects and
software projects differ.
Contd…
 Mostly software engineer has to report
everything to a hardware engineer or
people who have little knowledge about
software.
 This is very unfortunate situation for both
of them.
 Promoting technically competent people
to manage software is also fails.
 Most of the time organization give
management training to software
engineers and promote them as software
engineers.
 But it is not always succeeded.
Appropriate goals
 Goal of software engineering is
development of software products
appropriate for their intended use.
 Commonly, every software product
must posses certain level of
generality, efficiency and reliability.
 Excessive effort sometimes make it
difficult for programmers.
 So the trade off is achieving goals in
project planning.
Rising Expectations
 Main problem in software engineering is
rising expectations.
 Development of tools and techniques
improve software quality and
productivity.
 But diversity, size and complexity of the
software increases faster than the
demand.
 Vast technological improvement in
hardware technology also increases the
expectation towards software technology
Contd…
 This increases pressure to the
software engineers.
 Currently we are unable to satisfy the
demand for software product.
 We are clear about the reasons.
◦ May be nature of the software.
◦ Human problem solving capabilities.
◦ Immaturity of Software engineering
discipline.
 Convinced that systematic techniques
will some what improve the product
Other Factors
 Other factors that affect programmer’s
productivity are
◦ Familiarity with the application area.
◦ Stability of the computing system used to
develop and modify the software.
◦ Memory and timing constraints of the
software product.
◦ Experience with the programming
language.
◦ Data base size.
Reference:
Software Engineering Concepts,
Richard Fairley, Tata McGraw Hill
Edition.

More Related Content

PPTX
Fundamental design concepts
PPTX
Chapter 1 2 - some size factors
PPTX
software cost factor
PPTX
Software Cost Estimation Techniques
PPTX
Design notation
PPTX
Phased life cycle model
PPTX
Designing Techniques in Software Engineering
PPTX
Staffing level estimation
Fundamental design concepts
Chapter 1 2 - some size factors
software cost factor
Software Cost Estimation Techniques
Design notation
Phased life cycle model
Designing Techniques in Software Engineering
Staffing level estimation

What's hot (20)

PPTX
Planning the development process
PPTX
Software Engineering
PDF
Programming team structure
PPTX
Language and Processors for Requirements Specification
PPTX
Estimating Software Maintenance Costs
PPTX
Software requirements specification
PPTX
unit testing and debugging
PPTX
Software Engineering
PPTX
Software project planning
PPTX
Cohesion and coupling
PPTX
Modules and modularization criteria
PPTX
source code metrics and other maintenance tools and techniques
PDF
Software Engineering : Requirement Analysis & Specification
PPTX
Defining the Problem - Goals and requirements
PDF
Software Cost Estimation Techniques
PPTX
Evolving role of Software
PPTX
Design techniques
PPT
Coupling and cohesion
PPTX
Software project management- Software Engineering
PPT
1.1 The nature of software.ppt
Planning the development process
Software Engineering
Programming team structure
Language and Processors for Requirements Specification
Estimating Software Maintenance Costs
Software requirements specification
unit testing and debugging
Software Engineering
Software project planning
Cohesion and coupling
Modules and modularization criteria
source code metrics and other maintenance tools and techniques
Software Engineering : Requirement Analysis & Specification
Defining the Problem - Goals and requirements
Software Cost Estimation Techniques
Evolving role of Software
Design techniques
Coupling and cohesion
Software project management- Software Engineering
1.1 The nature of software.ppt
Ad

Similar to Quality and productivity factors (20)

PPTX
Quality and Productivity Factors in Software Engineering
PPTX
PPT
Software Testing and Quality Management Subject
PPTX
UNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptx
PPT
Chapter1 Advanced Software Engineering overview
PPTX
Unit i FUNDAMENTALS OF SOFTWARE ENGINEERING
PPTX
Software engineering ppt it will be useful for the people
PPT
Chapter_2453334567784467889999643325hg.ppt
PPTX
aswjkdwelhjdfshlfjkhewljhfljawerhwjarhwjkahrjar
PPT
Project Management concepts explained.ppt
PPT
Software engineering
PPT
Software engineering introduction
PPTX
UNIT 1 - MPP.pptxdfvvnfuvbrrujfvbvndvnbn
PPTX
Unit 1 Software Engineering and Development Models .pptx
PPTX
intro.pptx
PDF
Introduction to software engineering
PPT
1. Introduction
PPT
Introduction To Software Engineering
PPTX
Chapter 1 1 - intro ppt
Quality and Productivity Factors in Software Engineering
Software Testing and Quality Management Subject
UNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptx
Chapter1 Advanced Software Engineering overview
Unit i FUNDAMENTALS OF SOFTWARE ENGINEERING
Software engineering ppt it will be useful for the people
Chapter_2453334567784467889999643325hg.ppt
aswjkdwelhjdfshlfjkhewljhfljawerhwjarhwjkahrjar
Project Management concepts explained.ppt
Software engineering
Software engineering introduction
UNIT 1 - MPP.pptxdfvvnfuvbrrujfvbvndvnbn
Unit 1 Software Engineering and Development Models .pptx
intro.pptx
Introduction to software engineering
1. Introduction
Introduction To Software Engineering
Chapter 1 1 - intro ppt
Ad

More from NancyBeaulah_R (9)

PDF
Addressing Modes
PPTX
Common Bus System.pptx
PPTX
Computer Registers.pptx
PPTX
Machine Learning.pptx
PDF
Associative memory
PDF
Memory hierarchy
PDF
Asynchronous data transfer
PPTX
Software maintenance
PPTX
Walkthroughs
Addressing Modes
Common Bus System.pptx
Computer Registers.pptx
Machine Learning.pptx
Associative memory
Memory hierarchy
Asynchronous data transfer
Software maintenance
Walkthroughs

Recently uploaded (20)

PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
System and Network Administraation Chapter 3
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PPTX
ManageIQ - Sprint 268 Review - Slide Deck
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
How Creative Agencies Leverage Project Management Software.pdf
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PPTX
Odoo POS Development Services by CandidRoot Solutions
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
Wondershare Filmora 15 Crack With Activation Key [2025
How to Migrate SBCGlobal Email to Yahoo Easily
System and Network Administraation Chapter 3
Which alternative to Crystal Reports is best for small or large businesses.pdf
ManageIQ - Sprint 268 Review - Slide Deck
Operating system designcfffgfgggggggvggggggggg
How Creative Agencies Leverage Project Management Software.pdf
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Odoo Companies in India – Driving Business Transformation.pdf
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
2025 Textile ERP Trends: SAP, Odoo & Oracle
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Odoo POS Development Services by CandidRoot Solutions
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Design an Analysis of Algorithms II-SECS-1021-03
Upgrade and Innovation Strategies for SAP ERP Customers
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus

Quality and productivity factors

  • 1. Quality and Productivity Factors Mrs. R. Nancy Beaulah MCA., M.Phil., Assistant Professor Department of Computer Applications V.V.Vanniaperumal College for Women Virudhunagar
  • 2. Quality and Productivity Factors  Development and Maintenance of software products are complex tasks.  It requires Technical and Managerial skills.  It’s Quality and Productivity depends on the processes which develop and maintain those software products.  Some factors that influence quality and productivity are:
  • 3. 1. Individual Ability 2. Team Communication 3. Product Complexity 4. Appropriate Notations 5. Systematic Approaches 6. Change Control 7. Level of Technology 8. Level of Reliability 9. Problem Understanding 10. Available Time 11. Required Skills 12. Facilities and Resources 13. Adequacy of Training 14. Management Skills 15. Appropriate Goals 16. Rising Expectations 17. Other Factors
  • 4. Individual Ability  Software Engineering is labor –intensive. So, its Productivity and Quality needs ability and effort.  There are two aspects to ability.  The general competence of the individual  Familiarity of the individual with the particular application area.  On very large and extremely large projects, the no of programmers is so large that individual differences in programmer productivity will be average.  But, small and medium size projects are extremely sensitive to the ability of the individual programmer.  Lack of familiarity with the application area will result in low Productivity and poor Quality.
  • 5. Team Communication  In general, programming is an individual and private activity.  But, in large projects, the programmers need to discuss the exact details of their work.  Sometimes, the programmers may misunderstand their roles and commit mistakes.  So, the communication among the programmers must be improved and it is a goal of Software Engineering.  If the product size increases, then the complexity of interactions among program components increases. As a result, programmer productivity decreases.
  • 6. Contd… No of communication path among programmers = ( n ( n - 1 ) ) / 2 Where, n – no of programmers. If the no of team members is increased from 3 to 4 to 5, then the no of communication paths also increased from 3 to 6 to 10. Brooks Law: Adding more programmers to a late project may make it later.
  • 7. Product Complexity  There are three levels of Product Complexity. ◦ Application Programs ◦ Utility Programs ◦ System – level Programs  Application Programs: ◦ It includes scientific and data processing routines written in a high level language such as COBOL, FORTRON, C, C++. ◦ It has the highest productivity. ◦ It can be produced at a rate 25 to 100 times that of system programs.  Utility Programs: ◦ It includes compliers, assemblers, linkage Editors and loaders. ◦ They may be written in high level language or assembly language. ◦ It can be produced at a rate 5 to 10 times that of system programs.  System-level Programs: ◦ It includes data communications packages, real-time process control systems and Operating systems routines. ◦ They may be written in high-level system language. ◦ They have the lowest Productivity.
  • 8. Appropriate Notations  Programming languages provide compact notations for the implementation phase of Software development.  Good notations clarify the relationships and interactions of interest, whereas, poor notations complicate.  Generally, programming languages provide concise notations for implementation.  But, there are no universally accepted notations in Software Engineering.  Appropriate notations provide vehicles of communication among project personnel.  It introduces the possibility of using automated software tools to manipulate the notations and verify proper usage.
  • 9. Systematic Approaches  In every field, there are certain accepted procedures and techniques.  A single approach to software development and maintenance will not be adequate to cover all situations.  Therefore, either one or a combination of the methods is followed to software development and maintenance.
  • 10. Change Control  The flexibility of software is a great strength and also a great source of difficulty in Software Engineering.  The requirements to change may occur due to poor understanding of the problem, changes in hardware or software environment, or external economic or political factors.  Notations and procedures provide the ability to trace and assess the impact of proposed changes.  Use of appropriate notations and techniques makes controlled change possible without degrading the Quality of work products.  Planning for a software project must include plans for change control.
  • 11. Level of Technology  It includes factors such as,  Programming language  Machine environment  The programming practices  Software tools.  In the programming language, the facilities for data definition and data usage are improved.  The machine environment includes a set of hardware and software facilities available for developing, using and maintaining a software product. Its stability and availability has a strong influence on productivity and Quality.  Modern programming practices include use of systematic analysis and design techniques, appropriate notations, structured coding, systematic techniques for examining design documents and source code and systematic testing.
  • 12. Level of Reliability  Every software product must possess basic level of reliability.  Extreme Reliability is gained only with great care in analysis, design, implementation, testing and maintenance of software product.  But, extreme reliability results in low productivity.
  • 13. Problem Understanding  It is a difficult issue that it fails to understand the true nature of a problem to be solved.  The customer may not understand the nature of the problem. The software Engineers don’t understand the area of the application.  Careful planning, customer interviews, task observations, prototyping, user’s manual and precise product specification can increase the problem understanding of both customer and developer.
  • 14. Available Time  Software projects are sensitive to total effort and also to elapse time and the no of people involved.  Instead of using 6 programmers for 1 month, it is effective to use only one programmer for 6 months. This is because the learning curve, co- ordination and communication occupy a large percentage of elapsed time.  Staffing levels and elapsed times for a software development play an important and difficult role in cost and resource
  • 15. Required Skills  Software Engineering requires many skills.  For Programmers: ◦ Good Communication Skills  Needed to extract information from Customer  Important for gaining user needs and constraints. ◦ Knowledge about application area. ◦ Problem solving skills.  To create requirement definition and design activities. ◦ Concentrated attention  To implement the software.
  • 16. Contd…  Development of a software is similar to publishing a book. ◦ No spelling mistakes, No errors even punctuation.  Deductive Skills ◦ To debug the software  Consideration of each and every situation ◦ For Test Planning  Destructive Skills ◦ For Stress testing
  • 17. Contd…  Good Writing Skills ◦ Preparation of external documents.  Interpersonal Communication and oral skills. ◦ Working with customers and developers.  For Software Engineers: ◦ Social Skills  To interact with managers, customers and other engineers.  There is no need that every software engineer should have all the skills for a programmer.  But all the skills must be present inside a programming team.  Project manager should assign work according to the individual programmer skills.
  • 18. Facilities and Resources  Facilities that motivate programmers ◦ Work related factors (good machine access) ◦ Quiet place to work ◦ Giving importance to the programmer than the status related factors. ◦ Reserved parking areas. ◦ Keys to the executive rest rooms.  Positive aspects always create challenges and advancement to the professional progress.
  • 19. Contd…  Negative aspects ◦ Inappropriate management ◦ Company’s policies ◦ Organization which has rigid and procedures, policies and constraints.  Programmers should receive motivational rewards according to their work.  They will get easily frustrated with poor facilities and inadequate resources.  Software engineers should balance between motivating and frustrating factors.
  • 20. Adequacy of Training  Product implementation is one step in software development.  But most of the institution train only for this.  Only some of the institution alone offer courses for analysis, design, testing and so on.  Such institution are small in number.
  • 21. Contd…  Lacking Skill in entry level programmers: ◦ Express oneself clearly in English. ◦ Develop and validate software requirements and design specification. ◦ Work with in application area. ◦ Perform software maintenance. ◦ Perform economic analyses. ◦ Work with management techniques. ◦ Work in groups.
  • 22. Contd…  Reasons for Lacking Skills: ◦ It is difficult to find out the exact reasons. ◦ There is major difference in education supply and industrial demand. ◦ Most programmers are trained as computer scientists not as software engineers. ◦ Computer Science education provides a basic understanding of the underlying theories and concepts. ◦ But software engineering requires analyzing, designing, constructing, testing, verifying and so on.
  • 23. Management Skills  Software projects are often managed by the people who know little about software engineering.  Most of the software engineering problems are unique.  Managers who managed software projects even find harder for managing software projects.  The activities of hardware projects and software projects differ.
  • 24. Contd…  Mostly software engineer has to report everything to a hardware engineer or people who have little knowledge about software.  This is very unfortunate situation for both of them.  Promoting technically competent people to manage software is also fails.  Most of the time organization give management training to software engineers and promote them as software engineers.  But it is not always succeeded.
  • 25. Appropriate goals  Goal of software engineering is development of software products appropriate for their intended use.  Commonly, every software product must posses certain level of generality, efficiency and reliability.  Excessive effort sometimes make it difficult for programmers.  So the trade off is achieving goals in project planning.
  • 26. Rising Expectations  Main problem in software engineering is rising expectations.  Development of tools and techniques improve software quality and productivity.  But diversity, size and complexity of the software increases faster than the demand.  Vast technological improvement in hardware technology also increases the expectation towards software technology
  • 27. Contd…  This increases pressure to the software engineers.  Currently we are unable to satisfy the demand for software product.  We are clear about the reasons. ◦ May be nature of the software. ◦ Human problem solving capabilities. ◦ Immaturity of Software engineering discipline.  Convinced that systematic techniques will some what improve the product
  • 28. Other Factors  Other factors that affect programmer’s productivity are ◦ Familiarity with the application area. ◦ Stability of the computing system used to develop and modify the software. ◦ Memory and timing constraints of the software product. ◦ Experience with the programming language. ◦ Data base size.
  • 29. Reference: Software Engineering Concepts, Richard Fairley, Tata McGraw Hill Edition.