CAS Software Engineering and Project Management Frühlingssemester 2015
Inhaltsverzeichnis 1 Abstract 3 2 Umfeld und Motivation 3 3 Zielgruppe 3 4 Ausbildungsziele 3 5 Voraussetzungen 4 6 Kursübersicht 4 7 Kompetenzprofil 5 8 Kursbeschreibungen 6 8.1 Requirements-Engineering 6 8.2 Software-Analyse und -Design mit UML 7 8.3 Analyse und Desing Pattern 7 8.4 Informatik-Projektmanagement 8 8.5 Testen 9 8.6 Integrations-Projekt 10 9 Kompetenznachweise 11 10 Lehrmittel 12 10.1 Obligatorische Lehrmittel 12 10.2 Ergänzende Lehrmittel 12 11 Dozierende 12 12 Organisation 13 13 Termine 13 Study Guide CAS Software Engineering and Project Management Frühlingssemester 2015 2/14
1 Abstract Bedürfnisorientierte, zuverlässige und wartbare Software erfordert eine konsequente, methodische Vorgehensweise. Dieses CAS richtet sich an Personen, welche den Software-Entwicklungsprozess, von der Anforderungs-Spezifikation über die Analyse und das Design bis zur Projektleitung beherrschen wollen. 2 Umfeld und Motivation Die Geschäftsprozesse und damit die Informatik-Systeme werden immer komplexer. Die vollständige Erfassung der Anforderungen an ein neues System oder eine System-Änderung, die saubere Analyse, das detaillierte System-Design sowie zielgerichtetes Projekt-Management bilden die Voraussetzungen, um die Erwartungen der Auftraggeber zu erfüllen, um technisch korrekte, zuverlässige und wartbare Systeme zu bauen und um die Projekte in der gegebenen Zeit und mit den budgetierten Mitteln zu realisieren. 3 Zielgruppe Das CAS richtet sich an Personen, welche die systematische Vorgehens-Methodik von der Anforderungs-Spezifikation über die Software-Analyse und das Software-Design bis zur Projektleitung von Software-Projekten beherrschen wollen und müssen, mit Schwerpunkt SW-Analyse und -Design. 4 Ausbildungsziele Die Teilnehmenden: beherrschen das Wissen und Können im Requirements Engineering, in der Objekt-orientierten Analyse und dem Design nach UML sowie im Management von Informatik-Projekten. sind in der Lage, grössere Projekte gemäss heutigen Standards des Software-Engineerings zu spezifizieren, zu analysieren, zu entwerfen, zu planen und zu führen. Study Guide CAS Software Engineering and Project Management Frühlingssemester 2015 3/14
5 Voraussetzungen Neben den generellen Zulassungsbedingungen erwarten wir Vorkenntnisse in einer Objektorientierten-Sprache sowie dem Arbeiten in einer Entwicklungsumgebung. 6 Kursübersicht Kurs/Lehreinheit Lektionen Stunden Dozierende Requirements-Engineering 24 Beatrice Amrhein Software-Analyse und -Design mit UML 44 Beatrice Amrhein Analyse und Design Pattern 20 Beatrice Amrhein Informatik-Projektmanagement 40 Beat Friedli Testen 24 Beat Friedli Gilles Maitre Integrations-Projekt 48 60 André-Claude Godet Beat Friedli Beatrice Amrhein Roland Aeschbacher Total 200 60 Das CAS umfasst insgesamt 12 ECTS Punkte. Für die einzelnen Kurse ist entsprechend Zeit für Selbststudium, Prüfungsvorbereitung etc. einzurechnen. Study Guide CAS Software Engineering and Project Management Frühlingssemester 2015 4/14
7 Kompetenzprofil Legende: 1. Kenntnisse von Begriffen, Definitionen und Regeln; Faktenwissen 2. Verstehen von Zusammenhängen, Erklären von Sachverhalte erklären können 3. Anwendung des Wissen in einfachen Situationen 4. Analyse der eigenen Lösung 5. Synthese neuer Lösungen und Anwendung in komplexen Situationen 6. Beurteilung der Anwendbarkeit für bestimmte Probleme und Situationen, methodische Abwägung und Evaluation von Alternativen, Beziehungen zu anderen Fachgebieten Study Guide CAS Software Engineering and Project Management Frühlingssemester 2015 5/14
8 Kursbeschreibungen Nachfolgend sind die einzelnen Kurse dieses Studienganges beschrieben. Der Begriff Kurs schliesst alle Veranstaltungstypen ein, es ist ein zusammenfassender Begriff für verschiedene Veranstaltungstypen wie Vorlesung, Lehrveranstaltung, Fallstudie, Living Case, Fach, Studienreise, Semesterarbeiten usw. 8.1 Requirements-Engineering Die Anforderungs-Spezifikationen beinhalten die Anforderungen des Kunden und sind das Kernelement für die Neuentwicklung oder Änderung eines Systems (Software-Systeme im Speziellen, technische Systeme im Allgemeinen). Die Vorgehensweise und Methodik des Requirements- Engineerings zur Erstellung von Software Requirements Spezifikationen (SRS) ist eine eigene Disziplin; sie liefert als Resultat die notwendige Grundlage für die anschliessende Analyse und den Design eines Systems. Kursbeschreibung Lernziele Die Teilnehmenden: kennen Standards und Methoden für die Software Requirements Spezifikation (SRS) können diese auf eigene Projekte anpassen sind weiter in der Lage, die Stakeholders zu definieren, Informationen zu erheben und die Anforderungen korrekt und Aufgaben-spezifisch zu spezifizieren, validieren und verifizieren. Themen Qualitätskriterien guter Software Requirements Spezifikationen (SRS) Stakeholders Standards (IEEE 830-1998) Requirements-Engineering-Prozess SRS-Struktur Requirements-Erhebung und -Management Formulierung und Kontrolle der Anforderungen Change-Management Darstellungsmittel Prosa MindMap Prozess-Diagramm Abnahmekriterien und Testszenarien Pflichtenheft Lehrmittel Folien/Skript Literaturempfehlungen: [1], [2] Study Guide CAS Software Engineering and Project Management Frühlingssemester 2015 6/14
8.2 Software-Analyse und -Design mit UML Analyse und Design sind Grundvoraussetzung für eine erfolgreiche Projekt-Realisierung. Diese Entwicklungsschritte werden anhand von UML (Unified Modeling Language) vermittelt und geübt. UML ist zum de facto Standard geworden und soll im Kurs erlernt werden. Kursbeschreibung Lernziele Die Teilnehmenden: haben gute Kenntnisse des Software-Design-Vorgehens sind in der Lage, kleinere Projekte selbständig zu analysieren, zu entwerfen und mit UML zu modellieren und zu dokumentieren. Themen Grobanalyse-Modell OO-Analyse und OO-Design Produkt-Datenblatt/Karton Use Case-Modell und -Beschreibung Szenarien Aktivitäts-Diagramm Zustands-Diagramm Klassendiagramm Generalisierung/Spezialisierung Sequenz-Diagramm Paket-Diagramm Komponenten-Diagramm Einführung in ein CASE-Tool Lehrmittel Folien/Skript Literaturempfehlungen: [5] 8.3 Analyse und Desing Pattern Design Pattern sind bewährte Lösungsschablonen für wiederkehrende Entwurfsprobleme in der Softwarearchitektur und -entwicklung. Sie stellen damit eine wiederverwendbare Vorlage zur Problemlösung dar, die in einem bestimmten Zusammenhang einsetzbar ist. Der primäre Nutzen eines Design Pattern liegt in der Beschreibung einer Lösung für ein Entwurfsproblem. Da jedes Pattern einen Namen hat, wird es damit möglich abstrakt über verschiedene Lösungsansätze zu diskutieren. Kursbeschreibung Lernziele Die Teilnehmenden: können in mittleren und grösseren Projekten als kompetente und sachkundige Diskussions-Partner beim Finden eines sauberen Designs mithelfen. Themen Analyse-Pattern Design-Pattern GUI-Design und Ergonomie Datenbank-Design Lehrmittel Folien/Skript Literaturempfehlungen: [3] Study Guide CAS Software Engineering and Project Management Frühlingssemester 2015 7/14
8.4 Informatik-Projektmanagement Unter Projektmanagement versteht man die saubere Planung, Delegierung, Überwachung und Steuerung eines Projekts. Dazu gehört auch das Koordinieren und Motivieren aller Beteiligten, um die Projektziele innerhalb der erwarteten Zeit, Kosten, Qualität, Umfang, Nutzen und Risiken zu erreichen. In diesem Kurs werden bewährte Modelle, Methoden, Techniken, Hilfsmittel und Werkzeuge zum Themenkreis vorgestellt und an Praxisbeispielen eingesetzt. Ein besonderes Augenmerk fällt auf die Einbindung agiler Vorgehensweisen in das klassische Projektmanagement-Umfeld. Prüfstein für ein erfolgreiches Projektmanagement ist die Projektarbeit, die präzises und überlegtes Planen und Handeln erfordert. Kursbeschreibung Lernziele Die Teilnehmenden: können kleine Projekte selbstständig aufsetzen, leiten und zu einem guten Abschluss führen. Themen Projektphasen und Vorgehensmodelle (Sequentiell, V, Hermes, RUP, XP, SCRUM) Projekt-Organisation Projektumfeld und Projektziele definieren Erfolgsfaktoren und Projektrisiken analysieren Projekte strukturieren Projekte planen: Leistungen, Qualität, Aufwand, Termine, Ressourcen Projekt-Controlling und Reporting Projektänderungen und Ergebnisse managen Projekt-Abschluss Einführung in Scrum Lehrmittel Folien/Skript Literaturempfehlungen: [4] Study Guide CAS Software Engineering and Project Management Frühlingssemester 2015 8/14
8.5 Testen Durchgängige Tests sind eine wichtige Massnahme im Qualitätsmanagement der Softwareentwicklung. Je später im Prozess Fehler entdeckt werden, desto aufwändiger ist ihre Behebung. Daraus lässt sich der Umkehrschluss ableiten: Qualität muss in den ganzen Projektverlauf implementiert werden und kann nicht erst am Ende eingefügt werden. Kursbeschreibung Lernziele Die Teilnehmenden: kennen die wichtigsten Testarten können diese in kleinen Projekten selbstständig aufsetzen und durchführen. Themen Fehlerbehebungskosten nach Projektphasen Vergleich von Audit, Review und Test Testkonzept, Planen von Tests Testebenen, Teststufen, Systematisches Testen Informelle versus formelle Tests Bang Testen versus inkrementelles Testen Top down Testen versus Bottom up Testen White Box Tests versus Black Box Tests Testen nichtfunktionaler Anforderungen Äquivalenzklassenbildung Grenzwertanalyse Intuitive Testfallermittlung Testabdeckung, Testüberdeckungen Lehrmittel Folien/Skript Study Guide CAS Software Engineering and Project Management Frühlingssemester 2015 9/14
8.6 Integrations-Projekt Eine Aufgabenstellung aus dem Umfeld der Studierenden wird zur Festigung des Gelernten als Gruppenarbeit spezifiziert, analysiert und entworfen sowie mittels der Realisierung eines Prototypen verifiziert. Für die Implementation des Prototypen werden Programmiersprache und Entwicklungsumgebung innerhalb der Arbeitsgruppen definiert. Zur Beurteilung der Arbeit wird die Software Requirements Spezifikation (SRS), Analyse und Design, DB- und GUI-Design, das Projekt-Management sowie die Übereinstimmung mit der SRS bewertet, nicht aber die Qualität der Implementation. Kursbeschreibung Lernziele Die Teilnehmenden: führen alle Stufen des Software-Engineerings im Kontext eines anspruchsvollen Projektes aus und festigen damit das Gelernte in den Kursen des CAS. Themen Anwendung der verschiedenen Themen des Software-Engineering, im Besonderen: Requirements Engineering Objekt-orientierte Analyse und Design nach UML Management und Testen von Informatik-Projekten Validierung und Verifikation Präsentation Lehrmittel Folien/Skript Study Guide CAS Software Engineering and Project Management Frühlingssemester 2015 10/14
9 Kompetenznachweise Für die Anrechnung der 12 ECTS-Punkte ist das erfolgreiche Bestehen der Kompetenznachweise (Prüfungen, Projektarbeiten) erforderlich, gemäss folgender Aufstellung: Kompetenznachweis Gewicht Art der Qualifikation Erfolgsquote Studierende Requirements-Engineering 1.5 Prüfung 0 100 % Software-Analyse und -Design mit UML 2.0 Prüfung 0 100 % Analyse und Design Pattern 1.0 Präsentation 0 100 % Informatik-Projektmanagement 2.0 Prüfung 0 100 % Testen 1.0 Prüfung 0 100 % Integrations-Projekt 2.5 Projekt 0 100 % Gesamterfolgsquote 0 100 % Gesamtgewicht 10 ECTS Note A - F Jeder Studierende kann in einem Kompetenznachweis eine Erfolgsquote von 0 bis 100% erarbeiten. Die gewichtete Summe aus den Erfolgsquoten pro Thema und dem Gewicht des Themas ergibt eine Gesamterfolgsquote zwischen 0 und 100%. Die Gesamterfolgsquote wird in eine ECTS Note A bis E umgerechnet, gemäss Studienreglement. Weniger als 50% Gesamterfolgsquote ergibt eine ungenügende Note F. Study Guide CAS Software Engineering and Project Management Frühlingssemester 2015 11/14
10 Lehrmittel 10.1 Obligatorische Lehrmittel Die nachfolgend aufgeführten Lehrmittel sind wesentlich für das Lernen während des geführten Unterrichtes. Sie sind durch die Studierenden zu beschaffen: Nr Titel Autoren Verlag Jahr ISBN Link zur Bestellung [3] Patterns kompakt Gernot Starke, Karl Eilebrecht Springer 2013 ISBN-10: 3-642-34717-7 [4] Ganzheitliches Projektmanagement Adolf Rohde, Karl Pfetzing Verlag Dr. Götz Schmidt 2014 ISBN: 978-3-921313-90-9 10.2 Ergänzende Lehrmittel Ergänzende Lehrmittel sind Empfehlungen, um den Stoff zu vertiefen oder zu erweitern. Die Beschaffung liegt im Ermessen der Studierenden: Nr Titel Autoren Verlag Jahr ISBN Link zur Bestellung [1] Basiswissen Requirements Chris Rupp, Klaus Pohl Dpunkt.Verlag GmbH 2011 ISBN-10: 3-89864-771-4 [2] Systematisches Requirements Engineering Christof Ebert Dpunkt.Verlag GmbH 2014 ISBN: 978-3-86490-139-3 [5] UML 2, Das umfassende Handbuch Christoph Kecher Galileo Press 2011 ISBN-10: 3-8362-1752-X 11 Dozierende Vorname Name Firma E-Mail Beatrice Amrhein BFH beatrice.amrhein@bfh.ch Beat Friedli PostFinance AG beat.friedli.1@postfinance.ch André-Claude Godet Godet Informatik andre.godet@godet.eu.com Roland Aeschbacher BFH roland.aeschbacher@bfh.ch + Weitere Experten, Betreuer und Gastreferenten aus Unternehmen und Lehre Study Guide CAS Software Engineering and Project Management Frühlingssemester 2015 12/14
12 Organisation CAS-Leitung: Prof. Dr. Beatrice Amrhein Tel: +41 31 84 83 276 E-Mail: beatrice.amrhein@bfh.ch CAS-Administration: Kathrin Blumenthal Tel: +41 31 84 83 272 E-Mail: kathrin.blumenthal@bfh.ch 13 Termine Daten: KW 17 2015 bis KW 40 2015 Dienstag, von 08:30 Uhr bis 16:15 Uhr Donnerstag, von 16:30 Uhr bis 19:45 Uhr Study Guide CAS Software Engineering and Project Management Frühlingssemester 2015 13/14
Dokumenteninformation Study Guide CAS SWE FS15 2015-02-09 Die Inhalte und Angaben in diesem Study Guide können sich bis zum Studienstart noch verändern. Berner Fachhochschule Technik und Informatik Weiterbildung Wankdorffeldstrasse 102 CH-3014 Bern Telefon +41 31 848 31 11 Email: office.ti-be@bfh.ch ti.bfh.ch/weiterbildung ti.bfh.ch/cas-swe Study Guide CAS Software Engineering and Project Management Frühlingssemester 2015 14/14