EGE/Inf2017/Modelle
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
== Modelle in der Informatik == === Was sind Modelle === * Abbildung eines Realitätsausschnitts: ** Architektur der Software (Data-Model-View) ** grafische Darstellung von Code (PAP, Struktogramm) ** Datenmodelle (ER-Diagramme) * Konzept eines Systems ** Netzwerkprotokoll (DoD-Schichtenmodell) ** Referenzmodelle (Konzept Rechenanlagen, Filius) ** Data-Warehouse (Internetportale) * Organisation von Firmen (Organigramm) * Wirtschaftsinformatik: Mensch-Maschine-Modell und Auswirkungen <!--[[Bild:Mschubert_Informatische_modelle_beispiele.png]]--> === Beispiele für Modelle === ==== Programmablaufplan (PAP)==== Grenzen *eignen sich nicht für den Entwurf von Programmen in Hochsprachen, da Verzweigungen sehr nahe an den Sprungbefehl angelehnt sind *kann unübersichtlich sein Aufbau *Beginn oder Ende stellt man mit einem Oval dar (In Oval kann z.B. „Start“ oder „Ende“ für das Hautprogramm eingetragen werden) *einzelnen Operationen werden in Rechtecken dargestellt (können einzelne Befehle oder frei sprachliche Beschreibungen der Operationen eingeschrieben werden) *Unterprogrammaufrufe sind als Rechteck mit doppelten vertikalen Linen an Rändern dargestellt *Zeichen steht für mehrere hintereinander liegende Anweisungen *Die als Kreis dargestellte Übergangsstelle dient zur Übersicht dh. Pfeile können vermieden werden ==== Struktogramm ==== Ziele:Entwicklung und Entwurf von Programmen Aufbau:Verbindung mehrerer Blöcke welche Anweisungen,Bedingungen oder Wiederholungen beinhalten können und auch miteinander kombiniert werden können, z.B.eine bedingte Schleife Grenzen:Probleme müssen in einzelne Problematiken zerlegt werden und diese Einzelprobleme werden dann mithilfe eines Struktogramms gelöst Nutzen: Darstellung von Algorithmen ==== ER-Diagramm ==== * '''Ziel und Nutzen:''' dient zur Beschreibung und grafischen Darstellung von Datenbankmodellen Grundprinzip der Datenmodellierung '''Aufbau:''' *Entity/Entität: **Objekt der Wirklichkeit, welches man von anderen Objekten differenzieren kann *Entitätstyp: **Klassifizierung gleichartiger Entitäten *Beziehung: **Verknüpfung zwischen zwei oder mehreren Entitäten *Attribute: **Klassifizierung ähnlicher Eigenschaften *Beziehungstyp: **Typisierung gleichartiger Beziehungen * '''Beispiel: [[Bild:Loko_ERM_Beispiel.png]] * '''Ein Schüler besucht eine Schule. Mehrere Schüler können eine Schule besuchen, aber mehrere Schulen können nicht zu einem Schüler gehören. ==== UML-Diagramm ==== -> unified Modeling Language '''Aufbau''' [[Bild:Hke1655_UML2.jpg]] -> Geheimnisprinzip: Öffentliche Attribut- und Methodennamen werden zusätzlich noch mit einem '+' und private Angaben mit einem '-' gekennzeichnet. '''Ziele''' einheitliche Notation in unterschiedlichsten Einsatzgebieten, graphische Sicht auf Ausschnitte eines Modells, festlegen von Beziehungen zwischen verschiedenen Begriffen (Modelle, Attribute, Klassen( Aufgeteilt in Stereotyp (Klassenname), Attribut und Operationen/Methoden) Objekte, Methoden) '''Einsatzmöglichkeiten''' Spezifikation, Visualisierung, Konstruktion, Dokumentation von Modellen, objektorientierte Softwareentwicklung, Geschäftsprozessmodellierung '''Grenzen''' keine Programmiersprache, nicht vollständig, keine Alternative für textuelle Beschreibung ==== Von-Neumann-Architektur ==== '''Ziel und Einsatzmöglichkeiten''' * Veranschaulichung großer Rechensysteme * Einsatzmöglichkeiten in allen Computer- und Rechensystemen '''Anforderungen und Grenzen''' * Anforderungen/Komponenten ** CPU *** Rechenwerk: führt logische Verknüpfungen aus *** Steuerwerk: leitet Rechenwerk und interpretiert Anweisungen eines Programms ** Bussystem: verbindet die Komponenten des Rechners untereinander ** Speicherwerk: speichert Programme und Daten, die für das Rechenwerk zugänglich sind ** Ein- und Ausgabewerk (I/O-Unit): steuert Ein- und Ausgabe zum Anwender oder anderen Systemen * Grenzen ** Bussystem deutlich langsamer als CPU (Von-Neumann-Flaschenhals) '''Beispiel''' Entwerft ein eigenes Von-Neumann-Modell zu einem allgemeinen Rechner mit den oben angegebenen Komponenten. [[Bild:Apa911_Von-Neumann_Architektur12.svg.png]]