Parallel Changes in Large-Scale Software Development: An Observational Case Study DEWAYNE E. PERRY University of Texas at Austin HARVEY P. SIY Lucent.

Slides:



Advertisements
Similar presentations
Parallel Changes in Large-Scale Software Development: An Observational Case Study ACM Transactions on Software Engineering and Methodology, Vol. 10, No.
Advertisements

Page 1 October 31, 2000 An Introduction to Large-Scale Software Development Steve Varnau Core HP-UX Operation October 31, 2000.
1 GOES-R AWG Products Processing Framework Configuration Management Yunhui Zhao.
Software Configuration Management: Under the Hood of Two Leading Tools Presented by: Andrew Wheeler & Shane Marcus.
Mr. Mason’s Cruel Experiment (or Mason’s version of the scientific method…)
Software Configuration Management Donna Albino LIS489, December 3, 2014.
1 Software Configuration Management METU Computer Engineering CEng 492 Spring'2004.
VisIt Software Engineering Infrastructure and Release Process LLNL-PRES Lawrence Livermore National Laboratory, P. O. Box 808, Livermore,
CVS II: Parallelizing Software Development Author: Brian Berliner John Tully.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
UNDERSTANDING RESEARCH RESULTS: STATISTICAL INFERENCE © 2012 The McGraw-Hill Companies, Inc.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Page 1 11/6/2005 A Change Model in a SCM Tool Author: IvicaCrnkovic ABB Industrial Products. Wenbin Xiang.
Source Code Management Or Configuration Management: How I learned to Stop Worrying and Hate My Co-workers Less.
Software Configuration Management CSC-532 Chandra Shekar Kandi Chandra Shekar Kandi.
Craig Berntson Chief Software Gardener Mojo Software Worx Branches and Merges are Bears, Oh My!
Brian Duff Principal Engineer JDeveloper Team Oracle Corporation.
1 CSE 2102 CSE 2102 CSE 2102: Introduction to Software Engineering Ch9: Software Engineering Tools and Environments.
Does Distributed Development Affect Software Quality???? An Empirical Case Study of Windows Vista Christian Bird, Premkumar Devanbu, Harald Gall, Brendan.
Sociological Theory Main Points The elements of scientific theory
1.What is science? 2.Why should we study science? 3.What did we do before science? 4.What role does Math have in Science? What We Will Address.
Evolving software systems have instructions that are typically encoded by symbols or commands that do not change their meaning in terms of their corresponding.
Presented By : Abirami Poonkundran.  This paper is a case study on the impact of ◦ Syntactic Dependencies, ◦ Logical Dependencies and ◦ Work Dependencies.
1 Lecture 19 Configuration Management Software Engineering.
1 Research Methodology Model. 2 Hypothesis a prediction of what is the case (fact) based on theory Conclusions Observation (s): Phenomena; Problem (Tree)
1 SEG4912 University of Ottawa by Jason Kealey Software Engineering Capstone Project Tools and Technologies.
HOW TO WRITE RESEARCH PROPOSAL BY DR. NIK MAHERAN NIK MUHAMMAD.
SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.
Software Quality Assurance
Figure 10.1 Development process managed by AllFusion Harvest Change Manager. © 2003 Crnkovic, Asklund, Persson Dahlqvist, ”Implementing and Integrating.
Formal Methods in Software Engineering
ClearCase Concepts and Terminology
METHODS IN BEHAVIORAL RESEARCH NINTH EDITION PAUL C. COZBY Copyright © 2007 The McGraw-Hill Companies, Inc.
Examination of the Interplay of Reliability and Security using System Modeling Language (SysML). By Venkateswara Reddy Tallapu.
© 2006 by The McGraw-Hill Companies, Inc. All rights reserved. 1 Chapter 12 Testing for Relationships Tests of linear relationships –Correlation 2 continuous.
Scientific Method One way of describing the scientific method.
Management of Software Project CSM Software Configuration Management (SCM)
Lecture PowerPoint Slides Basic Practice of Statistics 7 th Edition.
2136 Gallows Road, Suite F, Dunn Loring, VA Phone: Fax: Business Analyst Training 1 Module 5.2 Rational ClearCase.
Introduction to Research. Purpose of Research Evidence-based practice Validate clinical practice through scientific inquiry Scientific rational must exist.
Achieving Semantic Interoperability at the World Bank Designing the Information Architecture and Programmatically Processing Information Denise Bedford.
Source Control What technical communicators need to know.
Palantír: Increasing Awareness in Distributed Software Development Anita Sarma and André van der Hoek {asarma, Institute for Software.
Slide Slide 1 Copyright © 2007 Pearson Education, Inc Publishing as Pearson Addison-Wesley. Lecture Slides Elementary Statistics Tenth Edition and the.
1 Week 9 Software Engineering Fall Term 2015 Marymount University School of Business Administration Professor Suydam.
Source Control Repositories for Enabling Team Working Doncho Minkov Telerik Corporation
© 2017 by McGraw-Hill Education. This proprietary material solely for authorized instructor use. Not authorized for sale or distribution in any manner.
Some Terminology experiment vs. correlational study IV vs. DV descriptive vs. inferential statistics sample vs. population statistic vs. parameter H 0.
Software Configuration Management -Subversion- RTLAB YuJin Park.
School of Business Administration
Software Configuration Management CSC-532
Prologue.
R. E. Wyllys Copyright 2003 by R. E. Wyllys Last revised 2003 Jan 15
IEEE Std 1074: Standard for Software Lifecycle
Using Source Code Control Effectively
Data Analysis in Particle Physics
Chapter 1 Database Systems
Chapter 2: The Linux System Part 1
Automated Testing and Integration with CI Tool
Eric J. Rapos and James R. Cordy
Scientific Method.
Course and program Assessment
UNDERSTANDING RESEARCH RESULTS: STATISTICAL INFERENCE
Version Control CS169 Lecture 7 Prof. Aiken CS 169 Lecture 7 1.
Version Control CS169 Lecture 7 Prof. Aiken CS 169 Lecture 7.
Chapter 1 Database Systems
CS5103 Software Engineering
Version Control with Git
Overview Activities from additional UP disciplines are needed to bring a system into being Implementation Testing Deployment Configuration and change management.
Logical Architecture & UML Package Diagrams
Presentation transcript:

Parallel Changes in Large-Scale Software Development: An Observational Case Study DEWAYNE E. PERRY University of Texas at Austin HARVEY P. SIY Lucent Technologies and LAWRENCE G. VOTTA Motorola, Inc. Greg Holifield

Four Essential Problems in Software Development: [Brooks 1987] Evolution not only have parallel development within each release, Among releases as well. Scale Multiple dimensions of system organization 1[Perry 1996] Distribution of knowledge

Authors’ Three Goals provide a basic understanding of the parallel-change phenomena begin an investigation of a subproblem: interfering changes explore the relationship between parallel changes and the related quality data Three Hypothesis of Relationship between Parallel Changes and Quality Interfering changes are more likely to result in quality problems later in the development than noninterfering changes. Files with significant degrees of parallel changes are likely candidates for code that “decays” overtime. The degree of interference increases this likelihood. Current technology supporting the management of these problems addresses only superficial aspects of these problems.

Methods Toward Each Goal basic observational data on the nature of parallel changes Examine prima facie cases changes to changes changes within the same day summarize available tools that support parallel development

Classical Tools Library-type Systems (check in/out) Newer Systems SCCS [Rochkind 1975] RCS [Tichy 1982], Newer Systems Rational’s ClearCase(R) [Leblang 1994] Adele Configuration Manager [Estublier and Casallas 1994] Traditional Systems Various Branches one file on developer per file “Newer” Systems allow developers to work in parallel on the same file

Classical Tools Integration of Parallel Changes Semantic Conflicts permanent versions temporary versions Semantic Conflicts Logical Completeness Permanent versions are “branches in the product develop-ment path that have their own life cycle” [Mahler 1994]. Temporary problem figuring out how to merge the multiple versions back into a coherent single version

Conclusion —There are multiple levels of parallel development. —The activities within each of these levels cut across common files. —Over the interval of a particular release (I6), the number of files changed by multiple MRs is 60% —though we would expect the degree of awareness of the implications of these changes to be higher than those made within one day of each other —There is a significant correlation between files with a high degree of parallel development and the number of defects