The FOSD 2012 keynotes are on-line.
The FOSD 2012 proceedings are published in the ACM digital library.
Feature orientation is an emerging paradigm of software development. It supports the automatic generation of large-scale software systems from a set of units of functionality called features. The key idea of feature-oriented software development (FOSD) is to emphasize the similarities of a family of software systems for a given application domain (e.g., database systems, banking software, text processing systems) with the goal of reusing software artifacts among the family members. Features distinguish different members of the family. A feature is a unit of functionality that satisfies a requirement, represents a design decision, and provides a potential configuration option. A challenge in FOSD is that a feature does not map cleanly to an isolated module of code. Rather it may affect ("cut across") many components/artifacts of a software system. Furthermore, the decomposition of a software system into its features gives rise to a combinatorial explosion of possible feature combinations and interactions. Research on FOSD has shown that the concept of features pervades all phases of the software life cycle and requires a proper treatment in terms of analysis, design, and programming techniques, methods, languages, and tools, as well as formalisms and theory.