Feature Oriented Programming

QS-Informatik
Beteilige dich an der Diskussion!
Dieser Artikel wurde wegen inhaltlicher Mängel auf der Qualitätssicherungsseite der Redaktion Informatik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Informatik auf ein akzeptables Niveau zu bringen. Hilf mit, die inhaltlichen Mängel dieses Artikels zu beseitigen, und beteilige dich an der Diskussion! (+)

Feature-orientierte Programmierung (FOP, engl. feature-oriented programming) ist ein Programmierparadigma zur Entwicklung von Software-Produktlinien.

Grundlage der Feature-orientieren Programmierung sind Softwaremerkmale (Features), die bei Design und Implementierung als Elemente erster Ebene berücksichtigt werden. Features stellen Erweiterungen von Programmfunktionalität dar. Dabei unterscheiden sich Features von Cross-Cutting Concerns dahingehend, dass sie Anforderungen von Programmnutzern direkt widerspiegeln.

Vereinfachung der Erstellung Produktreihen

Der Nutzen von FOP ist die Vereinfachung der Erstellung von Produktreihen. Wird immer dasselbe Produkt (z. B. ein CRM) mit jedes Mal abweichenden Anforderungen benötigt, erlaubt FOP das Programmieren der kompletten Produktreihe in einem einheitlichen Quellcode. Ein kundenspezifisches Produkt kann dann anhand einer Parameterisierung der Produktreihe durch Auswählen von Features aus dem FOP-Code generiert werden.

Umsetzungsformen

Heutige Ansätze arbeiten meist mit Template-Systemen, die komplexe Software wie CRM- und ERP-Systeme zusammensetzen können. Feature Oriented Programming unterscheidet sich von normalen Modul-Systemen dadurch, dass die Ansteuerung der Features feingranularer möglich ist, sowie Features auch Modul-übergreifend sein können.

Zur Repräsentation der Features einer Software gibt es sowohl grafische Systeme[1], die über Checkboxen arbeiten und eine Software mittels einer GUI zusammenstellen lassen, als auch Systeme, die auf der Basis von Beschreibungslogiken arbeiten.

Siehe auch

Einzelnachweise

  1. Vorlesung Softwaretechnologie, Uwe Aßmann

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.