The Feature model is a typical approach to capture variability in a software
product line design and implementation. For that, most works automate feature
model using a limited graphical notation represented by propositional logic and
implemented by Prolog or Java programming languages. These works do not
properly combine the extensions of classical feature models and do not provide
scalability to implement large size problem issues. In this work, we propose a
textual feature modeling language based on Python programming language (PyFML),
that generalizes the classical feature models with instance feature
cardinalities and attributes which be extended with highlight of replication
and complex logical and mathematical cross-tree constraints. textX
Meta-language is used for building PyFML to describe and organize feature model
dependencies, and PyConstraint Problem Solver is used to implement feature
model variability and its constraints validation. The work provides a textual
human-readable language to represent feature model and maps the feature model
descriptions directly into the object-oriented representation to be used by
Constraint Problem Solver for computation. Furthermore, the proposed PyFML
makes the notation of feature modeling more expressive to deal with complex
software product line representations and using PyConstraint Problem SolverComment: 13 pages, 13 figures, 29 refrence