Softwaretechnik

Description

Flashcards on Softwaretechnik, created by Marvin Grw on 31/08/2017.
Marvin Grw
Flashcards by Marvin Grw, updated more than 1 year ago
Marvin Grw
Created by Marvin Grw over 6 years ago
47
2

Resource summary

Question Answer
Was versteht man unter SOftware? unter Software subsummiert man alle immateriellen Teile, d. h. alle auf einer Datenverarbeitungsanlage einsetzbaren Programme.
Was versteht man unter einem Softwareprodukt? Produkt, das aus Software (Programmen und Dokumenten) besteht.
Was versteht man untr einem System? Unter einem System wird ein Ausschnitt aus der realen oder gedanklichen Welt, bestehend aus Gegenständen und darauf vorhandenen Strukturen verstanden.
Was versteht man Systemsoftware ß ...auch Basissoftware genannt. -Für eine spezielle Hardware oder eine Hardwarefamilie entwickelt, um den Betrieb und die Wartung dieser Hardware zu ermöglichen bzw. zu erleichtern.
Was versteht man unter Anwendungssoftware ? Löst die Aufgaben des Anwenders mit Hilfe eines Computersystems. Setzt in Regel auf der Systemsoftware der verwendeten Hardware auf bzw. benutzt sie zur Erfüllung der eigenen Aufgaben.
Aus welchen Bestandteilen besteht ein Computersystem? Anwendungssoftware+ Systemsoftware+ Hardware
Was versteht man unter Softwareentwicklung? Ausschließlich Entwicklung von Software
Was versteht man unter Systementwicklung? Entwicklung eines Systems, das aus Hardware-und Software-Komponenten besteht. Bei der Entwicklung müssen zusätzliche Randbedingungen berücksichtigt werden.
Eigenschaften von Softare? -ist ein immatrielles Produkt -wird nur entwickelt, nicht gefertigt -besteht aus umfangreichen Texten -ist sehr komplex -unterliegt keinem Verschleiß -sie altert -ist digital -leicht und schnell änderbar
Welche Änderungen gab es in der SE in den letzten 30 Jahren ? -Zunehmende Bedeutung -Wachsende Komplexität -Zunehmende Qualitätsanforderungen -Zunehmende Standardsoftware -Zunehmend Outsourcing
MErkmale der Softwarequalität -Gebrauchsqualität(Extern) -Produktqualität(Intern) -Prozessqualität
BEstandteile der Gebrauchsqualität Relevanz und Effektivität Betriebsqualität Zuverlässigkeit Benutzungsfreundlichkeit
Bestandteile der Produktqualität Korrektheit Robustheit Wartbarkeit Übertragbarkeit
Bestandteil der Prozessqualität Mit einer hohen Qualität des Entwicklungsprozesses lässt sich die Produkt-und Einsatzqualität am besten sichern.
Anforderungen an marktreifer Software Funktionstreue Qualtitätstreue Termintreue Kostentreue
Was ändert sich in der Entwicklung? -die Produktanforderungen -die Hardware- und Systemsoftware-Komponenten -die Software-Methoden und -Werkzeuge
Was versteht man unter Altlasten? -Software wird oft Jahrzehnte eingesetzt -Software muss ständig angepasst werden
Wie entstand Softwaretechnik? 1960er Jahre: Softwarekrise Forschungsprogramm wurde entwickelt
Defintion Softwaretechnik Die Softwaretechnik befasst sich mit der professionellen Entwicklung großer Softwaresysteme, wobei Anwendungssoftwareim Vordergrund steht
Bereiche der Softwaretechnik Große Softwaresysteme Anwendungssoftware Professionelle Softwareentwicklung
Wichtige Prinzipien der Softwaretechnik Prinzip der Abstraktion Prinzip der Strukturierung Prinzip der Hierarchisierung Prinzip der Modularisierung
Prinzip der Abstraktion Unwichtige Merkmale und Details werden vernachlässigt
Prinzip der Strukturierung Durch Hierarchisierung und Modularisierung werden spezifische Merkmale hervorgehoben.
Prinzip der Hierarchisierung Elemente werden in eine Rangordnung gebracht und in Baumform dargestellt.
Prinzip der Modularisierung Aufspaltung in einzelne Bausteine (Module) mit definierten Schnittstellen.
PROZESSMODELLE PROZESSMODELLE
Was ist ein Prozessmodell? Allgemeiner Entwicklungsplan, der das generelle Vorgehen beim Entwickeln eines Softwareprodukts bestimmt.
Was beschreibt eine Rolle? Beschreibt die notwendigen Erfahrungen, Kenntnisse und Fähigkeiten, über die ein Mitarbeiter verfügen muss, um eine bestimmte Aktivität durchzuführen.
Was ist ein Artefakt? -Greifbares Stück Information,durch Mitarbeiter erzeugt, geändert oder benutzt -Beispiele: Dokument, z. B. Lastenheft, Modell, z. B. objektorientiertes Analysemodell, Quellcode
Was legt ein Artefaktmuster fest? Legt die Struktur, den Inhalt und das Layout eines Artefakts fest.
Welche Festlegungen pro Phase werden benötigt? -Ziele der Phase -Durchzuführende Aktivitäten -Aktivitäten/Rollenzuordnung -Zu erstellende Artefakte -Zu verwendende Artefaktmuster -Methoden, Richtlinien, Konventionen und Checklisten -Werkzeuge und Sprachen
Was gliedert das Phasenmodell? Gliedert die Softwareentwicklung in einzelne Phasen, die sequenziell durchlaufen werden. Jede Phase wird durch einen Meilenstein abgeschlossen, erst dann startet die nächste Phase.
PRO Phasenmodell -Einfacher, verständlicher Aufbau -Gut strukturiert durch Meilensteine -Aufgaben klar definiert -Definierte Nutzereinbindung
CONTRA Phasenmodell -Lange „Latenzzeit“ -Fehler unvermeidbar -Änderungen unvermeidbar
Was ist Tailorin von Prozessmodellen? Der richtige Mittelweg zwischen Standardisierung und Freiheit zur Kreativität
Ziele von Tailoring -So wenig Phasen, Artefakte und Rollen, wie unbedingt nötig. -Aufbau der Artefakte so, dass sie den Standardfall abdecken. -Optimale Werkzeugunterstützung sicherstellen -Jedes Artefakt wird durch die Qualitätssicherung überprüft
Was passiert bei einem Evolutionären Modell? Bei der evolutionären Entwicklung wird ein Projekt in kleinere, weitgehend eigenständige Teilprojekte zerlegt.
Was geschieht bei einem inkrementellen Modell? Gleich wie Evolutionär, aber: Am Anfang steht eine vollständige Analyse aller Anforderungen.
Was ist das Spiralmodell? Jeder Zyklus enthält folgende Aktivitäten: 1.Festlegen der Ziele mit Rahmenbedingungenund möglichen Alternativen 2.Beurteilung von Alternativen, Abschätzen undReduzieren von Risiken (z. B. durch Prototyping) 3.Entwicklung und Test eines Teilprodukts 4.Planung des nächsten Zyklus
Was sind agile Prozesmodelle? Gestalten den Prozess der Softwareentwicklung unter Berücksichtigung agiler Werte, Techniken und Methoden. -Legen besonderen Wert auf Flexibilität, Eigenverantwortung des Entwicklungsteams, Einbeziehung aller Stakeholder Beispiele: Scrum, Kanban
PLANUNGSPHASE PLANUNGSPHASE
Was geschieht bei der Produktauswahl? -Festlegung, welche Produkte entwickelt werden sollen -Strategische Ziele werden abgestimmt
Hilfsmittel bei der Produktauswahl -Trendstudien -Marktanalysen -Forschungsergebnisse -Kundenanfragen -Vorentwicklungen
Hauptanforderungen an Voruntersuchung des Produkts -Hauptfunktionen -Hauptdaten -Hauptleistungen -Wichtigste Aspekte der -Benutzungsschnittstelle -Wichtigste Qualitätsmerkmale
Was geschieht bei der Durchführbarkeitsuntersuchung? -Zeigen der fachlichen, ökonmischen und personellen Durchführbarkeit -Am Ende der Planungsphase Entscheidung über weitere Vorgehensweise
Tätigkeiten bei der Durchführbarkeitsuntersuchung -Prüfen der fachlichen Durchführbarkeit -Prüfen alternativer Lösungsvorschläge -Prüfen der personellen Durchführbarkeit -Prüfen der Risiken -Aufwands-und Terminschätzung -Wirtschaftlichkeitsrechnung
Welche Rollen werden in einer Planungsphase verteilt? Mitarbeiter und Verantwortlichen
Funktion eines Lastenheftes Aufgabe Adressaten Inhalt Form Sprache Zeitpunkt Umfang
Basisstruktur eines Lastenheftes -Einleitung -Funktionale Anforderungen -Nichtfunktionale Anforderungen -Ergänzungen
Lastenheft Definition Outside-in-Methode Zunächst wird Umwelteines Produkts modelliert und davon ausgehend die Produktinterna.
Lastenheft Definition Inside-out-Methode Zunächst werden Produkt-interna und dann die Schnitt-stellen zur Umwelt modelliert.
Nenne mögliche Modellierungsobjekte für ein Lastenheft -Aktuere und Geschäftsprozesse -Schnittstellen und Datenflüsse
Wie berechnet sich der Gewinn(Verlust)? Deckungsbeitrag * geschätzte Menge –einmalige Entwicklungskosten
Wie berechnet man den Deckungsbeitrag? Erlös –laufende variable Kosten
Woraus setzen sich die ENtwicklungskosten zusammen ? -Personalkosten (Hauptanteil) -Anteilige Umlegung der CASE-Umgebungskosten (einschl. Hardware und Systemsoftware) für die Produktentwicklung - Weitere Kosten, z. B. andere Dienstleistungen, Büromaterial, Druckkosten, Dokumentation, Reisekosten
Was passiert bei LoC? Der geschätzte Umfang wird durch einen Erfahrungswert für die Programmierproduktivität (in LOC) eines Mitarbeiters pro Jahr oder Monat geteilt.
Kritik an der LoC-Methode -Programme sind nur einTeil des Ergebnisses. -Mehr Code muss nicht besser als wenig Code sein. -Guter, kompakter Code ist aufwendig zu schreiben. -Einfluss der Programmiersprache -Einfluss der Codeformatierung
Zentrale Einflussfaktoren beim "Teufelsquadrat" -Quantität -Qualität -Entwicklungsdauer -Kosten Jede Änderung eines Faktors beeinflusst automatisch die anderen.
"Teufelsquadrat" Bestandteile Quantität Größe Umfang Komplexität
"Teufelsquadrat" Bestandteile Qualität -Je höher die Qualtitätsanforderungen, desto größer der Aufwand -Es geht um verschiedene Qualtitätsmerkmale -Jedem Qualitätsmerkmal lassen sich Kennzahlen zuordnen
"Teufelsquadrat" Bestandteile Entwicklungsdauer -Soll die Zeit verkürzt werden, dann werden mehr Mitarbeiter benötigt -Mehr Mitarbeiter erhöhen den Kommunikationsaufwand innerhalb des Entwicklungsteams. -Der höhere Kommunikationsanteil reduziert die Produktivität
"Teufelsquadrat" Bestandteile Produktivität -Wird von vielen verschiedenen Faktoren beeinflusst -Die Lernfähigkeit und Motivation der Mitarbeiter sind entscheidend
Welche folgenden Schätzmethoden -Analogiemethode -Relationsmethode -Multiplikationsmethode -Prozentsatzmethode -Funktion Point-Methode
DEFINITIONSPHASE DEFINITIONSPHASE
Wofür wird die Definitionsphase genutzt? Als Brücke zwischen Problem und Lösung
Welche Arten von Anforderungen gibt es? Funktionale Anforderungen Nichtfunktionale-/Qualitätsanforderungen Randbedingungen
Bestandteile der funktionalen Anforderungen -Statik des Systems -Dynamik des Systems -Logik des Systems
Bestandteile Nichtfunktionale-/Qualitätsanforderungen Qualitative Eigenschaften einzelner Systemfunktionen
Bestandteile Randbedingungen Organisatorische oder technische Vorgaben
Definition Requirements Engineering (RE), dt. Systemanalyse Ermittlung, Spezifizierung, Analyse, Validierung von Anforderungen, um daraus eine fachliche Lösung abzuleiten bzw. ein Produktmodell zu entwickeln.
Welche Aktivitäten gibt es im RE? -Anforderungen ermitteln -Anforderungen spezifizieren -Anforderungen analysieren, validieren und abnehmen -Anforderungen modellieren -Anforderungen analysieren, verifizieren und abnehmen -Anforderungen verwalten und managen
Nenne typische Risiken im RE -Kunden sind im Projekt unzureichend repräsentiert. -Kritische Anforderungen werden übersehen. -Es werden nur funktionale Anforderungen berücksichtigt. -Anforderungen werden unkontrolliert geändert. -Anforderungen beschreiben den Entwurf. -Anforderungen werden nicht auf Qualität geprüft. -Anforderungen werden perfektioniert.
Reglement für Anforderungen -Korrekt -Eindeutig -Vollständig -Konsistent -Klassifizierbar nach Wichtigkeit -Klassifizierbar nach Stabilität -Überprüfbar -Verfolgbar
Nenne Techniken zur Anforderungsermittlung -Befragungstechnik -Kreativitätstechnik -Dokumentenzentrierte Technik -Beobachtungstechnik -Weitere Techniken
Definition Befragungstechnik Befragungstechnikenermitteln Anforderungen durchmündliche Einzel-oder Kleingruppenbefragungen oderdurch schriftliche Einzelbefragungen anhand einesformalisierten Schemas.
Definition Kreativitätstechnik dienen zum gemeinsamen Erarbeiten von Anforderungen in Gruppen.
Definition dokumentenzentrierte Technik werden vorhandene Dokumente und andere Artefakte (z. B. Quelltexte) ausgewertet.
Definition Beobachtungstechnik Beobachtungstechnikensetzen auf das Ermitteln von Anforderungen bei der täglichen Arbeit der Anwender.
Was beinhaltet ein Pflichtenheft? Genaue Spezifikation der Anforderungen, meist aus Lastenheft entwickelt.
Welche Analysen sollten in einem Pflichtenheft durchgeführt werden? Bei der Erstellung des Pflichtenhefts sollten eine Ist-und eine darauf aufbauende Soll-Analyse durchgeführt werden
Wie können Anforderungen in einem Pflichtenheft differenziert werden? -offen oder latent, -hart oder weich, -objektivierbar oder vage, -funktional oder nichtfunktional sein.
Was dokumentiert die Anforderungsspezifikiation? Sie dokumentiert die wesentlichen Anforderungen an eine Software und ihre Schnittstellen, und zwar präzise, vollständig und überprüfbar.“
Welche angestrebten Eigenschaften besitzt ein Pflichtenheft? -zutreffend -vollständig -widerspruchsfrei / konsistent -neutral / abstrakt -nachvollziehbar -objektivierbar
Welche Darstellung soll ein Pflichtenheft besitzen? -leicht verständlich -präzise -leicht erstellbar -leicht verwaltbar
Aufbau Pflichtenheft 1 Einleitung 1.1 Zielsetzung 1.2 Produktziele 1.3 Definitionen, Akronyme und Abkürzungen 1.4 Referenzen 1.5 Überblick
Aufbau Pflichtenheft 2 Übersichtsbeschreibung 2.1 Produkt-Umgebung 2.2 Produkt-Funktionen 2.3 Benutzer-Eigenschaften 2.4 Allgemeine Restriktionen 2.5 Annahmen und Abhängigkeiten
Aufbau Pflichtenheft Spezifische Anforderungen 3.1Externe Schnittstellen-Anforderungen 3.2Funktionale Anforderungen 3.3Leistungsanforderungen 3.4Entwurfsrestriktionen 3.5Qualitätsmerkmale 3.6Andere Anforderungen
Aufbau Pflichtenheft Spezifische Anforderungen OO-Entwicklung 3.1 Externe Schnittstellen-Anforderungen 3.1.1 Benutzungsschnittstelle 3.1.2 Hardware-Schnittstellen 3.1.3 Software-Schnittstelle 3.1.4 Kommunikations-Schnittstellen
Nenne die Schritte für eine Checkliste bei Anwendungsfällen 1.Rollen & Personen ermitteln 2.Geschäftsprozesse für die Standardverarbeitung ermitteln 3.Geschäftsprozesse für Sonderfälle formulien 4.Aufteilen komplexer Geschäftsfälle 5.Gemeinsamkeiten von Geschäftsprozessen ermitteln 6. Gute Beschreibungen erstellen 7.Fehlerquellen ausfindig machen
Was passiert in einem Geschäftsprozessdiagramm? In einem Geschäftsprozessdiagramm werden alle wichtigen Geschäftsprozesse und Akteure eingetragen.
PRO Anwendungsfälle -Konzentration auf die Standardabläufe -Ergänzung um Datenflüsse möglich -Auch für den Auftraggeber leicht verständlich
CONTRA Anwendungsfälle -Gefahr, zu sehr ins Detail zu gehen -Gefahr, Anwendungsfälle als Kontrollstrukturen zu spezifizieren
Was beschreiben Funktionsbäume? Funktionsbäume beschreibenAbhängigkeiten von Funktioneneines Systems untereinander(Funktionale Zerlegung)
Was ist das Modellierungsziel eines Funktionbaumes? Systematische Erfassung des fachlichen Funktionsumfangs eines Informationssystems. Zu beachten sind: - Vollständigkeit -Wiederfindbarkeit - Redundanzfreiheit - Stabilität
Welche Erstellungsregeln existieren bei einem Funktionsbaum? Unter einer gemeinsamen Vaterfunktion sollen nur Funktionen angeordnet sein, die fachlich eng zusammengehörende Tätigkeiten beschreiben. 5 +/- 2 Regel
PRO Funktionsbaum +Bewährtes Konzept zur systematischen Gliederung von Funktionen + Anspruch auf Vollständigkeit, Redundanzfreiheit + Gibt erste Hinweise für eine mögliche Dialoggestaltung.
CONTRA Funktionsbaum - Berücksichtigt nur die funktionale Sicht. -> Ergänzung CRUD-Matrix erforderlich. - Für objektorientierte Systeme nur bedingt geeignet.
Wie funktioniert eine CRUD-Matrix Auswertung? Zeilenweise (gelesen aus Aktivitätensicht) Spaltenweise (gelesen aus Datensicht ) Modulbildung Kohärenz maximieren Kopplung minimieren
ABSCHNITT 3 - Vertiefung Softwarearchitektur ABSCHNITT 3 - Vertiefung Softwarearchitektur
Was ist Architektur? Die Strukturen eines Softwareprodukts. Diese umfassen Elemente (Komponenten), die extern wahrnehmbaren Eigenschaften der Elemente und die Beziehungen zwischen den Elementen.
Enthält ein System ein oder mehrere Struckturen? Ein System beinhaltet viele Strukturen, nicht nur eine. Für bestimmte Zwecke/Analysen sind jeweils bestimmte Sichten auf ein System relevant.
Wie viele Architekturen kann ein System besitzen? Jedes System hat eine Architektur, aber sie muss nicht bekannt sein
Beschreibt eine Architekur die Innen- oder Außensicht der Elemente? Architektur beschreibt nur Außensicht der Elemente, nicht deren Innenleben (Wirkung auf andere Elemente).
Welche Sichten von Architektur gibt es? -Fachliche Sicht -Statische Sicht -Verteilungssicht -Laufzeitsicht
Was ist ein Architekturstil? Ein Architekturstil ist eine prinzipielle Lösungsstruktur, die für ein Softwaresystem durchgängig und unter weitgehendem Verzicht auf Ausnahmen angewandt werden sollte. Festlegung von Syntax und Semantik.
Wofür steht "Quasar"? Qualtitäts-Software-Architektur
Welche Software-Blutgruppen gibt es? 0-Software A-Software T-Software AT-Software R-Software
Wofür steht die 0-Software? ..ist unabhängig von Anwendung und Technik. Sie ist ideal wiederverwendbar, für sich alleine aber ohne Nutzen.
Wofür steht die A-Software? ..ist bestimmt durch die Anwendung Anwendungsbestimmter Code kennt Begriffe wie „Fluggast“, „Buchung“ oder „Fluglinie“.
Wofür steht die T-Software? ..ist bestimmt durch die Technik Ein solcher Baustein kennt mindestens ein technisches API wie JDBC oder OCI.
Wofür steht die AT-Software? ..ist bestimmt durch die Anwendung und Technik -schwer zu warten -widersetzt sich Änderungen -kann kaum wiederverwendet werden /generell zu vermeiden, außer es ist R-Software!
Wofür steht die R-Software? ..transformiert fachliche Objekte Beispiele für externe Repräsentationen sind Zeilen einer Datenbank-Tabelle, ein Bildschirmformat oder XML.
Wie gestaltet sich die Wiederverwendbarkeit der Blutgruppen? Blutgruppe 0: hervorragend T: sehr gut A: wiederverwendbar AT: nicht wiederverwendbar R: nicht wiederverwendbar
Wo sind A-SChnittstellen einzuordnen? A oder AT
Wo sind T-SChnittstellen einzuordnen? T oder AT
Welche Komponenten sind schlecht? AT
Welche SChnittstellen sind sehr schlecht? AT
Wofür steht WAM? Werkzeug Automat Material -bezeichnet die zentralen Entwurfsmetaphern
Was steht im Mittelpunkt bei WAM? Im Mittelpunkt stehen der Arbeitskontext der Anwender und dessen objektorientierter Abbildung auf gebrauchstaugliche Software mit agilen Entwicklungsmethoden.
Was bedeutet das Werkzeug bei WAM? Gegenstände, mit denen Menschen im Rahmen einer Aufgabe Materialien verändern oder sondieren können.
Was bedeutet das Material bei WAM? Gegenstände, die im Rahmen einer Aufgabe Teil des Arbeitsergebnisses werden. !Was Werkzeug und was Material ist, erkennen wir erst in einerArbeitssituation; dort allerdings eindeutig.!
Bestandteile eines Materialentwurfs -Konzentration auf fachliche Funktionalität -Konzeptionelle Einheit -Material und Interaktion -Materialzustand -Generische Operation
Bestandteile eines Werkzeugentwuwurfs -Funktionalität eines Werkzeugs -Automatisierung und Unterstützung -Werkzeug und Abläufe -Werkzeugzustand -Größe -Gestaltungsmerkmale
Was sind die Automaten bei WAM? -Automatisierung -Kapselung technischer Schnittstellen -Abbildung von technischen Prozessen Beispiele: Datenbanken Einzahlungsautomat Kopierer ...
Definition Fachwerte Fachwerte sind benutzerdefinierte Werte, die Werte im Anwendungsbereich modellieren. Sie besitzen einen Wertebreich und Operationen
Was ist ein fachlicher Service? Ein Fachlicher Service bietet einer Zielgruppe ein Dienstleistungsbündel an.
Welche Zyklen sind kürzer? Technologische oder Fachliche? Technologiezyklen sind kürzer als fachliche Zyklen.
ENTWURFS- und ARCHITEKTURPRINZIPIEN ENTWURFS- und ARCHITEKTURPRINZIPIEN
Nenne die sieben Symptome eines schlechten Desgins -Starrheit (Änderungen sind schwer) -Zerbrechlichtkeit (Änderungen=Fehler) -Unbeweglichkeit(Code nicht wiederverw.) -Zähigkeit (Änderungen nicht gewollt) -Undurchlässigkeit (Code nicht verständlich) -Komplexität(Lösungen sind zu schwer) -Wiederholungen (Gefahr durch redundante Teile)
Was sind Prinzipien? Prinzipienleiten als allgemeingültige Regeln das Denken und Handeln und helfen dabei, Gesetzmäßigkeiten zu verstehen. -erleichtern Umgang mit Komplexität
Wie sollte eine Modellierung anwendungsfachlicher Klassen aussehen? -nah am Anwednungsbreich -Abstraktion der jeweiligen Domäne -diskutierbar -spezifisch -Wiederverwendbar
Was sind technische Klassen? -auch Hilfklassen gennant -meist deutlich umfangreicher als der fachliche Kern
Warum sollte man Entwurfsentscheidungen kapseln? -Jede Entscheidung wirkt auf nachfolgende Entscheidungen. -deshalb bei der Modellierung die Entscheidungen zuerstgetroffen werden, die sich mit größter Wahrscheinlichkeit nicht ändern werden. -Entscheidungen hingegen, die sich mit hoher Wahrscheinlichkeit ändernkönnen , sollten wir kapselnund damit leichter austauschbar halten.
Wie viele Entwurfsentscheidungen sollt ein Modul verbergen? Genau eins!
Worauf beziehen sich Entwurfsentscheidungen? -Gegenstände und Operationen der Anwendungswelt -Schnittstellen zum Basissystem -interne Verwaltung von Datenelementen
Mit welchen Begriffen ist das Geheimnisprinzip eng verwandt? Lokalität und Kapselung
Defintion Geheimnisprinzip Nur relevante Merkmale einer Entwurfs-und Konstruktionseinheit sollten für Klienten sichtbar und zugänglich sein.
Was ist das Dienstleister-Prinzip? Jedes Element einer Architektur soll ein fachlich oder technisch motiviertes Bündel an Dienstleistungen über seine Schnittstelle anbieten, ohne die Art der Realisierung offenzulegen.
Defintion Kohäsion Grad (Anzahl und Verschiedenheit) der Aufgaben, die eine Softwareeinheit zu erfüllen hat. Wenn eine Einheit für genau eine logische Aufgabe zuständig ist, dann sprechen wir von hoher Kohäsion.
Wann sprechen wir von Code-Duplizierung? Wenn ein Stück Quelltext in identischer Form an mehreren Stellen eines Systems definiert ist
Warum ist Code-Duplizierung problematisch? ,weil.. -oft an einer Stelle nicht erkennbar ist, an welchen anderen Stellen derselbe Quelltext erscheint -Änderungen an einem der Duplikate eventuell auch an allen anderen Duplikaten ausgeführt werden müssen; dies kann bei der Wartung übersehen werden.
Ist Code-Duplizierung ein Zeichen für eine hohe oder niedrige Kohäsion? niedrige Kohäsion -Wenn zwei Einheiten dieselbe (Teil-)Aufgabe erledigen, ist bei mindestens einer von beiden die Zuständigkeit falsch zugeordnet.
Was sind "Gott-Klassen" und warum sollte man diese vermeiden? -Sie ist für alles zuständig und hält 90% des Quelltextes. -schlecht wartbar -Klasse ist zu groß
Was bezeichnet eine "Kopplung"? Kopplung bezeichnet den Grad der Abhängigkeiten zwischen den Einheiteneines Softwaresystems. -Wenn eine Klasse mit allen anderen Klassen verbunden ist, ist das ihre maximal mögliche Kopplung.
ENTWURFSPHASE ENTWURFSPHASE
Wie wird Softwareentwurf noch genannt? Softwaredesgin
Aufgaben des Softwarentwurfs Aus den gegebenen Anforderungen an ein Softwareprodukt eine softwaretechnische Lösung im Sinne einer Softwarearchitektur entwickeln.
Was muss vor den Entwurfsaktivitäten geklärt werden? -Randbedingungen -Umgebungsbedingungen -Grundsatzentscheidungen
Was ist die Hauptaufgabe eines Softwarearchitekten? Erstellung der Softwarearchitektur einschließlich der Netzwerkverteilung und der geeigneten Anbindung der Benutzungsoberfläche und der Datenbank
Welche Rolle spielt die Softwarearchitektur? -Ist die Schnittstelle zwischen den Anforderungen und dem Quellcode - Grobes Systemkonzept - Systemweite Abstraktion - Struktur der Strukturen des Systems - Wiederverwendung abstrakter Ideen
Wofür steht UML und was ist die graphische Notation? Unified Modeling Language -Anwendungsstrukturen -Anwendungsverhalten -Architekturen -Geschäftsprozesse -Datenstrukturen
Welche Diagrammtypen sind wichtigß -Klassendiagramm -Objektdiagramm -Aktivitätsdiagramm -Anwendungsfalldiagramm -Zustandsdiagramm -Interaktionsübersichtsdiagramm -Sequenzdiagramm
Was kann mit Sterotype generiert werden? Mit Stereotypekönnen andere Modellelemente erweitert werden.
Wie wird die Sichtbarkeit dargestellt und was bedeuten die Zeichen? + public # protected − private ~ package
Was sind Muster in der Softwaretechnik? abstrakte Beschreibungen bewährter Lösungen für die Wiederverwendung.
Womit beschäftigen sich Entwurfsmuster? mit der Interaktion einiger Objekte, d. h. Strukturen im Kleinen.
Womit beschäftigen sich Architekturmuster? mit Teilen von Architekturen, d. h. größeren Strukturen.
Beschreibungsschema Entwurfsmuster Name Zweck Motivation Struktur (Klassendiagramm) Anwendbarkeit Teilnehmer Interaktionen Konsequenzen Implementierung Beispielcode Bekannte Verwendungen Verwandte Muster
Was ist ein Wrapper? Wenn ein existierendes Modul benutzt werden soll, dessen Schnittstelle nicht mit der benötigten Schnittstelle übereinstimmt
Was macht ein Proxy? Kontrolliert den Zugriff auf ein Objekt mit Hilfe eines vorgelagerten Stellvertreterobjekts.
Was ist ein Teachlet? Ein Teachlet ist eine interaktive Lehreinheit, in der ein lauffähiges Stück Software um eine klar definierte Funktionalität erweitert werden soll
Was ist das Model-View-Controller-Muster? ist eines der bekanntesten und verbreitetsten Muster für die Architektur interaktiver Systeme.
Show full summary Hide full summary

Similar

Diffusion and osmosis
eimearkelly3
Creando un conjunto de fichas
PatrickNoonan
GCSE Biology heart notes
Kamila Woloszyn
Religious Language
michellelung2008
BIOLOGY HL DEFINITIONS IB
Luisa Mandacaru
An Inspector calls - Gerald Croft
Rattan Bhorjee
English Poetry Key Words
Oliviax
New English Literature GCSE
Sarah Egan
CST Module 6a
Jane Foltz
Core 1.5 Mechanisms
T Andrews
Specific Topic 7.3 Timber selection
T Andrews