Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Grundlagen des Softwareentwurfs

von der Anforderung zur Architektur
by

Alexander Huwaldt

on 11 February 2016

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Grundlagen des Softwareentwurfs

Grundlagen des Softwareentwurfs
Anforderungen, Architektur und Entwurf
Architektur-Sichten und -Sprachen
Inhalt
Anforderungen, Architektur und Entwurf
Architektursichten und Architektursprachen
Wiederverwendung und Frameworks
Komponenten basierende Entwicklung
Beispiele

Entwicklung auf der Basis von Komponenten
Wiederverwendung und Frameworks
Entwurf versus Architektur,
Dipl. Ing. Päd. Alexander Huwaldt
Beispiele
Definition Softwarearchitektur
Eine Softwarearchitektur ist einer der Architekturtypen in der Informatik und beschreibt die grundlegenden Komponenten und deren Zusammenspiel innerhalb eines Softwaresystems.
Wikipedia

„eine strukturierte oder hierarchische Anordnung der Systemkomponenten sowie Beschreibung ihrer Beziehungen“
Helmut Balzert

Die Softwarearchitektur ist Teil des Softwareentwurfs und legt den
grundsätzlichen Rahmen
( z.B. Komponenten und Schnittstellen) fest. Die konkrete Konstruktion orientiert sich am definierten architektonischen Rahmen.
Architektur
Der Kern einer Anforderungserhebung ist der
Übersetzungsprozess
von der
Fachperspektive
in die
Entwicklerperspektive
. Anforderungen werden unterteilelt in:


nichtfunktionale Anforderungen



funktionale Anforderungen
Konstruktion
Architektur
Beschreibung
Programmiersprachen
Architektursprachen
CASE Enviroment
Tools
UML
ADL
Configuration Capitalize
Component UpperCase
Connector Pipe
Instances
Split : SplitFilter
Upper : UpperCase
Merge : MergeFilter
P1, P2, P3 : Pipe
Attachments
Split.Left as P1.Source
Upper.Input as P1.Sink
Split.Right as P2.Source
Merge.Right as P2.Sink
Upper.Output as P3.Source 4
Merge.Left as P3.Sink
End Capitalize.
Component pipe =
{
Port in;
Port out;
Property implementation : String = “while (!in.eof) { in.read; compute; out.write; }”;
}
<complexType name="Component">
<sequence>
<element name="description"
type="Description"/>
<element name="interface"
type="Interface"
minOccurs="0" maxOccurs="unbounded"/>
<element name="type"
type="XMLLink"
minOccurs="0" maxOccurs="1"/>
</sequence>
<attribute name="id" type="Identifier"/>
<complexType>
Ebenen
Sichten
EJB
DCOM
CORBA
Komponentenbasierte Entwicklung
(Component Based Development – CBD, Component Based Software Engineering – CBSE)
ist ein Konzept bei dem Software-Artefakte in Form von Komponenten wiederverwendet werden sollen.
Die Basis bilden Bibliotheken mit Komponenten (Frameworks) und definierte Protokolle für den Austausch von Daten (Objekte) und dem Aufruf von Funktionen (Services).
Full transcript