1 Software-Configurationsmanagement (SCM)



Ähnliche Dokumente
Software Configuration Management. Referat von Jens Zastrow Software Engineering Projekt WS 2001/2002

ANT. Kurzvortrag von Manuel Schulze.

Einführung in Subversion. Tutorium SWP

Kurzanleitung zu XML2DB

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

Das Build-Tool ANT ETIS SS05

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

CVS-Einführung. Sebastian Mancke,

Software Engineering in der Praxis

Versionskontrolle mit Subversion

Praktikum Ingenieurinformatik (PI)

Kurzanleitung zu. von Daniel Jettka

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

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

Planung für Organisation und Technik

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

Task: Nmap Skripte ausführen

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

EMU Bill & Report 1/33

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

Moodle aktuell halten mit Git

Einführung in Subversion

Standard Daten-Backup-Script

WinCVS Version 1.3. Voraussetzung. Frank Grimm Mario Rasser

SJ OFFICE - Update 3.0

Framework zur Unterstützung von Unit-Tests

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

HSR git und subversion HowTo

Einführung in die Informatik Tools

Neue Funktionen in Innovator 11 R5

NTT DATA Helpdesk Benutzerhandbuch

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: MORE Projects GmbH

Business Application Framework für SharePoint Der Kern aller PSC-Lösungen

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

Multisite Setup. mit Nutzung von Subversion. Drupal Voice Chat

Updatehinweise für die Version forma 5.5.5

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

SMART Newsletter Education Solutions April 2015

Eclipse und Java Einheit 06: Building Eclipse Projete mit Ant

Verwalten Sie Ihre Homepage von überall zu jeder Zeit! Angebote und Informationen auf

Microsoft SharePoint 2013 Designer

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

Versionsverwaltung mit SVN

OP-LOG

ICS-Addin. Benutzerhandbuch. Version: 1.0

GISA. Definition Spoolfiles

Einfu hrung in Subversion mit TortoiseSVN

Wie benutzt man TortoiseSVN

Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am

SharePoint Demonstration

INHALT 1. INSTALLATION DES V-MODELL XT UNTER WINDOWS 7 2. INSTALLATION DES V-MODELL XT UNTER WINDOWS VISTA

Installationsanleitung CLX.PayMaker Home

Deployment Deployment Seite 1 / 25

Informationssystemanalyse Problemstellung 2 1. Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse:

IT-Projekt-Management

FS cs108 Programmierpraktikum Subversion. Lukas Beck Cedric Geissmann Alexander Stiemer

Konfigurationsmanagement

Apache Subversion (SVN)

Das Build Tool Ant. Sebastian Mancke,

Installation des Authorware Webplayers für den Internet Explorer unter Windows Vista

teischl.com Software Design & Services e.u. office@teischl.com

Brainloop Dox Häufig gestellte Fragen

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

PRESman. Presentation Manager. Reduzieren Sie nachhaltig die Kosten für das. Erstellen, Verwalten und Verteilen Ihrer

4D Server v12 64-bit Version BETA VERSION

Eine Anwendung mit InstantRails 1.7

Version 0.3. Installation von MinGW und Eclipse CDT

Support-Tipp Mai Release Management in Altium Designer

Windows 7 - Whoami. Whoami liefert Informationen wie z.b. die SID, Anmelde-ID eines Users, sowie Gruppenzuordnungen, Berechtigungen und Attribute.

GEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT

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

Sourcecodeverwaltung

Neue Funktionen im GUI für PC-DMIS V3.x 4.x Seite 1 von 8

Übung: Verwendung von Java-Threads

Software-Validierung im Testsystem

Wiederherstellen der Beispieldatenbanken zum Buch Microsoft Project 2010

Connecting Content. User Manual. Version: 1.2

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

Softwareentwicklungsprozess im Praktikum. 23. April 2015

SharePoint Portal für eine effiziente Zusammenarbeit

Step by Step Webserver unter Windows Server von Christian Bartl

(1) Mit dem Administrator Modul werden die Datenbank, Gruppen, Benutzer, Projekte und sonstige Aufgaben verwaltet.

Datensicherung und Wiederherstellung

Um dies zu tun, öffnen Sie in den Systemeinstellungen das Kontrollfeld "Sharing". Auf dem Bildschirm sollte folgendes Fenster erscheinen:

OpenMAP WEBDrive Konfiguration. Oxinia GmbH , Version 1

Qt-Projekte mit Visual Studio 2005

Kurzeinführung Excel2App. Version 1.0.0

Erste Schritte mit Sharepoint 2013

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

Lexware professional und premium setzen bis einschließlich Version 2012 den Sybase SQL-Datenbankserver

B12-TOUCH VERSION 3.5

Ihr Benutzerhandbuch AVIRA ANTIVIR EXCHANGE

Titel. SCSM ITIL - CMDB - neue CI Klasse erstellen und benutzen. Eine beispielhafte Installationsanleitung zur Verwendung im Testlab

Um ein solches Dokument zu erzeugen, muss eine Serienbriefvorlage in Word erstellt werden, das auf die von BüroWARE erstellte Datei zugreift.

Document Management. Überblick DM

Getting Started Guide CRM Online, 2013 & 2015 xrm1 Verpflegungspauschalen

Installations Guide für YAJSW und DTLDAP

Transkript:

Inhaltsverzeichnis Vorlesungsplan 1. Einstieg OO 2. Modellierung (UML) 3. Design (Designmuster) 4. Implementierung (GUI-Programmierung) 5. Spezifikation (Design by Contract) 6. Qualitätssicherung (Korrektheit, Debugging, Testen) 7. Konfigurationsmanagement 8. Anforderungsanalyse 1 Software-Configurationsmanagement (SCM) Software-Configurationsmanagement (SCM) Definition: Eine Sammlung von Techniken, die das Erstellen und Warten eines Softwaresystems steuern und koordinieren Aufgaben/ Gliederung Unterschiedliche Dokumente Dokumente stehen in Beziehungen miteinander Änderungen verwalten/ protokollieren Kompilieren Pakettieren Distributieren

Bugs/ Features verwalten 1.1 1. Item-Identifikation Item-Identifikation Welche Dokumentarten sollen verwaltet werden? Wo werden diese verwaltet? Projektbibliothek Speicherung der Beziehungen zwischen Dokumenten Zugriff auf ein konkretes Dokument? Eindeutige Identifikation (Namen-Schema) Projektbibliothek Konzept: Bibliothek Dokumente sind Bücher Jeder Zugriff wird protokolliert (damit nachvollziehbar) Benutzer hat Rechte / Pflichten Es gelten Standards und Regeln 1.2 2. Versionierung Version-/ Release-Management (1) Dokumente haben mehrere Versionen: 2

Version-/ Release-Management (2) Zugang zu Dokument-Versionen ermöglichen Verwalten von System-Versionen Release: Konkrete System-Version die distributiert werden kann Version-/ Release-Management (3) Zu einem bestimmten Zustand des Projekts zurückkehren können Beispiel: Kunde meldet Fehler an einem bestimmten Release, Entwicklung ist aber schon weiter fortgeschritten Über Releases Kontakt zum Kunden 1.3 3. Change-Management Change-Management 3

Change is a fact of life for software systems Änderungswünsche müssen gesammelt und analysiert werden (Kosten: Zeit, Geld, Ressourcen) Jeder kann Change-Request erstellen (Change Control Board) Change Control Board (CCB) Sammelt alle Change-Requests (CR) an das System Festlegen von Standard-Formularen für CR. Inhalt: Was soll geändert werden? Warum soll die Änderung erfolgen? Welcher Aufwand ist dazu erforderlich?... CCB ist Schnittstelle zum Projektmanagement Abarbeitung nach bestimmten Kriterien Kosten/ Nutzen Produkt-Strategie Bugs/ Fixes Document-Lifecycle Zustand eines generischen Dokumentes 4

1.4 4. System-Build System-Building Definition: Ist ein Prozess der verschiedene Komponenten eines Softwaresystems in ein Programm vereinigt. Kompilieren Bestimmte Versionen auschecken Linken Pakete erzeugen Konfiguration Kopieren Testen... Zusammenfassen aller Schritte in einem Build-Script System-Building (2) Sollte (auf Knopfdruck) automatisiert ablaufen Erzeugtes System sollte automatisierten Tests unterzogen werden (Unit- Test, etc.) Hilft Integrations-Probleme zu verringern Programm läuft/kompiliert bei Entwickler A aber nicht bei B Änderungen lassen sich kompilieren, passen aber nicht zur Spezifikation (Test) Dateien fehlen bei Entwickler C Sourcen neu - Kompilate alt... Build-Management 5

Master-Build-Script 2 SCM-Werkzeuge Werkzeuge Auswahl knapp und projektbezogen Unterstützung für spezielle Teile des SCM Anforderungen: Stabil Frei verfügbar Aktuell (Stand der Technik) Einfach zu bedienen... 6

2.1 CVS/Subversion Concurrent Version System (CVS)/Subversion Werkzeug zur Versionierung von Dateibäumen Was kann CVS/Subversion? Versionen speichern Verzeigungen (Branches) Releases (Tags) Merge-Unterstützung Was kann CVS/Subversion nicht? Kein Change-Control Kein Bugtracking Kein Kommunikationsmittel Kein Build-System CVS/Subversion Aufbau CVS/Subversion Zugriff 7

CVS/Subversion Features Subversion Befehle Daten einfügen, ohne eine Arbeitskopie anzulegen (Import): svn i m p o r t m y f i l e. t x t f i l e : / / / home / s w t / s w t / s o p / p r o j e c t s s 0 7 / s o p 0 7 s v n Initiales anlegen einer lokalen Arbeitskopie (Checkout): svn c h e c k o u t f i l e : / / / home / s w t / s w t / s o p / p r o j e c t s s 0 7 / s o p 0 7 s v n Datei/Verzeichnis hinzufügen (Add): svn add myfile. txt Aktuelle Version aus dem Repository kopieren (Update): svn update 8

Änderungen ins Repository schreiben (Commit): svn commit m Change Message Unterschiede anzeigen: svn d i f f m y f i l e Repository anzeigen (List): svn l i s t f i l e : / / / home / s w t / s w t / s o p / p r o j e c t s s 0 7 / s o p 0 7 s v n CVS/Subversion Zusammenfassung Version/ Release Management Einfach zu bedienen Open-Source Plattformen: Windows, Unix,... Internent: www.cvshome.org 2.2 Ant Build-Tools unter Unix gibt es make (Schwäche: direkte Verknüpfung von Befehl und Ziel) für Java ant (another neat tool) Anstelle von Befehlen: Tasks Ein Task realisiert ein Ziel Über 100 Standard-Ziele Übersetzen (javac) Archivieren (jar) Dokumenation (javadoc),... 100% Java Erweiterbar durch eigene Tasks Eines der Jakarta-Apache Projekte (http://ant.apache.org) 9

Ant-Buildfile Enthält genau ein Projekt Jedes Projekt umfasst mehrere Ziele (targets) Jedes Ziel wird durch ein oder mehrere Task erfüllt Build-Spezifikation in XML ANT arbeitet wie Make inkrementell Bei jedem Bauen werden nur geänderte Teile neu übersetzt Liegt aber in der Verantwortung des Tasks! (Ant liefert nur Framework) Beispiel Ant-Buildfile 1 <project name= SimpleProject default= d i s t > 2 <target name= compile > 3 <mkdir d i r= c l a s s e s /> 4 <j a v a c s r c d i r=. d e s t d i r= c l a s s e s /> 5 </ t a r g e t> 6 7 <target name= d i s t depends= compile > 8 <mkdir d i r= l i b /> 9 <j a r j a r f i l e = l i b / s i m p l e. j a r b a s e d i r= c l a s s e s /> 10 </ t a r g e t> 11 12 <t a r g e t name= c l e a n > 13 <d e l e t e d i r= c l a s s e s /> 14 <d e l e t e d i r= l i b /> 15 </ t a r g e t> 16 17 </ p r o j e c t> Ablauf Aufruf mit Beispielskript (ant -buildfile simple.xml): 1. Vorgabeziel ist dist. 2. Ziel dist hängt von compile ab zuerst compile ausführen. 3. Ziel compile wiederum wird erfüllt durch mkdir javac 4. Nun folgen Tasks von dist: mkdir jar 5. Alle Ziele sind erfüllt das Bauen war erfolgreich. 10

Beispiel Ant-Buildfile (2) 1... 2 <t a r g e t name= i n i t > 3 <p r o p e r t y name= name v a l u e= Sop /> 4 <property name= version value= 0. 1. 0 /> 5 <p r o p e r t y name= owner v a l u e= SopGroupX /> 6 </ t a r g e t> 7 8 <target name= checkout depends= i n i t > 9 <c v s cvsroot= /home/ swt /... 10 command= update 11 d e s t=. 12 t a g= r e l e a s e 13 f a i l o n e r r o r= t r u e 14 /> 15 </ t a r g e t> 16... 3 Projektaufgabe 3.1 Aufgabe Projektaufgabe Ein Computer-Shop hat euch beauftragt: Entwickelt eine Applikation zur Verwaltung eines Hard- und Software-Geschäftes, in- klusive Lagerverwaltung, Finanzverwaltung, Kundenverwaltung, usw. Stakeholder: Ladeninhaber, Verkäufer, Lagerarbeiter, Sekretärin, Administrator Kunden, Stammkunden, Zulieferer (Inland, Ausland, EU)... Arbeitsauftrag Es soll folgendes in 10 Wochen ausgeliefert werden: Eine lauffähige Verwaltungssoftware mit Funktionalitäten für die einzelnen Stakeholder Ein Benutzerhandbuch 3.2 Gruppenaufteilung Gruppenaufteilung 1. Datenbank (DB) Zentrale Datenverwaltung, Basisoperationen 11

2. Benutzerschnittstelle (GUI) Dialoge der Applikation Animationen 3. Qualitätssicherung (QS) Sicherung der Qualität Masterbuildscript 4. Applikation/Integration (INT) Gesamtarchitektur der Applikation, Benutzerverwaltung Verwaltung des Pflichtenheftes 3.3 Die Arbeit in einem High-End-Computer-Shop (HECS) Tätigkeiten Verwaltung der Kunden, Zulieferer, Mitarbeiter Verwaltung der Finanzen Verwaltung von Dokumente Verwaltung des Lagers, der Produkte Verwaltung der Webseite (gibt es bereits) Tätigkeiten (2) 12

Lagepläne Der Lagerroboter 3.4 Projektphasen Projektphasen 13

1. Phase: Analyse Anforderungsanalyse, Use-Cases,... 2. Phase: Modellierung Modelle in UML 3. Implementierung, 1. Stufe Verwendung von JavaDoc, JML, CVS, Ant,... 4. Implementierung, 2. Stufe Verwendung von JavaDoc, JML, CVS, Ant,... 5. Qualitätssicherung Junit, DBC, Integrationstest 6. Abschlusspräsentation 14