head	1.4;
access;
symbols;
locks; strict;
comment	@% @;


1.4
date	92.12.14.06.45.28;	author gaubert;	state Exp;
branches;
next	1.3;

1.3
date	92.12.14.04.26.01;	author lacey;	state Exp;
branches;
next	1.2;

1.2
date	92.12.14.00.03.09;	author lacey;	state Exp;
branches;
next	1.1;

1.1
date	92.12.13.11.48.09;	author lacey;	state Exp;
branches;
next	;


desc
@@


1.4
log
@*** empty log message ***
@
text
@%
% Describe the project. Much of the text from the intro of the user manual
% can be used.
%
\chapter{Project Description}

The \xplan\ project planning tool was developed to aid in planning and
managing projects.  Any project that can be broken down into a set of
discrete tasks that must be performed in a certain order can be
planned out and managed with \xplan.  Users of \xplan\ should be familiar
with PERT and Gantt charts (which \xplan\ produces both within its
graphical user interface, and in a \LaTeX\ format), and the basic
ideas of a task network (task dependency, duration, float time, etc.).
One source for this information is \cite{cpa}.  This manual makes no
attempt at educating the user on the subject of task scheduling, task
networks, PERT or Gantt charts.

Potential users of \xplan\ include any computer user that has a project
he/she needs to plan and manage.  This might include a project manager at
a software company, or a senior development engineer in a mechanical
engineering research lab who is responsible for managing a project.
The primary customers of the project were Dr.\ B.\ Cheng and Jerry
Gannod of Michigan State University, the instructor and TA
respectively of the Fall 1992 Software Engineering course.  Secondary
customers include the Internet community, for whom this product will
be made freely available (as per the GNU General Public License, which
will be distributed with the source code).  No support is offered
after the end of the semester.

Project planning is facilitated by \xplan\ through the use of a
graphical user interface, the ability to enter and store (to a file on
disk) task information for a project, the automatic calculation of
critical path in the task network, interactive graphic display of PERT
and Gantt charts which are automatically generated by \xplan, and
through the ability to export PERT and Gantt charts to \LaTeX\ code
that corresponds to the boxes and words seen on the screen.  Examples
of projects that may be planned and managed with \xplan\ include
manufacturing projects, research projects, software development
projects, personal projects, and all other projects for which a plan
is seen as a useful tool.

The user of \xplan\ is assumed to be familiar with the basics of using
graphical user interface that conforms to the {\sc Open Look}
standard.  The \xplan\ software is provided on an ``as is'' basis, there
is no expressed or implied warranty or support policy.  For
information on installing \xplan, see Section \ref{sec:install} on page
\pageref{sec:install}.

%
% What is the motivation for your particular project? What phase of
% software engineering does it facilitate?
%
\section{Motivation}

   As explained in the project description section of this document,
\xplan\ is  for project planning.  Since many software development
organizations will have several people working on a project for a
considerable length of time, software project planning is an important
activity.  Furthermore, because of budget constraints it is important
that software get finished on or before time, and at or below budget.
\xplan\ is also a useful tool for planning out other types of projects.
Thus, a software development manager is very concerned with the amount
of time spent on a project, and how that time is utilized.  \xplan\ is
a tool for tracking how time is spent on a project's tasks, and how
those tasks affect the completion time of other tasks. Since delays
can be serious problems in software development organizations, \xplan\
can help a project manager find potential sources of project delays by
calculating the critical path and dependencies of a project's tasks.
The tasks on the critical path can then be further analyzed by the
manager to make sure the software development organization completes
them on time, because the manager will know the effect of a task's
delay on the entire project.  Furthermore, there is an existing
project management tool called MS-Project that \xplan\ was designed
to compete with.  Since \xplan\ is provided as freeware, an unlimited
number of users in a software development organization may use it free
of charge.  Furthermore, MS-Project runs on IBM compatible PC's, while
\xplan\ was designed to run in a Unix and X Windows environment, and to
output PERT/Gantt charts in a file format compatible with the \LaTeX\
document processing system.


%
% Briefly describe the major components of your system.
%
\section{Overview of Major Components}

The major components of \xplan\ are the Graphical User Interface
(GUI), file read/write subsystem, calculations subsystem, database
subsystem, and \LaTeX\ generation subsystem.

The graphical user interface handles all interface with the user.  It
was built using Sun OpenWindows Developer's Guide, version 3.0.

The calculations subsystem determines positioning of information for
PERT charts, along with calculating earliest and latest start and end
dates and determining if there is a dependency loop in the task
network.  It's results are displayed visually through the GUI.

The file read/write subsystem is used to store and retrieve project
planning information.  All data that is entered into the system
through the GUI and stored via the database subsystem can be written
out to a file for retrieval at a later date.

The database subsystem keeps track of all of the task information for
the current project.  All task information that is entered through the
GUI is stored by this subsystem.  After being stored, the GUI and file
read/write subsystems, along with the calculation subsystem, can use
the database to retrieve information.

The \LaTeX\ generation subsystem is used to generate code for \LaTeX's
{\tt picture} environment.

%
% Referencing your testing specification document, indicate the actual
% results with respect to the description of the test data and expected
% results. Conduct the discussion in terms of high level modules
%
\input{testing}
@


1.3
log
@*** empty log message ***
@
text
@d19 1
a19 1
they need to plan and manage.  This might include a project manager at
@


1.2
log
@*** empty log message ***
@
text
@d7 10
a16 10
   The xplan project planning tool was developed for processing PERT/Gantt
chart information to perform project management duties.  The user of this 
software is one of two customers.  The first customers are Dr. Cheng and
Jerry Gannod at Michigan State University for the course CPS 470. All 
documentation regarding the development and usage of xplan will be available
to them.  The second group of customers are the Internet community at large
for whom xplan will be publicly released at anonymous ftp sites as freeware
according to the Free Software Foundations policy. For those customers, only
the source code and Postscript file format versions of this User Manual will
 be available.
d18 11
a28 13
  The purpose of xplan is to help the user perform project management duties.
The user will input information describing the tasks necessary to perform
a project. xplan is applicable to any type of project which has several tasks
and the tasks have time dependencies which affect the progress of the final
project.  Since the only input that is done with xplan is text information
describing project tasks, and task related information, xplan is applicable
to a wide variety of users.  Some examples of projects which may be planed
with xplan are manufacturing projects in organizations using total quality 
management techniques, research projects, software development, business and
personal projects which progress over a considerable length of time.  Projects
whose time line spans a period of 5 years or less may have their critical path
calculated by xplan. Only one project at a time may be entered into and 
processed by xplan. 
d30 11
a40 12
  The user of xplan is assumed to be familiar the basics of running software
using a graphical user interface (GUI) in a Unix and X Windows computing
environment. The xplan software is provided on an as is basis, and it is the
users responsibility to know how to perform the necessary activities for 
installing, compiling, and running xplan on their system.  xplan comes with
built in help facilities which may be called by the graphical user interface
for the users convenience.  The use of a graphics display terminal and three
button mouse are necessary for using the xplan software. The only interface 
provided to the user is the xplan graphical user interface built with the X 
Window systems guide 3.0 widget set.  While the user does not need to know 
about X Windows, the user must have X Windows to run the xplan PERT/Gantt 
chart generator software.
d42 7
d55 25
a79 23
   As explained in the project description section of this document, xplan is 
for project management.  Since many software development organizations will 
have several people working on a project for a considerable length of time, 
software project management is an important activity.  Furthermore, since the
market time window is very small for most software applications, it is 
important that an organization delivers software to market quickly before a
competitor does.  Thus, a software development manager is very concerned with
the amount of time spent on a project, and how that time is utilized.  xplan
is a tool for tracking how time is spent on a project's tasks, and how those
tasks affect the completion time of other tasks. Since delays can be serious
problem in software development organizations, xplan can help a project 
manager find potential source of project delays by calculating the critical
path and dependencies of a projects tasks.  The tasks on the critical path
can then be further analyzed by the manager to make sure the software
development organization completes them on time, because the manager will 
know the effect of a tasks delay on the entire project.  Furthermore, there is
an existing project management tool called MS Project which xplan was designed
to complete with.  Since xplan is provided as freeware, an unlimited number of
users in a software development organization may use it free of charge. 
Furthermore, MS project runs on IBM compatible PC's, while xplan was designed
to run in a Unix and X Windows environment, and to output PERT/Gantt chart
information in a file format compatible with the LaTeX document processing
system.
d86 27
@


1.1
log
@Initial revision
@
text
@d1 6
d85 1
a85 39
\section{Testing Results}
%
%
% Repeat the following subsection for each high level module.
% Make sure to change the subsection name to the appropriate
% module name
%
	\subsection{Database Module}
	%
	% If your testing specifications were correct, then you can
	% include the text for the test data description and expected 	
	% results. Otherwise, incorporate the corrected descriptions.
	%
	\begin{description}
	\item[{Test Data: }]        Before integration with the graphical
                                    user interface, a driver program was
                                    written in stages to white box and
                                    black box test each function of the
                                    database module.  The driver program
                                    was the primary source of debugging
                                    the database module.  After the
                                    database was integrated with the GUI
                                    and ASCII text file input modules, 
                                    simulated user interaction with the GUI
                                    was used to test the database.  Several
                                    xplan project files were created to
                                    fully black box test the database.
	\item[{Expected Results: }] The database was expected to perform as
                                    it was designed.  After debugging, and
                                    refining the design and code implementation
                                    of the database, the database functions
                                    were tested first by a driver program,
                                    then by the simulated user interaction
                                    with the graphical user interface 
                                    controlling the database.
	\item[{Actual Results: }]   The database performed as was expected
                                    after the debugging process of the code
                                    was finished.
	\end{description}
@
