the state of the practice Variations in Software Development Practices

Size: px
Start display at page:

Download "the state of the practice Variations in Software Development Practices"

Transcription

1 focus the state of the practice invited article Variations in Software Development Practices Capers Jones, Software Productivity Research My colleagues and I at Software Productivity Research gathered data on approximately 12,000 software projects between 1984 and We did this primarily to perform assessments and benchmark studies on software development quality and productivity. Part of the data includes descriptions of each project s software development practices. We also collected information on software development activities, tools, programming languages, and specialized personnel on projects. To more easily analyze this large volume of information, we separated software projects into distinct categories that share a nucleus of common development methods and personnel. Size and type of software applications are the two major categories we used. 1 In our analysis, we used a list of 25 standard software development activities, checking off which of these activities were included in the projects we examined. Of course, such a general checklist isn t perfect. We often encounter activities that are either not on the list Research on over 18 years of software projects reveals that developing large systems involves substantially more activities and a greater variety of specialized personnel than developing smaller systems. or performed infrequently. We also recorded which occupation groups are associated with software development. I use a shortened list of occupations in this article these 30 are the most commonly noted software occupations in the US. Categorizing software applications Although size is somewhat ambiguous in the literature, we found that function point metrics 2 4 rather than lines-of-code metrics provide a useful framework. To analyze software development practices, we divide projects into six size plateaus, each an order of magnitude apart: 1, 10, 100, 1,000, 10,000, and 100,000 function points. Software projects measuring less than 100 function points are usually enhancements to older, larger applications. Major new software 22 IEEE SOFTWARE Published by the IEEE Computer Society /03/$ IEEE

2 applications for business purposes most often measure between 10,000 and 100,000 function points. For example, both the Microsoft Windows and IBM MVS operating systems are roughly 100,000 function points. Many business and technical software applications such as accounting systems and telephone switching systems are between 10,000 and 100,000 function points. We define type by placing applications into families that share common constraints and development methods. For convenience, we identified six major software types for our studies: Military. These applications are built according to military or US Department of Defense standards. Although weapons systems come to mind as a primary form of military software, the category is actually much broader. For example, logistics and support software applications and even those for payroll and accounting use military standards. Systems. These applications control hardware devices such as computers, aircraft, telephone switches, and other physical devices and products. This type also includes software that s embedded in hardware devices, such as software that controls car fuel-injection systems or some manufacturing robots. Commercial. Developers build these applications for lease or sale to external customers. This category includes many personal computer applications such as word processing and spreadsheet programs. It also includes larger mainframe applications such as enterprise resource-planning packages. Outsourced. This category includes applications that one or several companies build for a specific client company under a contract. Because of contractual obligations and the possibility of litigation, outsourced projects have some additional activities in comparison to in-house development. For example, outsourced projects might include special requirements for handling scope changes or new requirements, special accounting and tracking requirements, and special protocols for dealing with errors or bugs. Management information systems (MIS). Companies and government agencies build these applications to control major business functions such as accounting, marketing, sales, and personnel. This category includes many traditional mainframe applications such as accounting systems, orderentry systems, payroll applications, and sales-support applications. It also includes the more recent client-server and Webbased applications. End-user development. This category refers to small applications that various kinds of knowledge workers such as accountants, engineers, or project managers build for personal use. I won t discuss this application type in depth because the developers aren t full-time software personnel. Variations and application size In many industries, building large products isn t the same as building small products. Consider the differences in specialization and methods that building a rowboat versus building an 80,000-ton cruise ship requires. One person can construct a rowboat using only hand tools. But a large, modern cruise ship requires over 250 workers, including specialists such as pipe fitters, electricians, steel workers, painters, and even interior decorators. Software follows a similar pattern: Building a large system in the 10, ,000 function point range is basically equivalent to building large structures such as ships, office buildings, and bridges. Such a project uses many kinds of specialists for extensive development activities. We compare the development activities included in software projects from the six different size plateaus in Table 1. Projects below the 1,000-function point plateau (roughly equivalent to 100,000 source code statements in a procedural language such as Cobol include less than half of the activities. However, large systems in the 10, ,000 function point range perform more than 20 of these activities. When we examine the occupations associated with software projects, we find that large systems use many more kinds of specialists than small projects. We list the occupation groups noted by project size in Table 2. From Tables 1 and 2, we can conclude that size strongly influences development activities and the need for specialized personnel. Generalists usually develop small projects using informal development methods. It usually takes Generalists usually develop small projects using informal development methods. November/December 2003 IEEE SOFTWARE 23

3 Table 1 Development activities for six project size plateaus and types No. of function points Project types Activity ,000 10, ,000 End user MIS Outsourced Commercial Systems Military Requirements Prototyping Architecture Project plans Initial design Detail design Design reviews Coding Reuse acquisition Package purchase Code inspections Independent verification & validation Change control Formal integration User documentation Unit testing Function testing Integration testing System testing Beta testing Acceptance testing Independent testing Quality assurance Installation & training Project management Total no. of activities teams of specialized personnel using much more complicated methodologies to develop large systems. Variations and types of software The second factor that influences software development practices is the type of software being constructed. For example, the methods for building military software are very different from civilian norms. 5 The systems and commercial software domains also have fairly complex development activities compared to MIS activities, such as formal specification methods and highly formal quality-assurance and defect-tracking protocols. The outsource domain, due to contractual requirements, also uses a fairly extensive set of development activities. Table 1 notes the differences in development activities across the six types of software we studied. The activities for outsourced, commercial, systems, and military software are somewhat more numerous than for MIS projects where development processes are often somewhat rudimentary. Software type also significantly impacts the personnel and kinds of specialists involved in systems development. Overall, the systems and military domains tend to employ the most specialists, followed closely by the commercial domain. The MIS domain is more likely to use generalists who perform analysis, design, coding, and testing tasks. Table 2 shows the kinds of occupation groups that we have noted across the six project types. It shows that commercial, systems, and military software require more specialized occupation groups than MIS and outsourced projects. It s interesting that companies building systems and military software are more than twice as likely to have formal QA departments and testing specialists than companies building MIS software, as we ve seen in our studies. We might attribute this to the fact that companies building complex physical devices have used QA departments since before computers even existed. When computers and software became part of the product, they naturally applied historical QA roles to software as well. 24 IEEE SOFTWARE

4 Table 2 Occupation groups for six project size plateaus and types No. of function points Project types Occupation ,000 10, ,000 End user MIS Outsourced Commercial Systems Military Architects Configuration control Cost analysis Cost estimating Customer support Data administration Data base design Data quality Education & training Function point analysis Globalization Graphics Human factors Integration Librarians Metrics & measures Networks Performance analysis Programming Project management Project planning Quality assurance Reliability Reusability Security Software engineering Standards Systems analysis Technical writers Testing Total no. of occupation groups Overall software development observations After examining more than 12,000 projects, we can categorically state that no single development method is universally deployed. All software projects need forms of requirements gathering, design, development or coding, and defect removal, such as reviews, inspections, and testing. But the methods for handling these generic activities aren t uniform. In the projects we examined, we noted over 40 methods for gathering requirements, over 50 variations in handling software design, over 700 programming languages, and over 30 forms of testing. We find some of the most interesting similarities associated with software classes. Apparently because of tradition, people building software projects within the same class tend to build them similarly. Here we present the more interesting class-related findings. Military Before 1994, military software development was unique and specialized due to stringent military standards that controlled almost every aspect of software design and development. In 1994, the US Department of Defense began the move to civilian best practices, which is still ongoing even in The US Air Force software journal Crosstalk, published by the Software Technology Support Center, is a good source of information on the evolution of military and defense software practices. The military standards seemed to be based on a lack of trust between vendors and the military services. As a result, military projects had elaborate oversight criteria and extensive tracking and documentation requirements. For example, the volume of military requirements, specifications, and planning documents was two to three times larger than civilian November/December 2003 IEEE SOFTWARE 25

5 The commercial software world does have one fairly unique quality approach: external testing by dozens or even hundreds of customers. projects of the same size. More than half the cost of building large defense projects went to the production of English words. About 400 words were written for every line of Ada code in typical military applications. The military community has been fairly successful in building large and complex applications such as weapons systems. However, productivity rates are far lower than civilian norms. In recent years, the military domain started using the Capability Maturity Model created by Watts Humphrey and his colleagues at the Software Engineering Institute. 6 Many more military than civilian projects use the CMM, which is why military projects use both specialists and extensive sets of development activities. Military projects are roughly equal to civilian systems software in defect removal efficiency often with a 95 percent defect removal rate or better. However, military projects use two additional defect removal steps that civilian projects seldom use: independent verification and validation and independent testing. Some defense projects have used as many as 16 different kinds of testing more than any civilian project we examined. Systems Because systems software controls complicated and expensive physical devices such as computers, aircraft, and telephone systems, quality is a key factor. The systems and embedded software projects we looked at were more likely to use formal QA departments and testing departments staffed by full-time test personnel. The systems software community is also most likely to use formal design and code inspections and deploy thorough quality measurement systems. The systems software community has the highest defect removal efficiency levels. It s the only type to average over 95 percent in finding and removing bugs or defects prior to release. This is due in part to the use of reviews, inspections, and six to 12 different kinds of testing activities on major projects. Commercial The commercial software world, headed by Microsoft and including other vendors such as SAP, IBM, and Computer Associates, is fairly strong in change control, customer support, documentation, training, and globalization. However, commercial software lags behind systems software in quality-control methodologies. The commercial world isn t as likely to use pretest design reviews and code inspections. Neither is it as likely to use formal QA teams or have rigorous quality measurement systems during development. On the other hand, measurements of customer-reported complaints and defects after release are fairly good. We re not saying that all commercial vendors have poor quality control. IBM, for example, has long led the world in quality control; it was the first company known to measure defect removal efficiency and the first to top 95 percent. But we examined software from more than 25 vendors, and the overall quality results aren t as good as they should be, only averaging around 90 percent in defect removal efficiency. The commercial software world does have one fairly unique quality approach: external testing by dozens or even hundreds of customers. Known as beta testing, the commercial world has been using this method since the 1960s. (Systems software and some military projects also use beta testing.) Overall, defect removal efficiency in the commercial world is lower than the systems and military communities. Outsourced The outsource community includes major companies such as Electronic Data Systems, Computer Sciences Corporation, Accenture, IBM, Lockheed, and more. This community is a bit more sophisticated than the MIS community, which constitutes the main client base for outsourcers. The outsource community is likely to use formal planning and change control methods. Outsourcers also widely deploy requirements gathering and analysis using joint application design (JAD). This isn t surprising because requirements changes usually lead to cost increases and design and code changes. The outsource community is fairly good in quality control and quality measurements. Outsourcers aren t as good as the systems community in quality but better than the MIS community. This is because outsourcers often use design reviews, code inspections, and testing specialists. Defect removal efficiency in the outsource world runs 90 to 94 percent. Management information systems By looking at the results of in-house development projects, it s easy to see why so many companies such as banks and insurance 26 IEEE SOFTWARE

6 companies consider outsourcing. The MIS community is very backwards in quality control. It s less likely than most to use formal design reviews and code inspections, formal QA groups, or testing specialists. Quality in the MIS world depends on fairly rudimentary testing, which the developers carry out themselves. MIS projects averaged about 85 percent defect removal efficiency for many years. Unfortunately, client-server projects and Webbased applications are often even lower, sometimes dipping below 80 percent. The good news for the MIS community is that requirements gathering and analysis using JAD is both common and fairly successful. Even so, the measured rate at which requirements change can top 2 percent per calendar month during development. Interestingly, this community is better than average in productivity measurements. It pioneered the use of function point metrics for productivity studies and is more likely than any other group to employ certified functionpoint counting personnel. The MIS domain has more productivity data using functionpoints collected and published than any other. End-user development There is little to be said about end-user development. Various knowledge workers create these small applications (all are less than 100 function points) for private use. These developments have no formal requirements and usually no design documentation. Amateur programmers write many end-user applications in languages such as Basic or Visual Basic their traditional languages. They might create some applications using spreadsheets if they will serve financial purposes. The originator performs any end-user testing. Although these projects seldom measure defect removal, when they do, it s usually less than 60 percent. Because the developer is also the user, these programs don t have user manuals. So once the originator changes jobs or retires, the applications are usually discarded. End-user applications are interesting to create but have limited or even negative business value. Some of the observations and conclusions from our studies support commonsense notions. For example, we noted that software specialists appear to be About the Author Capers Jones is chief scientist emeritus of Software Productivity Research, a subsidiary of Artemis Management Solutions. His research interests include software cost and schedule estimating, software quality control methods, and software metrics and measurements. He received his BA in English from the University of Florida. He is a member of the IEEE Computer Society and a lifetime member of the International Function Point Users Group. Contact him at Software Productivity Research, 6 Lincoln Knoll Dr., Burlington, MA 01803; cjones@ spr.com. valuable and raise the odds of software projects succeeding. We also noted that for projects larger than 1,000 function points, those with QA teams and formal defect-tracking methods have better chances for meeting planned schedules and planned budgets than projects with informal quality control. A few observations were surprising and perhaps counterintuitive. For example, we didn t find that any specific design method or programming language guaranteed either a successful or troubled project outcome. However, projects that used almost any kind of formal design method tended to have better quality than similar projects with informal or amorphous design. Perhaps the most significant observation is that good quality control is the best overall indicator of a successful project. Schedule delays and cost overruns most often occur when you discover during testing that the application has so many bugs that it doesn t work. Projects using QA teams, formal design and code inspections, and pretest defect tracking always had shorter testing cycles and therefore were more likely to be deliverable on schedule. References 1. C. Jones, Software Assessments, Benchmarks, and Best Practices, Addison-Wesley, International Function Point Users Group Web site, 3. S. Kan, Metrics and Models in Software Quality Engineering, 2nd Ed., Addison-Wesley, D. Garmus and D. Herron, Measuring the Software Process: A Practical Guide to Functional Measurements, Prentice Hall, C. Jones, Defense Software in Evolution, Crosstalk, vol. 15, no. 11, Nov. 2002, pp W.S. Humphrey, Managing the Software Process, Addison-Wesley, For more information on this or any other computing topic, please visit our Digital Library at November/December 2003 IEEE SOFTWARE 27

SOFTWARE QUALITY IN 2002: A SURVEY OF THE STATE OF THE ART

SOFTWARE QUALITY IN 2002: A SURVEY OF THE STATE OF THE ART Software Productivity Research an Artemis company SOFTWARE QUALITY IN 2002: A SURVEY OF THE STATE OF THE ART Capers Jones, Chief Scientist Emeritus Six Lincoln Knoll Lane Burlington, Massachusetts 01803

More information

SOFTWARE ESTIMATING RULES OF THUMB. Version 1 - April 6, 1997 Version 2 June 13, 2003 Version 3 March 20, 2007

SOFTWARE ESTIMATING RULES OF THUMB. Version 1 - April 6, 1997 Version 2 June 13, 2003 Version 3 March 20, 2007 SOFTWARE ESTIMATING RULES OF THUMB Version 1 - April 6, 1997 Version 2 June 13, 2003 Version 3 March 20, 2007 Abstract Accurate software estimating is too difficult for simple rules of thumb. Yet in spite

More information

VARIATIONS IN SOFTWARE DEVELOPMENT PATTERNS. June 24, 2013 Draft 3.0

VARIATIONS IN SOFTWARE DEVELOPMENT PATTERNS. June 24, 2013 Draft 3.0 VARIATIONS IN SOFTWARE DEVELOPMENT PATTERNS June 24, 2013 Draft 3.0 Keywords Activity-based costs, Capers Jones data, function points, Namcook Analytics data, software costs, software development, software

More information

Software development is a troubling

Software development is a troubling Project Management Tools and Software Failures and Successes Capers Jones Software Productivity Research, Inc. The construction of large software systems is one of the most hazardous activities of the

More information

Software Cost Estimating Methods for Large Projects

Software Cost Estimating Methods for Large Projects Software Cost Estimating Methods for Large Projects Capers Jones Software Productivity Research, LLC For large projects, automated estimates are more successful than manual estimates in terms of accuracy

More information

Software Project Management Practices: Failure Versus Success

Software Project Management Practices: Failure Versus Success This article is derived from analysis of about 250 large software projects at or above 10,000 function points in size that were examined by the author s company between 1995 and 2004. (Note that 10,000

More information

A SHORT HISTORY OF SOFTWARE ESTIMATION TOOLS. Version 12.0 August 26, 2013

A SHORT HISTORY OF SOFTWARE ESTIMATION TOOLS. Version 12.0 August 26, 2013 A SHORT HISTORY OF SOFTWARE ESTIMATION TOOLS Version 12.0 August 26, 2013 Keywords Activity-based costs, Capers Jones data, function points, Namcook Analytics data, software costs, software development,

More information

CONFLICT AND LITIGATION BETWEEN SOFTWARE CLIENTS AND DEVELOPERS. Version 8 September 1, 2000

CONFLICT AND LITIGATION BETWEEN SOFTWARE CLIENTS AND DEVELOPERS. Version 8 September 1, 2000 CONFLICT AND LITIGATION BETWEEN SOFTWARE CLIENTS AND DEVELOPERS Version 8 September 1, 2000 Abstract Software development and maintenance outsource contracts may lead to conflicts between the client and

More information

Introduction to Function Points www.davidconsultinggroup.com

Introduction to Function Points www.davidconsultinggroup.com By Sheila P. Dennis and David Garmus, David Consulting Group IBM first introduced the Function Point (FP) metric in 1978 [1]. Function Point counting has evolved into the most flexible standard of software

More information

Sources of Error in Software Cost Estimation

Sources of Error in Software Cost Estimation Sources of Error in Software Cost Estimation Seminar on Software Cost Estimation WS 02/03 Presented by Silvio Meier smeier@ifi.unizh.ch Requirements Engineering Research Group Department of Computer Science

More information

Manual Techniques, Rules of Thumb

Manual Techniques, Rules of Thumb Seminar on Software Cost Estimation WS 2002/2003 Manual Techniques, Rules of Thumb Pascal Ziegler 1 Introduction good software measurement and estimation are important simple methods are widely used simple,

More information

Finally, Article 4, Creating the Project Plan describes how to use your insight into project cost and schedule to create a complete project plan.

Finally, Article 4, Creating the Project Plan describes how to use your insight into project cost and schedule to create a complete project plan. Project Cost Adjustments This article describes how to make adjustments to a cost estimate for environmental factors, schedule strategies and software reuse. Author: William Roetzheim Co-Founder, Cost

More information

Geriatric Issues of Aging Software Capers Jones Software Productivity Research, LLC. Software Sustainment. What Is Software Maintenance?

Geriatric Issues of Aging Software Capers Jones Software Productivity Research, LLC. Software Sustainment. What Is Software Maintenance? Maintenance Engineering Lagging Average Leading Software Sustainment Capers Jones Software Productivity Research, LLC. Software has been a mainstay of business and government operations for more than 50

More information

Improve Your Process With Online Good Practices 1

Improve Your Process With Online Good Practices 1 Improve Your Process With Online Good Practices 1 Karl Wiegers Process Impact www.processimpact.com Most software developers are allergic to paper. As organizations improve their software development and

More information

Applied Software Project Management

Applied Software Project Management Applied Software Project Management Managing an Outsourced Project http://www.stellman-greene.com 1 Prevent Project Failure Don t be a hands-off client Constantly communicate project goals The vendor s

More information

Why Professional Services Firms Need an Integrated ERP Solution

Why Professional Services Firms Need an Integrated ERP Solution A Computer Generated Solutions, Inc. White Paper Why Professional Services Firms Need an Integrated ERP Solution Microsoft Dynamics Case Study 2011 Table of Contents ERP Landscape... 3-4 A More Focused

More information

The Phases of an Object-Oriented Application

The Phases of an Object-Oriented Application The Phases of an Object-Oriented Application Reprinted from the Feb 1992 issue of The Smalltalk Report Vol. 1, No. 5 By: Rebecca J. Wirfs-Brock There is never enough time to get it absolutely, perfectly

More information

Plan-Driven Methodologies

Plan-Driven Methodologies Plan-Driven Methodologies The traditional way to develop software Based on system engineering and quality disciplines (process improvement) Standards developed from DoD & industry to make process fit a

More information

Evaluating Software Alternatives. Chapter 4 Methods of Software Acquisition. Advantages of Custom Developed Software. Custom Developed Software

Evaluating Software Alternatives. Chapter 4 Methods of Software Acquisition. Advantages of Custom Developed Software. Custom Developed Software Evaluating Software Alternatives Chapter 4 Methods of Software Acquisition Examine software alternatives and select an overall strategy for the proposed system to prepare for the transition to the systems

More information

Role of Software Quality Assurance in Capability Maturity Model Integration

Role of Software Quality Assurance in Capability Maturity Model Integration Role of Software Quality Assurance in Capability Maturity Model Integration Rekha Chouhan 1 Dr.Rajeev Mathur 2 1 Research Scholar, Jodhpur National University, JODHPUR 2 Director, CS, Lachoo Memorial College

More information

(Refer Slide Time: 01:52)

(Refer Slide Time: 01:52) Software Engineering Prof. N. L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture - 2 Introduction to Software Engineering Challenges, Process Models etc (Part 2) This

More information

Domain 1 The Process of Auditing Information Systems

Domain 1 The Process of Auditing Information Systems Certified Information Systems Auditor (CISA ) Certification Course Description Our 5-day ISACA Certified Information Systems Auditor (CISA) training course equips information professionals with the knowledge

More information

Driving Quality Improvement and Reducing Technical Debt with the Definition of Done

Driving Quality Improvement and Reducing Technical Debt with the Definition of Done Driving Quality Improvement and Reducing Technical Debt with the Definition of Done Noopur Davis Principal, Davis Systems Pittsburgh, PA NDavis@DavisSys.com Abstract This paper describes our experiences

More information

How To Improve Software Quality

How To Improve Software Quality Software Quality and Standards Dr. James A. Bednar jbednar@inf.ed.ac.uk http://homepages.inf.ed.ac.uk/jbednar Dr. David Robertson dr@inf.ed.ac.uk http://www.inf.ed.ac.uk/ssp/members/dave.htm SEOC2 Spring

More information

Chapter 2 The Origins of Software

Chapter 2 The Origins of Software Chapter 2 The Origins of Software Multiple Choice Questions 1. Sources of software include: a. hardware manufacturers b. packaged software providers c. application service providers Answer: d Difficulty:

More information

A Rational Development Process

A Rational Development Process Paper published in: Crosstalk, 9 (7) July 1996, pp.11-16. A Rational Development Process Philippe Kruchten Vancouver, BC pbk@rational.com 1. Introduction This paper gives a high level description of the

More information

Be Careful What You Pay For: Applying the Fundamentals of Quality to Software Acquisition

Be Careful What You Pay For: Applying the Fundamentals of Quality to Software Acquisition Be Careful What You Pay For: Applying the Fundamentals of Quality to Software Acquisition SSTC 2012 26 April 2012 Copyright 2012 The MITRE Corporation Approved for Public Release; Distribution Unlimited.

More information

BCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 6 Professional Graduate Diploma in IT SOFTWARE ENGINEERING 2

BCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 6 Professional Graduate Diploma in IT SOFTWARE ENGINEERING 2 BCS THE CHARTERED INSTITUTE FOR IT BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 6 Professional Graduate Diploma in IT SOFTWARE ENGINEERING 2 EXAMINERS REPORT Friday 2 nd October 2015 Answer any THREE

More information

Software Process for QA

Software Process for QA Software Process for QA Basic approaches & alternatives CIS 610, W98 / M Young 1/7/98 1 This introduction and overview is intended to provide some basic background on software process (sometimes called

More information

SOFTWARE ENGINEERING IT 0301 Semester V B.Nithya,G.Lakshmi Priya Asst Professor SRM University, Kattankulathur

SOFTWARE ENGINEERING IT 0301 Semester V B.Nithya,G.Lakshmi Priya Asst Professor SRM University, Kattankulathur SOFTWARE ENGINEERING IT 0301 Semester V B.Nithya,G.Lakshmi Priya Asst Professor SRM University, Kattankulathur School of Computing, Department of IT 1 2 Process What is it? A series of predictable steps

More information

Maturity, motivation and effective learning in projects - benefits from using industrial clients

Maturity, motivation and effective learning in projects - benefits from using industrial clients Maturity, motivation and effective learning in projects - benefits from using industrial clients C Johansson Ericsson Software Technology AB/University of Karlskrona/Ronneby P Molin University of Karlskrona/Ronneby,

More information

Knowledge Infrastructure for Project Management 1

Knowledge Infrastructure for Project Management 1 Knowledge Infrastructure for Project Management 1 Pankaj Jalote Department of Computer Science and Engineering Indian Institute of Technology Kanpur Kanpur, India 208016 Jalote@iitk.ac.in Abstract In any

More information

V. Phani Krishna et al, / (IJCSIT) International Journal of Computer Science and Information Technologies, Vol. 2 (6), 2011, 2915-2919

V. Phani Krishna et al, / (IJCSIT) International Journal of Computer Science and Information Technologies, Vol. 2 (6), 2011, 2915-2919 Software Quality Assurance in CMM and XP- A Comparative Study CH.V. Phani Krishna and Dr. K.Rajasekhara Rao CSE Department, KL University, Guntur dt., India. Abstract Software Quality Assurance is a planned

More information

Global Headquarters: 5 Speen Street Framingham, MA 01701 USA P.508.872.8200 F.508.935.4015 www.idc.com

Global Headquarters: 5 Speen Street Framingham, MA 01701 USA P.508.872.8200 F.508.935.4015 www.idc.com Global Headquarters: 5 Speen Street Framingham, MA 01701 USA P.508.872.8200 F.508.935.4015 www.idc.com WHITE PAPER Microsoft SQL Server Versus Linux Enterprise RDBMS in Enterprise Computing: Comparing

More information

The 10 Most Important Ideas in Software Development

The 10 Most Important Ideas in Software Development Construx Software Development Best Practices The 10 Most Important Ideas in Software Development 2006 Construx Software Builders, Inc. All Rights Reserved. www.construx.com Most Key Ideas Are Not New Q:

More information

Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2, Michel Chaudron 3

Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2, Michel Chaudron 3 Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2, Michel Chaudron 3 1 Mälardalen University, Västerås, Sweden, ivica.crnkovic@mdh.se 2 ABB Corporate Research,

More information

Buy versus Build Considerations for Clients Purchasing CLO Dashboard

Buy versus Build Considerations for Clients Purchasing CLO Dashboard Buy versus Build Considerations for Clients Purchasing CLO Dashboard Prepared by Zeroed-In Technologies for use by clients evaluating CLO Dashboard against their internal development of similar executive

More information

Anatomy of an Enterprise Software Delivery Project

Anatomy of an Enterprise Software Delivery Project Chapter 2 Anatomy of an Enterprise Software Delivery Project Chapter Summary I present an example of a typical enterprise software delivery project. I examine its key characteristics and analyze specific

More information

Iterative Project Management 1

Iterative Project Management 1 Iterative Project Management Module 2 Objectives Understand issues for Project Managers (PM) who use iterative development by: Learning how the PM monitors and steers an iterative project towards success.

More information

Foundations for Systems Development

Foundations for Systems Development Foundations for Systems Development ASSIGNMENT 1 Read this assignment introduction. Then, read Chapter 1, The Systems Development Environment, on pages 2 25 in your textbook. What Is Systems Analysis and

More information

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Year 2014, Vol. 1, issue 1, pp. 49-56 Available online at: http://journal.iecuniversity.com TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Singh RANDEEP a*, Rathee AMIT b a* Department of

More information

Development, Acquisition, Implementation, and Maintenance of Application Systems

Development, Acquisition, Implementation, and Maintenance of Application Systems Development, Acquisition, Implementation, and Maintenance of Application Systems Part of a series of notes to help Centers review their own Center internal management processes from the point of view of

More information

CHALLENGES OF WEAPON SYSTEMS SOFTWARE DEVELOPMENT SİLAH SİSTEMLERİ YAZILIMLARININ GELİŞTİRİLMESİNDEKİ GÜÇLÜKLER

CHALLENGES OF WEAPON SYSTEMS SOFTWARE DEVELOPMENT SİLAH SİSTEMLERİ YAZILIMLARININ GELİŞTİRİLMESİNDEKİ GÜÇLÜKLER Journal of Naval Science and Engineering 2009, Vol. 5, No.3, pp. 104-116 CHALLENGES OF WEAPON SYSTEMS SOFTWARE DEVELOPMENT Ph.D. Kadir Alpaslan Demir, Lt. Department of Computer Engineering Turkish Naval

More information

<name of project> Software Project Management Plan

<name of project> Software Project Management Plan The document in this file is adapted from the IEEE standards for Software Project Management Plans, 1058-1998, which conforms to the requirements of ISO standard 12207 Software Life Cycle Processes. Tailor

More information

STS Federal Government Consulting Practice IV&V Offering

STS Federal Government Consulting Practice IV&V Offering STS Federal Government Consulting Practice IV&V Offering WBE Certified GSA Contract GS-35F-0108T For information Please contact: gsa70@stsv.com 2007 by STS, Inc. Outline Background on STS What is IV&V?

More information

Applying CMMI SM In Information Technology Organizations SEPG 2003

Applying CMMI SM In Information Technology Organizations SEPG 2003 Applying CMMI SM In Information Technology Organizations Mark Servello, Vice President Jim Gibson, Senior Consultant ChangeBridge, Incorporated Page 1 Portions Copyright 2002 Carnegie Mellon University

More information

Building Software in an Agile Manner

Building Software in an Agile Manner Building Software in an Agile Manner Abstract The technology industry continues to evolve with new products and category innovations defining and then redefining this sector's shifting landscape. Over

More information

Importance of Testing in Software Development Life Cycle

Importance of Testing in Software Development Life Cycle International Journal of Scientific & Engineering Research Volume 3, Issue 5, May-2012 1 Importance of Testing in Software Development Life Cycle T.Rajani Devi Abstract in every organization, testing is

More information

What is a life cycle model?

What is a life cycle model? What is a life cycle model? Framework under which a software product is going to be developed. Defines the phases that the product under development will go through. Identifies activities involved in each

More information

Automation can dramatically increase product quality, leading to lower field service, product support and

Automation can dramatically increase product quality, leading to lower field service, product support and QA Automation for Testing Medical Device Software Benefits, Myths and Requirements Automation can dramatically increase product quality, leading to lower field service, product support and liability cost.

More information

Risk Mitigation, Monitoring and Management Plan

Risk Mitigation, Monitoring and Management Plan Risk Mitigation, Monitoring and Management Plan Introduction Scope and intent of RMMM activities The goal of the risk mitigation, monitoring and management plan is to identify as many potential risks as

More information

Application of software product quality international standards through software development life cycle

Application of software product quality international standards through software development life cycle Central Page 284 of 296 Application of software product quality international standards through software development life cycle Mladen Hosni, Valentina Kirinić Faculty of Organization and Informatics University

More information

Lessons from Software Work Effort Metrics 1

Lessons from Software Work Effort Metrics 1 Lessons from Software Work Effort Metrics 1 Karl E. Wiegers Process Impact www.processimpact.com How many of these questions about your software development organization can you answer with confidence?

More information

Enterprise Services for Defense Transformation

Enterprise Services for Defense Transformation Enterprise Services for Defense Transformation Prof. Paul A. Strassmann George Mason University, February 19, 2007 1 Case Study Hewlett-Packard Cost Reduction 2 Example of Application Simplification Domain

More information

How To Integrate Security Into Your Application Development

How To Integrate Security Into Your Application Development Six Best Practices of IT Security 187 Ballardvale Street, Wilmington, MA 01887 +1.978.694.1008 2 Table of Contents 1. Make a Self-Assessment...3 2. Believe the Application Security Hype...3 3. Ask Tough

More information

Ensuring Web Service Quality for Service-Oriented Architectures. An Oracle White Paper June 2008

Ensuring Web Service Quality for Service-Oriented Architectures. An Oracle White Paper June 2008 Ensuring Web Service Quality for Service-Oriented Architectures An Oracle White Paper June 2008 Ensuring Web Service Quality for Service-Oriented Architectures WEB SERVICES OFFER NEW OPPORTUNITIES AND

More information

The truth about SaaS for recruiters: How to obtain the full benefit of a web timesheet solution Etz Timesheet Solutions Guide

The truth about SaaS for recruiters: How to obtain the full benefit of a web timesheet solution Etz Timesheet Solutions Guide The truth about SaaS for recruiters: How to obtain the full benefit of a web timesheet solution Etz Timesheet Solutions Guide A guide to why Etz is a true SaaS solution and is able to deliver the full

More information

SEER for Software - Going Beyond Out of the Box. David DeWitt Director of Software and IT Consulting

SEER for Software - Going Beyond Out of the Box. David DeWitt Director of Software and IT Consulting SEER for Software - Going Beyond Out of the Box David DeWitt Director of Software and IT Consulting SEER for Software is considered by a large percentage of the estimation community to be the Gold Standard

More information

Book 3 Cost Estimating in an Agile Development Environment. (early release)

Book 3 Cost Estimating in an Agile Development Environment. (early release) Book 3 Cost Estimating in an Agile Development Environment (early release) Book 3: Cost Estimating in an Agile Development Environment In this third book I ll use the slides I gave at a speech several

More information

A Software Development Process for Small Projects. Melissa L. Russ and John D. McGregor, Korson-McGregor, A Software Technology Company

A Software Development Process for Small Projects. Melissa L. Russ and John D. McGregor, Korson-McGregor, A Software Technology Company focus SE in the small A Software Development Process for Small Projects The authors development process integrates portions of an iterative, incremental process model with a quality assurance process and

More information

Essentials of the Quality Assurance Practice Principles of Testing Test Documentation Techniques. Target Audience: Prerequisites:

Essentials of the Quality Assurance Practice Principles of Testing Test Documentation Techniques. Target Audience: Prerequisites: Curriculum Certified Software Tester (CST) Common Body of Knowledge Control Procedures Problem Resolution Reports Requirements Test Builds Test Cases Test Execution Test Plans Test Planning Testing Concepts

More information

The Role of the Quality Group in Software Development

The Role of the Quality Group in Software Development The Role of the Quality Group in Software Development Douglas Hoffman Software Quality Methods, LLC. 124646 Heather Heights Place Saratoga, CA 95070 (408) 741-4830 Abstract This paper describes the role

More information

ADMINISTRATIVE SUPPORT AND CLERICAL OCCUPATIONS SIN 736 1

ADMINISTRATIVE SUPPORT AND CLERICAL OCCUPATIONS SIN 736 1 Following are the Contractor Site and Government Site Labor Categories for SIN 736-1, SIN 736-1, and SIN 736-5. Please do not hesitate to contact us at gsataps@amdexcorp.com if you have any questions ADMINISTRATIVE

More information

Your Software Quality is Our Business. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc.

Your Software Quality is Our Business. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc. February 2013 1 Executive Summary Adnet is pleased to provide this white paper, describing our approach to performing

More information

Test What You ve Built

Test What You ve Built Test What You ve Built About Your Presenter IBM i Professional for 16 Years. Primary Focus is IBM i Engineering / Programming Well Versed in 2E. Well Versed in RPG (All Flavors) Well Versed in CM Products

More information

Protect Your Organization With the Certification That Maps to a Master s-level Education in Software Assurance

Protect Your Organization With the Certification That Maps to a Master s-level Education in Software Assurance Protect Your Organization With the Certification That Maps to a Master s-level Education in Software Assurance Sponsored by the U.S. Department of Homeland Security (DHS), the Software Engineering Institute

More information

TOOLS FOR TEAM DEVELOPMENT: WHY VENDORS ARE FINALLY GETTING IT RIGHT

TOOLS FOR TEAM DEVELOPMENT: WHY VENDORS ARE FINALLY GETTING IT RIGHT TOOLS FOR TEAM DEVELOPMENT: WHY VENDORS ARE FINALLY GETTING IT RIGHT DAVID CHAPPELL DECEMBER 2008 SPONSORED BY MICROSOFT CORPORATION COPYRIGHT 2008 CHAPPELL & ASSOCIATES Most software development is done

More information

Unit 8: Software Process Improvement

Unit 8: Software Process Improvement Unit 8: Software Process Improvement Objectives Ð To provide a framework for software process assessment and improvement. Background A framework to help the US DoD pick software vendors more cleverly and

More information

How to gather and document A. requirements. specification

How to gather and document A. requirements. specification Common mistakes As an independent consultant I get to read a lot of documents, and it seems to be an area that most would-be buyers of technology struggle with probably because there s little guidance

More information

WHITE PAPER. The extensive outsourcing checklist

WHITE PAPER. The extensive outsourcing checklist WHITE PAPER The extensive outsourcing checklist INTRODUCTION When it s time to find an outsourcing provider, many companies just call up the old RFP (Request for Proposal) file on the computer, change

More information

Insurance Company Virtualizes Data Center and Desktops

Insurance Company Virtualizes Data Center and Desktops Customer Case Study Insurance Company Virtualizes Data Center and Desktops Cisco UCS Servers and UCS E-Series Servers transform Groupe Promutuel business operations. EXECUTIVE SUMMARY Customer Name: Groupe

More information

Moving from ISO9000 to the Higher Levels of the Capability Maturity Model (CMM)

Moving from ISO9000 to the Higher Levels of the Capability Maturity Model (CMM) Moving from ISO9000 to the Higher Levels of the Capability Maturity Model (CMM) Pankaj Jalote 1 Infosys Technologies Ltd. Bangalore 561 229 Fax: +91-512-590725/590413 Jalote@iitk.ernet.in, jalote@iitk.ac.in

More information

Cross-Development as a Service

Cross-Development as a Service Cross-Development as a Service Vladimir Moltchanov, Miska Kaipiainen EmbedOne Finland Email: vladimir.moltchanov@embedone.com, miska.kaipiainen@embedone.com Abstract In modern world embedded systems became

More information

How to Decide which Method to Use

How to Decide which Method to Use Methods for Software Sizing How to Decide which Method to Use 1 Why Measure Software Size? Software is the output product from the software development and/or enhancement activity that is delivered and/or

More information

JOURNAL OF OBJECT TECHNOLOGY

JOURNAL OF OBJECT TECHNOLOGY JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2006 Vol. 5. No. 8, November-December 2006 Requirements Engineering Tasks Donald Firesmith,

More information

Software Code Quality Checking (SCQC) No Clearance for This Secret: Information Assurance is MORE Than Security

Software Code Quality Checking (SCQC) No Clearance for This Secret: Information Assurance is MORE Than Security Software Code Quality Checking (SCQC) No Clearance for This Secret: Information Assurance is MORE Than Security Nominee International Security Executives (ISE ) Information Security Project of the Year

More information

Toward Quantitative Process Management With Exploratory Data Analysis

Toward Quantitative Process Management With Exploratory Data Analysis Toward Quantitative Process Management With Exploratory Data Analysis Mark C. Paulk Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Abstract The Capability Maturity Model

More information

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: 0306211(Computer Programming 2).

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: 0306211(Computer Programming 2). 0305203 0305280 0305301 0305302 Software Engineering/Courses Description Introduction to Software Engineering Prerequisite: 0306211(Computer Programming 2). This course introduces students to the problems

More information

IT Examination Handbook Presentation Development and Acquisition Booklet

IT Examination Handbook Presentation Development and Acquisition Booklet IT Examination Handbook Presentation Development and Acquisition Booklet 1. Visual Narrative 2. Development and Acquisition an organization s ability to identify, acquire, install, and maintain appropriate

More information

Best Practices for the Acquisition of COTS-Based Software Systems (CBSS): Experiences from the Space Systems Domain

Best Practices for the Acquisition of COTS-Based Software Systems (CBSS): Experiences from the Space Systems Domain GSAW 2004 Best Practices for the Acquisition of COTS-Based Software Systems (CBSS): Experiences from the Space Systems Domain Richard J. Adams and Suellen Eslinger Software Acquisition and Process Office

More information

A Tool for Mining Defect-Tracking Systems to Predict Fault-Prone Files

A Tool for Mining Defect-Tracking Systems to Predict Fault-Prone Files A Tool for Mining Defect-Tracking Systems to Predict Fault-Prone Files Thomas J. Ostrand AT&T Labs - Research 180 Park Avenue Florham Park, NJ 07932 ostrand@research.att.com Elaine J. Weyuker AT&T Labs

More information

Software Engineering. An Introduction. Fakhar Lodhi

Software Engineering. An Introduction. Fakhar Lodhi Software Engineering An Introduction Fakhar Lodhi 1 Engineering The science concerned with putting scientific knowledge to practical use. Webster s Dictionary Physics versus Electrical Engineering 2 Software

More information

A Tool to Support Knowledge Based Software Maintenance: The Software Service Bay

A Tool to Support Knowledge Based Software Maintenance: The Software Service Bay A Tool to Support Knowledge Based Software Maintenance: The Software Service Bay Jonathan I. Maletic Robert G. Reynolds Computer Science Department Wayne State University 431 State Hall Detroit, MI 48202

More information

SC207 Software Engineering. Review Report: Producing More Reliable Software

SC207 Software Engineering. Review Report: Producing More Reliable Software SC207 Software Engineering Review Report: Producing More Reliable Software Guo Zaiyi (SA1) Lecturer: Dr. Edmond C. Prakash School of Computer Engineering Nanyang Technological University Abstract This

More information

The ERP Software Promise

The ERP Software Promise ERP Software A Brief History Tom Bellinson In the early days of mainframe computing, accounting was one of the first enterprise-wide applications that became pervasive. At the time, computers weren t very

More information

Telelogic White Paper. Strategic QA. Steps to Effective Software Quality Assurance. Dominic Tavassoli, Telelogic 1.0. July 2007

Telelogic White Paper. Strategic QA. Steps to Effective Software Quality Assurance. Dominic Tavassoli, Telelogic 1.0. July 2007 Strategic QA Steps to Effective Software Quality Assurance Dominic Tavassoli, Telelogic 1.0 July 2007 Table of Contents Overview 1 The Quality Assurance Paradox 1 How Much Testing is Enough? 1 What Part

More information

Project Management Support

Project Management Support Project Management Support Project management is the discipline of planning, organizing, securing, managing, leading, and controlling resources to achieve specific goals. A project is a temporary business

More information

Brillig Systems Making Projects Successful

Brillig Systems Making Projects Successful Metrics for Successful Automation Project Management Most automation engineers spend their days controlling manufacturing processes, but spend little or no time controlling their project schedule and budget.

More information

BUSINESS RULES AND GAP ANALYSIS

BUSINESS RULES AND GAP ANALYSIS Leading the Evolution WHITE PAPER BUSINESS RULES AND GAP ANALYSIS Discovery and management of business rules avoids business disruptions WHITE PAPER BUSINESS RULES AND GAP ANALYSIS Business Situation More

More information

Overview and History of Software Engineering

Overview and History of Software Engineering Overview and History of Software Engineering CS 230 Introduction to Software Engineering Slide 1 Outline Historical aspects - software crisis Software product Software process Software fault and failures

More information

How to Write a Software Process Procedures and Policy Manual for YOUR COMPANY

How to Write a Software Process Procedures and Policy Manual for YOUR COMPANY How to Write a Software Process for YOUR COMPANY 1. Introduction MicroTools is proposing to assist YOUR COMPANY in improving the existing software process. The purpose of this project is to both improve

More information

http://www.careeroverview.com/computer-programmingcareers.html Computer Programming Career and Job Highlights

http://www.careeroverview.com/computer-programmingcareers.html Computer Programming Career and Job Highlights http://www.careeroverview.com/computer-programmingcareers.html Computer Programming Career and Job Highlights * Compared to other fields, computer-programming jobs are anticipated to grow at a slower rate

More information

Response Time Analysis

Response Time Analysis Response Time Analysis A Pragmatic Approach for Tuning and Optimizing SQL Server Performance By Dean Richards Confio Software 4772 Walnut Street, Suite 100 Boulder, CO 80301 866.CONFIO.1 www.confio.com

More information

The Software Quality Group's Relationship to Development

The Software Quality Group's Relationship to Development The Software Quality Group's Relationship to Development Douglas Hoffman Software Quality Methods San Jose, CA 95130 Abstract This paper presents the roles of the Software Quality Organization in software

More information

What humans had to do: Challenges: 2nd Generation SPC What humans had to know: What humans had to do: Challenges:

What humans had to do: Challenges: 2nd Generation SPC What humans had to know: What humans had to do: Challenges: Moving to a fourth generation: SPC that lets you do your work by Steve Daum Software Development Manager PQ Systems, Inc. Abstract: This paper reviews the ways in which process control technology has moved

More information

HR Support Services Labor Categories. Attachment D

HR Support Services Labor Categories. Attachment D Administrative Assistant: This position performs general administrative and clerical duties necessary to meet needs of the division or program area, and assumes responsibility for other duties based on

More information

Hybrid-Agile Software Development

Hybrid-Agile Software Development Hybrid-Agile Software Development Anti-Patterns, Risks, and Recommendations Paul E. McMahon, PEM Systems Abstract. Many organizations are driving toward increased agility in their software development

More information

Measurement and Metrics Fundamentals. SE 350 Software Process & Product Quality

Measurement and Metrics Fundamentals. SE 350 Software Process & Product Quality Measurement and Metrics Fundamentals Lecture Objectives Provide some basic concepts of metrics Quality attribute metrics and measurements Reliability, validity, error Correlation and causation Discuss

More information

1.1 The Nature of Software... Object-Oriented Software Engineering Practical Software Development using UML and Java. The Nature of Software...

1.1 The Nature of Software... Object-Oriented Software Engineering Practical Software Development using UML and Java. The Nature of Software... 1.1 The Nature of Software... Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering Software is intangible Hard to understand

More information