International Journal of Scientific & Engineering Research, Volume 6, Issue 2, February-2015 1333 ISSN 2229-5518 IJSER © 2015 http://www.ijser.org Software development productivity impact from an industrial perspective Samer I. Mohamed Abstract—Software development productivity is one of the major and vital aspects that impacts software industry and time to market of many software products. Although many studies have been conducted to improve the productivity measurements within software engineering research domain, productivity is still an issue in current software development industry because not all impacting factors and their relationships are known. This paper sheds a light on some of these factors and assesses their impacts as seen by random sample of industrial software SMEs. It also elaborates the main best practices that help in improve the software productivity based on real industrial projects. The resulting list of factors and best practices can be utilized to guide further productivity analysis and taken as basis for building improved and more optimized productivity models. Paper identifies the productivity measurements challenges and recommend set of metrics that can be utilized as basis for productivity estimation models Index Terms— Software productivity, Volatility, Technical factors, non-technical factors, Best practices, SMEs, SMART requirements, software metric. —————————— —————————— 1 INTRODUCTION oftware development industry nowadays becomes one of the main industries that contributes on the evolution of the computer-based systems. Many organizations currently investing huge amount of money to improve their productivi- ty and time to market to gain larger market share and increase their operational margin. Productivity in software develop- ment has been an important research area for several decades now where successful organizations focus their R&D to im- prove. There are many different measures for software productivity within the literature. The most common and traditional ap- proaches are the lines-of-code (LOC) and function points (FP), i.e., the amount of LOC or FP produced per hour by a devel- oper [11]. Based on this, there is a large amount of studies on various aspects of productivity. The two mentioned measures and several more dimensions have been analyzed and detailed within the literature. Our contribution through this paper, is the introduction of a balanced and mixed approach for both the industrial and the- oretical perspectives of those factors that impact the software productivity. Although the software engineering literature in that area often has a strong emphasis on mainly technical fac- tors such as the software size or the product complexity. How- ever, there are other non-technical factors that impact software productivity as has been proved by Brodbeck [1] who has shown that more than a third of the time a typical software developer is not concerned with technical work. A productivity measure commonly is understood as a ratio of outputs produced to resources consumed. Experience shows that no single productivity measure applies in all situations for all purposes. Instead, organizations must craft productivity measures appropriate to their processes and information needs. In addition to the wide range of possible inputs and outputs to be measured, the interpretation of the resulting productivity measures may be affected by other factors such as requirements changes and quality at delivery. There are different standards for productivity measurements like IEEE 1045 standard which describes the calculation of productivity in terms of effort combined with counts of lines of code or function points. Besides ISO/IEC 15939 standard which is the basis for the Measurement and Analysis Process Area of the Capability Maturity Model – Integration. Challenges around the productivity measurements arise be- cause productivity may vary across the organization itself due to changes and dynamics within project itself with respect to other running projects. Besides the factors that impacting the different projects are themselves different with different na- tures. The paper is organized as follows: section II gives a back- ground for the early studies done on software productivity as a concept; section III introduces the case study targeted by this paper; where case study description, details, results, and rec- ommendations are detailed; section IV is the conclusion of this study. 2 BACKGROUND Software development is a great expense for most organiza- tions, thus, software development productivity can have a significant impact on the organization’s ability to compete and survive. Currently, most software development organizations are not optimized. There is an increasing demand for software especially for embedded systems. However, without im- proved efficiency, it will be difficult to take advantage of these opportunities in a cost-effective manner. Tools will not be the only facility to succeed; but a need for a process that ensures quality software can be produced consist- ently and efficiently has an important effect. Like the various automobile manufacturers, different development organiza- tions today typically have access to roughly the same produc- S IJSER