\section{PaWS Development Process}

PaWS framework was created with a Agile Methodology
\cite{agilemethodology}. The whole process was made of several short iterations,
each adding new capabilities to PaWS. Each iteration had its
own list of the requirements refering to the general PaWS design
requirements and constraints (see Sections \ref{design_contraints} and
\ref{design_requirements}). After completing an iteration, it was
summed up and, according to its result, the main goals might have been
slightly modified. The list of the encountered problems is given in Section
\ref{encountered_problems}.

The goal of the first iteration was to create working skeleton of the
framework, which was linking Pylons and Pyps technologies together. It
could only perform \emph{preconditions} analysis. The next steps
included the addition of
new PIPS passes and the customization of WEB pages with
user-friendly features such as saving, printing results, and source code
colorization. Further action was to extend PaWS with the second mode -
demonstration and by possibility of creating graphs.

At the same time, consistency and stability of the PaWS framework (see Section \ref{encountered_problems}) has been being improved.

The goal of the last step of the project was to improve the existing
framework by writing tests, scripts for administrators to add new tool
or demo, refactor code and framework structure, and implementing
several user-friendly features such as the uploading of an
archive file. PaWS also was included in the PIPS building process.

%% TO DO: About process of creating PaWS application - from what we started, what was added, what was not good idea.
%% trial and error process
%% no ... agile programming
%% V CYCLE, AGILE

%% exploratory process, agile development, validation, evaluation


