Feature-Oriented Software Development
This site is maintained by Christian Kästner
A feature is a semantically
cohesive unit of behavior of a software system. Features are used for
the specification of commonalities and variabilities of software
systems. For example, in the domain of data management there are
features such as transaction management, storage management, and
multi-user support.
It would be easier to develop software if its features would be
explicit in design and code and if software could be generated solely
by composing features. This methodology is called Feature-Oriented
Software Development (FOSD). Currently, there is a multitude
of different methods, languages, and tools for FOSD that -- despite
their common aim -- are difficult to compare and integrate. For a recent survey see the paper An Overview of Feature-Oriented Software Development.
This web site acts as a portal for different projects in FOSD research.
Links on this site: