Deriving frameworks from domain knowledge