Index: park_integration/docs/requirements.txt
===================================================================
--- park_integration/docs/requirements.txt	(revision 103a0b01aacb82e91d4a8a969004d5972d1cf30f)
+++ park_integration/docs/requirements.txt	(revision 103a0b01aacb82e91d4a8a969004d5972d1cf30f)
@@ -0,0 +1,17 @@
+Functional Requirements:
+
+ - Client should be able to set models
+ - Client should be able to set data sets
+ - Client should be able to enter constraints
+ - Client should be able to start a fit
+ - Client should be able to access the results of a fit
+ 
+ Non-Functional Requirements:
+ - Models and Data belong in their own class
+ - Data loader should be external to the module
+ - The Models should be compatible with SANS models
+ 
+ 
+ Risks:
+ - Can we run Park standalone without a server?
+ - Can we define an interface to Park that is as simple as scipy.optimizer?
Index: park_integration/docs/use-cases.txt
===================================================================
--- park_integration/docs/use-cases.txt	(revision 103a0b01aacb82e91d4a8a969004d5972d1cf30f)
+++ park_integration/docs/use-cases.txt	(revision 103a0b01aacb82e91d4a8a969004d5972d1cf30f)
@@ -0,0 +1,121 @@
+1.	Use Case 1: 1 data set and 1 model
+
+This use case describes an application (the client) performing a fit on a single
+data set with a single model.
+
+1.1.	Flow of Events
+1.1.1.	Basic Flow
+1.1.1.1.	The client chooses a data set to fit.
+1.1.1.2.	The client chooses a model to use.
+1.1.1.3.	The client enters the initial parameters of the model.
+1.1.1.4.	The client starts the fit.
+1.1.1.5.	The client reads back the fit results from the fitting object.
+
+
+1.1.2.	Alternative Flows
+
+Any of the following actions can take place:
+
+1.1.2.1.	The client does not enter initial parameters
+
+
+1.1.3. Error Conditions
+1.1.3.1. 	The user does not choose a data set before starting the fit.
+1.1.3.2. 	The user does not choose a model before starting the fit.
+
+
+1.2.	Special requirements
+1.2.1.	Preconditions
+None
+
+1.2.2.	Post Conditions
+The client now has a fitting object that contains the results of his fit.
+He can modify that object and perform another fit.
+It will be possible for him to use the fit output as the initial parameters
+for any subsequent fit.
+
+
+2.	Use Case 2: 2 data sets and 1 model
+
+This use case describes an application (the client) performing a fit on multiple
+data sets with a single model.
+
+2.1.	Flow of Events
+2.1.1.	Basic Flow
+2.1.1.1.	The client chooses two data sets to fit.
+2.1.1.2.	The client chooses a model to use.
+2.1.1.3.	The client enters the initial parameters of the model.
+2.1.1.4.	The client starts the fit.
+2.1.1.5.	The client reads back the fit results from the fitting object.
+
+
+2.1.2.	Alternative Flows
+
+Any of the following actions can take place:
+
+2.1.2.1.	The client does not enter initial parameters
+
+
+2.1.3. Error Conditions
+2.1.3.1. 	The user does not choose a data set before starting the fit.
+2.1.3.2. 	The user does not choose a model before starting the fit.
+
+
+2.2.	Special requirements
+2.2.1.	Preconditions
+None
+
+2.2.2.	Post Conditions
+The client now has a fitting object that contains the results of his fit.
+He can modify that object and perform another fit.
+It will be possible for him to use the fit output as the initial parameters
+for any subsequent fit.
+
+
+3.	Use Case 3: 2 data sets, 2 models and one constraint
+
+This use case describes an application (the client) performing a fit on multiple
+data sets with a single model.
+
+3.1.	Flow of Events
+3.1.1.	Basic Flow
+3.1.1.1.	The client chooses two data sets to fit.
+3.1.1.2.	The client chooses one model to use with each data set.
+3.1.1.3.	The client enters the initial parameters of the models.
+3.1.1.4		The client enters a string describing a condition between the two models.
+3.1.1.5.	The client starts the fit.
+3.1.1.6.	The client reads back the fit results from the fitting object.
+
+
+3.1.2.	Alternative Flows
+
+Any of the following actions can take place:
+
+3.1.2.1.	The client does not enter initial parameters for one or both models
+
+
+3.1.3. Error Conditions
+3.1.3.1. 	The user does not choose a data set before starting the fit.
+3.1.3.2. 	The user does not choose a model before starting the fit.
+3.1.3.3. 	The user does not choose a model for one of the data sets.
+
+
+3.2.	Special requirements
+3.2.1.	Preconditions
+None
+
+3.2.2.	Post Conditions
+The client now has a fitting object that contains the results of his fit.
+He can modify that object and perform another fit.
+It will be possible for him to use the fit output as the initial parameters
+for any subsequent fit.
+
+Note: The test-case for this should use the testdata_generator module in the
+test directory and use two models:
+      1- A Line: Y = A*x + B for the file "testdata_line.txt"
+      2- A constant: Y = A for the file "testdata_cst.txt"
+The constraint should be that parameter "A" has the same value for both models.
+
+
+
+
