\documentclass{report}

\usepackage[hmargin=1in,vmargin=1in]{geometry}
\usepackage{graphicx}

\begin{document}

\section*{Scibed notes for SE 464 - May 2, 2011}

\subsection*{Physical Design}

\subsubsection*{How can two pieces of wood be joined at right angles?}

\begin{center}
\includegraphics[scale=0.75]{wood1.png}

\includegraphics[scale=0.75]{wood2.png}
\end{center}

\emph{Minor Clarifications:} 
\begin{itemize}
\setlength{\itemsep}{0pt}
\setlength{\parskip}{0pt}
\item The figure labelled `open mortise \& tenon' is
actually a dado joint. 

\item  The figure labelled `closed mortise \& tenon'
is actually an open mortise and tenon. 

\item The figure labelled `dovetail' is a half-blind dovetail.

\item The figure labelled `peg' is a butt joint secured with a peg or
a nail or something.

\item Metal plates are more often affixed on the side of a butt joint
rather than around a mitre joint.

\end{itemize}

\subsubsection*{How do we choose between these options to use?}
We must consider how the joint will be used and in what context.  There are different types of criteria:

\subsubsection*{Fitness For Purpose}
How well does the option meet our needs?
\begin{itemize}
\item Kinds of Loads
    \begin{itemize}
	\item Compressive
	\item Tensile
	\item Shear
	\item Rotational
    \end{itemize}
\item Environmental Factors
    \begin{itemize}
	\item Wind
	\item Rain
	\item Snow/Ice
	\item Earthquakes
	\item Tsunamis
	\item Volcanoes
	\end{itemize}
\end{itemize}

\subsubsection*{Cost Of Production}
How realistic is the option given available resource?

\begin{itemize}
\item Parts
\item Labour
    \begin{itemize}
	\item Skill
	\item Time
	\end{itemize}
\item Capital (Tools)
\end{itemize}

\subsection*{Software Design}

\subsubsection*{Design an algorithm to determine the average of a set of numbers.}

\begin{enumerate}
\item Store running sum of number and a count of the size of the input.  Return total divided by count.
\item Take the average of each pair of numbers as they come along, then pair those and average them, and so on (tree structure).
\item Divide each number by the count as it is added.
\item Split input into subsets. Use multiple cores to solve subproblems.  Join results and return average.
\item Store entire input and calculate average when needed.
\end{enumerate}

If after identifying these options, someone asks to find the median and mode of these sets in addition to the average, how does this affect the decisions?  In software we have an additional aspect of design: changing requirements.  A bridge will never be moved from one location to another, a deck will always handle similar loads (one usually doesn’t get a pet elephant and expect a deck to support it).  This aspect of software design is called:

\subsubsection*{Fitness For Future}
\begin{itemize}
\item Adapt to changing needs (median/mode in addition to average)
\item Adapt to changing context (different OS, hardware etc.)
\end{itemize}

\subsubsection*{Steps of the Design Process}
\begin{enumerate}
\item Ideation
\item Analysis
    \begin{itemize}
    \item Determine Criteria
    \item Apply Criteria
    \end{itemize}
\item Selection
\item Elaboration/Refinement 
\item Iteration
\end{enumerate}

\subsection*{Questions we will try to answer in this course}
\begin{itemize}
\item What is design?
\item How do we represent a design?
\item How do we know if a design is good?
\end{itemize}

\end{document}

