Softwareentwicklungsprozess
Es exisitieren viele Modelle für den Entwicklungsprozess. Die folgenden Schritte kommen in der Praxis jedoch in allen Modellen vor:
- Abstimmung der Anforderungen mit dem Auftraggeber und den Benutzern
- Erfassung von Anforderungen und Erstellung von Pflichtenheften
- Erstellung von DV Konzepten
- Implementation als ittterativer Prozess in Abstimmung mit Benutzer
- Qualitätssicherung und Regressionsstest
- Wartung und Versionierung der Softwarekompomnenten
Plattformen
Microsoft Windows
Jede Version hat ihre besonderen Merkmale und Möglichkeiten.
Linux
Inzwischen hat sich Linux zu einer ernst zunehmenden Alternative zu Windows entwickelt.
JAVA-Runtime
Für eine Plattform übergreifende Entwicklung ist JAVA die erste Wahl.
Objektorientierte Sprachen
Java
Diese Sprache ist inzwischen der Industriestandard für die Plattformübergreifende Entwicklung. Durch die Vielzahl der Erweiterungen und Bibliotheken ist eine schnelle Implementation spezieller Anforderungen möglich. Gerade im Bereich von Internetlösungen ist JAVA eine gute Wahl. Für die Entwicklung steht mit Eclipse eine vorzügliche Umgebung zur Verfügung
Java-Komponenten können als stand-alone Programme erstellt werden, zunehmend werden jedoch Komponenten innerhalb von Application-Servern wie dem Apache-Geronimo betrieben.
![]()
C und C++
Als lang etablierter Standard stehen diese Sprachen auf nahezu allen Plattformen zur Verfügung. Durch die vielen vorhandenen Bibliotheken ist fast für jedes allgemeine Problem eine Lösung zu finden. Die Anfangs versprochen Portabilität leidet jedoch unter den verschiedenen API's der Plattformen.
Objektpascal (Delphi)
Als RAD-Tool liegt eine der Stärken von Delphi in der schnellen Implementation von ansprechenden Benutzeroberflächen und der dazugehörigen Datenanbindungen. Wenn ein Fat-Client benötigt wird, so kann er mit Delphi effektiv implementiert werden.
Abfragesprachen
SQL und SQLX
SQL ist der Standard für die Abfrage von relationalen Datenbanken. SQLX erlaubt das Erzeugen von XML Dokumenten aus relationalen Daten.
XPath
Daten liegen häfig in strukturierter Form als XML-Dokument vor. XPath erlaubt die Suche innerhalb dieser Daten.
Beschreibungssprachen
XML, XSD (XML-Schema), DTD, WSDL
Durch die zumehmende Vernetzung heterogener Systemlandschaften gewinnt der reibungslose Datenaustausch zumehmend an Bedeutung. Um eine Interoperabilität der verschiedenen Systeme zu gewährleisten, ist eine eindeutige Beschreibung von Schnittstellen wichtig.
Datenbanken
Oracle
Der Marktführer im Bereich der Datenbanken hebt sich durch eine große Anzahl von Features heraus.
Hohe Leistungsfähigkeit, Skalierbarkeit und Datensicherheit
Erstellung von Prozeduren und Programmpaketen innerhalb der Datenbank in PL/SQL und Java
Transaktionssichere Messageing und Queueing Mechanismen innerhalb der Datenbank
Eine Vielzahl an Netzwerk-Protokollen stehen direkt aus der Datenbank zur Verfügung
Viele Zusatzprogrammen stehen zur Verfügung wie z.B. für Web-Portale;
Protokolle
Die Netzwerkprotokolle erlauben den Datenaustausch zwischen Softwarekomponenten. Dies hat im Zeitalter der verteilten und modularen Softwarekomponenten eine besondere Bedeutung.
- HTTP/HTTPS
- POP3/SMTP
- FTP
- UDP/TCP
- SOAP/XMLRPC
Bibliotheken
Apache Commons - Jakarta
Diese umfangreichen Klassenbibliotheken stellen Komponenten für viele Anwendungen bereit und reduzieren daher den Entwicklungsaufwand beträchtlich.
Da diese Komponenten im breiten Einsatz und somit gut getestet sind, reduziert sich das Fehlerrisiko beträchtlich.
![]()
JAXB/AXIS (Java)
Diese Bibliotheken erlauben die einfache Implementation von Webservices und die Verarbeitung von XML-Dokumenten.
WINE - Win32 Kompatibilitätslayer für UNIX
Mit Hilfe dieser Bibliothek ist es möglich Windows-Anwendungen mit geringen Änderungen auf UNIX zu portieren.
Im Idealfall ist nur eine Neucompilierung nötig.
Anwendung findet diese Bibliothek z.B. im Produkt CrossOver Office von Codeweavers.
![]()