Beruflich Dokumente
Kultur Dokumente
Datenbestände, Referenzdaten bekannt sind (Lastenheft), Gesamtes Produkt soll Produktanforderungen sind Ausgangspunkt, An Nur Gesamtaufwand schätzbar, In Originalform Ist die systematische Vorgehensweise um alle Prinzip (Objektorientierung),Methode (OOA)
Schritte:1Anforderungen Kategorie zuordnen, 2Klassifizierung im Blickfeld stehen, Aus sich des Auftraggebers verschiede Bereiche anpassbar, An neue Techniken personalintensiv nicht automatisierbar, Zu stark Anforderungen zu Definieren, Spezifizieren, Konzept (Objekt, Klasse), Notation (UML)
Einfach mittel komplex, 3Eintrag in Berechnungsformular, Anzahl bearbeiten, Bewertung durch Mitarbeiter mit anpassbar, An unternehmensspezifische Verhältnisse funktionsbezogen, Qualitätsanforderungen verifizieren, Analysieren, Verarbeiten und Werkzeug (Rational Rose), Prozess
der Ausgaben in Anzahl eintragen und multiplizieren 4Bewertung Wissen zur Produktanforderung, Ist-Aufwand muss anpassbar, Festgelegte methodische Schritte werden nicht berücksichtigt, Mischung von einem Projekt zuzuweisen, Im Projekt zu (Anforderungsanalyse),Modell (Analyse Modell)
der Einflussfaktoren 5Berechnung der bewerteten Function- ermittelbar sein Leicht erlernbar, Gute Transparenz Projekt- und Produkteigenschaften verfolgen und Änderungen zu vereinbaren
Points 6Ablesen des Aufwands in MM 7Aktualisierung der Daten
Kernanforderung ermitteln Projektvision: Leitlinie für Schritte Brainstorming, Analyse der Anforderungen Spezifikationen Anforderungsspezifikation, Regeln Anforderungen sind nicht stabil, Zu lange Analyse führt zu
Risiken
ein Projekt, Definierte und vereinbarte Ziele, Stimme des (Zusammenhänge und Einschränkungen verstehen), Vorläufige Systembeschreibung der Lösungsspezifikation, Beschreibung Paralyse, Nur ein zügiger Projektabschluss kann die
Kritische Anforderungen werden übersehen, Nur funktionale
Kunden verstehen Klassifikation in offensichtlich versteckt überflüssig, Finden von wie die Lösung aussieht, Systemmodell Logische Sicht Sicht Anforderungsfluktuation begrenzen
Anforderungen werden beachtet, Kunden sind unzureichend
nicht erwähnten Funktionen, Herausarbeiten von des Benutzers, Prozesssicht Zusammenwirken System und
repräsentiert, Unkontrollierte Änderungen von
Techniken Ziel: Alle gewünschten Eigenschaften, Einschränkungen, Entscheidungen als Vereinbarungen Teilsystem, Implementierungssicht, Installationssicht, Anforderungen ermitteln Ideen im Team finden und diskutieren,
Anforderungen, Beschreibung von Anforderungen als Entwurf,
Funktionen Einschränkungen und Erwartungen ermitteln festlegen und unterzeichnen, Prioritäten festlegen Strukturierte Spezifikation, Modellierung des Problemraums, Beobachten, Befragen, Altsysteme analysieren,
Anforderungen werden nicht geprüft
Modellierung und Beschreibung des Lösungsraums Wiederverwendung
Perfektionierung von Anforderungen und Spezifikation
An die Technik Workshops, Mind Mapping Systemmodelle Wie sieht die Systemumgebung aus?, Wie Vom Satz zur Anforderung Problem der Anforderungsanalyse, Ausgangsmaterialien (Lastenheft, Interview SOPHIST-Group Regelwerk zur Textanalyse, Aufspüren von
Strukurierung, Kategorisierung, Hirarchisierung, Use Case soll sich das System verhalten?, Wie soll das System Ergebnisse …), Interpretation der sprachlichen Äußerungen notwendig, Also Kommunikationsproblem!!!, Notwendig sprachlichen Problemen, Tilgung Unvollständig spezifizierte
Modellierung Abstrakte Sicht des Systems, Data Dictionary strukturiert werden?, Modellierung der Systemumgebung Analyse der verwendeten Sprache, Prozesswörter, Modaloperationen der Möglichkeit, Unvollständige
Formale Beschreibung der Datenstruktur, CRC Karten Use Case Diagramme, Modellierung des Verhaltens Vergleiche, Modaloperationen der Notwendigkeit, Implizierte Annahmen
Auffinden von Klassen bei Objektorientierter Analyse State-Machine Sequenzdiagramm, Modellierung der Struktur ChomskyOberflächen und Tiefenstruktur der Sprache ,Form/Bedeutung eines Satzes, Mehrdeutigkeit, Generalisierung Universalquantoren, Unvollständige spezifizierte
(Komposition, Klassifikation) Synonymität, ProblemSätze werden anhand persönlicher Wirklichkeit interpretiert, Individuelle Zuordnung Bedingungen, Substantive oder Bezugsindex, Verzerrung
ERD oberflächenstruktur zu Tiefenstruktur, Transformation Zuordnung Oberflächenstruktur/Tiefenstruktur und Nominalisierungen, Funktionsverbgefüge,,
Analyse von Tilgung Regeln 1Anforderungen im Aktiv formulieren, 2Prozesse durch vollverben ausdrücken, 3Unvollständig umgekehrt, OberflächenstrukturForm eines Satzes, TiefenstrukturBedeutung eines Satzes, Tilgung Vermeidung von unklaren Formulierungen
spezifizierte Prozesswörter aufdecken, 4Unvollständige vergleiche und steigerungen ermitteln, 5Mögliches und unmögliches klären, Selektive Wahrnehmung / Auf dem Weg von der Tiefenstruktur zur Oberflächenstruktur Elemente weglassen,
6Modaloperator der notwendigkeit auf benötigte ergänzung prüfen, 7Implizite annahmen finden, 8Beziehungen zwischen objekten Generalisierung Erfahrung zu einer allgemeinen Vorstellung erweitern, VerzerrungTatsachen, Realität, Design Verallgemeinert: zusammenwirken der Komponente eines
als anforderung formulieren, 9Universalquantoren bestimmen, 10Nur definierte quantitative Angaben verwenden, 11Ermitteln von Erfahrungen umgestalten oder verfälschen komplexen systems, Einflussfaktoren Einsatzbedingungen
unvollständig spezifizierten Bedingungen, 12Substantive ohne bezugsindex hinterfragen, 13Substantive immer in der einzahl
Anforderungen, Umgebungs/randbedingungen zielplattform,
verwenden, 14Artikel ggf. je nach bedeutung durch jeder, alle oder genau ein ersetzen, 15Unbestimmte artikel nur vor substantiven Anforderungsschablonen Definitionslisten: Nicht-funktionale anforderungen, Qualitätsanforderungen,
das gerade damit definiert wird, 16Bestimmter artikel vor schon definierten substantiven, 17Nominalisierung hinterfragen, Legt bauplan der syntaktischen struktur einer einzelnen Anforderung an, Anforderungsschablonen
18Funktionsverbgefüge durch einfache, direkte vollverben ersetzen, 19Redundanz beseitigen Ziel Gut formulierte anforderungen verfassen, Regeln 1Bestimmen des Konstuktionsprinzipien, Allgemeine Architekturkonzepte Generische allgemeingültige
prozesses, 2Die aktivität des systems charakterisieren, 3Festlegen der Bedeutung liegt in inhalten, ansätze, Frameworks Grundgerüst, Referenzarchitekturen
Architekturtypen BasistypenShared data - repository Shared service client/server model, ServerAnbieter von verbindlichkeit, 4Objekte und ergänzungen der objekte hinzufügen falls Vermeidung von inkonsistenz durch Muster für Architekturen als Ganzes, Entwurfsmuster Muster für
model, Zentrale Datenbasis, Steht allen teilsystemen zur leistung, Client nutzer von leistung, Normalerweise erforderlich, 5Randbedingung unter der eine anforderung erfüllt werden soll benutzung definierter begriffe einzelne probleme
verfügung, Vorteile Effizient, Administration zentralisiert, Client/server auf versch rechnern, Vorteile Dienste ergänzen
Abstract machine layered model, Zerlegung in schichten: präsentation
Komponenten bei nutzung unabhängig, Nachteile unabhängig, Dienste leicht integrierbar, In netzwerken Verteilte systeme VorteileResource sharing, Offenheit, Nebenläufigkeit,
applikationslogikDatenbasis, Strenges modell jede schicht benutzt nur die darunterliegende
Strukturabhängigkeit der Komponente, Verteilung großer reps. einfache verteilung der dienste, Nachteile Keine gem. Skalierbarkeit, Ausfallsicherheit, Nachteile Komplexität, Sicherheit, Administrationsaufwand,
schicht, Kann performance probleme verursachen, Zugriffe über mehrere Schichten nur in
Auf mehrere rechnersys datenstruktur, Spezifische datenbasis je server, Zeigt Vorhersagbares verhalten, 2 wesentl erscheinungsformen Cleint/sever, Verteilte objekte
ausnahme, Auseinanderhalten, Schichtenmodell aufteilung der aufgaben, Aufteilung auf
verteilung von aufgaben auf prozessoren
Prozessoren leistungsanforderung, physikalische verteilung, Vorteil Unterstütz schrittweise
Urspr. 2-tier client/server
Verteilte Objekte Ziele Unterscheidung C/S aufheben, Service Oriented Archticture Anwendungsübergreifend entwicklung, Teststubs verwendbar, Austausch der implementierung mögl
Öffentl schnittstellen anbieten, Objekte/ dienste integrieren, definierte schnittstellen, Registrierung von Service-Angeboten,
MiddlewareKommunikation der Objekte, Objekte hinzufügen Bereitstellung von Services, Beispiel : Web Services, Vorteile Referenzarchitecturen Data-processing applications, Transaction-processing applications Oft in form von Event processing systems Reagieren auf ereignisse, Erzeugen
entfernen, Software bus, Vorteile Flexibel und skalierbar, Öffentliche Beschreibung der Services, verzögerte Bindung Einfache meist sequentielle strukt, Input, process, output, einer reaktion durch ereignisinterprätation, Ereignisquellen,
informationssystemen, Datenbereitstellung, Aktualisierung,
Verteilung der Objekte anpassbar, Neue Objekte nach bedarf, Bis zur Auslieferung, Bis zur Ausführung, Ermöglicht Wechsel Komplexität der datenstruktur nicht der applikationslogik Systemumgebung, benutzerschnittstellen, Realtime geforderte
Benutzeranforderungen (Transaktionen), Informationssystem
Dynamische (re-)konfiguration mögl des Providers zur Laufzeit des Systems, Abrechnungsmodelle antwortzeiten, Oft bestandteile anderer systeme
Bereitstellung von unterschiedlichen informationen,
Kommunikationsstandards SOAP (Simple Object Access Protocol
Regelwerk, Abfragen, Ressourcenverwaltung, Transaktionen
Entwurf von Softwarearchitekturen Es gibt keine Vollständigkeit Schnittstelle einer Fundamentale entwurfsprinzipien Abstraktion idealisierung generalsirung Speicherung, Komponenten, UI, Ressource delivery, ressource Language processing systems Verarbeiten formale syntax,
wunderwaffe, Kriterien für korrekten entwurf, Kopplung Komponente deckt Verantwortungsbereich ab, Kapselung schnittstellen, verborgene implementierung policy control, ressource mngmt, ressource allocation Transformieren sie nach regelwerk, Regelwerk auch formal
Abhängigkeit von Komponenten, Ziel: minimal, Kohäsion Ziel: Vollständigkeit in minimaler form, Modularität sinneinheiten spezifiziert
Innerer zusammenhalt von komponenten, Ziel: maximal, Einfachheit Zulängliche funktionalität im Hirarchie strukturen(enthalten in, oder besteht aus), generalisirung(Verbung)
HeuristikenLösungsverfahren für: Projektumfeld, Anforderungen hinterfragen, Von anderen systemen inspirieren lassen,
Zugänglichkeit Erfüllung der anforderung durch komponente, vergleich zu angemessenen schnittstellen, Ziel: Konzeptuelle integrität durchgängige anwendung von entwurfsentscheidung
Kommunizieren, feedback, Entwurf So einfach wie möglich / angemessen komplex modellieren, verantwortlichkeit beachten/
Ziel: erfüllung mit mögl. Geringem Aufwand größtmögliche einfachheit Ziel: komplexität beherrschen, semantischen inhalt jeder information erhöhen
konzentration auf schnittstellen/verantwortungsbereich einer komponente beachten, Beherrschung von komplexitätTeile und
herrsche/ details verstecken/risiken kapseln, Funktionalität und kontrolle trennen, Fachlogik und infrastruktur trennen,
Architekturprinzipien Entwurfsmuster ArbeitsmethodikDie schwierigsten teile zuerst, Prototypen verwenden nach einsatz beseitigen, Entscheidungen dokumentieren
Prinzip der
Jedes Muster beschreibt ein in unserer Umwelt beständig
-losen kopplungvermeidung zirkulärer abhängigkeiten ErzeugungsmusterFabrikmethode : definiere Schnittstelle zur Strukturmuster : Brücke Entkopplung von Abstraktion und
-hohen kohäsion wiederkehrendes Problem und erläutert den Kern der Lösung für
Objekterzeugung, überlasse Einzelheiten den Unterklassen Implementierung, so daß beide unabhängig voneinander
-entwurf für veränderung erwartbare vs. Nicht erwartbare veränderung dieses Problem, so daß Sie diese Lösung beliebig oft anwenden
können Abstrakte Fabrik : definiere Schnittstelle zur Erzeugung von geändert werden können, Kompositum : Zusammenfassung von
-seperation of concerns trennung von aufg bereichen, zerlegung in subsystems
-Information hiding auch zur strukt größerer systeme, dient umsetzung loser koppl Familien von Objekten, überlasse Einzelheiten den Unterklassen Objekten zu Baumstrukturen, um Teil-Ganzes-Hierarchien zu
-Abstraktion spezialfall von seperations of … , un-/wichtiges unterscheiden Singleton : stelle sicher, dass es nur eine Instanz einer Klasse gibt repräsentieren, Proxy : Kontrolle über ein Objekt auf einen
-Modularität wohldefinierte bausteine, leichte austauschbarkeit, wiederverwendba MVC: unterteilung in 3 komponente aufgabenteilung, vorgelagerten Stellvertreter verschieben
-Rückverfolgbarkeit arch.ansatz aus code erkennbar sein, designentsch nachvollzieh konsistenz sciherstellung
-Inkrementalitätarchänderung in kleinen schritten, einsatz prototypen Data access pattern
Active Domain Object
-Muster zur anwendbarkeit bei interaktion mit datenbasen
-Decoupling pattern, bindeglied zwischen applikation und datenbasis
Verhaltensmuster : Vermittler Kapselung des Zusammenspiels Publish subscriber:Ziel: interaktion zwischen komponenten ohne -Bereiche
-Decoupling patterns strukturierung mit ziel entkopplung -Vorteile code-vereinfachung, entkopplung, einfache gruppierung
einer Menge von Objekten, Beobachter (Observer) Eintreten von sich zu kennen, Bestandteile observer mutter, publisher
-Resource patterns effizienten einsatz ressourcen d. ADO in kompo
Ereignissen an registrierte Objekte übermitteln, Zustand ermöglicht notifications/events, Motivation monitoring von
einem Objekt sein Verhalten zu ändern, wenn sich sein innerer netzwerkkomponenten, Benachrichtigung über auftretende -Input/output patternsvereinfachung des datenaustauschs -Nachteilverantwortung der db-zugriffe wird verteilt
Zustand ändert; Zustände auf Klassen abbilden, Besucher (Visitor) ereignisse nicht vorhersagbar, unterschied oft, 1. -Cache patterns verwaltung von puffern
Kapselung einer auf Elementen einer Objektstruktur Lösungsansatzdirekte kommunikation, vermittler,observer, -Concurrency patterns implementierung von nebenläufigkeit
auszuführenden Operation Bestandteile event, publisher, subscriber, eventservice,filter,class
Vorteile publiseher u. subscriber effizient koppelbar, ggf je PagingIterator Software-Qualität : Gesamtheit der
Object/Relational map Input/output pattern zugriffe auf ergebnismenge einer abfrage Merkmale und Merkmalswerte eines Software-Produkts, die sich
eventtyp ein service, 2. Lösungsansatz publisher verwalten direkt
Decoupling pattern, abbildung von klassen auf db tabellen Vorteil geringer speicherbedarf da ggf akt seite gespeich, auf dessen Eignung beziehen,
eine subscriberliste, Publisher meldet seine veröffentlichung,
Zu beachten obj.identität, verwaltung aggregation, abbildung v. effizienter datentransfer festgelegte oder vorausgesetzte Erfordernisse zu erfüllen
eventservice verwaltet zuordnungsliste, eventservice reicht referenz
vererbungsstruktur bei registrierung von subs an den passenden publsisher weiter Nachteile seitenweise bearbeitung bei client berücks, db
ressourcen werden beleg Was erzielt man Qualität ?
Siedersleben Konsequenzen Qualitätsbegriff kein absolutes Maß für Qualität,
Persistenz nur in Bezug auf Erfordernisse,
-Denken schnittstellen u. komponenten komposition(Zusammenbau), Konfig(kompon verb)
-Schnittstelle zum Anwendungskern Messung von definierten Merkmalen, Merkmalswerte als Maßstäbe
-Finden von komponenten und kontrolle der abhängigkeiten zwischen komp und schnittstelle
-Poolanlegen u. löschen persistenter objekte für Qualität
-Softwarekategorien(Blutgruppen), trennung von anwendung(A) und Technik(T)
-Queryausführung von abfragen „Vermeiden, Erkennen, Beheben“ Regelkreis
-Kategorie 0 alles im sys zur verfügung stehende Wird umgesetzt im
-Keine abhängigkeit von bestimmten db-implem beim anw.kern
-Kategorie A befasst sich mit fachlicher Anwendung, ist frei von technik -Transaktionsmngmtbestätigen oder rücksetzen der änderungen an objekten Qualitätsmanagement(prozess)Qualitätsplanung,
-Kategorie T unabhängig von anwendung, durch implementierungstechnik bestimmt Qualitätslenkung, Qualitätssicherung, Qualitätsverbesserung
-Querydefiner verwalten von abfragedefinitionen
-Kategorie R Repräsentationen ohne verarbeitung
-Modeldefiner verwalten von db-schema
-Komponenten gehören zu keiner Kat. komplexität steigt mit anz. Kategorien a und t komplexer als 0 komponenten
-Pobleme 1obj-1datensatz, !vollst. lesen von obj, vererbung
-Unreine software vermischung von A- und T komplexere abh, schwer wartbar, kaum reuse, vermeiden!!! Qualitätsmanagement (1)
-Struktur des persistenzmanager Umfaßt »alle Tätigkeiten der Gesamtführungsaufgabe,
-5 regeln
-Connectionmngr dbverbindung verwalten wiederverwenden wiederherst welche die Qualitätspolitik, Ziele und Verantwortungen
-Systemaufteilung nach kategorien vornehmenabh u. importbeziehung betrachten
-Poolnpools erzeugung mit poolfactory, nur obj, commit/rollback lebenszyk festlegen sowie diese durch Mittel wie Qualitätsplanung,
-Jede einfache komponente gehört zu einer kat
-Querymanager ausführen verwalten von anfragen, kapselung der implementierung in – Qualitätslenkung, Qualitätssicherung und
-Software mit diff. Kat. Durch 0-schnittstellen oder r-software verbinden
verschiedene anfragesprachen Qualitätsverbesserung im Rahmen des
-Unreine komponente vermeiden -Mappingmngr transformation zwischen objekten und tabellen Qualitätsmanagementsystems verwirklichen«
-Möglich viel software der kat 0 entwickeln
-Mehrschichtarchitekturen
-Anwendungskern stellt leistungen zur verfügung, importiert leistungen Mappingmngr: Qualitätssicherung (QS)
-Benutzerschnittstellen, schnittstellen zu nachbarsystemen -Bestandteile: »Alle geplanten und systematischen Tätigkeiten, die
-Persistenz(+db) oo ansatz im kern, rel dbs, transformation erforderlich, bereitstellung schnittstellen typ 0, bereitstellung allg. -Modelmngrverwaltet angaben zur abbildung oorelational innerhalb des Qualitätsmanagementsystems verwirklicht
abfrageschnittstelle -Statementmngrgeneriert und verwaltet alles sql anweisungen sind, und die wie erforderlich dargelegt werden, um
-Aufbau anwendungskernenthält a-komponente -Objecttrafotransformation von obj in die sql darstellung angemessenes Vertrauen
-Kompositionsmngr stellt ausführungskontext zur verfügung, führt ausnahme behandlung durch, steuert transaktionen, konfigt db- -Ablaufpool holt bei statemngr auszuführende sql anweisung u. übergibt --- zu schaffen, daß eine Einheit die Qualitätsforderung erfüllen
-connectionmngrconnectmngr benutzt schnittst zu objtrafo zur wird«
zugriffsrechte
-Wiederverwendbarkeit mögl. Wenig annahmen, strategien(z.b ausnahmebehandl) umsetzung von sql anweisung connmngr setzt sql anweisung ab