Software Engineering Process and Tools in the Mozilla Project How open-source CM tools made Firefox the fastest and safest web browser.

Slides:



Advertisements
Similar presentations
IOTAP Software Build Process Author: Aman Choudhary Draft Version – Work In Progress.
Advertisements

Software engineering tools for web development Jim Briggs 1CASE.
Chapter 4 Quality Assurance in Context
Software Configuration Management Donna Albino LIS489, December 3, 2014.
Configuration Management Managing Change. Points to Ponder Which is more important?  stability  progress Why is change potentially dangerous?
Red Hat Linux Network. Red Hat Network Red Hat Network is the environment for system- level support and management of Red Hat Linux networks. Red Hat.
Concepts of Version Control A Technology-Independent View.
CS 501 : An Introduction to SCM & GForge An Introduction to SCM & GForge Lin Guo
CASE Tools CIS 376 Bruce R. Maxim UM-Dearborn. Prerequisites to Software Tool Use Collection of useful tools that help in every step of building a product.
Nov. 6, 2003CS WPI1 CS 509 Design of Software Systems Lecture #10 Thursday, Nov. 6, 2003.
When will our bugs be fixed? When will our new features be added? When will the next release come out? Is my server up-to-date? Users Committers Program.
Low level CASE: Source Code Management. Source Code Management  Also known as Configuration Management  Source Code Managers are tools that: –Archive.
Source Code Management Or Configuration Management: How I learned to Stop Worrying and Hate My Co-workers Less.
PowerPoint Presentation for IS-207 Copyright 2006 © Michael W. Schaffer. All rights reserved. Slide 1 System Analysis & Design Shrink-wrap Tools and Techniques.
Software Configuration Management
1 CMPT 275 Software Engineering Revision Control.
Source Control Repositories for Enabling Team Working Svetlin Nakov Telerik Corporation
Software Configuration Management
Configuration Management Avoiding Costly Confusion mostly stolen from Chapter 27 of Pressman.
Standards for Technology in Automotive Retail STAR Workbench 1.0 Michelle Vidanes & Dave Carver STAR XML Data Architects, Certified Scrum Masters.
CS4723 Software Validation and Quality Assurance Lecture 9 Bug Report Management.
Professional Informatics & Quality Assurance Software Lifecycle Manager „Tools that are more a help than a hindrance”
By: Taylor Helsper.  Introduction  Bug Tracking  Progress Tracking  Version Control  Conclusion  Questions.
Software Configuration Management (SCM)
Configuration Management Managing Change. Points to Ponder Which is more important?  stability  progress Why is change potentially dangerous?
1 Topics for this Lecture Software maintenance in general Source control systems (intro to svn)
Managing Software Quality
Software Engineering Modern Approaches
Software Configuration Management
Article: Source Code Review Systems Author: Jason Remillard Presenter: Joe Borosky Class: Principles and Applications of Software Design Date: 11/2/2005.
Software Tools and Processes Training and Discussion October 16, :00-4:30 p.m. Jim Willenbring.
Revision Control and Issue Tracking Andrew Watkins.
Software Engineering CS3003
1 Lecture 19 Configuration Management Software Engineering.
Configuration Management (managing change). Starter Questions... Which is more important?  stability  progress Why is change potentially dangerous?
1 Software Development Configuration management. \ 2 Software Configuration  Items that comprise all information produced as part of the software development.
CVS Version Tree Display Richard Thomas Benedict College Supervisor Dr. David J Ritchie Computing Division Fermilab Summer 2003.
 CS 5380 Software Engineering Chapter 8 Testing.
Configuration Management Geant4 Review 19 June 2001 Gunter Folger.
Software Quality Assurance
Mozilla Corporation Chris Hofmann Mozilla Test Day Sprint.
Continuous Integration and Code Review: how IT can help Alex Lossent – IT/PES – Version Control Systems 29-Sep st Forum1.
Software Engineering – University of Tampere, CS DepartmentJyrki Nummenmaa Configuration management.
Confidential Continuous Integration Framework (CIF) 5/18/2004.
14th Oct 2005CERN AB Controls Development Process of Accelerator Controls Software G.Kruk L.Mestre, V.Paris, S.Oglaza, V. Baggiolini, E.Roux and Application.
Principles of Computer Security: CompTIA Security + ® and Beyond, Third Edition © 2012 Principles of Computer Security: CompTIA Security+ ® and Beyond,
Anubha Gupta | Software Engineer Visual Studio Online Microsoft Corp. Visual Studio Enterprise Leveraging modern tools to streamline Build and Release.
Management of Software Project CSM Software Configuration Management (SCM)
Life After Testing JAMES A.
Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Genesis.
Process Modeling Across the Web Information Infrastructure Chris Jensen and Walt Scacchi Institute for Software Research School of Information and Computer.
Getting Started with Trilinos October 14, :30-10:30 a.m. Jim Willenbring.
University of Southern California Center for Systems and Software Engineering Configuration Management: Concepts and Tools Pongtip Aroonvatanaporn CSCI.
APT Configuration Management May 25th, 2004 APT Configuration Management Jesse Doggett.
JUnit, Bugzilla James Atlas July 24, 2008 *part of today’s slides courtesy of Dwight Deugo and Nesa Matic under the EPL.
Geant4 is a toolkit to simulate the passage of particles through matter, and is widely used in HEP, in medical physics and for space applications. Ongoing.
TEAM FOUNDATION VERSION CONTROL AN OVERVIEW AND WALKTHROUGH By: Michael Mallar.
Continuous Integration for Databases Steve Jones SQLServerCentral Red Gate Software.
JRA1 Meeting – 09/02/ Software Configuration Management and Integration EGEE is proposed as a project funded by the European Union under contract.
Source Control Repositories for Enabling Team Working Doncho Minkov Telerik Corporation
Code/Project Management On Screwdrivers and Hammers.
Developers Users Committers How do I configure this now? Just one more fix and I am done! CVS Download/Use Software Submit problems/ request features Store.
1 March 12, Testing William Cohen NCSU CSC 591W March 12, 2008.
Software Project Configuration Management
Software Verification and Validation
ODF, LibreOffice and Red Hat
Issue Tracking Systems
Configuration Management (managing change)
Revision Control Daniel Daugherty
Dynamic Process for Source Control
Presentation transcript:

Software Engineering Process and Tools in the Mozilla Project How open-source CM tools made Firefox the fastest and safest web browser

Before CM Processes  Early Mozilla development began with few formalized requirements  Many foundational codebase changes took place due to “community need”  Almost anyone could check in code  The result was chaos and gave Microsoft a 2 year headstart on Firefox  Early Mozilla development began with few formalized requirements  Many foundational codebase changes took place due to “community need”  Almost anyone could check in code  The result was chaos and gave Microsoft a 2 year headstart on Firefox

CVS  Mozilla has always used CVS as the method to alter the tree  CVS allows  Versioning  Branching  Concurrent development  Worldwide access  Preferred V&V enforcement tool  Mozilla has always used CVS as the method to alter the tree  CVS allows  Versioning  Branching  Concurrent development  Worldwide access  Preferred V&V enforcement tool

Bonsai - Graphical CVS Tool

Bonsai  Allows one to query CVS for the latest check-ins done to the repository  Shows check-in comments with hyperlinks to the Bugzilla bug that was fixed  Provides an interface to view differences between versions of files in the CVS repository  Allows visual identification of which developers are responsible for which sections of a single code file  Allows one to query CVS for the latest check-ins done to the repository  Shows check-in comments with hyperlinks to the Bugzilla bug that was fixed  Provides an interface to view differences between versions of files in the CVS repository  Allows visual identification of which developers are responsible for which sections of a single code file

Tinderbox  Tinderbox is an automated system to track compilations and tests  Red indicates compilation failed  Orange indicates compilation succeeded, but the test-suite failed  Green indicates compilation and tests ran successfully  Yellow indicates compilation is still in progress  Tinderbox is an automated system to track compilations and tests  Red indicates compilation failed  Orange indicates compilation succeeded, but the test-suite failed  Green indicates compilation and tests ran successfully  Yellow indicates compilation is still in progress

Tinderbox Screenshot Only Sheriffs can approve check-ins

Firefox Tinderbox

Bugzilla Managing Software Development

Bugzilla Features  Track bugs and code changes  Communicate with teammates  Submit and review patches  Manage quality assurance (QA)  Track bugs and code changes  Communicate with teammates  Submit and review patches  Manage quality assurance (QA)

Bugzilla Benefits  Improves communication  Increases product quality  Improves customer satisfaction  Ensures accountability  Increases productivity  Adaptable to multiple situations  Improves communication  Increases product quality  Improves customer satisfaction  Ensures accountability  Increases productivity  Adaptable to multiple situations

Summary  Anarchy reigned supreme in Mozilla prior to the use of CM tools  CVS is the process enforcement tool  Bonsai is a CVS to web interface tool  Bugzilla manages issues and enables triage  Tinderbox is software for automating verification and validation  Anarchy reigned supreme in Mozilla prior to the use of CM tools  CVS is the process enforcement tool  Bonsai is a CVS to web interface tool  Bugzilla manages issues and enables triage  Tinderbox is software for automating verification and validation