4. A computer-readable storage medium having stored thereon computer-readable instructions which, when executed by a computer cause said computer to perform the following process: providing user interface mechanisms by which a user can enter user input data that defines a class as part of a conceptual model of a target computer program to be written, said user input also defining services for said class and arguments for said services, each said service being an event or a transaction, each event being a single service, said user input data also defining an event owned by said class, a variable attribute owned by said class, a valuation condition, if desired, owned by said class, the state of said valuation condition controlling whether or not a valuation also specified by said user input data will be performed, said valuation owned by said class, said user interface mechanisms also allowing the user to enter user input data which defines portions of a functional model which is part of said conceptual model for said target computer program being modeled, said user input data selecting a class, a variable attribute of said class and an event of said class, said user input data also defining a state change for said selected class in the form of a mathematical formula that defines the effect said valuation has on said variable attribute's value upon the occurrence of said selected event if said valuation condition is satisfied, if a valuation condition was specified by said user input data, said class being part of a conceptual model which defines the functionality of said target computer program; and converting said user input data entered via said user interface mechanisms into data structures in the form of statements written in a formal language which has rules of syntax and rules of semantics which together define a grammar, said statements in said formal language defining said class, event, variable attribute, valuation condition, if specified, and said valuation's mathematical formula as part of a formal language specification which encodes said conceptual model of said target computer program; and using said rules of syntax and said rules of semantics to validate each said statement written in said formal language to ensure each said statement is complete and correct.
4. A computer-readable storage medium having stored thereon computer-readable instructions which, when executed by a computer cause said computer to perform the following process: providing user interface mechanisms by which a user can enter user input data that defines a class as part of a conceptual model of a target computer program to be written, said user input also defining services for said class and arguments for said services, each said service being an event or a transaction, each event being a single service, said user input data also defining an event owned by said class, a variable attribute owned by said class, a valuation condition, if desired, owned by said class, the state of said valuation condition controlling whether or not a valuation also specified by said user input data will be performed, said valuation owned by said class, said user interface mechanisms also allowing the user to enter user input data which defines portions of a functional model which is part of said conceptual model for said target computer program being modeled, said user input data selecting a class, a variable attribute of said class and an event of said class, said user input data also defining a state change for said selected class in the form of a mathematical formula that defines the effect said valuation has on said variable attribute's value upon the occurrence of said selected event if said valuation condition is satisfied, if a valuation condition was specified by said user input data, said class being part of a conceptual model which defines the functionality of said target computer program; and converting said user input data entered via said user interface mechanisms into data structures in the form of statements written in a formal language which has rules of syntax and rules of semantics which together define a grammar, said statements in said formal language defining said class, event, variable attribute, valuation condition, if specified, and said valuation's mathematical formula as part of a formal language specification which encodes said conceptual model of said target computer program; and using said rules of syntax and said rules of semantics to validate each said statement written in said formal language to ensure each said statement is complete and correct. 9. The computer-readable storage medium of claim 4 wherein said computer-readable instructions stored thereon control said computer to provide a user interface mechanism which allows a user to enter user input data which defines said valuation such that it falls within one of the following three categories: push-pop, state-independent and discrete-domain, and said instructions controlling said computer to convert said user input data into one or more data structures in the form of one or more formal language statements which implement said valuation in the selected category as part of said formal language specification which encodes said conceptual model of said target computer program, and wherein said rules of syntax and semantics of said formal language statements are used to validate each said formal language statement to ensure it is complete and correct.