CMII in Software Development Based on Open Source Tools. CMII Conference Europe 2006 Michael Diers, Olaf Kosel



Similar documents
Taking Subversion to a Higher Level. Branching/Merging Support. Component Management Support. And More

Impact CM: Model-Based Software Change and Configuration Management

How To Understand And Understand The Cmm

Development Process Automation Experiences in Japan

CMII-100H. CMII Standard for Enterprise-Wide Configuration Management and Integrated Process Excellence. by the Institute of Configuration Management

ISO 9001 and ISO Quality Management Guidance for CM Relative to CMII (Rev B)

Information Technology Infrastructure Library (ITIL) Relative to CMII (Rev B)

Introduction to Programming Tools. Anjana & Shankar September,2010

CMII Model for Configuration Management (Rev B)

Software Quality Exercise 2

Integrated tools for collaborative software development

#define. What is #define

SA4 Software Developer Survey Survey Specification v2.2

HP ALM11 & MS VS/TFS2010

Beginning with SubclipseSVN

Nexus Professional Whitepaper. Repository Management: Stages of Adoption

2.2 Netbeans. 2.3 Apache Struts. 2.1 Eclipse. 2.4 ArgoUML

Version Control Tools

SOFTWARE PROCESS MINING

Adopting a Collaborative Software Development Process in the Scientific Community

Software Configuration Management. Slides derived from Dr. Sara Stoecklin s notes and various web sources.

PLM Improvements Needed to Support CMII Baselines

Software Configuration Management. Addendum zu Kapitel 13

Semarchy Convergence for Data Integration The Data Integration Platform for Evolutionary MDM

Visual Paradigm product adoption roadmap

Version Control and Subversion. Dr Paul Tennent

Theme 1 Software Processes. Software Configuration Management

BRINGING CLOUD TRADITIONAL DESKTOP COMPUTING TO APPLICATIONS

CS4507 Advanced Software Engineering

Manager Domain Experts. Delivery Team. C h ic a g o

SOFTWARE TESTING TRAINING COURSES CONTENTS

Demand & Requirements Management Software Development QA & Test Management IT Operations & DevOps Change Management Agile, SAFe, Waterfall Support

Configuration & Build Management

Source Control Systems

Agile Portfolio Management. Jochen(Joe)Krebs

SIEMENS. Teamcenter Change Manager PLM

Working with a Version Control System

Kevin Lee Technical Consultant As part of a normal software build and release process

Function Point Modeler Enterprise Edition A Software Lifecycle Management Tool

How To Run A Hello World On Android (Jdk) On A Microsoft Ds.Io (Windows) Or Android Or Android On A Pc Or Android 4 (

Maven or how to automate java builds, tests and version management with open source tools

TIME. Programming in the large. Lecture 22: Configuration Management. Agenda for today. About your Future. CM: The short version. CM: The long version

Online Help: Product Engineering

Software Engineering. Christopher Simpkins Chris Simpkins (Georgia Tech) CS 2340 Objects and Design CS / 16

An Introduction to Software Development Process and Collaborative Work

Version Control with Subversion

The Bazaar Version Control System. Michael Hudson, Canonical Ltd

DRUPAL CONTINUOUS INTEGRATION. Part I - Introduction

Software configuration management

A new approach to automotive electric/electronic engineering life-cycle management

SOA-14: Continuous Integration in SOA Projects Andreas Gies

Change Management. Prepared by Vince Guess. Sponsored by. The PLM Company Transforming the process of innovation

BEDIFFERENT A C E I N T E R N A T I O N A L

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

Copyrighted , Address :- EH1-Infotech, SCF 69, Top Floor, Phase 3B-2, Sector 60, Mohali (Chandigarh),

Testing Tools Content (Manual with Selenium) Levels of Testing

Software Process in Geant4 an overview

Agile SW Siemens

CPSC 491. Today: Source code control. Source Code (Version) Control. Exercise: g., no git, subversion, cvs, etc.)

What an Architect Needs to Know

CISC 275: Introduction to Software Engineering. Lab 5: Introduction to Revision Control with. Charlie Greenbacker University of Delaware Fall 2011

Requirements Engineering in Healthcare: Challenges, Solution Approaches and Best Practices

Demand & Requirements Management Software Development QA & Test Management IT Operations & DevOps Change Management Agile, SAFe, Waterfall Support

XML and Content Management

Barely Sufficient Software Engineering: 10 Practices to Improve Your Research CSE Software

Continuous Integration. CSC 440: Software Engineering Slide #1

Testing. Chapter. A Fresh Graduate s Guide to Software Development Tools and Technologies. CHAPTER AUTHORS Michael Atmadja Zhang Shuai Richard

A Practical Approach of Teaching Software Engineering

Cross-Platform. Mac OS X ЧЯУ

Chapter 13 Configuration Management

Agile SW Siemens

Meister Going Beyond Maven

vs. Web Site: Blog: blog.soebes.com Dipl.Ing.(FH) Karl Heinz Marbaise

Communiqué 4. Standardized Global Content Management. Designed for World s Leading Enterprises. Industry Leading Products & Platform

Requirements Management Practice Description

Roundtable Enterprise

The Role of the Software Architect

IKAN ALM Architecture. Closing the Gap Enterprise-wide Application Lifecycle Management

Configuration Management in a Software Product Line

1000 Projects later. Security Code Scans at SAP

Introduction to Software Engineering (2+1 SWS) Winter Term 2009 / 2010 Dr. Michael Eichberg Vertretungsprofessur Software Engineering Department of

CS 4240: Principles of Software Design. Course Introduction. Tom Horton

Best Practices of PHP Development

Software Life Cycles and Configuration Management

Digital Industries Trailblazer Apprenticeship. Software Developer - Occupational Brief

WebRatio 5: An Eclipse-based CASE tool for engineering Web applications

DEDICATED TO SOLUTIONS. Automotive System and Software Development

An Introduction to Mercurial Version Control Software

Version Control! Scenarios, Working with Git!

Software infrastructure for Java development projects

Thank you for joining today s technical webinar

Jos Warmer, Independent

Software Development Kit

Source Code Control & Bugtracking

codebeamer INTLAND SOFTWARE codebeamer Medical ALM Solution is built for IEC62304 compliance and provides a wealth of medical development knowledge

DEVELOPMENT OF AN ANALYSIS AND REPORTING TOOL FOR ORACLE FORMS SOURCE CODES

MSWL Development & Tool. Eclipse IDE

Software Development Process and Activities. CS 490MT/5555, Fall 2015, Yongjie Zheng

Version Control. Luka Milovanov

Big Data and Semantic Web in Manufacturing. Nitesh Khilwani, PhD Chief Engineer, Samsung Research Institute Noida, India

Transcription:

CMII in Software Development Based on Open Source Tools Michael Diers, Olaf Kosel

Presentation Outline Introduction Evaluation criteria for an OS out of the box solution Tool evaluation Short presentation of the chosen tool combination Trade-offs and possible solutions Requirements specification and design basis for further development Conclusion

Portfolio & References Software Services - Manage and conduct ambitious and complex software projects Software CM Services - CM analysis in software developing enterprises - CM consulting and implementation - CM training and coaching References - SIEMENS COM, TOREX RETAIL, DGB (German trade union), DResearch Digital Media Systems, KLOPOTEK,

Introduction Michael Diers - Consultant CM/software development processes since 1994 - Comprehensive experience regarding CM tools for distributed development - Actively engaged in the open source projects Distributed CVS and XEmacs Olaf Kosel - Project manager in the field of software development since 1996 for Daimler Benz Interservices, ICL, Fresenius IT, et al - Experience from many software process optimization projects - CMII certified since April 2006

Motivation for CMII CM as basis for software process optimization Detailed, concrete description of process and roles Basis or precise design for other procedure models (CMMI, RUP, V-Model) Basis for the compliance of software standards (ISO 9001:2000, ISO 15504 (SPICE)) Interface to other fields of process Handling of documents, release before implementation

Challenges for Applying CMII in Software CM Structuring documentation/item hierarchy - Tool necessities Separation of development and coding - Development and coding often closely meshed Specific CM patterns in software development - Branching/merging Software development on CMMI level I/II in many enterprises - Recent engineering discipline with established unconventional methods

Why Open Source Software? Low barrier for tool supported CMII introduction Potential for enhancing and adapting the individual needs Broad basis of experience and developers Cost sharing Open reference for CMII in the software development as the development is effected according to CMII principles

Presentation Outline Introduction Evaluation criteria for an OS out of the box solution Tool evaluation Short presentation of the chosen tool combination Trade-offs and possible solutions Requirements specification and design basis for further development Conclusion

Tool Requirements CMII: Baseline and Repository Class Criteria Identification and metadata Unique item number CMII-Baseline Physical item hierarchy, changes & enhancements Document by number, type, revision, creator & user Mapping between documents and items Visualization of all relevant metadata Visualization of mapping document <-> ECN Recall of older baselines Security Authorization and data access protection Technology Architecture and interfaces

Tool Requirements CMII: Change Process Class Criteria Change forms Forms & separate number ranges for PR, ECR, ECN, WA Relations between ECRs and ECNs can be mapped Users/ roles Possibility to define specific users and to assign roles Workflow CMII workflows (closed loop and fast track) Support for the activities CSI, CSII, CSIII, CRB, CIB Scheduling Plans can be derived from accepted tasks Plans can be illustrated (Gantt) Display of critical path and date deadlines Archiving Information about closed PRs, ECRs, ECNs, WAs is stored

Tool Pre-Selection CMII Baseline/ Repository - Concurrent Versions System (CVS) - Subversion (SVN) CMII Change Process - Bugzilla - Mantis - Trac

Presentation Outline Introduction Evaluation criteria for an OS out of the box solution Tool evaluation Short presentation of the chosen tool combination Trade-offs and possible solutions Requirements specification and design basis for further development Conclusion

Tool Evaluation Results: CMII Baseline and Repository Class Criteria SVN CVS Identification and metadata Unique item number, document by number, type, revision, creator & user CMII-Baseline Physical item hierarchy, changes & enhancements Recall of older baselines Security Authorization & data access protection Technology Architecture & interfaces Visualization of physical hierarchy, all metadata,mapping document <-> ECN easily adaptable adaptable with some restrictions o not adaptable or additional development efforts required

Tool Evaluation Results: CMII Change Process Class Criteria Bugzilla Mantis Trac Change forms Forms for PR, ECR, ECN, WA Mapping ECRs & ECNs o Terminology CMII terms usable Users/ roles CMII user & roles Workflow Closed loop & fast track Scheduling Derivable from tasks o Visualization (Gantt) o o Critical path o o o PRs, ECRs, ECNs Archiving

Tool Selection: Subversion/Trac Advantages Subversion - Additional definition of properties incl. versioning for all files - Efficient diff algorithm for binary files - Flexible changes in repository structure Advantages Trac - Integrated bundle with Subversion and a Wiki - Custom fields - Built-in scheduling concept - Plug-in & patch mechanism for enhancements

Presentation Outline Introduction Evaluation criteria for an OS out of the box solution Tool evaluation Short presentation of the chosen tool combination Trade-offs and possible solutions Requirements specification and design basis for further development Conclusion

Welcome Screen Trac for CMII

CMII Item Structure With Subversion

CMII Forms With Trac

CMII Workflow Adaptation With Trac

ECR Change Log Created by Trac

CMII Report: ECRs by ECN

CMII Baseline Adaptation With Trac

Presentation Outline Introduction Evaluation criteria for an OS out of the box solution Tool evaluation Short presentation of the chosen tool combination Trade-offs and possible solutions Requirements specification and design basis for further development Conclusion

Open Issues to Fully Map CMII Separate forms & number ranges for PR, ECR, ECN, WA, DW Integrated ECN impact matrix Complete CMII-Baseline Full workflow support Fine grained access protection Flexible mapping of software item hierarchies

Basis for Further or New Development Application requirements - Training material CMII (course 1-6) ICM/GfKM - Requirements specification elego Design basis elego - Functional specification - System specification - GUI design - Process plan

Presentation Outline Introduction Evaluation criteria for an OS out of the box solution Tool evaluation Short presentation of the chosen tool combination Trade-offs and possible solutions Requirements specification and design basis for further development Conclusion

Functional Specification: Project Context

Functional Specification: Process Model

Functional Specification: Use Case Model (Section)

System Design: Domain Model

System Design: Domain Model (Section)

System Design: Item Hierarchy

Layout Specification: GUI Design

Process Plan: Build Environment Project: DCCSII - www.dccsii.org Process tool: CMII compliant - Trac/Subversion (later DCCSII) Development method and tools: Model Driven Engineering - MDE: Medini Component Modeler - UML: Enterprise Architect - IDE: Eclipse - Language: Java (J2EE)

Presentation Outline Introduction Evaluation criteria for an OS out of the box solution Tool evaluation Short presentation of the chosen tool combination Trade-offs and possible solutions Requirements specification and design basis for further development Conclusion

Conclusion When to use Open Source Tools? - To start with CMII - As long as one can accept trade-offs Why use Open Source Tools? - Easily adaptable - Can be enhanced in a limited range with little effort How to get a full CMII mapping? - Development is necessary

Thank you very much for your attention!