the state of the practice Variations in Software Development Practices
|
|
- Chester Owen
- 8 years ago
- Views:
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 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 informationSOFTWARE 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 informationVARIATIONS 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 informationSoftware 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 informationSoftware 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 informationSoftware 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 informationA 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 informationCONFLICT 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 informationIntroduction 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 informationSources 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 informationManual 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 informationFinally, 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 informationGeriatric 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 informationImprove 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 informationApplied 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 informationWhy 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 informationThe 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 informationPlan-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 informationEvaluating 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 informationRole 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)
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 informationDomain 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 informationDriving 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 informationHow 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 informationChapter 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 informationA 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 informationBe 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 informationBCS 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 informationSoftware 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 informationSOFTWARE 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 informationMaturity, 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 informationKnowledge 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 informationV. 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 informationGlobal 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 informationThe 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 informationComponent-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 informationBuy 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 informationAnatomy 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 informationIterative 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 informationFoundations 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 informationTRADITIONAL 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 informationDevelopment, 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 informationCHALLENGES 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
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 informationSTS 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 informationApplying 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 informationBuilding 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 informationImportance 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 informationWhat 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 informationAutomation 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 informationRisk 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 informationApplication 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 informationLessons 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 informationEnterprise 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 informationHow 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 informationEnsuring 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 informationThe 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 informationSEER 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 informationBook 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 informationA 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 informationEssentials 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 informationThe 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 informationADMINISTRATIVE 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 informationYour 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 informationTest 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 informationProtect 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 informationTOOLS 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 informationUnit 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 informationHow 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 informationWHITE 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 informationInsurance 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 informationMoving 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 informationCross-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 informationHow 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 informationJOURNAL 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 informationSoftware 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 informationToward 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 informationSoftware 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 informationIT 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 informationBest 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 informationA 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 informationSoftware 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 informationA 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 informationSC207 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 informationThe 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 informationTelelogic 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 informationProject 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 informationBrillig 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 informationBUSINESS 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 informationOverview 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 informationHow 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 informationhttp://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 informationResponse 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 informationThe 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 informationWhat 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 informationHR 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 informationHybrid-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 informationMeasurement 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 information1.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