\documentstyle[11pt, /mit/1.12/Lectures/Include/nkwh]{article}

\addtolength{\oddsidemargin}{-.75in}
\addtolength{\evensidemargin}{-.75in}
\addtolength{\textwidth}{+1.5in}
\addtolength{\topmargin}{-.75in}
\addtolength{\textheight}{+1.5in}

\newcommand{\PSbox}[3]{\mbox{\rule{0in}{#3}\special{psfile=#1}\hspace{#2}}}
\begin{document}

\begin{tabbing}
{\bf 1.12  Computer Models of Physical and Engineering Systems}
\` {\bf Spring 1997} \\

% Make sure the correct problem set number and due date are put below.
{\bf TERM PROJECT}
\` {\bf Part 2 Due: 9 A.M. Thursday, March 6, 1997} \\
\` {\bf Part 3 Due: 9 A.M. Thursday, April 10, 1997} \\
\` {\bf Final  Due: 9 A.M. Thursday, May   8, 1997} \\

{\bf\em Reference Readings:} \= \\
{\em Winston, Patrick Henry}:  Chap. All  [1(All)]\= \\
{\em Rumbaugh, et al.}:  Chap. 2, 3, 4, 5, 6, 7 \& 8\=\\

\end{tabbing}

\vspace{0.15in}
\par
\noindent
{\bf PART 2}:\\
{\em (OMT Models for 2 Systems)}\\

Your group has several engineering systems in total. Of those systems,
your group should select 2 and prepare the following for each one:

	\begin{itemize}

	\item a brief description of two engineering systems (1-2
pages for each). This description will serve as your problem statement
as seen in the ATM network problem page 148 of Rumbaugh {\em et al.}
(2). Chapter 8 of that book will serve as a guide for your term
project. Please read it carefully and follow it. Explain your
assumptions and reasons for the description.

	\item an object model of your system. Your report should
contain the following:

	 \begin{enumerate}
	
		\item a diagram of all your classes (page 154, Figure
8.6).  This diagram should contain all the classes that you
considered. Do not clean your model yet. You should show the
evolution of the model and the iterative process that it went through.
Also, you should make clear your assumptions for selecting
classes.

		\item a diagram of all relevant classes (page 154,
Figure 8.7).  This diagram should contain all the relevant classes.
This diagram should be cleaner than the previous one and you should
explain the reasons for removing some of the classes. 

		\item a data dictionary (page 157, Figure 8.8). Explain
all the classes, their meaning, and their role.

		\item a summary of all the associations that exist
between classes (page 158, Figure 8.9). This summary should contain all
the associations revealed in the problem statement explicitly or
implicitly. The summary should also contain the associations that
derived from your knowledge of the domain. Explain your assumptions
and reasons for the summary.

		\item a diagram of all relevant classes and associations
(page 161, Figure 8.11).  This diagram should contain all the classes
that you considered relevant with their associations. The diagram
should include multiplicity balls, qualifications, and roles if the
problem ask for it. Explain your assumptions and reasons for the
diagram.

		\item a diagram of all relevant classes and
associations with their attributes (page 164, Figure 8.12).  This
diagram should add the attributes to the previous diagram. Remember to
put attributes on the associations if the problem asks for it. Also,
remember to check if an attribute should be a qualifier or not.
Explain your assumptions and reasons for the diagram.

		\item a diagram that uses your previous one and use
inheritance to make effective use of attributes, operations and
associations (page 165, Figure 8.13).  This diagram should include
inheritance in the form of base and derived classes. Explain your
assumptions and reasons for doing the diagram.

		\item a diagram that is an improvement from the last
one (page 168, Figure 8.14).  This diagram should present a deeper
understanding of the problem. Each diagram that you have done so far
should shed more light on the problem and improve your understanding
of the problem. Explain your assumptions and reasons for the diagram.

	\end{enumerate}

	\item a dynamic model of classes with significant dynamic
behavior. Your report should contain the following:

	 	\begin{enumerate}
	
		\item a description of normal scenarios for your
system (page 171, Figure 8.15). These scenarios should represent
normal conditions for the system. Explain your assumptions and reasons
for selecting and using such scenarios.

		\item a description of exception scenarios for your
system (page 171, Figure 8.16). These scenarios should represent
exceptional conditions for the system. Explain your assumptions and
reasons for selecting and using such scenarios.

		\item an event trace for the scenarios described
before (page 174, Figure 8.18). This diagram should show the classes
that are involved in the scenario and the events that are sent to each
class. Explain your assumptions and reasons for the diagram.

		\item dynamic models of the classes with significant
dynamic behavior (page 176, Figure 8.20). These dynamic models can go
as deep as you want (page 100, Figure 5.18; page 107, Figure 5.23;
page 108, Figure 5.24; and page 109, Figure 5.25).  However, they
should be explanatory of what is going on in the system. Explain your
assumptions and reasons for the diagram.

	\end{enumerate}

	\item a functional model and function flowchart of classes that serve
as interface between the system and the outside world. Your report should 
contain the following:

	 	\begin{enumerate}
	
		\item an input and output data flow as well as a flow chart
for the system (page 180, Figure 8.23). Explain your assumptions and reasons
for the diagrams.

		\item functional models and function flowcharts of the classes
(page 181, Figure 8.24 and Figure 8.25). These functional models and
flowcharts can go as deep as you want (page 134, Figure 6.10; page 135, Figure
6.11; and page 136, Figure 6.12).  However, they should be explanatory of what
is going on in the system. Explain your assumptions and reasons for 
the diagram.

		\item a description of the main functions used in the
functional model and flowcharts (page 183, Figure 8.26). These functional
description can be in natural language, mathematical models (See the Numerical
Methods section of the class - Ayyub and McCuen), and pseudocode.
Explain your assumptions and reasons for your description.

	\end{enumerate}

\end{itemize}

\vspace{0.15in}
\par
\noindent
{\bf NOTE:} These models and descriptions are preliminary and will be
rough. However, do your best to get them as refined as possible and as
time permits. The use of 2 models in this part is to give you the
choice to change your system later if you have any problem modeling
it. In this way, you will be able to finish your project on time and
have fun.

\vspace{0.15in}
\par
\noindent
{\bf PART 3}:\\
{\em (OMT Models for 1 System)}\\

By this part, your group has 2 engineering systems with OMT models. Of
those 2, your group should select 1 and prepare the following:

\begin{itemize}

	\item a more elaborated description of the engineering system
(3-5 pages). This description will take in consideration all you have
learned about your system from the development of your OMT
models. Explain your assumptions and reasons for the description.

	\item a more elaborated object model. This object model will
take in consideration all you have learned about your system from the
development of your previous OMT models. Make use of inheritance,
qualifiers, roles, and associations. Explain your assumptions and
reasons for the description.

	\item a more elaborated dynamic model of classes with
significant dynamic behavior. This dynamic model will take in
consideration all you have learned about your system from the
development of your previous OMT models. Make use of layered states
diagrams. Explain your assumptions and reasons for the diagram.

	\item a more elaborated functional model and function flowchart
of classes that serve as interface between the system and the outside world. 
This functional model and function flowchart will take in consideration 
all you have learned about your system from the development of your 
previous OMT models. Make use of layered functional diagrams. Explain 
your assumptions and reasons for the diagram.

	\item a detail description of the program that is going to
implement the model. This description has to be in mathematical form
(if your system needs it) and/or pseudocode. Go into as much detail
as you possibly can. Explain your assumptions and reasons for the
description.

\end{itemize}

\vspace{0.15in}
\par
\noindent
{\bf NOTE:} These models and descriptions are refined version of the
original models and should represent the actual structure and behavior
of the engineering system you want to model. By this time, you have
committed to one model. This assumes that part 2 helped you to
discriminate against a system that will be too difficult to implement.
In addition, this part will help you to plan your code before the
project is due. In that case, you will not be rushing to the end.

\vspace{0.15in}
\par
\noindent
{\bf FINAL}:\\
{\em (OMT Models and Running Program for 1 System)}\\

By this part, your group has refined the model of your system to a
detail that only needs implementation. Thus, for the final part of the
project your group should prepare the following:

\begin{itemize}

	\item a full description of your system (5-10 pages). It
should explain what are the inputs, how it works and what is the
output. In this description, you should submit better refined object,
dynamic and functional models as well as description of important
functions and functions flowchart.

	\item a working program that incorporates your model; it has
the structure of the system that you want to simulate as well as it
behaves as that system would behave. You should submit a hard copy and  
an electronic copy of your code, with comments and a manual of instruction 
on how to use your program.

\end{itemize}

\vspace{0.15in}
\par
\noindent
{\bf NOTE:} Some of you will like to work within a graphical
environment for your program. This is not required and it will not add
points to your project. This will involve a lot of work. So, if you
don't have the time don't even get involved, use regular console and
file input and output.

\vspace{3.5in}
\par
\noindent

\begin{center}

{\Huge \bf GOOD LUCK}

\end{center}

\pagebreak

{\LARGE \bf STUDENT INPUT}

\vspace*{0.25in}

Don't sign this page and leave it apart from your problem set. This is
a feedback mechanism that we use to evaluate the problem sets and the
lectures. If you don't want to write a comment please give a rate from
1 to 5 with 5 being the highest.

\begin{enumerate}

	\item How many hours did you spend doing part 2?

\vspace*{0.18in}

	\item How relevant were the concepts discussed in class for
part 2?

\vspace*{0.18in}

	\item How were the lectures (were they helpful?), are the
notes any useful?

\vspace*{0.18in}

	\item How was the instructor (was he helpful?)?

\vspace*{0.18in}

	\item Does the instructor come prepared to classes?

\vspace*{0.18in}

	\item Is the instructor knowledgeable in the subject?

\vspace*{0.18in}

	\item Does the instructor explain things clearly?

\vspace*{0.18in}

	\item Is the instructor responsive to your needs (make you
comfortable asking questions)?

\vspace*{0.18in}

	\item Does the instructor motivate you (make the subject interesting)?

\vspace*{0.18in}

	\item Does the instructor facilitate participation?

\vspace*{0.18in}

	\item How was the TA (was he helpful? all the questions for
the instructor also apply for the TA)?

\vspace*{0.18in}

	\item Do you have any problem understanding the instructor or the TA?

\vspace*{0.18in}

	\item Do you like the dynamics of the class?

\vspace*{0.18in}

	\item What things would you like to change in the class or
the project?

\vspace*{0.18in}

	\item Is the class meeting your expectations?

\vspace*{0.18in}

	\item Any other comments, i.e. how are the books?

\end{enumerate}

\pagebreak

{\LARGE \bf STUDENT INPUT}

\vspace*{0.25in}

Don't sign this page and leave it apart from your problem set. This is
a feedback mechanism that we use to evaluate the problem sets and the
lectures. If you don't want to write a comment please give a rate from
1 to 5 with 5 being the highest.

\begin{enumerate}

	\item How many hours did you spend doing part 3?

\vspace*{0.18in}

	\item How relevant were the concepts discussed in class for
part 3?

\vspace*{0.18in}

	\item How were the lectures (were they helpful?), are the
notes any useful?

\vspace*{0.18in}

	\item How was the instructor (was he helpful?)?

\vspace*{0.18in}

	\item Does the instructor come prepared to classes?

\vspace*{0.18in}

	\item Is the instructor knowledgeable in the subject?

\vspace*{0.18in}

	\item Does the instructor explain things clearly?

\vspace*{0.18in}

	\item Is the instructor responsive to your needs (make you
comfortable asking questions)?

\vspace*{0.18in}

	\item Does the instructor motivate you (make the subject interesting)?

\vspace*{0.18in}

	\item Does the instructor facilitate participation?

\vspace*{0.18in}

	\item How was the TA (was he helpful? all the questions for
the instructor also apply for the TA)?

\vspace*{0.18in}

	\item Do you have any problem understanding the instructor or the TA?

\vspace*{0.18in}

	\item Do you like the dynamics of the class?

\vspace*{0.18in}

	\item What things would you like to change in the class or
the project?

\vspace*{0.18in}

	\item Is the class meeting your expectations?

\vspace*{0.18in}

	\item Any other comments, i.e. how are the books?

\end{enumerate}

\pagebreak

{\LARGE \bf STUDENT INPUT}

\vspace*{0.25in}

Don't sign this page and leave it apart from your problem set. This is
a feedback mechanism that we use to evaluate the problem sets and the
lectures. If you don't want to write a comment please give a rate from
1 to 5 with 5 being the highest.

\begin{enumerate}

	\item How many hours did you spend doing the final part of the project?

\vspace*{0.18in}

	\item How relevant were the concepts discussed in class for
the project?

\vspace*{0.18in}

	\item How were the lectures (were they helpful?), are the
notes any useful?

\vspace*{0.18in}

	\item How was the instructor (was he helpful?)?

\vspace*{0.18in}

	\item Does the instructor come prepared to classes?

\vspace*{0.18in}

	\item Is the instructor knowledgeable in the subject?

\vspace*{0.18in}

	\item Does the instructor explain things clearly?

\vspace*{0.18in}

	\item Is the instructor responsive to your needs (make you
comfortable asking questions)?

\vspace*{0.18in}

	\item Does the instructor motivate you (make the subject interesting)?

\vspace*{0.18in}

	\item Does the instructor facilitate participation?

\vspace*{0.18in}

	\item How was the TA (was he helpful? all the questions for
the instructor also apply for the TA)?

\vspace*{0.18in}

	\item Do you have any problem understanding the instructor or the TA?

\vspace*{0.18in}

	\item Do you like the dynamics of the class?

\vspace*{0.18in}

	\item What things would you like to change in the class or
the project?

\vspace*{0.18in}

	\item Is the class meeting your expectations?

\vspace*{0.18in}

	\item Any other comments, i.e. how are the books?

\end{enumerate}

\end{document}
























