DOKUMENTATION UND KOMMUNIKATION IN IT- FORSCHUNGSPROJEKTEN

Ähnliche Dokumente
Semesterprojekt Semantic Text Browsing

Versionierung und Bugtracking mit Git(Hub)

Crashkurs Subversion / Trac / Provisioning. Jan Zieschang, , Berlin

Praktikum Ingenieurinformatik (PI)

Software Engineering in der Praxis

Versionsverwaltung mit Mercurial für Einsteiger

FS cs108 Programmierpraktikum Subversion. Lukas Beck Cedric Geissmann Alexander Stiemer

git & git-flow Jens Sandmann Warpzone Münster e.v. Jens Sandmann (WZ) git & git-flow / 31

Versionsverwaltung für die KU Betriebssysteme. Eine Einführung

Versionskontrolle mit Subversion

Versionsverwaltung mit SVN

Mercurial. or how I learned to stop worrying and love the merge. Ted Naleid IAIK

Deployment Deployment Seite 1 / 25

Einführung in Subversion

Versionsverwaltung von Softwareartefakten. 21. Oktober 2014

Einführung in Git. Dirk Deimeke. 19. August My own IT. ddeimeke (My own IT) Einführung in Git 19. August / 23

Versionskontrollsysteme. Uwe Berger & Markus Dahms <bralug@bralug.de>

Software-Engineering Grundlagen des Software-Engineering 7.3 Sourcecode-Verwaltung mit Versionsmanagement-Systemen Einführung in Subversion (SVN)

Apache Subversion (SVN)

Inhaltsverzeichnis. 1 Einleitung. Literatur. 1.1 CVS (Concurrent Version System) [Pru03, Zee02, Ced05]

Einführung in Subversion. Tutorium SWP

Die Projek*ools. Files, Git, Tickets & Time

Medieninformatik Praktikum. Jens Rademacher

Subversion als Werkzeug in der Software-Entwicklung Eine Einführung. Tobias G. Pfeiffer Freie Universität Berlin

Versionsverwaltung GIT & SVN. Alexander aus der Fünten. Proseminar: Methoden und Werkzeuge, SS Lehrstuhl i9, Prof. Dr. T.

Semesterprojekt Entwicklung einer Suchmaschine für Alternativmethoden zu Tierversuchen. Versionierung und Bugtracking mit GitHub

Torsten Flatter inovex GmbH. "Git.NET" gibt's nicht?

Kurzanleitung zu. von Daniel Jettka

Von SVN zu Git. Daniel Willmann cbna

Linux Cafe Referent: Bernd Strößenreuther

Verteilte Versionskontrolle mit GIT Dortmund Ansgar Brauner - GreenPocket GmbH - Köln

Sourcecodeverwaltung

Eine Einführung in das verteilte Quelltextverwaltungssystem Git

SVN-Einführung für das SEP DS und CM. Julian Timpner, Stefan Brenner, Stephan Rottmann

Git - Fast Version Control System

CVS. The open standard for version control. (Concurrent Versions System) Maik Zemann CVS

Moodle aktuell halten mit Git

CVS-Einführung. Sebastian Mancke,

Einfu hrung in Subversion mit TortoiseSVN

Softwareprojekt - Einführung

Subversion. Einstieg in die. Versionskontrolle

Proseminar Unix-Tools CVS Daniel Weber & Zhen Zhang Betreuer: Volker Baier

git Änderungen verwalten mit git

Subversion und Trac. Michael Trunner. 23. Januar Fachschaft Informatik und Softwaretechnik Universität Stuttgart

Einführung Git Interna Workflows Referenzen. Git. Fast Version Control System. Michael Kuhn

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Anleitung Redmine. Inhalt. Seite 1 von 11. Anleitung Redmine

Git in großen Projekten

Versionskontrolle mit Subversion

WinCVS Version 1.3. Voraussetzung. Frank Grimm Mario Rasser

Vorlesung Programmieren. Versionskontrollsysteme. Ziele von VCS. Versionskontrolle

Anleitung Redmine. Inhalt. Seite 1 von 11. Anleitung Redmine

Dezentrale Versionsverwaltung

Branching und Merging mit Visual Studio Team System

Versionsverwaltung mit git. Christoph Knabe FB VI

Quellcodeverwaltung mit SubVersion

HSR git und subversion HowTo

IT-Projekt-Management

crm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe

Cad-OasEs Int. GmbH. 20 Jahre UG/NX Erfahrung prägen Methodik und Leistungen. Nutzen Sie dieses Wissen!

Versionsverwaltung für r Visual Studio.NET mit Subversion

Subversion. 17. Oktober Subversion. Norbert Perk. Warum Versionsverwaltung? Wie funktioniert. Was ist Subversion? Subversion- Server.

MetaQuotes Empfehlungen zum Gebrauch von

Archiv - Berechtigungen

Problem crazytrickler unter Windows 8:

8. Dokumentenverwaltung mit CVS eine Einführung

Wie benutzt man TortoiseSVN

Kurzeinführung Excel2App. Version 1.0.0

Git II. Dezentrale Versionsverwaltung im Team

IAWWeb PDFManager. - Kurzanleitung -

SJ OFFICE - Update 3.0

Dokumentation owncloud PH Wien

Versionsverwaltung. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2009

HTBVIEWER INBETRIEBNAHME

eprints-anwendertreffen 2013

Quickstep Server Update

Formular»Fragenkatalog BIM-Server«

Collaboration Management. Software Collaboration Management mit Trac FrOSCon 24./25. Juni 2006

Versionskontrolle mit SVK

Process4.biz Release Features Übersicht. Repository. Das Schützen von Diagrammen wurde optimiert (check-in, check-out)

COSIDNS 2 ISPconfig3. Version 0.1 ( )

Simulationsprojekte einfacher mit Subversion und Trac

Support-Tipp Mai Release Management in Altium Designer

Softwareinstallation unter Linux

Man liest sich: POP3/IMAP

Powermanager Server- Client- Installation

Programmierung im Grossen. Vorlesung 22: Konfigrationsmanagement. Themenübersicht. Bertrand Meyer. Bernd Schoeller

Versionskontrolle. Verteilte Versionskontrollsysteme. Richard Madsack. 25. November Versionskontrolle. Richard Madsack.

Testplan. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw,

Anwenderleitfaden Citrix. Stand Februar 2008

Software Configuration Management (SCM)

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

Besprechung Übung 1 & Vorstellung Übung 2

Erfolgreicher Ums9eg auf Git

Labor - Installation von Drittanbieter-Software in Windows XP

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Buildsysteme

Software Qualität Übung 1

OP-LOG

Transkript:

DOKUMENTATION UND KOMMUNIKATION IN IT- FORSCHUNGSPROJEKTEN WS 2011/12 Dipl.-Inf. Jens-Martin Loebel Dipl.-Inf. Heinz-Günter Kuper 4.11.2011 1

ZIEL Die Vorlesungen werden eher tutorial- als akademischen Charakter haben - es geht um eine Übersicht über ein praktisches Thema, Best Practices, Hinweise auf typische Anfängerfehler, Angaben zu guter (und zu schlechter) Literatur oder auch Tools etc. Die Vorlesung richtet sich in erster Linie an die (Bachelor-)Studenten, die in diesem Semester ein Semesterprojekt machen 2

DIMENSIONEN DER SOFTWAREENTWICKLUNG Raum Psychologie Ästhetik Geschichte Recht Technik Kommunikation Soziale Interaktion Didaktik Ethik Organisation Politik Gender 3

PROJECT TRIANGLE Ihr Projekt kann schnell (Entwicklungszeit) gut (Zuverlässigkeit, Effizienz,...) billig (Entwicklungs-, Personalkosten,...) sein. Fast, Good or Cheap. Pick two. * Wählen Sie zwei Eigenschaften! * Quelle: http://en.wikipedia.org/wiki/project_triangle 4

Bild aus urheberrechtlichen Gründen entfernt Quelle: Dilbert Comic 14. April 2001 online unter: http://dilbert.com/strips/comic/2001-04-14/ Bild aus urheberrechtlichen Gründen entfernt Quelle: User Interface = Magic, The Next Web, 27.10.2009 online unter: http://thenextweb.com/shareables/2009/10/27/userinterface-magic/ 5

ARTEN VON DOKUMENTATION Quellcode-Kommentare Logs / Protokolle technische Spezifikationen, Pflichten- / Lastenheft Nutzerhandbuch 6

VERSIONIERUNG: EINFÜHRUNG Revisionsgeschichte eines Projektdokumentes erhalten / nachvollziehen Ziele Kollaboration Konfliktvermeidung / -handling Backup / Fehler rückgängig machen Alternativen gefahrlos ausprobieren 7

VERSIONIERUNG: GRUNDBEGRIFFE Commit / Check-In neue Revision zum Repository hinzufügen, Changelog erzeugen Checkout Revision einer Datei / eines Projektes aus dem Repository laden Change / Diff Änderungen zwischen zwei Revisionen / Versionsunterschied 8

VERSIONIERUNGSSYSTEME (OPEN SOURCE) Concurrent Versions System (CVS) Subversion (SVN) git Mercurial (hg) 9

VERSIONSSYSTEM VERZEICHNISSTRUKTUR /trunk Sandbox, Hauptentwicklungsstrang, aktuelle Entwicklungsversion /branches Isolierte Nebenentwicklungen, Architekturänderungen /tags Stabile Versionen, durchnummerierte Releases der Software 10

SUBVERSION 11

SUBVERSION GRAPHISCHE CLIENTS LINUX RapidSVN (http://rapidsvn.tigris.org/) MAC Versions (http://versionsapp.com/) WIN TortoiseSVN (http://tortoisesvn.net/) 12

SUBVERSION HILFE svn help command REPOSITORY ANLEGEN (auf dem Server) svnadmin create /Users/Shared/svnrepos chown -R www:admin /Users/Shared/svnrepos 13

SUBVERSION CHECKOUT WORKING COPY svn --username user co http://www.example.com/repos svn co http://www.example.com/repos 14

SUBVERSION Versions.app Demo 15

SUBVERSION BEARBEITUNGSSTAND ÜBERPRÜFEN (WORKING COPY) svn status DATEIEN HINZUFÜGEN svn add file.name DATEIEN LÖSCHEN svn remove file.name 16

SUBVERSION COMMIT WORKING COPY svn ci -m "log message" file/dir/ ~.bash_profile oder ~.subversion/config export SVN_EDITOR="vi" svn ci 17

SUBVERSION REVERT OHNE PROTOKOLL ZU VERLIEREN svn merge --dry-run -r NEWER:OLDER. svn merge -r NEWER:OLDER. 18

SUBVERSION svn propset svn:keywords "Id" file.name In Datei file.name: //$Id$ wird ersetzt mit //$Id: KinderGuideServer.m 119 2011-10-20 17:10:10Z kuper $ svn propset svn:ignore 'build'. Ignore build dir in cwd 19

SUBVERSION ANDERE SINNVOLLE BEFEHLE svn up svn mkdir svn remove svn move svn diff svn log file.name 20

TRAC + SUBVERSION DEMO: http://trac.edgewall.org/demo-0.12/browser 21

SUBVERSION LITERATUR UND TUTORIALS Version Control with Subversion http://svnbook.red-bean.com/ http://svnbook.red-bean.com/ index.de.html (deutsche Fassung) Subversion: A Quick Tutorial http://aymanh.com/subversion-a-quicktutorial 22

BEST PRACTICES (SUBVERSION) VOR Beginn der Arbeit und VOR dem Einchecken SVN UPDATE! Binärdateien locken (Mediendateien, etc.) Sprechende Changelogs beim Einchecken +/-/*-Notation benutzen Je mehr Dokumentation, desto einfacher die Zusammenarbeit Nur lauffähige Versionen einchecken! 23

EIN WORT ZU VERSIONSNUMMERN VON DOKUMENTEN nicht nur Code kann mit SVN etc. verwaltet werden, sondern auch Binärdateien und andere Projektdateien unabhängig davon sollte jedes Projektdokument eine Versionsnummer erhalten Best Practice Datum oder SVN Build ID oder major/minor/patch Label als Versionsnummer 24

GIT Verteiltes Versionskontrollsystem alle Entwickler besitzen lokale Kopie der gesamten Revisionsgeschichte ursprünglich von Linus Torvalds entwickelt Dateisystem-Metapher mit Versionierungsansätzen 25

GIT-OBJEKTE blob-objekt Bitstrom einer Datei, ohne Metadaten (Datum, Name,...) tree-objekt repräsentiert ein Verzeichnis, enthält die Metadaten der Blob-Objekte, referenziert diese und/oder symbolische Links auf weitere trees commit-objekt verbindet tree-objekte zu einer gemeinsamen Revisionsgeschichte tag-objekt virtueller Container für ein anderes Objekt + Metadaten, oft für Signaturen von Commit-Objekten genutzt 26

GIT WICHTIGE BEFEHLE git init git add. git commit -m "<CHANGELOG>" Flag: -a git log git diff 27

BUG-TRACKING 28

BUG-TRACKING VORTEILE Gestaltet Kommunikation zwischen Entwicklern und Anwendern Kann als Wissensbasis (Knowledge Base) verwendet werden. Man kann auf bereits gemeldete Bugs explizit hinweisen 29

BUG-TRACKING NACHTEILE Verwaltungsaufwand Änderungen im System müssen im Bugtracker wiederspiegelt werden (z.b. neue Versionen, Komponente) 30

BUG-TRACKING TICKETING-SYSTEM Synonym für Bug-Tracking Bug-Tracking Untermenge von Issue-Tracking SYSTEME http://en.wikipedia.org/wiki/ Comparison_of_issue_tracking_systems http://www.bugzilla.org/ 31

BUG-TRACKING 32

BUG-TRACKING 33

BUG-TRACKING BEST PRACTICES keine anonyme Nutzer (wegen Rückfragen) nicht aufregen und nicht drängeln lassen 34

BUG-TRACKING BUG REPORT Wichtigkeit einstufen: blocker, critical, major, trivial, usw. Klare Konfigurationszuweisung welche Umgebung (WLAN, Betriebssytem) welche Softwareversion 35

BUG-TRACKING BUG REPORT Steps to Repeat / Reproducibility Der Entwickler muss genug Information haben um das System(fehl)verhalten zu reproduzieren Logdateien und Screenshots anhängen 36

BUG-TRACKING BUG REPORT Rückmeldung/Resolution fixed duplicate works for me invalid won't fix 37

BUG-TRACKING SITES http://sourceforge.net/ https://github.com/ TRAC DEMO http://trac.edgewall.org/demo-0.12/newticket 38

WEITERFÜHRENDE LITERATUR Hunt, A; Thomas, D; Cunningham, W.: The Pragmatic Programmer. From Journeyman to Master. Addison-Wesley Longman, Amsterdam, 1999. Brooks, F. P.: The Mythical Man-Month. Essays on Software. Engineering. Addison-Wesley Longman; Jubiläumsausgabe, 1995. 39

DISKUSSION Anregungen? Fragen? Sorgen? Nöte? 40