FAKULTÄT FÜR INFORMATIK Leveraging Traceability Between Code and Tasks for Code Reviews and Release Management

Total Page:16

File Type:pdf, Size:1020Kb

FAKULTÄT FÜR INFORMATIK Leveraging Traceability Between Code and Tasks for Code Reviews and Release Management FAKULTÄT FÜR INFORMATIK DER TECHNISCHEN UNIVERSITÄT MÜNCHEN Master’s Thesis in Informatics Leveraging Traceability between Code and Tasks for Code Reviews and Release Management Jan Finis FAKULTÄT FÜR INFORMATIK DER TECHNISCHEN UNIVERSITÄT MÜNCHEN Master’s Thesis in Informatics Leveraging Traceability between Code and Tasks for Code Reviews and Release Management Einsatz von Nachvollziehbarkeit zwischen Quellcode und Aufgaben für Code Reviews und Freigabemanagement Author: Jan Finis Supervisor: Prof. Bernd Brügge, Ph.D. Advisors: Maximilian Kögel, Nitesh Narayan Submission Date: May 18, 2011 I assure the single-handed composition of this master’s thesis only supported by declared resources. Sydney, May 10th, 2011 Jan Finis Acknowledgments First, I would like to thank my adviser Maximilian Kögel for actively supporting me with my thesis and being reachable for my frequent issues even at unusual times and even after he left the chair. Furthermore, I would like to thank him for his patience, as the surrounding conditions of my thesis, like me having an industrial internship and finishing my thesis abroad, were sometimes quite impedimental. Second, I want to thank my other adviser Nitesh Narayan for helping out after Max- imilian has left the chair. Since he did not advise me from the start, he had more effort working himself into my topic than any usual adviser being in charge of a thesis from the beginning on. Third, I want to thank the National ICT Australia for providing a workspace, Internet, and library access for me while I was finishing my thesis in Sydney. Finally, my thanks go to my supervisor Professor Bernd Brügge, Ph.D. for enabling me to write my thesis at his chair and for providing his Software Engineering book which helped me a lot during the writing of this thesis. Jan Finis - Code-to-Task Traceability for Code Reviews and Release Management vii Abstract The establishment of traceability links from source code to software engineering con- cerns like features, requirements, and tasks (the so-called code-to-concern traceability) is a challenging field of research. The approach of this thesis links tasks in the software de- velopment project to their resulting changes in the source code. In contrast, most existing approaches link other concerns, like requirements satisfied by the code, to the source code. By linking code changes to tasks, a more finely grained traceability is established. Since tasks can be linked to other concerns, this approach can also be used to establish traceabil- ity to these concerns as well. Another point which sets this work apart from previous ones is that the proposed links are maintained manually. In contrast to this, most of the existing approaches use heuristic methods to compute links. Due to their statistic nature, these approaches are rather unreli- able. Numerous processes exist which cannot deal with this unreliability and thus cannot be realized with heuristic approaches. Two of them are elaborated in this thesis. One process benefiting from the proposed links is found in the field of release manage- ment: By maintaining links between tasks and their resulting implementation, it is possible to determine which tasks are implemented in a given source code. By linking a release to a set of tasks which should be implemented for this release, the source code from which a release is to be built can be checked against these tasks. Thereby, it can be ensured that a release contains all features which are planned for it. In addition, a changelog can be generated by assembling the description of all included tasks. Ultimately, if the source code changes associated to a desired task are missing in the source code of a release, it is possible to automatically merge them into it. Another process benefiting from the proposed links is code review: When the results of a task are to be reviewed, a link to these results can be used to quickly transfer the respective changes to the reviewer’s machine. Version control systems like Subversion or Git already store the change history of a soft- ware development project. Thus, using them to establish the links is a promising approach. In this work, two different approaches using version control systems for the establishment of code-to-task links are proposed: One uses patches whereas the other one uses branches in the repository to store the set of changes to be linked to a task. The two approaches are applied to the two aforementioned processes in the fields of release management and code reviews. A tool is designed which performs the mentioned tasks. A prototype of this tool, which is integrated into the UNICASE CASE tool for Eclipse, is developed. Finally, the two approaches are compared and the prototype is evaluated. Jan Finis - Code-to-Task Traceability for Code Reviews and Release Management ix Contents 1. Introduction1 1.1. Motivation......................................1 1.2. Objective.......................................3 1.3. Related Work....................................5 1.3.1. VCS Repository Mining..........................6 1.3.2. Source Code Traceability..........................6 1.3.3. Release Management............................8 1.3.4. Code Review................................8 1.4. Scope.........................................9 1.5. Outline........................................9 2. Preliminaries 11 2.1. UNICASE ....................................... 11 2.2. Version Control Systems & Related Concepts.................. 12 2.2.1. Version Control............................... 12 2.2.2. Version Control Systems.......................... 15 2.2.3. Patches.................................... 19 2.2.4. Merging................................... 20 2.3. Popular Version Control Systems......................... 23 2.3.1. Early VCSs.................................. 24 2.3.2. Subversion.................................. 25 2.3.3. Git...................................... 26 2.3.4. Further Modern VCSs........................... 30 2.4. Change Package Representation......................... 30 2.4.1. Patches as Change Packages....................... 32 2.4.2. Lightweight Branches........................... 32 2.5. Data Dictionary................................... 34 3. Requirements Elicitation 37 3.1. Functional Requirements.............................. 37 3.1.1. Data Model Related Requirements.................... 37 3.1.2. Change Package Related Requirements................. 38 3.1.3. Repository Related Requirements.................... 39 3.1.4. Further Requirements........................... 40 3.2. Non-Functional Requirements........................... 40 3.3. Scenarios....................................... 41 3.3.1. Scenario “Project Setup”.......................... 41 3.3.2. Scenario “Development Workflow”................... 42 Jan Finis - Code-to-Task Traceability for Code Reviews and Release Management xi Contents 3.3.3. Scenario “Release Building”........................ 42 3.4. Use Cases...................................... 43 3.4.1. Use Case Setup Stream ........................... 44 3.4.2. Use Case Create Release ........................... 45 3.4.3. Use Case Assign Work Items to Release .................. 46 3.4.4. Use Case Check Release ........................... 47 3.4.5. Use Case Build Release ........................... 49 3.4.6. Use Case Resolve Conflict .......................... 51 3.4.7. Use Case Collect Changes .......................... 52 3.4.8. Use Case Assign to Work Item ....................... 53 3.4.9. Use Case Review Change Package ..................... 54 3.4.10. Use Case Commit Change Package ..................... 55 4. Requirements Analysis 57 4.1. Entity Objects.................................... 57 4.1.1. CASE Objects................................ 57 4.1.2. Revision Handling Classes........................ 59 4.1.3. Release Checking Classes......................... 60 4.2. Boundary & Control Objects............................ 60 4.2.1. Change Package Related Objects..................... 61 4.2.2. Release & Stream Setup Related Objects................. 62 4.2.3. Release Building Related Objects..................... 63 4.3. Dynamic Behaviour................................. 64 4.3.1. Release Checking.............................. 64 4.3.2. Release Building.............................. 66 5. System Design 69 5.1. Design Goals..................................... 69 5.1.1. Robustness & Reliability.......................... 69 5.1.2. Time & Manpower............................. 69 5.1.3. Adaptability................................. 70 5.1.4. Utility.................................... 70 5.1.5. Integration with Existing Systems.................... 70 5.2. Subsystem Decomposition............................. 71 5.2.1. Architecture Overview........................... 71 5.2.2. Selection of Off-The-Shelf Components................. 71 5.2.3. Subsystems................................. 72 5.2.4. Components (Plug-Ins).......................... 74 5.3. Hardware/Software Mapping........................... 75 5.4. Further System Design Decisions......................... 76 5.5. Boundary Conditions................................ 77 6. Object Design 79 6.1. The Eclipse Modelling Framework........................ 79 6.2. Adaption of the Analysis Object Model..................... 80 6.3. Extension Points................................... 82 xii Jan Finis - Code-to-Task Traceability for Code Reviews and Release Management Contents 6.4. Displaying Model Elements............................ 84 6.4.1. JFace
Recommended publications
  • Jira Team Satisfaction Report
    Jira Team Satisfaction Report Alister pricing his shareholders bights bearably, but photoelectric Andros never metricate so ruminantly. Animate and scaldic beneficiaryHaywood often Jarvis coxes dignify some jadedly. prince's-feather helluva or disprizes graspingly. Enured Curtice nictate some mainlanders after Your prospect to unlocking Agile Testing in Jira Xray Blog. The team receive the latter. What the types to manage service desk was reported issues across all cards on jira service management, they can otherwise have? Track or the ticket fields, apply them to fit your production processes set one of the right balance between multiple tags templates. Soon the jira service customer satisfaction report or jira service management can reject merge opsgenie with integrity team members permission to access and bug issue. Your current Info-Tech Research Group subscription does not vehicle access to medicine content. It teams have embraced them explore administrator global email for jira satisfaction surveys to reporter field values are. In jira satisfaction report had us and kanban to reporter field id and quantitative and look at the date, it simpler alternative that we! First in Time Report report Report Builder Whether you are eating in force support or lock desk has Crucial for chemistry success reduce customer satisfaction is. In 2012 I lead a partition to install Atlassian suite of products in a brittle environment. Changepoint Extends Market-Leading Daptiv PPM Solution to. 5 Reasons to seize an Employee Satisfaction Survey. It team satisfaction report bugs to jira alternative for multiple checklists templates that you get access to send customers will only offer a rather with? Customer satisfaction or CSAT is how key performance indicator that tracks how satisfied.
    [Show full text]
  • Project Management Software March 2019
    PROJECT MANAGEMENT SOFTWARE MARCH 2019 Powered by Methodology CONTENTS 3 Introduction 5 Defining Project Management Software 6 FrontRunners (Small Vendors) 8 FrontRunners (Enterprise Vendors) 10 Runners Up 22 Methodology Basics 2 INTRODUCTION his FrontRunners analysis minimum qualifying score of 3.96 Tis a data-driven assessment for Usability and 3.91 for User identifying products in the Project Recommended, while the Small Management software market that Vendor graphic had a minimum offer the best capability and value qualifying score of 4.55 for Usability for small businesses. For a given and 4.38 for User Recommended. market, products are evaluated and given a score for Usability (x-axis) To be considered for the Project and User Recommended (y-axis). Management FrontRunners, a FrontRunners then plots 10-15 product needed a minimum of 20 products each on a Small Vendor user reviews published within 18 and an Enterprise Vendor graphic, months of the evaluation period. based on vendor business size, per Products needed a minimum user category. rating score of 3.0 for both Usability and User Recommended in both In the Project Management the Small and Enterprise graphics. FrontRunners infographic, the Enterprise Vendor graphic had a 3 INTRODUCTION The minimum score cutoff to be included in the FrontRunners graphic varies by category, depending on the range of scores in each category. No product with a score less than 3.0 in either dimension is included in any FrontRunners graphic. For products included, the Usability and User Recommended scores determine their positions on the FrontRunners graphic. 4 DEFINING PROJECT MANAGEMENT SOFTWARE roject management software and document management, as well Phelps organizations manage as at least one of the following: time and deliver projects on time, on tracking, budgeting, and resource budget and within scope.
    [Show full text]
  • Version Control – Agile Workflow with Git/Github
    Version Control – Agile Workflow with Git/GitHub 19/20 November 2019 | Guido Trensch (JSC, SimLab Neuroscience) Content Motivation Version Control Systems (VCS) Understanding Git GitHub (Agile Workflow) References Forschungszentrum Jülich, JSC:SimLab Neuroscience 2 Content Motivation Version Control Systems (VCS) Understanding Git GitHub (Agile Workflow) References Forschungszentrum Jülich, JSC:SimLab Neuroscience 3 Motivation • Version control is one aspect of configuration management (CM). The main CM processes are concerned with: • System building • Preparing software for releases and keeping track of system versions. • Change management • Keeping track of requests for changes, working out the costs and impact. • Release management • Preparing software for releases and keeping track of system versions. • Version control • Keep track of different versions of software components and allow independent development. [Ian Sommerville,“Software Engineering”] Forschungszentrum Jülich, JSC:SimLab Neuroscience 4 Motivation • Keep track of different versions of software components • Identify, store, organize and control revisions and access to it • Essential for the organization of multi-developer projects is independent development • Ensure that changes made by different developers do not interfere with each other • Provide strategies to solve conflicts CONFLICT Alice Bob Forschungszentrum Jülich, JSC:SimLab Neuroscience 5 Content Motivation Version Control Systems (VCS) Understanding Git GitHub (Agile Workflow) References Forschungszentrum Jülich,
    [Show full text]
  • Revision Control
    Revision Control Tomáš Kalibera, (Peter Libič) Department of Distributed and Dependable Systems http://d3s.mff.cuni.cz CHARLES UNIVERSITY PRAGUE Faculty of Mathematics and Physics Problems solved by revision control What is it good for? Keeping history of system evolution • What a “system” can be . Source code (single file, source tree) . Textual document . In general anything what can evolve – can have versions • Why ? . Safer experimentation – easy reverting to an older version • Additional benefits . Tracking progress (how many lines have I added yesterday) . Incremental processing (distributing patches, …) Allowing concurrent work on a system • Why concurrent work ? . Size and complexity of current systems (source code) require team work • How can concurrent work be organized ? 1. Independent modifications of (distinct) system parts 2. Resolving conflicting modifications 3. Checking that the whole system works . Additional benefits . Evaluating productivity of team members Additional benefits of code revision control • How revision control helps . Code is isolated at one place (no generated files) . Notifications when a new code version is available • Potential applications that benefit . Automated testing • Compile errors, functional errors, performance regressions . Automated building . Backup • Being at one place, the source is isolated from unneeded generated files . Code browsing • Web interface with hyperlinked code Typical architecture Working copy Source code repository (versioned sources) synchronization Basic operations • Check-out . Create a working copy of repository content • Update . Update working copy using repository (both to latest and historical version) • Check-in (Commit) . Propagate working copy back to repository • Diff . Show differences between two versions of source code Simplified usage scenario Source code Check-out or update repository Working 1 copy 2 Modify & Test Check-in 3 Exporting/importing source trees • Import .
    [Show full text]
  • Atlassian Is Primed to Widen Its Appeal Beyond IT
    Seth Agulnick, [email protected] REPORT Atlassian Is Primed to Widen Its Appeal Beyond IT Companies: CA, CRM, GOOG/GOOGL, HPE, IBM, JIVE, MSFT, NOW, ORCL, TEAM, ZEN February 11, 2016 Report Type: Initial Coverage ☐ Previously Covered Full Report ☐ Update Report Research Question: Will Atlassian’s workflow tools continue to grow quickly with software development teams while also expanding into new use cases? Summary of Findings Silo Summaries . Atlassian Corp. Plc’s (TEAM) tracking and collaboration tools, widely 1) Atlassian Software Users considered the best-in-class for software development, are gaining JIRA and Confluence are both effective tools for team traction among nontechnical teams. collaboration. JIRA can be customized to suit nearly any team’s development process, though setup is . The company’s two flagship products, JIRA and Confluence, are complicated. Confluence is much easier to use and slowly being rolled out in departments like human resources, sales, tends to be deployed more widely. Atlassian’s biggest customer support and product management. These represent a advantage is the way all of its software pieces work together. Atlassian products—which already are being much larger market than Atlassian’s traditional core in IT. branched out beyond software development—can grow . JIRA was praised for its flexibility and advanced customization even further with business teams. options, though the latter trait makes setup and maintenance a challenge. It has great potential for sales growth with any business 2) Users of Competing Software Three of these five sources said Atlassian’s JIRA is not team that needs to track numerous tasks through a multistage the right fit for every company.
    [Show full text]
  • Distributed Revision Control with Mercurial
    Distributed revision control with Mercurial Bryan O’Sullivan Copyright c 2006, 2007 Bryan O’Sullivan. This material may be distributed only subject to the terms and conditions set forth in version 1.0 of the Open Publication License. Please refer to Appendix D for the license text. This book was prepared from rev 028543f67bea, dated 2008-08-20 15:27 -0700, using rev a58a611c320f of Mercurial. Contents Contents i Preface 2 0.1 This book is a work in progress ...................................... 2 0.2 About the examples in this book ..................................... 2 0.3 Colophon—this book is Free ....................................... 2 1 Introduction 3 1.1 About revision control .......................................... 3 1.1.1 Why use revision control? .................................... 3 1.1.2 The many names of revision control ............................... 4 1.2 A short history of revision control .................................... 4 1.3 Trends in revision control ......................................... 5 1.4 A few of the advantages of distributed revision control ......................... 5 1.4.1 Advantages for open source projects ............................... 6 1.4.2 Advantages for commercial projects ............................... 6 1.5 Why choose Mercurial? .......................................... 7 1.6 Mercurial compared with other tools ................................... 7 1.6.1 Subversion ............................................ 7 1.6.2 Git ................................................ 8 1.6.3
    [Show full text]
  • Source Code Revision Control Systems and Auto-Documenting
    Source Code Revision Control Systems and Auto-Documenting Headers for SAS® Programs on a UNIX or PC Multiuser Environment Terek Peterson, Alliance Consulting Group, Philadelphia, PA Max Cherny, Alliance Consulting Group, Philadelphia, PA ABSTRACT This paper discusses two free products available on UNIX and PC RCS, which is a more powerful utility than SCCS, was written in environments called SCCS (Source Code Control System) and early 1980s by Walter F. Tichy at Purdue University in Indiana. It RCS (Revision Control System). When used in a multi-user used many programs developed in the 1970s, learning from environment, these systems give programmers a tool to enforce mistakes of SCCS and can be seen as a logical improvement of change control, create versions of programs, document changes SCCS. Since RCS stores the latest version in full, it is much to programs, create backups during reporting efforts, and faster in retrieving the latest version. RCS is also faster than automatically update vital information directly within a SASâ SCCS in retrieving older versions and RCS has an easier program. These systems help to create an audit trail for interface for first time users. RCS commands are more intuitive programs as required by the FDA for a drug trial. than SCCS commands. In addition, there are less commands, the system is more consistent and it has a greater variety of options. Since RCS is a newer, more powerful source code INTRODUCTION control system, this paper will primarily focus on that system. The pharmaceutical industry is one of the most regulated industries in this country. Almost every step of a clinical trial is subject to very strict FDA regulations.
    [Show full text]
  • DVCS Or a New Way to Use Version Control Systems for Freebsd
    Brief history of VCS FreeBSD context & gures Is Arch/baz suited for FreeBSD? Mercurial to the rescue New processes & policies needed Conclusions DVCS or a new way to use Version Control Systems for FreeBSD Ollivier ROBERT <[email protected]> BSDCan 2006 Ottawa, Canada May, 12-13th, 2006 Ollivier ROBERT <[email protected]> DVCS or a new way to use Version Control Systems for FreeBSD Brief history of VCS FreeBSD context & gures Is Arch/baz suited for FreeBSD? Mercurial to the rescue New processes & policies needed Conclusions Agenda 1 Brief history of VCS 2 FreeBSD context & gures 3 Is Arch/baz suited for FreeBSD? 4 Mercurial to the rescue 5 New processes & policies needed 6 Conclusions Ollivier ROBERT <[email protected]> DVCS or a new way to use Version Control Systems for FreeBSD Brief history of VCS FreeBSD context & gures Is Arch/baz suited for FreeBSD? Mercurial to the rescue New processes & policies needed Conclusions The ancestors: SCCS, RCS File-oriented Use a subdirectory to store deltas and metadata Use lock-based architecture Support shared developments through NFS (fragile) SCCS is proprietary (System V), RCS is Open Source a SCCS clone exists: CSSC You can have a central repository with symlinks (RCS) Ollivier ROBERT <[email protected]> DVCS or a new way to use Version Control Systems for FreeBSD Brief history of VCS FreeBSD context & gures Is Arch/baz suited for FreeBSD? Mercurial to the rescue New processes & policies needed Conclusions CVS, the de facto VCS for the free world Initially written as shell wrappers over RCS then rewritten in C Centralised server Easy UI Use sandboxes to avoid locking Simple 3-way merges Can be replicated through CVSup or even rsync Extensive documentation (papers, websites, books) Free software and used everywhere (SourceForge for example) Ollivier ROBERT <[email protected]> DVCS or a new way to use Version Control Systems for FreeBSD Brief history of VCS FreeBSD context & gures Is Arch/baz suited for FreeBSD? Mercurial to the rescue New processes & policies needed Conclusions CVS annoyances and aws BUT..
    [Show full text]
  • INF5750/9750 - Lecture 1 (Part III) Problem Area
    Revision control INF5750/9750 - Lecture 1 (Part III) Problem area ● Software projects with multiple developers need to coordinate and synchronize the source code Approaches to version control ● Work on same computer and take turns coding ○ Nah... ● Send files by e-mail or put them online ○ Lots of manual work ● Put files on a shared disk ○ Files get overwritten or deleted and work is lost, lots of direct coordination ● In short: Error prone and inefficient The preferred solution ● Use a revision control system. RCS - software that allows for multiple developers to work on the same codebase in a coordinated fashion ● History of Revision Control Systems: ○ File versioning tools, e.g. SCCS, RCS ○ Central Style - tree versioning tools. e.g. CVS ○ Central Style 2 - tree versioning tools e.g. SVN ○ Distributed style - tree versioning tools e.g. Bazaar ● Modern DVCS include Git, Mercurial, Bazaar Which system in this course? ● In this course we will be using GIT as the version control system ● We will use the UIO git system, but you can also make git accounts on github.com or bitbucket for your own projects ● DHIS2 uses a different system: Launchpad/Bazaar How it works Working tree: Local copy of the source code Repository: residing on the Central storage of developer’s the source code at computer (a client) a server synchronize synchronize Commit Commit locally Centralized De-centralized The repository Central ● Remembers every change ever written to it (called commits) ● You can have a central or local repository. ○ Central = big server in
    [Show full text]
  • Opinnäytetyö Ohjeet
    Lappeenrannan–Lahden teknillinen yliopisto LUT School of Engineering Science Tietotekniikan koulutusohjelma Kandidaatintyö Mikko Mustonen PARHAITEN OPETUSKÄYTTÖÖN SOVELTUVAN VERSIONHALLINTAJÄRJESTELMÄN LÖYTÄMINEN Työn tarkastaja: Tutkijaopettaja Uolevi Nikula Työn ohjaaja: Tutkijaopettaja Uolevi Nikula TIIVISTELMÄ LUT-yliopisto School of Engineering Science Tietotekniikan koulutusohjelma Mikko Mustonen Parhaiten opetuskäyttöön soveltuvan versionhallintajärjestelmän löytäminen Kandidaatintyö 2019 31 sivua, 8 kuvaa, 2 taulukkoa Työn tarkastajat: Tutkijaopettaja Uolevi Nikula Hakusanat: versionhallinta, versionhallintajärjestelmä, Git, GitLab, SVN, Subversion, oppimateriaali Keywords: version control, version control system, Git, GitLab, SVN, Subversion, learning material LUT-yliopistossa on tietotekniikan opetuksessa käytetty Apache Subversionia versionhallintaan. Subversionin käyttö kuitenkin johtaa ylimääräisiin ylläpitotoimiin LUTin tietohallinnolle. Lisäksi Subversionin julkaisun jälkeen on tullut uusia versionhallintajärjestelmiä ja tässä työssä tutkitaankin, olisiko Subversion syytä vaihtaa johonkin toiseen versionhallintajärjestelmään opetuskäytössä. Työn tavoitteena on löytää opetuskäyttöön parhaiten soveltuva versionhallintajärjestelmä ja tuottaa sille opetusmateriaalia. Työssä havaittiin, että Git on suosituin versionhallintajärjestelmä ja se on myös suhteellisen helppo käyttää. Lisäksi GitLab on tutkimuksen mukaan Suomen yliopistoissa käytetyin ja ominaisuuksiltaan ja hinnaltaan sopivin Gitin web-käyttöliittymä. Näille tehtiin
    [Show full text]
  • Bazaar, Das DVCS
    Bazaar, das DVCS Marek Kubica 20. November 2008 Marek Kubica Bazaar, das DVCS Vorweg ein paar Infos Mit was ich so spiele Bazaar in der Arbeit Mercurial für Python-Projekte Git für den Rest Welche Spielzeuge lass ich links liegen CVS wozu noch wo es SVN gibt? SVN wozu noch wenn es DVCS gibt? darcs lohnt sich nicht mehr monotone, codeville, arch obsolete das selbsgehackte, tolle DVCS deines Nachbarn ;) Marek Kubica Bazaar, das DVCS Geschichte In the beginning, there was GNU Arch Marek Kubica Bazaar, das DVCS GNU Arch Die Anfänge von DVCS CVS stinkt, wir brauchen was besseres SVN ist Evolution, keine Revolution GNU Arch war das erste DVCS mit dem ich in Kontakt kam (larch) fürchterlich kompliziert wurde dann von tla ersetzt immer noch fürchterlich Canonical hat tla 1.2 geforkt und Bazaar, baz genannt Paralell dazu: revc = Arch 2.0 Marek Kubica Bazaar, das DVCS Baz als Rettung? Von heiÿen Kartoeln baz war in C Was passiert: Canonical ruft Bazaar-NG ins Leben, bzr, lässt baz fallen Bazaar-NG wird in Bazaar umgetauft baz ist tot, tla ist tot, larch ist tot, revc ist bedeutungslos Hurra, GNU Arch ist endlich tot, es lebe bzr! Marek Kubica Bazaar, das DVCS bzr, der Retter Was bietet Bazaar? in Python geschrieben, mit einigen Speedups in Pyrex (C) reguläre Releases (quasi jeden Monat) Einfache Bedienung Meist ausreichende Performance Umfangreiche Dokumentation: Programmmeldungen, Manpages, Wiki, IRC-Channel (wenn man Geduld hat) Flexible Einsatzmöglichkeiten (verschiedene Workows) 1 Git mit Bazaar simulieren 2 SVN in Bazaar nachbauen (für Nostalgiker) freier Hoster wo man Code hochladen kann (Launchpad) Marek Kubica Bazaar, das DVCS Zeitleiste 2005 war eine aufregende Zeit 26.
    [Show full text]
  • Simple Version Control of SAS Programs and SAS Data Sets Magnus Mengelbier, Limelogic Ltd, United Kingdom
    Simple Version Control of SAS Programs and SAS Data Sets Magnus Mengelbier, Limelogic Ltd, United Kingdom ABSTRACT SUBVERSION AND LIFE SCIENCES SAS data sets and programs that reside on the local network are most often stored using a simple Subversion can fit very well within Life Sciences and with a tweak here and there, the version and file system with no capability of version control, audit trail of changes and all the benefits. We revision control can be a foundation for a standard and compliant analytics environment and consider the possibility to capitalise on the capabilities of Subversion and other simple process. straightforward conventions to provide version control and an audit trail for SAS data sets, standard macro libraries and programs without changing the SAS environment. TRUNK –BRANCHES –TAGS OR DEV –QC -PROD INTRODUCTION The approach with trunk, branches and tags can also be used within reporting clinical trials, if outputs are standardized for a specific study and used in multiple reporting events. Most organisations will use the benefits of a local network drive, a mounted share or a dedicated SAS server file system to store and archive study data in multiple formats, analytical programs and trunk Pre-lock data and programs for reporting purposes their respective logs, outputs and deliverables. branch Deliverables for a specific reporting event such as Investigator Brochure A manual process is most often implemented to retain versions and snapshots of data, programs (IB), Investigational New Drug (IND), Clinical Study Reports (CSRs), etc and deliverables with varying degrees of success most often. Although not perfect, the process is tag Dry run, Database Lock, Draft Outputs, Final Outputs sufficient to a degree.
    [Show full text]