Patent ID: 7257804

Claim:
A method of producing a software product, performed at least partially by a computer, the method comprising: a) defining a functional model of the software product, b) designing, based on the functional model, a plurality n of configurations and slices of the software product, a configuration being an entirety or a part of the software product forming an independently testable unit and a slice being a set of functions of the software product constructed together and forming an entirety or a part of a configuration, c) constructing, for the first time, a first slice forming a first configuration, d) independently constructing, also for the first time, second to n-th slices of the software product, e) forming a (k+1)-th configuration by integrating a k-th configuration with a (k+1)-th slice to add functionality of a (k+1)-th set of functions, wherein k=1, . . . n−1, f) independently testing the first to n-th configuration, where testing of the k-th configuration is performed concurrently with the construction of the (k+1)-th slice of the software product and the forming of the (k+1)-th configuration and testing of the (k+1)-th configuration includes re-testing the entirety of the k-th slice, and g) storing the results of the independent testing of the first to n-th configurations.