Mathematik Informatik Philosophie Diverses Kontatkt FAQ
Benutzername:
Passwort:
 Home > News
Dienstag, 22. August 2017 18:43 
Artikel zur Kategorie: Informatik

11 Artikel (3 Seiten, 5 Artikel pro Seite)

1 2 3 zu Seite: 2


Primitive Rekursion (Informatik)
mehr... (40 mehr Zeichen) Druckoptimierte Version Diesen Artikel an einen Freund senden Kommentare (0) 9228 mal gelesen
Der Begriff der Berechenbarkeit spielt neben dem der Komplexität in der klassischen theoretischen Informatik eine zentrale Rolle. Zunächst sollte man sich fragen, was das Adjektiv „berechenbar“ überhaupt bedeutet und worauf sich dieser Begriff bezieht. Intuitiv werden viele darunter wohl verstehen, dass etwas „sich errechnen lässt“ bzw. „vorhersehbar“ ist. Um jedoch etwas berechnen zu können benötigt man sicherlich ein Kochrezept, also einen Algorithmus bzw. eine Funktionsvorschrift. Schließlich müssen wir auch noch klären, was man alles berechnen kann, es wird sich nämlich zeigen, dass nicht alle Funktionen berechnenbar sind.

Sowohl Turing- als auch Registermaschinen sind Modelle von Maschinen. Sie nähern sich der Frage nach der Berechenbarkeit von der Seite der berechenbaren Automaten. Die jeweiligen Programme, welche auf diesen Maschinen laufen, müssen spezielle für das jeweilige Modell und die jeweilige Problemstellung zugeschnitten sein.

Einen hiervon differeten (aber äquivalenten) Zugang zur Frage der Berechenbarkeit besiert auf speziellen Funktionenklassen und darauf abgeschlossenen Operationen (Verknüpfungen). Mit den so genannte rekursiven Funktionen werden wir Lösungen von Problemen beschreiben und nicht, wie es bei den Maschinenmodellen üblich ist, die einzelnen Schritte des Rechenweges. Das Modell der rekursiven Funktionen versucht also nicht eine Maschine bzw. einen Automaten nachzubilden, sondern packt das Problem der Berechnbarkeit sozusagen bei der Wurzel, d.h. es nähert sich der Frage nach der Berechenbarkeit von Seite der Algorithmen.

Im Einzelnen werden behandelt:

  • Definition "intuitiv berechenbar"; Heranführung an den Begriff "Berechenbarkeit"; Grundlegende Definitionen
  • Nicht berechenbare Funktionen und deren Existenz; Beispiele und Beweis; Kardinalitätsargument;
  • Primitiv rekursive Funktionen; Induktionsprinzip; Basis-Funktionen; Grund-Funktionen; Konstante Funktionen; Nachfolgerfunktion (suc); Projektion auf den i-ten Eintrag; Substitution, Komposition, primitive Rekursion; primitiv rekursive Funktionen abgeschlossen gegenüber den Operationen; Beweis; Algorithmen; berechenbar;
  • Arithmetische Funktionen primitiv rekursiv dargestellt: Addition, Multiplikation, Potenzierung, modifizierte Subtraktion, Fakultät, Signum-Funktion, Maximum, Minimum, Identität; Abgeschlossen gegenüber Umordnung und Weglassen von Variablen; Fallunterscheidung;
  • Primitiv rekursive Relationen: Prädikate, Und, Oder, Nicht, Kleinergleich, Größergleich, Gleichheit; Charakteristische Funktion
  • Der unbeschränkte mue-Operator; echte Erweiterung der primitiv rekursiven Funktionen; alle berechenbaren Funktionen; Minimalisierung; beschränkte mue-Operator; Beispiele;
  • Ackermannfunktion; wichtigsten Charakterisierungen; Eigenschaften; Beweise; streng monoton in beiden Argumenten; wächst stärker als jede primitiv rekursive Funktion.
Geschrieben von Alexander am Mittwoch, 17. Januar 2007 mehr...

Software Engineering: Die Aktivität Analyse (Informatik)
mehr... (29 mehr Zeichen) Druckoptimierte Version Diesen Artikel an einen Freund senden Kommentare (0) 5265 mal gelesen
Erfahrungswerte zeigen, dass die Anforderungsermittlung, bzw. dessen Ergebnis die Anforderungsspezifikation, bei sehr großen zu entwickelnden Softwaresystemen nicht ausreicht um direkt zur Realisierung überzugehen.

In diesen Fällen bildet die Aktivität Analyse einen Brückenschlag zwischen der Anforderungsermittlung und der Realisierung. D.h. zum einen wird die Anforderungsermittlung von Realisierungsdetails entlastet und zum anderen liefert die Analyse ergänzende, präzisierende und weiter strukturierende Informationen. Nicht zuletzt ist es von Bedeutung, dass abschließend eine Analyse-Verifikation durchgeführt wird.

Im Einzelnen werden behandelt:

  • Zusammenfassung der Tätigkeiten und Ergebnisse aus der Anforderungsermittlung.
  • Ergebnis-Dokument Analysespezifikation (Analyse-Klassenmodell, Interaktionsdiagrammen, Zustandsdiagrammen, Ergebnis der Verifikationsaktivitäten)
  • Tätigkeiten der Analyse: Anwendungsfälle in Klassen überführen (Schnittstellenklassen, Kontrollklassen und Entitätsklassen), Analyse-Klassenmodell mit Operationen auskleiden, Verfeinerung bzw. Neuerstellung von Interaktionsdiagrammen und Zustandsdiagrammen, Aufdeckung von neuen (Nicht-Standard-)Operationen.
  • Heuristiken für die Klassenmodellierung: 1:1 Assoziationen und Klassenaufteilung, Generalisierung
  • Klassenmodellierung: gewisse Nähe der Analyse zur Realisierung, Aspekte für die Nähe zur Abstraktion.
  • Vorgehensweise in der Verhaltenmodellierung: Erstellung eines partiellen Objektmodells, Einbindung des Anwendungsfalls, Mechanismus, Kollaborationsdiagramm, Aufdeckung von (Nicht-Standard-)Operationen.
  • Schnittstellenklassen: Akteuer-Anwendungsfall-Schnittstellenklasse (kurz: AAS), Akteuer-Schnittstellenklasse (kurz: AS), Zusammenspiel.
  • use-Beziehung und (Nicht-)Standard-Operationen, Zusammenhang zwischen Verhaltenmodellierung und Vervollständigung des Analyse-Klassenmodells.
  • Verifikation: Inter-Modell-Verifikation (Analyseklassenmodell vs. Interaktionsdiagramme, vs. Zustandsdiagramme, vs. Anwendungsfall-Modell; Intra-Modell-Verifaiktion, Vollständigkeit, Eindeutigkeit und Konsistenz.
Geschrieben von Alexander am Samstag, 25. November 2006 mehr...

Software Engineering: Anforderungsermittlung (Informatik)
mehr... (49 mehr Zeichen) Druckoptimierte Version Diesen Artikel an einen Freund senden 4110 mal gelesen

Beachten Sie, dass dieser Atrikel aus einer Reihe über "Software Engineering" stammt:

Nachdem wir die Grundlagen der Softwareentwicklung in den ersten drei Dokumenten dieser Reihe konstatiert haben, werden wir uns sodann daran machen die erste und auch grundlegende Aktivität "Anforderungsermittlung" genauer zu studieren. Auf dem Ergebnis dieser Aktivität fußt das ganze spätere Projekt, entsprechend sorgfältig sollte diese Phase des Entwicklungsprozesses durchlaufen werden. Es werden die grundlegenden Chancen aber auch die Gefahren der Anforderungsermittlung sowie ein übliches Vorgehen in dieser Aktivität aufgezeigt.

Im Einzelnen werden behandelt:

  • Ziele der Anforderungsermittlung, Gliederung der Anforderungsermittlung (in Extrahieren, Verhandeln, Validieren und Verifizieren, Spezifizieren), Anforderungsspezifiaktion (Dokument bestehend aus Anwendugnsfallmodell, dem Domänenklassenmodell und dem Verhaltensmodellen), objektorientierte Anforderungsermittlung.
  • Motto "Nicht zuviel auf einmal und alles zu seiner Zeit", Problemadäquatheit, natürliche Modellierung, Problemwelt, typisches Vorgehensmuster, Gefahr der zu frühen Detaillierung.
  • Jeder Anwendungsfall behandelt eine klar abgegrenzte Aufgabe und liefert ein relevantes Ergebnis, Zerlegung von Anwendungsfällen, grundsätzliche Regeln zur Erstellung von Anwendungsfällen.
  • Glossar, Verbindung, Akteur und Pakete, Richtlinien.
  • Domänen-Klassenmodell: Ermittlung der Objekt bzw. Klassen, praktische Vorgehensweise, Assoziationen, Attribute, Studium der Szenarien, Fehlen jeglicher Operation, problemadäquat, Strukturen aus der Problemwelt.
  • Modellbereinigung: Jede Domänenklasse sollte mehr als ein Attribut besitzen, ableitbare Attribute und Assoziationen einer Klasse sollten als abgeleitet markiert werden, zu jeder Domänenklasse sollte im Normalfall mehr als ein Objekt in der Problemwelt existieren.
  • Verhaltensmodellierung: Rolle innerhalb der Anforderungsspezifikation, oftmals zu detailliert, externen Interaktionen, zustandsorientierte Verhaltensmodelle, Definition Zustand.
  • Validierung und Verifikation: Was ist eine Validierung, was ist eine Verifikation, Vorgehen, Walk-Throughs, Reviews.
Geschrieben von Alexander am Sonntag, 05. November 2006 mehr...

Software Engineering: Funktions- und Verhaltensmodellierung (Informatik)
mehr... (59 mehr Zeichen) Druckoptimierte Version Diesen Artikel an einen Freund senden Kommentare (0) 3312 mal gelesen
Beachten Sie, dass das bereitgestellte Dokument eines aus einer ganzen Reihe "Software Engineering" ist. Ohne weiteres Vorwissen ist es daher anzuraten, sich vorab einen Überblick zu verschaffen und Grundkenntnisse der strukturellen Modellierung zu beherrschen.

Zu Beginn eines Software-Projekts ist die Komplexitätreduktion das entscheidende Kriterium - deshalb wird in der Anforderungsspezifikation streng zwischen funktionaler und struktureller Modellierung getrennt. Hier wird nun die funktionale bzw. auch die verhaltensorientierte Modellierung erläutert und zum Teil bereits begründet. Dieses Dokument stellt insbesondere die Werkzeuge für die funktionale und verhaltensorientierte Modellierung bereit.

Im Einzelnen wird behandelt:

  • Grundlegende Definitionen: Geschäftsprozess, Anwendungssystem, Anwendungsfall (use-case), Szenario, Akteur (actor) bzw. Benutzer, Assoziationen, main flow, alternative flow, exceptional flow, postcondition, precondition, textuelle Spezifikation, Anwendungsfalldiagramm.
  • Beziehungen zwischen Anwendungsfällen: include-Beziehung, extend-Beziehung, optional, implizit, Extension-point, Vermeidung von Redundanz, Generalisierungsbeziehungen, Mechanismus, paritelles Klassendiagramm.
  • Interaktionsdiagramme, Sequenzdiagramm, Kollaborationsdiagramme, ablauforientiertes Verhalten, UML, Lebenslinie, asynchrone und synchrone Nachrichten, Zerstörung von Objekten, Aktivierung, Dienstanforderer, Dienstanbieter, aktive Objekte, Nummerierung von Kollaborationsdiagrammen.
  • Zustandsdiagramme, Was ist ein Zustand?, UML-Notation, Ereignis, Aufrufereignis, Änderungsereignis, Zeitereignis, Zustandsübergänge und Bedingungen, Wächterbedingung, Aktionen und Aktivitäten, Aktionsfolge, Sendeaktion.
Geschrieben von Alexander am Sonntag, 05. November 2006 mehr...

Software Engineering: Strukturelle Modellierung (Informatik)
mehr... (55 mehr Zeichen) Druckoptimierte Version Diesen Artikel an einen Freund senden Kommentare (0) 3101 mal gelesen
Dieser Artikel ist der zweite Teil einer Reihe über Software Engineering. Der ersten Artikel hat uns einen ersten Überblick über das Gebiet der Software-Entwicklung verschafft.

In diesem Dokument werden wir die strukturelle Modellierung genauer unter die Lupe nehmen. Wir erklären den grundlegenden Begriff ’Objekt’ und erläutern, was man unter Zustand, Verhalten und Identität eines Objekts sowie unter einer Verbindung zwischen Objekten versteht. Von den Objekten gehen wir zum abstrakteren Konzept der Klasse über und behandeln dann das Klassenmodell. Das Klassenmodell bildet den unverzichtbaren Kern jeder objektorientierten Softwareentwicklung, da es mit seiner Durchgängigkeit durch alle Entwicklungsaktivitäten einen festen Bezugsrahmen für die gesamte Softwareentwicklung schafft. Ferner wird die historische Entwicklung ausgehend von den Anfängen der Programmierung (Spaghetti-Code) über die prozedurale bzw. modulare Programmierung (Definition des Begriffs Modul) hin zur objektorientierten Programmierung skizziert. In diesem Kontext wird auch gleich das Geheimnisprinzip erläutert und veranschaulicht.

Im Einzelnen wird behandelt:

  • Objekt, (nicht einfache) Attribut, Eigenschaft, Klasse, Methode, Operation, Modul, Prozedur, Geheimnisprinzip, Vererbung
  • Grundlagen der UML, Basiswissen, Modellierung von Objekten bzw. Klassen, Verbindungen von Objekten, (reflexiven) Assoziationen zwischen Klassen, Generalisierungsbeziehungen.
  • Zustand, Verhalten eines Objekts, Rolle, abstrakte Klasse, abstraktes Klassenattribut, abstrakte Operation (Methode), Erzeugnisse, Instanzen, private (geschützt) bzw. public (öffentlich) und protected (geschützt).
  • Verbindungen zwischen Objekten/Klassen, Objektgeflächte, Dienstleister, Dienstnutzer, Dienstleistund, unidirektionale und bidirektionale Verbindungen, Beispiele, Navigierbarkeit, Multiplizitäten, spezielle Assoziation (Aggregation und Komposition), Assoziationsklassen, abgeleitete Attribute, abgeleitete Assoziation, Standardoperationen
  • Generalisierung bzw. Spezialisierung, Substituierbarkeitsprinzip, Klasseninvariante, Unterschied zwischen Vererbung und Generalisierung, Konformität von Operationen, Spezifikationen, Vor- und Nachbedingung, öffentliche und private Schnittstelle, Implemtation, Stereotyp, Abhängigkeit (dependency), Abstrakte Klassen, reguläre Klasse und Interfaces, Gemeinsamkeiten und Unterschiede,
Geschrieben von Alexander am Sonntag, 29. Oktober 2006 mehr...


11 Artikel (3 Seiten, 5 Artikel pro Seite)

1 2 3 zu Seite: 2


Umfrage
Ganz klar, das schönste Ressort der Mathematik ist die

Zahlentheorie
(Lineare) Algebra
Topologie, Maßtheorie, Integrationstheorie
Statistik, Wahrscheinlichkeitstheorie, Stochastik
Analysis, Funktionalanalysis
Funktionentheorie
Kombinatorik, Graphentheorie
Diskrete Mathematik
Lineare Optimierung

Ergebnisse
Stimmen: 667
Kommentare: 0
Umfragen

Login
Benutzername:

Passwort:



Alle Logos und Warenzeichen auf dieser Seite sind Eigentum der jeweiligen Besitzer und Lizenzhalter.
Im übrigen gilt Haftungsausschluss. Weitere Details finden Sie im Impressum.
Die Inhalte dieser Seite sind als RSS/RDF-Quelle verfügbar.
Die Artikel sind geistiges Eigentum des/der jeweiligen Autoren,
alles andere © 2004 - 2017 by mathematik-netz.de

Seitenerstellung in 0.0827 Sekunden, mit 52 Datenbank-Abfragen