Feature Oriented Programming

from Wikipedia, the free encyclopedia

Feature-oriented programming ( FOP , Eng. Feature-oriented programming ) is a programming paradigm for developing software product lines .

Feature-oriented programming is based on software features that are taken into account as first-level elements during design and implementation. Features represent extensions of program functionality. Features differ from cross-cutting concerns in that they directly reflect the requirements of program users.

Simplification of the creation of product lines

The benefit of FOP is that it makes it easier to create product lines. If the same product (e.g. a CRM) is always required with different requirements each time, FOP allows the entire product range to be programmed in a uniform source code . A customer-specific product can then be generated on the basis of a parameterization of the product line by selecting features from the FOP code.

Implementation forms

Today's approaches mostly work with template systems that can put together complex software such as CRM and ERP systems. Feature Oriented Programming differs from normal module systems in that the control of the features is possible in a more fine-grained manner, and features can also be cross-module.

To represent the features of software, there are both graphic systems that work via checkboxes and allow software to be compiled using a GUI, as well as systems that work on the basis of description logics.

See also

Individual evidence

  1. Software technology lecture, Uwe Aßmann