Thursday, August 11, 2005
Jack Greenfield and Keith Short wrote an excellent book called, .  They define a Software Factory as, A software product line that provides a production facility by configuring extensible tools using a software template based on a software schema.
 
Wow!  I think we are going to need a few more definitions to understand what this means.  A definition of software product line is:  A software product line is a set of software-intensive systems sharing a common, managed set of features that satisfy the specific needs of a particular market segment or mission and that are developed from a common set of core assets in a prescribed way.
 
A software schema is a document that categorizes and summarizes the artifacts used to build and maintain a system such as XML documents, models, configuration files, build scripts, sources code files, SQL files, localization files, deployment manifests and test case definitions, in an orderly way, and that defines relationships between them, so that we can maintain consistency among them.  A software factory schema essentially