RepoGuard

50 %
50 %
Information about RepoGuard
Technology

Published on July 15, 2009

Author: mlegenhausen

Source: slideshare.net

Description

Overview Prasentation of RepoGuard on the ICGSE Conference.

RepoGuard Validation Framework for Version Control Systems Remidi09 (2009-07-13, Limerick) Malte Legenhausen, Stefan Pielicke German Aerospace Center (DLR), Cologne http://www.dlr.de/sc Slide 1 Remidi09 > 2009-07-13

Outline Software development at the DLR • Facts, Scientific Software Development Problems Motivation RepoGuard • Architecture, Workflow, Configuration Conclusion Benefits, Q&A Slide 2 Remidi 09 > 13 July 2009

DLR German Aerospace Center Research Institution Space Agency Project Management Agency Slide 3 Remidi 09 > 13 July 2009

Locations and employees 6000 employees across  Hamburg 29 research institutes and Bremen-   Neustrelitz Trauen  facilities at Berlin-  Braunschweig   13 sites.  Goettingen Offices in Brussels, Paris and Washington.  Koeln  Bonn  Lampoldshausen  Stuttgart  Oberpfaffenhofen Weilheim  Slide 4 Remidi 09 > 13 July 2009

Distributed Systems and Component Software About Us Main Departement for Software Engineering Grid-Computing Development of Grid-enabled applications Grid security … Management Tools for scientific data Expert systems for computational fluid dynamics Data management tool DataFinder … Software Engineering … Provide Infrastructure for Software Engineering Slide 5 Remidi 09 > 13 July 2009

Scientific Software Development Daily Observations in Research Institutions… Lots of scientists work on large/critical software Mathematicians, physicists, engineers Main Goal: Fast implementation of ideas into running code Knowledge about Software Engineering varies a lot Use of archaic tools and procedures Typical situation: Small scripts grow large Very different team sizes From 1 student to >50 developers Slide 6 Remidi 09 > 13 July 2009

Motivation Different Approaches to Change the Situation First: Training Knowing how to do it right BUT: Developers are like cats Second Approach: Force Need to do it right Slide 7 Remidi 09 > 13 July 2009

Motivation Loosely coupled Development Tools IDE Repository Wiki Browser VCS RepoGuard Bug Tracker All Tools are… Open Source Continuous E-Mail Replaceable Integration Slide 8 Remidi 09 > 13 July 2009

Automatic Server Side Transaction Check What does RepoGuard do? Writes code Commits  The Tao of Source Control: Developer Check failed VCS “If it’s not in the repository, it doesn’t exist.” RepoGuard Feedback Pre-commit execution Checks Slide 9 Remidi 09 > 13 July 2009

RepoGuard What is RepoGuard exactly? Validation framework for VCS Validation before storing changes Provides a unified interface for validation and reporting Easy access to the transaction and external tools Links everything to your VCS Most developer tools are loosely coupled Written in Python Easy and powerful Slide 10 Remidi 09 > 13 July 2009

Architecture Version Control Project - Editor System Configuration Hook Script Transaction Exit-Code RepoGuard Checks Result Handler Code Analysis Positive Mail Access Rights Negative RSS External ● ● ● External ● ● ● Tools ● ● ● Tools Checkstyle Slide 11 Remidi 09 > 13 July 2009

Checks What can be checked… Everything that is related to a transaction Validate Transactional Content Coding Style: Pylint, Checkstyle, ASCII Encoded, … Source Code Analysis: Findbugs, QA C/C++, … XML, HTML, … Validate External Information Bug/Issue Ids Extending VCS Access Rights Slide 12 Remidi 09 > 13 July 2009

Handler What is possible… Handler as reporter E-Mail Log File Console Database Bug Tracking System RSS Feeds Blog post Twitter Handler as trigger Hudson ViewVC Slide 13 Remidi 09 > 13 July 2009

Modularized Architecture Integrate whatever you want… Checks Create your own validation routines Handlers Create your own reporting or trigger routines Bug Tracking Systems Specialized interface for BTS integration Version Control Systems No special VCS required Support of VCS extensible Slide 14 Remidi 09 > 13 July 2009

Order of Check Executions Things you should know in advance Checks are linked as a workflow Results of the check can be “Success” or “Error” and a message “Error” check results can be translated to… Warning: Check is optional Delayed Error: Continue workflow execution Error: Abort workflow execution All results stored in a protocol Final result of the protocol determines whether the transaction is accepted or rejected Final result handled by „Success“ or „Error“ Handlers Slide 15 Remidi 09 > 13 July 2009

Workflow Execution of Checks andContent of Remidi09.java: Rights for Remidi09.java: Handlers forAccess Commit message: Keywords set Remidi09.java: MANTIS ID 42 Remidi09 Permissionvoid main(){}} class Id { static denied IDE RepoGuardLastChangedRevision Something to commit e.g. Eclipse Mantis Keywords AccessRights Checkstyle Error Success Warnung Error Warning DelayedError Error Succes-Handler Error-Handler Mantis Console E-Mail E-Mail Hudson Log File Slide 16 Remidi 09 > 13 July 2009

Configuration Configuration of the Workflow, Checks and Handlers All in one rich property file Key-Value-Pairs arranged in groups and subgroups Validation of Configuration Validation before using in a productive environment Configuration Templates Reduce your overhead between configurations Configuration hierarchy Inheritance mechanism Slide 17 Remidi 09 > 13 July 2009

Command Line Tool Easy Use of RepoGuard Administration Easy installation and removal of RepoGuard in repositories Validation of Configuration Validate your configuration file before using in a productive environment Configuration support Extensible Command Line Tool Integrate new functionality for RepoGuard configuration Slide 18 Remidi 09 > 13 July 2009

Benefits of RepoGuard Why you should use it! Better integration of Version Control in the development process Especially the connectivity to the Bug Tracking System Stay informed about what happens in your Repository Reporting over all communication channels possible Keeping your repository under surveillance Detection and rejection of mistakes Increase of the overall source code quality Turn your developers into well-behaved cats Slide 19 Remidi 09 > 13 July 2009

Conclusion Where can I get it? Availability Open-Source (Apache License V2.0) More information and download at… http://repoguard.tigris.org Contact Malte.Legenhausen@dlr.de, Stefan.Pielicke@dlr.de Slide 20 Remidi 09 > 13 July 2009

Q&A Questions and maybe Answers Slide 21 Remidi 09 > 13 July 2009

Add a comment

Related presentations

Presentación que realice en el Evento Nacional de Gobierno Abierto, realizado los ...

In this presentation we will describe our experience developing with a highly dyna...

Presentation to the LITA Forum 7th November 2014 Albuquerque, NM

Un recorrido por los cambios que nos generará el wearabletech en el futuro

Um paralelo entre as novidades & mercado em Wearable Computing e Tecnologias Assis...

Microsoft finally joins the smartwatch and fitness tracker game by introducing the...

Related pages

DLR - Simulations- und Softwaretechnik - RepoGuard

RepoGuard ist eine Software, die es erlaubt ein Versionsverwaltungssystem, wie z.B. Subversion, Perforce oder GIT, in eine existierende Arbeitsumgebung zu ...
Read more

GitHub - DLR-SC/RepoGuard: RepoGuard is a software ...

RepoGuard is a software development tool which assists in a software project. Essentially, it is used to automatically perform checks on commit time to ...
Read more

RepoGuard - DLR Software

RepoGuard is a software development tool which assists in a software project. Essentially, it is used to automatically perform checks on commit time to ...
Read more

DLR - Simulation and Software Technology - RepoGuard

RepoGuard is an advanced validation framework with built-in integrations for several common version control systems.
Read more

GitHub - prezi/repoguard: Repoguard is a simple tool to ...

README.md Repoguard. Repoguard is a simple generic tool to check and alert on any change in git repositories which might be interesting for you.
Read more

RepoGuard | Exclusive Programs

RepoGuard Insurance and Bonding Programs for the Collateral & Recovery Industry
Read more

RepoGuard: A Framework for Integration of Development ...

Dokumentart: Konferenzbeitrag (Paper) Titel: RepoGuard: A Framework for Integration of Development Tools with SourceCode Repositories: Autoren:
Read more

RepoGuard Validation Framework for Version Control Systems

Remidi09 > 2009-07-13 Slide 1 RepoGuard Validation Framework for Version Control Systems Remidi09 (2009-07-13, Limerick) Malte Legenhausen, Stefan Pielicke
Read more

RepoGuard: A Framework for Integration of Development ...

Read "RepoGuard: A Framework for Integration of Development Tools with Source Code Repositories" on DeepDyve - Instant access to the journals you need!
Read more

Software Engineering - DLR Software

Software Engineering RepoGuard. RepoGuard is a software development tool which assists in a software project. Essentially, it is used to automatically ...
Read more