13.03.2013 Aufrufe

Design&Elektronik, Extraausgabe Okt - Silicann

Design&Elektronik, Extraausgabe Okt - Silicann

Design&Elektronik, Extraausgabe Okt - Silicann

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

en, damit zukünftige Funktionsumfänge<br />

in der Softwarekonzeptionberücksichtigt<br />

werden können.<br />

Den Dienstleister mit der Erstellung<br />

der Spezifikation zu<br />

beauftragen, kann gerade in<br />

einer erstmaligen Zusammenarbeit<br />

als Einstieg dienen,<br />

um das Zusammenspiel<br />

zwischen Auftraggeber und<br />

Auftragnehmer zu testen.<br />

Verläuft diese Phase reibungslos,<br />

ist dies in der Regel<br />

ein guter Indikator für<br />

die weitere Zusammenarbeit.<br />

Zudem ist die externe<br />

Sicht des Spezialisten auf<br />

das Projekt meist unbefangener,<br />

sodass Klärungsbedarf<br />

für die Spezifikation<br />

schneller erkannt wird.<br />

Eine wichtige Funktion<br />

kommt der genauen Analyse<br />

des zu verarbeitenden Signals<br />

zu. In dieser Phase werden<br />

die Grundlagen für die<br />

spätere effiziente Verarbeitung<br />

definiert. Vor allem ist<br />

zu untersuchen, welche redundanzfreieNutzinformation<br />

das Signal enthält, die<br />

für eine spätere Auswertung<br />

benötigt wird. Gelingt es,<br />

diese Nutzinformation zu<br />

extrahieren und damit die<br />

Datenmenge zu reduzieren,<br />

vereinfacht sich die nachfolgende<br />

Auswertung in vielen<br />

Fällen drastisch. Die Art der<br />

Analyse hängt von den Eigenschaften<br />

des Signals ab.<br />

Sie unterscheidet sich unter<br />

anderem je nach dem, ob es<br />

sich um ein zeitdiskretes<br />

oder zeitkontinuierliches,<br />

ein- oder mehrdimensionales,<br />

quasi-lineares oder stark<br />

nicht lineares, ungestörtes<br />

oder stark gestörtes Signal<br />

handelt.<br />

Ausgehend von den Ergebnissen<br />

der Signalanalyse ist<br />

ein geeigneter technischer<br />

Ansatz für die Signalverarbeitung<br />

zu wählen. Hier sind gegebenenfalls<br />

Fragen wie die<br />

folgenden zu beantworten:<br />

■ Wie ist das Signal zu transformieren,<br />

um Korrelationen,<br />

Redundanzen und<br />

Störungen zu beseitigen?<br />

■ Wie lässt sich die Datenmenge<br />

geeignet auf<br />

die Nutzinformation reduzieren?<br />

■ Mit welchen Methoden<br />

sind welche Merkmale zu<br />

extrahieren?<br />

■ Wie werden diese Merkmale<br />

abgebildet und ausgewertet?<br />

Die richtige Wahl des technischen<br />

Ansatzes entscheidet<br />

maßgeblich über das<br />

Aufwand/Nutzen-Verhältnis<br />

der nachfolgenden Schritte.<br />

Zuweilen entscheidet sich<br />

mit der Wahl des technischen<br />

Ansatzes, ob die Lösung<br />

insgesamt realisiert<br />

werden kann.<br />

Anstatt »drauflos« zu programmieren,<br />

muss nun<br />

zunächst auf höherer Abstraktionsebene<br />

überlegt werden,<br />

wie sich der grundsätzliche<br />

technische Ansatz in geeignete<br />

Algorithmen überführen<br />

lässt und wie diese sich optimieren<br />

lassen. Auch in diesem<br />

Schritt steckt – abhängig<br />

von der Anwendung – oft gewaltigesOptimierungspotenzial.<br />

Nachdem Klarheit über den<br />

geeigneten technischen Ansatz<br />

und dessen Überleitung<br />

in Algorithmen herrscht,<br />

kann man das komplette<br />

Systemdesign für die Soft-<br />

DESIGN&ELEKTRONIK SOFTWARE-ENTWICKLUNG 2005<br />

21<br />

ware erstellen. Hierbei wird<br />

festgelegt, welche Verarbeitungsschritte<br />

vorzusehen<br />

sind, in welche Module die<br />

Software zu gliedern ist, wie<br />

die Schnittstellen zwischen<br />

den Modulen gestaltet werden<br />

sollen, welche Datenformate<br />

bedarfsgerecht sind,<br />

wie das Datenmanagement<br />

und die Datenhaltung erfolgen<br />

sollen, etc.<br />

Auswahl der Tools<br />

Tendenziell werden Tools für<br />

die Erstellung der Software<br />

zu früh und anhand der Kriterien<br />

»Was ist vorhanden«<br />

oder »Was ist bekannt« festgelegt.<br />

Die Tools werden regelmäßig<br />

durch die verwendete<br />

Hardware-Plattform<br />

vorgegeben. Dies ist ein weiterer<br />

Grund, die Hardware<br />

erst nach den technischen<br />

Überlegungen zu spezifizieren.<br />

Diese Auswahl sollte –<br />

wenn möglich – erst unmittelbar<br />

vor der eigentlichen<br />

Software-Entwicklung und<br />

unbefangen getroffen werden,<br />

damit die verwendeten<br />

Tools für die Aufgabenstellung<br />

optimal geeignet sind.<br />

Dies setzt natürlich voraus,<br />

dass eine Auswahl unter verschiedenen<br />

Alternativen<br />

möglich ist. Der Spezialist ist<br />

dazu eher in der Lage.<br />

An diesem Punkt erst beginnt<br />

die eigentliche Software-Entwicklung.<br />

Ist die<br />

Vorarbeit gut geleistet, sollte<br />

die Software-Entwicklung<br />

nun keine unliebsamen<br />

Überraschungen mehr bieten<br />

und »straight forward«<br />

in kurzer Zeit zu realisieren<br />

sein. Schließlich ist die meist<br />

auf einem Funktionsmuster<br />

oder Prototypen entwickelte<br />

Software auf die serienreife<br />

Zielhardware zu übertragen.<br />

Als nächstes kommt die Verifikation.<br />

Dabei wird überprüft,<br />

ob die entwickelte Software<br />

der Spezifikation entspricht.<br />

Eine professionell erstellte<br />

Spezifikation vereinfacht diesen<br />

Schritt deutlich. Innerhalb<br />

der Software-Entwicklung<br />

sind natürlich mehrere<br />

Verifikationsstufen ratsam. So<br />

lassen sich bei sinnvoller Software-Konzeption<br />

zunächst<br />

Module einzeln verifizieren.<br />

Ist die Verifikation erfolgreich<br />

abgeschlossen, erfolgt<br />

üblicherweise die Lieferung<br />

der Lösung, sofern die Entwicklung<br />

nicht bereits beim<br />

Auftraggeber durchgeführt<br />

wurde. Eine bedarfsgerechte<br />

Dokumentation, die dem<br />

Auftraggeber nicht nur das<br />

Verständnis der Software<br />

sondern auch der technischen<br />

Überlegungen ermöglicht,<br />

sollte bereits jetzt<br />

für den folgenden Schritt<br />

vorhanden sein.<br />

Bei der Validierung wird<br />

überprüft, ob die entwickelte<br />

Software unter den Einsatzbedingungen<br />

beim Kunden

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!