Reengineering und Refactoring von Softwarearchitekturen
|
|
- Herta Förstner
- vor 8 Jahren
- Abrufe
Transkript
1 Methodische und Praktische Grundlagen der Informatik 3 Reengineering und Refactoring von Softwarearchitekturen Steffen Helke Technische Universität Berlin Fachgebiet Softwaretechnik WS 2008/2009
2 Lernziele? Wann sind Software-Architekturen veraltet? Wie wird ein Reengineering durchgeführt? Wobei kann Refactoring helfen?
3 Legacy-Systeme Reengineering Renovierung Neubau... umfaßt Aktivitäten zum Verstehen und Ändern eines Software-Systems, um es in neuer Form zu implementieren. Kosten vs. Nutzen Risikoabschätzung Aufwandsanalyse Kompromisse zwischen beiden Varianten Steffen Helke: MPGI-3 im WS Reengineering Steffen Helke: MPGI-3 im WS Reengineering-Prozess... umfaßt Aktivitäten zum Verstehen und Ändern eines Software-Systems, um es in neuer Form zu implementieren. Beispiel: Migration Anforderungen Modifizierte Anforderungen Windows-Umstellung Design Code Implementierung Code Steffen Helke: MPGI-3 im WS Steffen Helke: MPGI-3 im WS0809 3
4 Reengineering-Prozess Architektur- Extraktion aus Quellcode Anforderungen Modifizierte Anforderungen Basis: Statische Mikro und Makro-Sicht Design Architektur Code Implementierung Code Steffen Helke: MPGI-3 im WS Architektur- Steffen Helke: MPGI-3 im WS Metriken und Visualisierung Extraktion aus Quellcode Basis: Statische Mikro und Makro-Sicht Modelle schnell unübersichtlich Interpretation über Metriken Veranschaulichung durch Visualisierung Beispiel: Bauhaus (Spin-Off Universität Stuttgart) Call-View (Methoden und deren Aufrufbeziehungen) Steffen Helke: MPGI-3 im WS Steffen Helke: MPGI-3 im WS0809 5
5 Metriken und Visualisierung Refactoring Modelle schnell unübersichtlich Interpretation über Metriken Veranschaulichung durch Visualisierung... beschreibt die Veränderung der internen Struktur einer Software ohne das beobachtbare Verhalten zu ändern. Area Of Interest (AOIs) Vertrauenswürdige Komponenten Neue Komponenten (z.b. Version 2.3) Verbrauch > 1 MB Arbeitsspeicher Byelas et al. Proc. ACM SOFTVIS 06, ACM, 2006 Steffen Helke: MPGI-3 im WS Refactoring Steffen Helke: MPGI-3 im WS Einsatz von Refactoring... beschreibt die Veränderung der internen Struktur einer Software ohne das beobachtbare Verhalten zu ändern. Beispiel Restrukturierung Refactoring auf Architektur und Code-Ebene möglich Design Implementierung Restrukturierung Restrukturierung Ziel: Beseitigung von Bad Smells Zentrale Aktivität im extreme Programming Steffen Helke: MPGI-3 im WS Steffen Helke: MPGI-3 im WS0809 7
6 Einsatz von Refactoring Bad Smells Beschreibung schlechter Strukturen in der Software Design Implementierung Restrukturierung Refactoring Refactoring Refactoring auf Architektur und Code-Ebene möglich Ziel: Beseitigung von Bad Smells Zentrale Aktivität im extreme Programming Gerüche existieren in Klassen, Packages, Subsystemen und Schichten Beispiele Zu große Module Unnötige Vererbung Zyklische Abhängigkeiten Zu starke Kopplung Zerbrochene Schichten Steffen Helke: MPGI-3 im WS Bad Smell: Zu große Module Steffen Helke: MPGI-3 im WS Bad Smell: Zu große Module Wann ist ein Modul zu groß? Sind Klassen mit 2000 Methoden sinnvoll? Student Schreibt Klausur Verleiht_Stipendium Benutzt Braucht Reserviert_für Konferenz Benötigt Hörsaal Qualität des Moduls Wann ist ein Modul zu groß? Sind Klassen mit 2000 Methoden sinnvoll? Verständlichkeit Wiederverwendbarkeit Größe des Moduls Student Schreibt Klausur Verleiht_Stipendium Benutzt Braucht Reserviert_für Konferenz Benötigt Hörsaal Steffen Helke: MPGI-3 im WS Steffen Helke: MPGI-3 im WS0809 9
7 Modulgröße Modulgröße 30er Daumenregel (Obergrenze) Modul Elemente LOC Methode Klasse Package Subsystem System Mio 30er Daumenregel (Obergrenze) Modul Elemente LOC Methode Klasse Package Subsystem System Mio Beispiel Eclipse Modul Elemente LOC Methode 8 8 Klasse 7,2 60 Package Subsystem 9, System Zahlen Durchschnittswerte von Eclipse 2.1 mit Default-Plug-ins Quelle: Rock et al. Refactoring in großen Softwareprojekten,dpunkt, 2004 Steffen Helke: MPGI-3 im WS Bad Smell: Unnötige Vererbung Steffen Helke: MPGI-3 im WS Bad Smell: Zyklische Abhängigkeiten Fehlende Redefinitionen reine Implementationsvererbung Refactoring: Ersetzen der Vererbung durch Delegation List +add +getsize +get OrderList Zyklen zwischen Submodulen Behindern Verständlichkeit, Testbarkeit und Entwurfsklarheit Refactoring: Verschieben von Klassen B A C +addorder +getorder Steffen Helke: MPGI-3 im WS Steffen Helke: MPGI-3 im WS
8 Refactoring: Verschieben von Klassen Bad Smell: Zerbrochene Schichten Customer Order Defekte Aufgebrochene Hierarchie GUI Schicht Bestseller Product Zu starke Kopplung Zu viele Schichten Lösung: Einsatz großer Refactorings ( 1) Logische Schicht ( 3) ( 2) Customer Order Datenschicht Product Bestseller Steffen Helke: MPGI-3 im WS Steffen Helke: MPGI-3 im WS Durchführung großer Refactorings Durchführung großer Refactorings Herausforderungen Herausforderungen Auswirkung auf viele Systemteile Auswirkung auf viele Systemteile Dauer der Umsetzung oft mehrere Monate Qualität der Architektur Dauer der Umsetzung oft mehrere Monate Qualität der Architektur Qualitätsverlust temporär möglich Qualitätsverlust temporär möglich Refactoring Schritte Best Practices Dekomposition in feinere Refactorings Sorgfältige Planung im Projektteam Rücknahme von Refactorings einplanen Prüfen, ob Reenginierung für Teile sinnvoll ist Refactoring Schritte Steffen Helke: MPGI-3 im WS Steffen Helke: MPGI-3 im WS
9 Können Sie diese Fragen beantworten? Was versteht man unter Reengineering? Nennen Sie Beispiele für Bad Smells in einer Software-Architektur? Wie können Bad Smells durch Refactoring behoben werden? Literatur M.Fowler: Refactoring: Improving the Design of Existing Code. Addison-Wesley, S.Rock, M.Lippert: Refactorings in großen Softwareprojekten. dpunkt-verlag, S.Demeyer, S.Ducasse, O.Nierstrasz: Object-Oriented Reengineering Patterns. Elsevier Science, Steffen Helke: MPGI-3 im WS
Werkzeugunterstützte Betrachtungen von Software-Qualität und -Architekturen
...we make the invisible visible... Werkzeugunterstützte Betrachtungen von Software-Qualität und -Architekturen 1 Inhalt Qualitätsbegriff und Qualitätsmodelle Abstraktion Analysen und deren Anwendung Erfahrungen
MehrÜbung 6: Feinentwurf. Prof. Dr. Dr. h.c. Manfred Broy Dr. Herbert Ehler, Martin Feilkas 6. Juli 2006 Bernd Spanfelner, Sebastian Winter
Prof. Dr. Dr. h.c. Manfred Broy Sommersemester Dr. Herbert Ehler, Martin Feilkas 6. Juli 2006 Bernd Spanfelner, Sebastian Winter Einführung in die Softwaretechnik Übung 6: Feinentwurf Aufgabe 17: Entwurfsmuster
MehrSDD System Design Document
SDD Software Konstruktion WS01/02 Gruppe 4 1. Einleitung Das vorliegende Dokument richtet sich vor allem an die Entwickler, aber auch an den Kunden, der das enstehende System verwenden wird. Es soll einen
Mehr...we make the invisible visible...
...we make the invisible visible... 1 Inhalt Qualitätsbegriff Fragestellungen im Zusammenhang mit innerer Softwarequalität Analysen und deren Anwendung Erfahrungen 2 Ausfallsicherheit Datensicherheit Zuverlässigkeit
MehrInhalt. Fragestellungen. ...we make the invisible visible... Analysen und deren Anwendung Erfahrungen
...we make the invisible visible... 1 Inhalt Fragestellungen Analysen und deren Anwendung Erfahrungen 2 Projektleiter Hat unsere Software eine klare, verständliche Struktur? Gibt es problematischen Code,
MehrSome Software Engineering Principles
David L. Parnas: Some Software Engineering Principles Marco Oppel 30.06.2004 Seminar Software-Architektur Institut für Informatik Humboldt Universität zu Berlin 1 Problemstellung Software Engineering Multi-Personen
MehrNetzsicherheit I, WS 2008/2009 Übung 12. Prof. Dr. Jörg Schwenk 20.01.2009
Netzsicherheit I, WS 2008/2009 Übung 12 Prof. Dr. Jörg Schwenk 20.01.2009 Aufgabe 1 1 Zertifikate im Allgemeinen a) Was versteht man unter folgenden Begriffen? i. X.509 X.509 ist ein Standard (Zertifikatsstandard)
MehrRefaktorisierung des Eclipse- Plugins Saros für die Portierung auf andere IDEs. Verteidigung der Bachelorarbeit von Arndt Tigges
Refaktorisierung des Eclipse- Plugins Saros für die Portierung auf andere IDEs Verteidigung der Bachelorarbeit von Arndt Tigges Überblick Einleitung Saros Refaktorisierung Durchführung Analysen Anwendung
MehrPrüfung Software Engineering I (IB)
Hochschule für angewandte Wissenschaften München Fakultät für Informatik und Mathematik Studiengruppe IB 4 A Sommersemester 2015 Prüfung Software Engineering I (IB) Datum : 09.07.2015, 14:30 Uhr Bearbeitungszeit
MehrLanglebige Softwarearchitekturen
Langlebige Softwarearchitekturen Dr. Carola Lilienthal Carola.Lilienthal@wps.de www.wps.de //// Hans-Henny-Jahnn-Weg 29 //// 22085 HAMBURG Die zwei Architekturziele für diesen Vortrag Architekturziel 1:
MehrFragebogen ISONORM 9241/110-S
Fragebogen ISONORM 9241/110-S Beurteilung von Software auf Grundlage der Internationalen Ergonomie-Norm DIN EN ISO 9241-110 von Prof. Dr. Jochen Prümper www.seikumu.de Fragebogen ISONORM 9241/110-S Seite
MehrInformationswirtschaft II Rational Unified Process (RUP)
Informationswirtschaft II Rational Unified Process (RUP) Wolfgang H. Janko, Michael Hahsler und Stefan Koch Inhalt Historische Entwicklung Kennzeichen von RUP Lebenszyklus und Phasen Arbeitsabläufe Das
MehrInformationswirtschaft II
Rational Unified Process (RUP) Informationswirtschaft II Wolfgang H. Janko, Michael Hahsler und Stefan Koch Seite 1 Inhalt Historische Entwicklung Kennzeichen von RUP Lebenszyklus und Phasen Arbeitsabläufe
MehrÜbung: Verwendung von Java-Threads
Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum
MehrHochschule Darmstadt Fachbereich Informatik. Softwaretechnik II. 4.1 Darstellung der Architektur
Hochschule Darmstadt Fachbereich Informatik Softwaretechnik II 4.1 Darstellung der Architektur Darstellung der Architektur Was macht ein Architekt? Viele Pläne! Endkunde Elektro Bauarbeiter Sanitär Softwaretechnik
MehrVorlesung Betriebstechnik/Netzplantechnik Operations Research
Vorlesung Betriebstechnik/Netzplantechnik Operations Research Organisation Agenda Übungen Netzplantechnik GANTT-Diagramme Weitere Übungen 2 Übungen 3 weitere Übungen Nr. Vorgang Dauer AOB 1 Kickoff 2-2
Mehr1. Einführung Advanced Programming Techniques. Wintersemester 2009/10 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik
1. Einführung Advanced Programming Techniques Wintersemester 2009/10 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik 1 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Advanced
MehrSoftware modular bauen
Software modular bauen Architektur von langlebigen Softwaresystemen Grundlagen und Anwendung mit OSGi und Java von Ulf Fildebrandt 1. Auflage Software modular bauen Fildebrandt schnell und portofrei erhältlich
Mehreclips Handheld Remote Control Software Updater
eclips Handheld Remote Control Software Updater Installationshandbuch Version 1.0 2010 Ellison Alle Rechte vorbehalten. Installationshandbuch 2 Inhaltsverzeichnis ÜBERSICHT ÜBER ECLIPS HANDHELD REMOTE
MehrErklären Sie die Innenfinanzierung und die Formen derselben!
1. Aufgabe: Erklären Sie die Innenfinanzierung und die Formen derselben! Stellen Sie die verschiedenen Formen der Innenfinanzierung gegenüber und arbeiten die Vor- und Nachteile heraus! Erklären Sie die
MehrÜbungen zur Softwaretechnik
Technische Universität München Fakultät für Informatik Lehrstuhl IV: Software & Systems Engineering Markus Pister, Dr. Bernhard Rumpe WS 2002/2003 Lösungsblatt 9 17. Dezember 2002 www4.in.tum.de/~rumpe/se
MehrBabeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Modulare Programmierung
Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005 Modulare Programmierung Test Driven Development Refactoring Modular programmierung der
MehrAgile Softwareentwicklung
Agile Softwareentwicklung Werte, Konzepte und Methoden von Wolf-Gideon Bleek, Henning Wolf 2., aktualisierte und erweiterte Auflage Agile Softwareentwicklung Bleek / Wolf schnell und portofrei erhältlich
MehrIT-Unternehmensarchitektur Übung 01: IT-Strategie
IT-Unternehmensarchitektur Übung 01: IT-Strategie 29. April 2010 (Donnerstag) Fachgebiet Software-Architekturen, Prof. Dr. Robert Hirschfeld Dipl.-Math. Gernot Dern, Dipl.-Inform. (univ.) Wolfgang Keller,
MehrSoftwarequalität: Einführung. 15. April 2015
Softwarequalität: Einführung 15. April 2015 Überblick Warum ist Softwarequalität wichtig? Was ist Softwarequalität? Wie erreicht man Softwarequalität? Taentzer Softwarequalität 2015 8 Berühmte Software-Fehler
Mehr8.2.2.3 Übung - Arbeiten mit Android
5.0 8.2.2.3 Übung - Arbeiten mit Android Einführung Drucken Sie die Übung aus und führen Sie sie Übungen durch. In dieser Übung werden Sie Apps und Widgets auf dem Home-Bildschirm platzieren und Sie zwischen
MehrLösungsvorschlag für Übungsblatt 6 Software Engineering 1 (WS 2012/13)
Prof. Ina Schaefer Institut für Softwaretechnik und Fahrzeuginformatik TU Braunschweig Lösungsvorschlag für Übungsblatt 6 Software Engineering 1 (WS 2012/13) Ausgabe: 12. Januar 2013 Abgabe: 25. Januar
MehrKlausur Softwaretechnik 3 22. Feb. 2008
Klausur Softwaretechnik 3 22. Feb. 2008 Hinweise Bevor Sie mit der Bearbeitung der Aufgaben beginnen, müssen Sie auf allen Blättern Ihren Namen und Ihre Matrikelnummer eintragen. Prüfen Sie Ihre Klausur
MehrObjektorientierter Software-Entwurf Grundlagen 1 1. Analyse Design Implementierung. Frühe Phasen durch Informationssystemanalyse abgedeckt
Objektorientierter Software-Entwurf Grundlagen 1 1 Einordnung der Veranstaltung Analyse Design Implementierung Slide 1 Informationssystemanalyse Objektorientierter Software-Entwurf Frühe Phasen durch Informationssystemanalyse
MehrKlassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java
Objektorientierte Programmierung mit Java Eine praxisnahe Einführung mit BlueJ Klassenentwurf Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? 1.0 Zentrale Konzepte
MehrStudienrichtung Eingebettete Systeme
Qualifikationsziel Eingebettete Systeme stellen ein äußerst wichtiges Anwendungsfeld der Methoden der Informatik dar. Unter einem eingebetteten System versteht man dabei ein (Mikro-) Computersystem, das
MehrRefactoring relationaler Datenbank. Shaoke Wu
Refactoring relationaler Datenbank Shaoke Wu Überblick Einführung Bad Smells Probleme bei Database Refactoring Durchführung von Database Refactoring Visualisierung Refactoring relationaler DB Einführung
MehrInternet Explorer Version 6
Internet Explorer Version 6 Java Runtime Ist Java Runtime nicht installiert, öffnet sich ein PopUp-Fenster, welches auf das benötigte Plugin aufmerksam macht. Nach Klicken auf die OK-Taste im PopUp-Fenster
MehrGründe für fehlende Vorsorgemaßnahmen gegen Krankheit
Gründe für fehlende Vorsorgemaßnahmen gegen Krankheit politische Lage verlassen sich auf Familie persönliche, finanzielle Lage meinen, sich Vorsorge leisten zu können meinen, sie seien zu alt nicht mit
MehrMarketing-Leitfaden zum. Evoko Room Manager. Touch. Schedule. Meet.
Marketing-Leitfaden zum Evoko Room Manager. Touch. Schedule. Meet. Vorher Viele kennen die Frustration, die man bei dem Versuch eine Konferenz zu buchen, erleben kann. Unterbrechung. Plötzlich klopft
MehrBIF/SWE - Übungsbeispiel
BIF/SWE - Übungsbeispiel Arthur Zaczek Feb 2015 1 Allgemein 1.1 Ziele Ziele dieses Übungsbeispieles ist es: GUI: Implementierung einer grafischen Oberfläche mit JavaFX oder WPF UI-Komponente: Implementierung
Mehrimpact ordering Info Produktkonfigurator
impact ordering Info Copyright Copyright 2013 veenion GmbH Alle Rechte vorbehalten. Kein Teil der Dokumentation darf in irgendeiner Form ohne schriftliche Genehmigung der veenion GmbH reproduziert, verändert
MehrIKP Uni Bonn Medienpraxis EDV II Internet Projekt
IKP Uni Bonn Medienpraxis EDV II Internet Projekt WS 2001/2002 Dozentin: Lucie Prinz Grundlagen der Projektarbeit Was ist ein Projekt? Die Phasen eines Software Projektes Die Projektunterlagen Die Projektplanung
MehrDas System sollte den Benutzer immer auf dem Laufenden halten, indem es angemessenes Feedback in einer angemessenen Zeit liefert.
Usability Heuristiken Karima Tefifha Proseminar: "Software Engineering Kernkonzepte: Usability" 28.06.2012 Prof. Dr. Kurt Schneider Leibniz Universität Hannover Die ProSeminar-Ausarbeitung beschäftigt
MehrSWT II Projekt. Chat - Anwendung. Pflichtenheft 2000 SWT
SWT II Projekt Chat - Anwendung Pflichtenheft 2000 SWT i Versionen Datum Version Beschreibung Autor 3.11.2000 1.0 erste Version Dietmar Matthes ii Inhaltsverzeichnis 1. ZWECK... 1 1.1. RAHMEN... 1 1.2.
MehrDie Invaliden-Versicherung ändert sich
Die Invaliden-Versicherung ändert sich 1 Erklärung Die Invaliden-Versicherung ist für invalide Personen. Invalid bedeutet: Eine Person kann einige Sachen nicht machen. Wegen einer Krankheit. Wegen einem
MehrSoftware Engineering. Bibliographisches Institut & F. A. Brockhaus AG, Mannheim; Spektrum Akademischer Verlag GmbH, Heidelberg, 2003
Software Engineering Softwaretechnik Softwaretechnologie, Software Engineering (engl.) das, -, Teilgebiet der Informatik, das sich mit Methoden und Werkzeugen für das ingenieurmäßige Entwerfen, Herstellen
MehrVorstellung. Wie entsteht Architektur in Scrum
Vorstellung Thema Architektur - Begriffsdefinition Eine Architektur (vοn griechisch αρχή = Anfang, Ursprung und lateinisch tectum = Haus, Dach) beschreibt in der Informatik im Allgemeinen das Zusammenspiel
MehrData Mining-Projekte
Data Mining-Projekte Data Mining-Projekte Data Mining stellt normalerweise kein ei nmaliges Projekt dar, welches Erkenntnisse liefert, die dann nur einmal verwendet werden, sondern es soll gewöhnlich ein
MehrProbeklausur. Lenz Belzner. January 26, 2015. Lenz Belzner Probeklausur January 26, 2015 1 / 16
Probeklausur Lenz Belzner January 26, 2015 Lenz Belzner Probeklausur January 26, 2015 1 / 16 Definieren Sie Software Engineering in Abgrenzung zu Individual Programming. Ingenieursdisziplin professionelle
MehrKlausur Software Engineering für WI (EuI)
Autor: Prof. Dr. Bernhard Humm, FB Informatik, FH Darmstadt Datum: 14. Februar 2006 Klausur Software Engineering für WI (EuI) Ihr Name: Ihre Matrikelnummer Erreichte Punkte (von insgesamt 57 Punkten):
MehrModul 07-203-2102. Klausur zu den Teilgebieten Software-Management und Software-Qualitätsmanagement
Modul 07-203-2102 Klausur zu den Teilgebieten Software-Management und Software-Qualitätsmanagement Prof. Fähnrich, Prof. Gräbe, Dr. Riechert Institut für Informatik Sommersemester 2013 Allgemeine Bemerkungen
MehrGrundlagen Software Engineering
Grundlagen Software Engineering Rational Unified Process () GSE: Prof. Dr. Liggesmeyer, 1 Rational Unified Process () Software Entwicklungsprozess Anpassbares und erweiterbares Grundgerüst Sprache der
MehrPädagogische Hochschule Thurgau. Lehre Weiterbildung Forschung
Variante 1 Swisscom-Router direkt ans Netzwerk angeschlossen fixe IP-Adressen (kein DHCP) 1. Aufrufen des «Netz- und Freigabecenters». 2. Doppelklick auf «LAN-Verbindung» 3. Klick auf «Eigenschaften» 4.
MehrSoftwareanforderungsanalyse
Softwareanforderungsanalyse Evolution von Anforderungen Burkhardt Renz Institut für SoftwareArchitektur der Technischen Hochschule Mittelhessen Wintersemester 2015/16 Evolution von Anforderungen Anforderungen
MehrUniversität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich. Softwaretechnik I
Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Softwaretechnik I Wintersemester 2015 / 2016 www.ias.uni-stuttgart.de/st1 st1@ias.uni-stuttgart.de
MehrSOMA Reverse Engineering
SOMA Reverse Engineering Univ.Prof. Dr. Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at Inhalt Was versteht man unter Reverse Engineering? Techniken/Methoden Probleme VU Software Maintenance
MehrKlausur zu den Teilgebieten Software-Management und Software-Qualitätsmanagement
Klausur zu den Teilgebieten Software-Management und Software-Qualitätsmanagement Prof. K.-P. Fähnrich, Prof. H.-G. Gräbe, T. Riechert Institut für Informatik Sommersemester 2012 Allgemeine Bemerkungen
MehrDatenbanken I - Übung 1
Datenbanken I - Übung 1 Oktober, 2010 1 von 11 Datenbanken I Lernkontrolle Beantworten Sie folgende Fragen (nach Möglichkeit ohne nachzuschlagen): Was bezeichnet man als Datenredundanz? Wieso führt Datenredundanz
MehrTesten im Software- Entwicklungsprozess
Technologie-Event 2006 Testen im Software- Entwicklungsprozess W.Lukas, INGTES AG Was nicht getestet wurde, funktioniert nicht. -- R.Güdel (ca. 1998) Seite 2 Was sollen wir tun? Anomalien & Defekte von
MehrInformatik. 12.c. 1. Nachrichten, Informationen, Daten, Kommunikation
Informatik 12.c 1. Nachrichten, Informationen, Daten, Kommunikation Definieren Sie die folgenden Begriffe: Information Nachricht Datum Kommunikation Erklären Sie das Modell der Kommunikation. 2. Geschichte
MehrNeuerungen in ReviPS Version 12g
Neuerungen in ReviPS Version 12g Review-Aufgaben... 2 Offene Reviews... 4 Offene Arbeiten... 7 AuditCockpit... 8 Bilanz, Erfolgsrechung, Kennzahlen und sonstige Auswertungen... 9 Pendenzen, Risikofälle,
MehrProgrammierung für Mathematik (HS13)
software evolution & architecture lab Programmierung für Mathematik (HS13) Übung 5 1 Aufgabe: Eclipse IDE 1.1 Lernziele 1. Die Entwicklungsumgebung Eclipse einrichten. 2. Eclipse kennen lernen und mit
Mehrteischl.com Software Design & Services e.u. office@teischl.com www.teischl.com/booknkeep www.facebook.com/booknkeep
teischl.com Software Design & Services e.u. office@teischl.com www.teischl.com/booknkeep www.facebook.com/booknkeep 1. Erstellen Sie ein neues Rechnungsformular Mit book n keep können Sie nun Ihre eigenen
MehrPunkte: /40 Note: O Bauer (Di) O Bauer (Do) O Konwitschka O Schutte
Punkte: /40 Note: Klausur aus Kapitalgesellschaftsrecht 1.2. 2003 9.00-10.30 h Schreiben Sie die Antworten in die dafür vorgesehenen Freiräume! Bitte BEGRÜNDEN (!!!) Sie Ihre Antworten! O Bauer (Di) O
MehrVorgehensweise bei der Installation Bob50SQL für einen unabhängigen PC.
Vorgehensweise bei der Installation Bob50SQL für einen unabhängigen PC. Wichtiger Hinweis Diese Installation ist für einen unabhängigen PC (Bob50 ist auf einen einzigen PC installiert ohne auf irgendein
MehrBetriebliche Anwendungssysteme IM06
Betriebliche Anwendungssysteme IM06 Quartal 1-2010 Fragen zur Wiederholung und Vertiefung Zu (1) 1. Sie möchten in einem betrieblichen Anwendungssystem die Adresse einer hinterlegten Firma abrufen. Schildern
Mehrextreme Programming (XP) Hermann Götz Sergij Paholchak Agenda Was ist XP? Grundprinzipien Der Entwicklungsprozess Die Projektplanung Praktiken Vorteile und Nachteile Wann macht XP Sinn für ein Projekt?
MehrAlbert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen
Open Source professionell einsetzen 1 Mein Background Ich bin überzeugt von Open Source. Ich verwende fast nur Open Source privat und beruflich. Ich arbeite seit mehr als 10 Jahren mit Linux und Open Source.
MehrArbeitsblätter, Wörterbücher (1 pro Gruppe) Materialien: Zeit: Mündlich (Interaktion, Schriftlich) Schriftlich (Rezeption, Schriftlich)
Hinweise für Lehrkräfte Niveau: A2 Ziel - Orientierung auf deutschen Internetseiten (Medienkompetenz) - Vorlieben/Abneigungen ausdrücken Weitere Arbeitsblätter, Wörterbücher (1 pro Gruppe) Materialien:
Mehr09.01.14. Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML)
Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)
MehrVorlesung Programmieren
Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)
MehrStuPro-Seminar Dokumentation in der Software-Wartung. StuPro-Seminar Probleme und Schwierigkeiten in der Software-Wartung.
StuPro-Seminar Dokumentation in der Software-Wartung StuPro-Seminar Probleme und Schwierigkeiten in der Software-Wartung Folie 1/xx Software-Wartung: theoretisch Ausgangslage eigentlich simpel: fertige
MehrEberhard Lehmann: Projekte im Informatik-Unterricht Software Engineering, Ferd. Dümmlers Verlag, Bonn 1995. Inhaltsverzeichnis.
3 Eberhard Lehmann: Projekte im Informatik-Unterricht Software Engineering, Ferd. Dümmlers Verlag, Bonn 1995 Inhaltsverzeichnis Vorwort 5 1. Komplexe Software - Projekte - Software-Engineering 7 1.1 Komplexe
MehrHistorical Viewer. zu ETC5000 Benutzerhandbuch 312/15
Historical Viewer zu ETC5000 Benutzerhandbuch 312/15 Inhaltsverzeichnis 1 Allgemeine Hinweise... 3 1.1 Dokumentation...3 2 Installation... 3 3 Exportieren der Logdatei aus dem ETC 5000... 3 4 Anlegen eines
MehrLösungen zum Test objektorientierter Software
Lösungen zum Test objektorientierter Software Pieter van den Hombergh Fontys Hogeschool voor Techniek en Logistiek Software Engineering 14. März 2013 HOM/FHTeL Lösungen zum Test objektorientierter Software
MehrKlausur Software-Engineering SS 2005 Iwanowski 23.08.2005
Klausur Software-Engineering SS 2005 Iwanowski 23.08.2005 Hinweise: Bearbeitungszeit: 90 Minuten Erlaubte Hilfsmittel: im Anhang, sonst keine Bitte notieren Sie Ihre Antworten ausschließlich auf dem Aufgabenblatt!
MehrSHAREPOINT Unterschiede zwischen SharePoint 2010 & 2013
SHAREPOINT Unterschiede zwischen SharePoint 200 & 203 Inhalt. Einleitung... 2 2. Websiteaktion... 3 3. Dateivorschau... 4 4. Dateibearbeitung... 4 5. Datei hochladen... 5 6. Synchronisierung... 6 von 6
MehrDas Pflichtenheft. Dipl.- Ing. Dipl.-Informatiker Dieter Klapproth Ains A-Systemhaus GmbH Berlin
Fragestellungen: Warum reicht das Lastenheft nicht aus? Was kann ich mit dem Lastenheft machen? Was unterscheidet das Pflichtenheft vom Lastenheft? Was gehört zum Auftragsumfang einer Individualsoftware?
MehrRFID Lösungen Fragebogen über Ihr RFID Projekt
RFID Lösungen Fragebogen über Ihr RFID Projekt 1. Firma: Straße: Postleitzahl: Stadt: Land: Telefon: Bereich: 2. Kontakt Name: Vorname: Funktion: Durchwahl: Mobiltelefon: E-Mail: 3. In welchem Land wird
MehrWas bringt TDD wirklich?
Was bringt TDD wirklich? Wissensspritze vom 6..2009, Christian Federspiel Catalysts GmbH McCabe Metrik CCN Die Cyclomatic Complexity Number, misst die Anzahl der möglichen Pfade durch einen Code. Die Metrik
MehrPraktikum Grundlagen der Programmierung. Diverse Grundlagen. Dr. Karsten Tolle
Diverse Grundlagen Dr. Karsten Tolle Vorgehensmodelle im Software Engineering Wasserfallmodell Rapid Prototyping Spiralmodell V-Modell Rational Unified Process extrem Programming Test Driven Development
MehrInstallation des Authorware Webplayers für den Internet Explorer unter Windows Vista
Installation des Authorware Webplayers für den Internet Explorer unter Windows Vista Allgemeines: Bitte lesen Sie sich diese Anleitung zuerst einmal komplett durch. Am Besten, Sie drucken sich diese Anleitung
MehrER alpha 1D5 Protokoll-Aktualisierungsprogramm Installationsanleitung
ER alpha 1D5 Protokoll-Aktualisierungsprogramm Installationsanleitung Verwendungszweck des Installationsprogramms Das ER alpha 1D5 Protokoll-Aktualisierungsprogramm führt Folgendes durch: a. Es aktualisiert
MehrÖkonomik der Agrar und Ernährungswirtschaft in ILIAS
ILIAS Open Source elearning Die ersten Schritte in ILIAS & Der Zugriff auf das Modul Ökonomik der Agrar und Ernährungswirtschaft in ILIAS Gliederung Login Einführung Was versteht man unter ILIAS? Hauptansichten
MehrDIE SCHRITTE ZUR KORREKTEN LIZENZIERUNG
Datacenter für Itanium-basierte Systeme Einsatz in virtuellen Umgebungen Für die Lizenzbestimmungen spielt es keine Rolle, welche Art der Virtualisierung genutzt wird: Microsoft Virtual Server, Microsoft
Mehr5.3.2.7 Übung - Konfigurieren der Browser-Einstellungen in Windows 7
5.0 5.3.2.7 Übung - Konfigurieren der Browser-Einstellungen in Windows 7 Einführung Drucken Sie diese Übung aus und führen Sie sie durch. In dieser Übung konfigurieren Sie Browser-Einstellungen im Microsoft
MehrProjektmanagement durch Scrum-Proxies
Cologne Intelligence GmbH Projektmanagement durch Scrum-Proxies Integration von Vorgehensmodellen und Projektmanagement 17. Workshop der Fachgruppe WI-VM der Gesellschaft für Informatik e.v. Stuttgart,
MehrPrüfung Software Engineering I (IB)
Hochschule für angewandte Wissenschaften München Fakultät für Informatik und Mathematik Studiengruppe IB 3 A Wintersemester 2014/15 Prüfung Software Engineering I (IB) Datum : 21.01.2015, 14:30 Uhr Bearbeitungszeit
MehrIhr Mandant möchte einen neuen Gesellschafter aufnehmen. In welcher Höhe wäre eine Vergütung inklusive Tantieme steuerrechtlich zulässig?
Ihr Mandant möchte einen neuen Gesellschafter aufnehmen. In welcher Höhe wäre eine Vergütung inklusive Tantieme steuerrechtlich zulässig? Oft wirft die Aufnahme neuer Gesellschafter oder auch die Einstellung
MehrTypisierung des Replikationsplan Wirries, Denis Datenbankspezialist
Typisierung des Replikationsplan Wirries, Denis Datenbankspezialist Feintypisierung - Überblick Ergebnisse Ergebnisse aus aus anderen anderen Arbeitsergebnissen Arbeitsergebnissen Replikationsplan Replikationsplan
MehrSoftware Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015
Software Engineering Zur Architektur der Applikation Data Repository Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering: Mit acht bewährten Praktiken zu gutem Code 2 Schichtarchitektur
MehrAnleitung zur Installation und Verwendung von eclipseuml 2.1.0
Anleitung zur Installation und Verwendung von eclipseuml 2.1.0 In dieser Anleitung wird die Installation und Verwendung von Omodo eclipseuml 2.1.0 beschrieben. eclipseuml ist eine Zusatzsoftware für Eclipse,
MehrManagementbewertung Managementbewertung
Managementbewertung Grundlagen für die Erarbeitung eines Verfahrens nach DIN EN ISO 9001:2000 Inhalte des Workshops 1. Die Anforderungen der ISO 9001:2000 und ihre Interpretation 2. Die Umsetzung der Normanforderungen
MehrKapitel 2: Der Software-Entwicklungsprozess
Wie konstruiert man Software? Kapitel 2: Der Software-Entwicklungsprozess SoPra 2008 Kap. 2: Der Software-Entwicklungsprozess (1/10) Der Software-Entwicklungs-Prozess Historisches 1960JJ adhoc Techniken
MehrJava Einführung Umsetzung von Beziehungen zwischen Klassen. Kapitel 7
Java Einführung Umsetzung von Beziehungen zwischen Klassen Kapitel 7 Inhalt Wiederholung: Klassendiagramm in UML Java-Umsetzung von Generalisierung Komposition Assoziationen 2 Das Klassendiagramm Zweck
MehrAnleitung für die Umstellung auf das Sm@rt-TAN plus Verfahren mit manueller und optischer Übertragung
Bitte zuerst Sm@rtTAN plus über die ebanking-seite www.vr-amberg.de Konto/Depot-Login Verwaltung Sm@rtTAN-Leser anmelden Anleitung für die Umstellung auf das Sm@rt-TAN plus Verfahren mit manueller und
MehrWindows 8. Der Task-Manager. Dieses Dokument kann frei verwendet werden. Keine Lizenzen, kein Copyright. Do what you want with it.
Windows 8 Der Task-Manager Ver 0.3 (27.06.2015) Vorbemerkung Hier wird der Task-Manager von Windows 8 beschrieben. Was Ist das? Der Task-Manager zeigt alle laufenden Programme und Dienste in einer Liste
MehrÜbungsklausur vom 7. Dez. 2007
Übungsklausur vom 7. Dez. 2007 Ein Lösungsmuster Teilbereiche der Softwaretechnik Software Anforderungen Software Entwurf Software Konstruktion Software Test Software Wartung Software Konfigurationsmanagement
MehrInstitut für Telematik Universität zu Lübeck. Programmieren. Kapitel 0: Organisatorisches. Wintersemester 2008/2009. Prof. Dr.
Institut für Telematik Universität zu Lübeck Programmieren Kapitel 0: Organisatorisches Wintersemester 2008/2009 Prof. Dr. Christian Werner 1-2 Überblick Ziele Inhaltsüberblick Ablauf der Veranstaltung
MehrSoftwareentwicklungsprozess im Praktikum. 23. April 2015
Softwareentwicklungsprozess im Praktikum 23. April 2015 Agile Softwareentwicklung Eine agile Methodik stellt die beteiligten Menschen in den Mittelpunkt und versucht die Kommunikation und Zusammenarbeit
MehrSEP 114. Design by Contract
Design by Contract SEP 114 Design by Contract Teile das zu entwickelnde Programm in kleine Einheiten (Klassen, Methoden), die unabhängig voneinander entwickelt und überprüft werden können. Einheiten mit
MehrMakenai Solutions, Innovation & Creative Ideas. ERFOLGSGESICHT Narrika - Unified Communications Einsatz
Makenai Solutions, Innovation & Creative Ideas ERFOLGSGESICHT Narrika - Unified Communications Einsatz Inhalt Inhalt... 2 Erfolgsgesicht. Narrika -... 3 Unified Communications Einsatz... 3 ZUSAMMENFASSUNG...
Mehr4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren:
4. AUSSAGENLOGIK: SYNTAX 4.1 Objektsprache und Metasprache 4.2 Gebrauch und Erwähnung 4.3 Metavariablen: Verallgemeinerndes Sprechen über Ausdrücke von AL 4.4 Die Sprache der Aussagenlogik 4.5 Terminologie
MehrSocial Media Guidelines. Miriam Nanzka, Hohenzollern SIEBEN
Social Media Guidelines 1 Social Media Guidelines: KULTURWANDEL Social Media heißt: many-to-many-kommunikation! Für Organisationen ist das eine ganz neue Herausforderung, denn Kommunikation wird nur noch
Mehr