diff --git a/BlankProjectTemplate/Doc/Design/MG/MG.bib b/BlankProjectTemplate/Doc/Design/MG/MG.bib
new file mode 100644
index 0000000000000000000000000000000000000000..f8046284738b300a57a9b16bc608ca17a18d4b6f
--- /dev/null
+++ b/BlankProjectTemplate/Doc/Design/MG/MG.bib
@@ -0,0 +1,67 @@
+%% This BibTeX bibliography file was created using BibDesk.
+%% http://bibdesk.sourceforge.net/
+
+
+%% Created for Spencer Smith at 2016-10-27 23:57:04 -0400 
+
+
+%% Saved with string encoding Unicode (UTF-8) 
+
+
+
+@inproceedings{Parnas1978,
+	Address = {Piscataway, NJ, USA},
+	Author = {David L. Parnas},
+	Booktitle = {ICSE '78: Proceedings of the 3rd international conference on Software engineering},
+	Date-Added = {2016-10-28 03:56:16 +0000},
+	Date-Modified = {2016-10-28 03:56:16 +0000},
+	Isbn = {none},
+	Location = {Atlanta, Georgia, United States},
+	Pages = {264--277},
+	Publisher = {IEEE Press},
+	Title = {Designing Software for Ease of Extension and Contraction},
+	Year = {1978}}
+
+@article{Parnas1972a,
+	Author = {David L. Parnas},
+	Date-Added = {2016-10-28 03:55:43 +0000},
+	Date-Modified = {2016-10-28 03:55:43 +0000},
+	Journal = {Comm. ACM},
+	Month = {December},
+	Number = {2},
+	Pages = {1053--1058},
+	Title = {On the Criteria To Be Used in Decomposing Systems into Modules},
+	Volume = {15},
+	Year = {1972},
+	Bdsk-File-1 = {YnBsaXN0MDDUAQIDBAUGJCVYJHZlcnNpb25YJG9iamVjdHNZJGFyY2hpdmVyVCR0b3ASAAGGoKgHCBMUFRYaIVUkbnVsbNMJCgsMDxJXTlMua2V5c1pOUy5vYmplY3RzViRjbGFzc6INDoACgAOiEBGABIAFgAdccmVsYXRpdmVQYXRoWWFsaWFzRGF0YV8QOS4uLy4uLy4uLy4uLy4uLy4uL1dvcmsvUmVzZWFyY2gvUmVmZXJlbmNlcy9QYXJuYXMxOTcyLnBkZtIXCxgZV05TLmRhdGFPEQGmAAAAAAGmAAIAAAxNYWNpbnRvc2ggSEQAAAAAAAAAAAAAAAAAAADOl3ODSCsAAAAXAgwOUGFybmFzMTk3Mi5wZGYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3+xs9CaVP4AAAAAAAAAAAAGAAQAAAkgAAAAAAAAAAAAAAAAAAAAClJlZmVyZW5jZXMAEAAIAADOl6vDAAAAEQAIAADQmptOAAAAAQAUABcCDAAXAE0AFv3tAAj3ZgACZI4AAgBGTWFjaW50b3NoIEhEOlVzZXJzOgBzbWl0aHM6AFdvcms6AFJlc2VhcmNoOgBSZWZlcmVuY2VzOgBQYXJuYXMxOTcyLnBkZgAOAB4ADgBQAGEAcgBuAGEAcwAxADkANwAyAC4AcABkAGYADwAaAAwATQBhAGMAaQBuAHQAbwBzAGgAIABIAEQAEgA0VXNlcnMvc21pdGhzL1dvcmsvUmVzZWFyY2gvUmVmZXJlbmNlcy9QYXJuYXMxOTcyLnBkZgATAAEvAAAVAAIADf//AACABtIbHB0eWiRjbGFzc25hbWVYJGNsYXNzZXNdTlNNdXRhYmxlRGF0YaMdHyBWTlNEYXRhWE5TT2JqZWN00hscIiNcTlNEaWN0aW9uYXJ5oiIgXxAPTlNLZXllZEFyY2hpdmVy0SYnVHJvb3SAAQAIABEAGgAjAC0AMgA3AEAARgBNAFUAYABnAGoAbABuAHEAcwB1AHcAhACOAMoAzwDXAoECgwKIApMCnAKqAq4CtQK+AsMC0ALTAuUC6ALtAAAAAAAAAgEAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAu8=}}
+
+@inproceedings{ParnasEtAl1984,
+	Author = {D.L. Parnas and P.C. Clement and D. M. Weiss},
+	Booktitle = {International Conference on Software Engineering},
+	Date-Added = {2016-10-28 03:55:23 +0000},
+	Date-Modified = {2016-10-28 03:55:23 +0000},
+	Pages = {408-419},
+	Title = {The modular structure of complex systems},
+	Year = {1984},
+	Bdsk-File-1 = {YnBsaXN0MDDUAQIDBAUGJCVYJHZlcnNpb25YJG9iamVjdHNZJGFyY2hpdmVyVCR0b3ASAAGGoKgHCBMUFRYaIVUkbnVsbNMJCgsMDxJXTlMua2V5c1pOUy5vYmplY3RzViRjbGFzc6INDoACgAOiEBGABIAFgAdccmVsYXRpdmVQYXRoWWFsaWFzRGF0YV8QPy4uLy4uLy4uLy4uLy4uL3NlNHNjL1NjaUNvbXBBbmRTb2Z0RW5nUGFwZXJzL1Bhcm5hc0V0QWwxOTg0LnBkZtIXCxgZV05TLmRhdGFPEQHcAAAAAAHcAAIAAAxNYWNpbnRvc2ggSEQAAAAAAAAAAAAAAAAAAADOl3ODSCsAAAkx/Q0SUGFybmFzRXRBbDE5ODQucGRmAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACTH9RNNvBNMAAAAAAAAAAAAFAAMAAAkgAAAAAAAAAAAAAAAAAAAAF1NjaUNvbXBBbmRTb2Z0RW5nUGFwZXJzAAAQAAgAAM6Xq8MAAAARAAgAANNvPRMAAAABABQJMf0NCTHuxwASFacACPdmAAJkjgACAFVNYWNpbnRvc2ggSEQ6VXNlcnM6AHNtaXRoczoAUmVwb3M6AHNlNHNjOgBTY2lDb21wQW5kU29mdEVuZ1BhcGVyczoAUGFybmFzRXRBbDE5ODQucGRmAAAOACYAEgBQAGEAcgBuAGEAcwBFAHQAQQBsADEAOQA4ADQALgBwAGQAZgAPABoADABNAGEAYwBpAG4AdABvAHMAaAAgAEgARAASAENVc2Vycy9zbWl0aHMvUmVwb3Mvc2U0c2MvU2NpQ29tcEFuZFNvZnRFbmdQYXBlcnMvUGFybmFzRXRBbDE5ODQucGRmAAATAAEvAAAVAAIADf//AACABtIbHB0eWiRjbGFzc25hbWVYJGNsYXNzZXNdTlNNdXRhYmxlRGF0YaMdHyBWTlNEYXRhWE5TT2JqZWN00hscIiNcTlNEaWN0aW9uYXJ5oiIgXxAPTlNLZXllZEFyY2hpdmVy0SYnVHJvb3SAAQAIABEAGgAjAC0AMgA3AEAARgBNAFUAYABnAGoAbABuAHEAcwB1AHcAhACOANAA1QDdAr0CvwLEAs8C2ALmAuoC8QL6Av8DDAMPAyEDJAMpAAAAAAAAAgEAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAys=}}
+
+@book{RobertsonAndRobertson2012,
+	Author = {James Robertson and Suzanne Robertson},
+	Date-Added = {2016-09-22 13:54:40 +0000},
+	Date-Modified = {2016-09-22 14:01:42 +0000},
+	Edition = {16},
+	Publisher = {Atlantic Systems Guild Limited},
+	Title = {Volere Requirements Specification Template},
+	Year = {2012}}
+
+@article{ParnasAndClements1986,
+	Author = {David L. Parnas and P.C. Clements},
+	Date-Added = {2016-09-10 13:11:57 +0000},
+	Date-Modified = {2016-09-10 13:11:57 +0000},
+	Journal = {IEEE Transactions on Software Engineering},
+	Number = {2},
+	Pages = {251--257},
+	Title = {A Rational Design Process: How and Why to Fake it},
+	Volume = {12},
+	Year = {February 1986},
+	Bdsk-File-1 = {YnBsaXN0MDDUAQIDBAUGJCVYJHZlcnNpb25YJG9iamVjdHNZJGFyY2hpdmVyVCR0b3ASAAGGoKgHCBMUFRYaIVUkbnVsbNMJCgsMDxJXTlMua2V5c1pOUy5vYmplY3RzViRjbGFzc6INDoACgAOiEBGABIAFgAdccmVsYXRpdmVQYXRoWWFsaWFzRGF0YV8QRi4uLy4uLy4uLy4uLy4uL3NlNHNjL1NjaUNvbXBBbmRTb2Z0RW5nUGFwZXJzL1Bhcm5hc0FuZENsZW1lbnRzMTk4Ni5wZGbSFwsYGVdOUy5kYXRhTxEB9gAAAAAB9gACAAAMTWFjaW50b3NoIEhEAAAAAAAAAAAAAAAAAAAAzpdzg0grAAAJMf0NGVBhcm5hc0FuZENsZW1lbnRzMTk4Ni5wZGYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkx/UPTbwTTAAAAAAAAAAAABQADAAAJIAAAAAAAAAAAAAAAAAAAABdTY2lDb21wQW5kU29mdEVuZ1BhcGVycwAAEAAIAADOl6vDAAAAEQAIAADTbz0TAAAAAQAUCTH9DQkx7scAEhWnAAj3ZgACZI4AAgBcTWFjaW50b3NoIEhEOlVzZXJzOgBzbWl0aHM6AFJlcG9zOgBzZTRzYzoAU2NpQ29tcEFuZFNvZnRFbmdQYXBlcnM6AFBhcm5hc0FuZENsZW1lbnRzMTk4Ni5wZGYADgA0ABkAUABhAHIAbgBhAHMAQQBuAGQAQwBsAGUAbQBlAG4AdABzADEAOQA4ADYALgBwAGQAZgAPABoADABNAGEAYwBpAG4AdABvAHMAaAAgAEgARAASAEpVc2Vycy9zbWl0aHMvUmVwb3Mvc2U0c2MvU2NpQ29tcEFuZFNvZnRFbmdQYXBlcnMvUGFybmFzQW5kQ2xlbWVudHMxOTg2LnBkZgATAAEvAAAVAAIADf//AACABtIbHB0eWiRjbGFzc25hbWVYJGNsYXNzZXNdTlNNdXRhYmxlRGF0YaMdHyBWTlNEYXRhWE5TT2JqZWN00hscIiNcTlNEaWN0aW9uYXJ5oiIgXxAPTlNLZXllZEFyY2hpdmVy0SYnVHJvb3SAAQAIABEAGgAjAC0AMgA3AEAARgBNAFUAYABnAGoAbABuAHEAcwB1AHcAhACOANcA3ADkAt4C4ALlAvAC+QMHAwsDEgMbAyADLQMwA0IDRQNKAAAAAAAAAgEAAAAAAAAAKAAAAAAAAAAAAAAAAAAAA0w=}}
diff --git a/BlankProjectTemplate/Doc/Design/MG/MG.pdf b/BlankProjectTemplate/Doc/Design/MG/MG.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..ea8c480d2d58c4c0a6329bba5f67718a2e8d6552
Binary files /dev/null and b/BlankProjectTemplate/Doc/Design/MG/MG.pdf differ
diff --git a/BlankProjectTemplate/Doc/Design/MG/MG.tex b/BlankProjectTemplate/Doc/Design/MG/MG.tex
new file mode 100644
index 0000000000000000000000000000000000000000..042518f46dbaa3acbbeb81f8dfe3b0699b843d76
--- /dev/null
+++ b/BlankProjectTemplate/Doc/Design/MG/MG.tex
@@ -0,0 +1,355 @@
+\documentclass[12pt, titlepage]{article}
+
+\usepackage{fullpage}
+\usepackage[round]{natbib}
+\usepackage{multirow}
+\usepackage{booktabs}
+\usepackage{tabularx}
+\usepackage{graphicx}
+\usepackage{float}
+\usepackage{hyperref}
+\hypersetup{
+    colorlinks,
+    citecolor=black,
+    filecolor=black,
+    linkcolor=red,
+    urlcolor=blue
+}
+\usepackage[round]{natbib}
+
+\newcounter{acnum}
+\newcommand{\actheacnum}{AC\theacnum}
+\newcommand{\acref}[1]{AC\ref{#1}}
+
+\newcounter{ucnum}
+\newcommand{\uctheucnum}{UC\theucnum}
+\newcommand{\uref}[1]{UC\ref{#1}}
+
+\newcounter{mnum}
+\newcommand{\mthemnum}{M\themnum}
+\newcommand{\mref}[1]{M\ref{#1}}
+
+\title{SE 3XA3: Software Requirements Specification\\Title of Project}
+
+\author{Team \#, Team Name
+		\\ Student 1 name and macid
+		\\ Student 2 name and macid
+		\\ Student 3 name and macid
+}
+
+\date{\today}
+
+\input{../../Comments}
+
+\begin{document}
+
+\maketitle
+
+\pagenumbering{roman}
+\tableofcontents
+\listoftables
+\listoffigures
+
+\begin{table}[bp]
+\caption{\bf Revision History}
+\begin{tabularx}{\textwidth}{p{3cm}p{2cm}X}
+\toprule {\bf Date} & {\bf Version} & {\bf Notes}\\
+\midrule
+Date 1 & 1.0 & Notes\\
+Date 2 & 1.1 & Notes\\
+\bottomrule
+\end{tabularx}
+\end{table}
+
+\newpage
+
+\pagenumbering{arabic}
+
+\section{Introduction}
+
+Decomposing a system into modules is a commonly accepted approach to developing
+software.  A module is a work assignment for a programmer or programming
+team~\citep{ParnasEtAl1984}.  We advocate a decomposition
+based on the principle of information hiding~\citep{Parnas1972a}.  This
+principle supports design for change, because the ``secrets'' that each module
+hides represent likely future changes.  Design for change is valuable in SC,
+where modifications are frequent, especially during initial development as the
+solution space is explored.  
+
+Our design follows the rules layed out by \citet{ParnasEtAl1984}, as follows:
+\begin{itemize}
+\item System details that are likely to change independently should be the
+  secrets of separate modules.
+\item Each data structure is used in only one module.
+\item Any other program that requires information stored in a module's data
+  structures must obtain it by calling access programs belonging to that module.
+\end{itemize}
+
+After completing the first stage of the design, the Software Requirements
+Specification (SRS), the Module Guide (MG) is developed~\citep{ParnasEtAl1984}. The MG
+specifies the modular structure of the system and is intended to allow both
+designers and maintainers to easily identify the parts of the software.  The
+potential readers of this document are as follows:
+
+\begin{itemize}
+\item New project members: This document can be a guide for a new project member
+  to easily understand the overall structure and quickly find the
+  relevant modules they are searching for.
+\item Maintainers: The hierarchical structure of the module guide improves the
+  maintainers' understanding when they need to make changes to the system. It is
+  important for a maintainer to update the relevant sections of the document
+  after changes have been made.
+\item Designers: Once the module guide has been written, it can be used to
+  check for consistency, feasibility and flexibility. Designers can verify the
+  system in various ways, such as consistency among modules, feasibility of the
+  decomposition, and flexibility of the design.
+\end{itemize}
+
+The rest of the document is organized as follows. Section
+\ref{SecChange} lists the anticipated and unlikely changes of the software
+requirements. Section \ref{SecMH} summarizes the module decomposition that
+was constructed according to the likely changes. Section \ref{SecConnection}
+specifies the connections between the software requirements and the
+modules. Section \ref{SecMD} gives a detailed description of the
+modules. Section \ref{SecTM} includes two traceability matrices. One checks
+the completeness of the design against the requirements provided in the SRS. The
+other shows the relation between anticipated changes and the modules. Section
+\ref{SecUse} describes the use relation between modules.
+
+\section{Anticipated and Unlikely Changes} \label{SecChange}
+
+This section lists possible changes to the system. According to the likeliness
+of the change, the possible changes are classified into two
+categories. Anticipated changes are listed in Section \ref{SecAchange}, and
+unlikely changes are listed in Section \ref{SecUchange}.
+
+\subsection{Anticipated Changes} \label{SecAchange}
+
+Anticipated changes are the source of the information that is to be hidden
+inside the modules. Ideally, changing one of the anticipated changes will only
+require changing the one module that hides the associated decision. The approach
+adapted here is called design for
+change.
+
+\begin{description}
+\item[\refstepcounter{acnum} \actheacnum \label{acHardware}:] The specific
+  hardware on which the software is running.
+\item[\refstepcounter{acnum} \actheacnum \label{acInput}:] The format of the
+  initial input data.
+\item ...
+\end{description}
+
+\subsection{Unlikely Changes} \label{SecUchange}
+
+The module design should be as general as possible. However, a general system is
+more complex. Sometimes this complexity is not necessary. Fixing some design
+decisions at the system architecture stage can simplify the software design. If
+these decision should later need to be changed, then many parts of the design
+will potentially need to be modified. Hence, it is not intended that these
+decisions will be changed.
+
+\begin{description}
+\item[\refstepcounter{ucnum} \uctheucnum \label{ucIO}:] Input/Output devices
+  (Input: File and/or Keyboard, Output: File, Memory, and/or Screen).
+\item[\refstepcounter{ucnum} \uctheucnum \label{ucInput}:] There will always be
+  a source of input data external to the software.
+\item ...
+\end{description}
+
+\section{Module Hierarchy} \label{SecMH}
+
+This section provides an overview of the module design. Modules are summarized
+in a hierarchy decomposed by secrets in Table \ref{TblMH}. The modules listed
+below, which are leaves in the hierarchy tree, are the modules that will
+actually be implemented.
+
+\begin{description}
+\item [\refstepcounter{mnum} \mthemnum \label{mHH}:] Hardware-Hiding Module
+\item ...
+\end{description}
+
+
+\begin{table}[h!]
+\centering
+\begin{tabular}{p{0.3\textwidth} p{0.6\textwidth}}
+\toprule
+\textbf{Level 1} & \textbf{Level 2}\\
+\midrule
+
+{Hardware-Hiding Module} & ~ \\
+\midrule
+
+\multirow{7}{0.3\textwidth}{Behaviour-Hiding Module} & ?\\
+& ?\\
+& ?\\
+& ?\\
+& ?\\
+& ?\\
+& ?\\ 
+& ?\\
+\midrule
+
+\multirow{3}{0.3\textwidth}{Software Decision Module} & {?}\\
+& ?\\
+& ?\\
+\bottomrule
+
+\end{tabular}
+\caption{Module Hierarchy}
+\label{TblMH}
+\end{table}
+
+\section{Connection Between Requirements and Design} \label{SecConnection}
+
+The design of the system is intended to satisfy the requirements developed in
+the SRS. In this stage, the system is decomposed into modules. The connection
+between requirements and modules is listed in Table \ref{TblRT}.
+
+\section{Module Decomposition} \label{SecMD}
+
+Modules are decomposed according to the principle of ``information hiding''
+proposed by \citet{ParnasEtAl1984}. The \emph{Secrets} field in a module
+decomposition is a brief statement of the design decision hidden by the
+module. The \emph{Services} field specifies \emph{what} the module will do
+without documenting \emph{how} to do it. For each module, a suggestion for the
+implementing software is given under the \emph{Implemented By} title. If the
+entry is \emph{OS}, this means that the module is provided by the operating
+system or by standard programming language libraries.  Also indicate if the
+module will be implemented specifically for the software.
+
+Only the leaf modules in the
+hierarchy have to be implemented. If a dash (\emph{--}) is shown, this means
+that the module is not a leaf and will not have to be implemented. Whether or
+not this module is implemented depends on the programming language
+selected.
+
+\subsection{Hardware Hiding Modules (\mref{mHH})}
+
+\begin{description}
+\item[Secrets:]The data structure and algorithm used to implement the virtual
+  hardware.
+\item[Services:]Serves as a virtual hardware used by the rest of the
+  system. This module provides the interface between the hardware and the
+  software. So, the system can use it to display outputs or to accept inputs.
+\item[Implemented By:] OS
+\end{description}
+
+\subsection{Behaviour-Hiding Module}
+
+\begin{description}
+\item[Secrets:]The contents of the required behaviours.
+\item[Services:]Includes programs that provide externally visible behaviour of
+  the system as specified in the software requirements specification (SRS)
+  documents. This module serves as a communication layer between the
+  hardware-hiding module and the software decision module. The programs in this
+  module will need to change if there are changes in the SRS.
+\item[Implemented By:] --
+\end{description}
+
+\subsubsection{Input Format Module (\mref{mInput})}
+
+\begin{description}
+\item[Secrets:]The format and structure of the input data.
+\item[Services:]Converts the input data into the data structure used by the
+  input parameters module.
+\item[Implemented By:] [Your Program Name Here]
+\end{description}
+
+\subsubsection{Etc.}
+
+
+\subsection{Software Decision Module}
+
+\begin{description}
+\item[Secrets:] The design decision based on mathematical theorems, physical
+  facts, or programming considerations. The secrets of this module are
+  \emph{not} described in the SRS.
+\item[Services:] Includes data structure and algorithms used in the system that
+  do not provide direct interaction with the user. 
+  % Changes in these modules are more likely to be motivated by a desire to
+  % improve performance than by externally imposed changes.
+\item[Implemented By:] --
+\end{description}
+
+\subsubsection{Etc.}
+
+\section{Traceability Matrix} \label{SecTM}
+
+This section shows two traceability matrices: between the modules and the
+requirements and between the modules and the anticipated changes.
+
+% the table should use mref, the requirements should be named, use something
+% like fref
+\begin{table}[H]
+\centering
+\begin{tabular}{p{0.2\textwidth} p{0.6\textwidth}}
+\toprule
+\textbf{Req.} & \textbf{Modules}\\
+\midrule
+R1 & \mref{mHH}, \mref{mInput}, \mref{mParams}, \mref{mControl}\\
+R2 & \mref{mInput}, \mref{mParams}\\
+R3 & \mref{mVerify}\\
+R4 & \mref{mOutput}, \mref{mControl}\\
+R5 & \mref{mOutput}, \mref{mODEs}, \mref{mControl}, \mref{mSeqDS}, \mref{mSolver}, \mref{mPlot}\\
+R6 & \mref{mOutput}, \mref{mODEs}, \mref{mControl}, \mref{mSeqDS}, \mref{mSolver}, \mref{mPlot}\\
+R7 & \mref{mOutput}, \mref{mEnergy}, \mref{mControl}, \mref{mSeqDS}, \mref{mPlot}\\
+R8 & \mref{mOutput}, \mref{mEnergy}, \mref{mControl}, \mref{mSeqDS}, \mref{mPlot}\\
+R9 & \mref{mVerifyOut}\\
+R10 & \mref{mOutput}, \mref{mODEs}, \mref{mControl}\\
+R11 & \mref{mOutput}, \mref{mODEs}, \mref{mEnergy}, \mref{mControl}\\
+\bottomrule
+\end{tabular}
+\caption{Trace Between Requirements and Modules}
+\label{TblRT}
+\end{table}
+
+\begin{table}[H]
+\centering
+\begin{tabular}{p{0.2\textwidth} p{0.6\textwidth}}
+\toprule
+\textbf{AC} & \textbf{Modules}\\
+\midrule
+\acref{acHardware} & \mref{mHH}\\
+\acref{acInput} & \mref{mInput}\\
+\acref{acParams} & \mref{mParams}\\
+\acref{acVerify} & \mref{mVerify}\\
+\acref{acOutput} & \mref{mOutput}\\
+\acref{acVerifyOut} & \mref{mVerifyOut}\\
+\acref{acODEs} & \mref{mODEs}\\
+\acref{acEnergy} & \mref{mEnergy}\\
+\acref{acControl} & \mref{mControl}\\
+\acref{acSeqDS} & \mref{mSeqDS}\\
+\acref{acSolver} & \mref{mSolver}\\
+\acref{acPlot} & \mref{mPlot}\\
+\bottomrule
+\end{tabular}
+\caption{Trace Between Anticipated Changes and Modules}
+\label{TblACT}
+\end{table}
+
+\section{Use Hierarchy Between Modules} \label{SecUse}
+
+In this section, the uses hierarchy between modules is
+provided. \citet{Parnas1978} said of two programs A and B that A {\em uses} B if
+correct execution of B may be necessary for A to complete the task described in
+its specification. That is, A {\em uses} B if there exist situations in which
+the correct functioning of A depends upon the availability of a correct
+implementation of B.  Figure \ref{FigUH} illustrates the use relation between
+the modules. It can be seen that the graph is a directed acyclic graph
+(DAG). Each level of the hierarchy offers a testable and usable subset of the
+system, and modules in the higher level of the hierarchy are essentially simpler
+because they use modules from the lower levels.
+
+\begin{figure}[H]
+\centering
+%\includegraphics[width=0.7\textwidth]{UsesHierarchy.png}
+\caption{Use hierarchy among modules}
+\label{FigUH}
+\end{figure}
+
+%\section*{References}
+
+\bibliographystyle {plainnat}
+\bibliography {MG}
+
+\end{document}
\ No newline at end of file
diff --git a/BlankProjectTemplate/Doc/Design/MG/README.md b/BlankProjectTemplate/Doc/Design/MG/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..e41d35c184f836e9cd82d27dbd5faf0115a79095
--- /dev/null
+++ b/BlankProjectTemplate/Doc/Design/MG/README.md
@@ -0,0 +1,3 @@
+# Module Guide
+
+The folders and files for the module guide.
diff --git a/BlankProjectTemplate/Doc/Design/MIS/README.md b/BlankProjectTemplate/Doc/Design/MIS/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..94b3f4e0b82f3d740b86218d352a4d95c3582f3d
--- /dev/null
+++ b/BlankProjectTemplate/Doc/Design/MIS/README.md
@@ -0,0 +1,3 @@
+# Module Interface Specification #
+
+Use doxygen (or equivalent) to document the interface for your modules.
diff --git a/BlankProjectTemplate/Doc/Design/README.md b/BlankProjectTemplate/Doc/Design/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..da725ccd1d98b659ae212b08edabc55a4ee9e728
--- /dev/null
+++ b/BlankProjectTemplate/Doc/Design/README.md
@@ -0,0 +1,5 @@
+# Design Documentation
+
+The folders and files for this folder are as follows:
+
+Describe ...
diff --git a/BlankProjectTemplate/Doc/DevelopmentPlan/DevelopmentPlan.pdf b/BlankProjectTemplate/Doc/DevelopmentPlan/DevelopmentPlan.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..2dd39a9a048e741f1bfeb4c884e37d4cb65f3586
Binary files /dev/null and b/BlankProjectTemplate/Doc/DevelopmentPlan/DevelopmentPlan.pdf differ
diff --git a/BlankProjectTemplate/Doc/DevelopmentPlan/DevelopmentPlan.tex b/BlankProjectTemplate/Doc/DevelopmentPlan/DevelopmentPlan.tex
new file mode 100644
index 0000000000000000000000000000000000000000..4787d61902ac0cc6631aa7bafac515ccc603ddf1
--- /dev/null
+++ b/BlankProjectTemplate/Doc/DevelopmentPlan/DevelopmentPlan.tex
@@ -0,0 +1,59 @@
+\documentclass{article}
+
+\usepackage{booktabs}
+\usepackage{tabularx}
+
+\title{SE 3XA3: Development Plan\\Title of Project}
+
+\author{Team \#, Team Name
+		\\ Student 1 name and macid
+		\\ Student 2 name and macid
+		\\ Student 3 name and macid
+}
+
+\date{}
+
+\input{../Comments}
+
+\begin{document}
+
+\begin{table}[hp]
+\caption{Revision History} \label{TblRevisionHistory}
+\begin{tabularx}{\textwidth}{llX}
+\toprule
+\textbf{Date} & \textbf{Developer(s)} & \textbf{Change}\\
+\midrule
+Date1 & Name(s) & Description of changes\\
+Date2 & Name(s) & Description of changes\\
+... & ... & ...\\
+\bottomrule
+\end{tabularx}
+\end{table}
+
+\newpage
+
+\maketitle
+
+Put your introductory blurb here.
+
+\section{Team Meeting Plan}
+
+\section{Team Communication Plan}
+
+\section{Team Member Roles}
+
+\section{Git Workflow Plan}
+
+\section{Proof of Concept Demonstration Plan}
+
+\section{Technology}
+
+\section{Coding Style}
+
+\section{Project Schedule}
+
+Provide a pointer to your Gantt Chart.
+
+\section{Project Review}
+
+\end{document}
\ No newline at end of file
diff --git a/BlankProjectTemplate/Doc/DevelopmentPlan/README.md b/BlankProjectTemplate/Doc/DevelopmentPlan/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..b6bfa0cb0bb6597dc14c249f4e739cd60428dc7d
--- /dev/null
+++ b/BlankProjectTemplate/Doc/DevelopmentPlan/README.md
@@ -0,0 +1,5 @@
+# Development Plan
+
+The folders and files for this folder are as follows:
+
+Describe ...
diff --git a/BlankProjectTemplate/Doc/FinalPresentation/README.md b/BlankProjectTemplate/Doc/FinalPresentation/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..29134c944717aecb40e11cfacfb106855586a794
--- /dev/null
+++ b/BlankProjectTemplate/Doc/FinalPresentation/README.md
@@ -0,0 +1,5 @@
+# Final Presentation
+
+The folders and files for this folder are as follows:
+
+Describe ...
diff --git a/BlankProjectTemplate/Doc/ProblemStatement/ProblemStatement.pdf b/BlankProjectTemplate/Doc/ProblemStatement/ProblemStatement.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..b4ad01113f3817c0b5989bbfda029f6dbb292a7b
Binary files /dev/null and b/BlankProjectTemplate/Doc/ProblemStatement/ProblemStatement.pdf differ
diff --git a/BlankProjectTemplate/Doc/ProblemStatement/ProblemStatement.tex b/BlankProjectTemplate/Doc/ProblemStatement/ProblemStatement.tex
new file mode 100644
index 0000000000000000000000000000000000000000..07d1207761a2cea4e49117a471599ce32be8c273
--- /dev/null
+++ b/BlankProjectTemplate/Doc/ProblemStatement/ProblemStatement.tex
@@ -0,0 +1,49 @@
+\documentclass{article}
+
+\usepackage{tabularx}
+\usepackage{booktabs}
+
+\title{SE 3XA3: Problem Statement\\Title of Project}
+
+\author{Team \#, Team Name
+		\\ Student 1 name and macid
+		\\ Student 2 name and macid
+		\\ Student 3 name and macid
+}
+
+\date{}
+
+\input{../Comments}
+
+\begin{document}
+
+\begin{table}[hp]
+\caption{Revision History} \label{TblRevisionHistory}
+\begin{tabularx}{\textwidth}{llX}
+\toprule
+\textbf{Date} & \textbf{Developer(s)} & \textbf{Change}\\
+\midrule
+Date1 & Name(s) & Description of changes\\
+Date2 & Name(s) & Description of changes\\
+... & ... & ...\\
+\bottomrule
+\end{tabularx}
+\end{table}
+
+\newpage
+
+\maketitle
+
+Put your problem statement here.
+
+\wss{comment}
+
+\ds{comment}
+
+\mj{comment}
+
+\cm{comment}
+
+\mh{comment}
+
+\end{document}
\ No newline at end of file
diff --git a/BlankProjectTemplate/Doc/ProblemStatement/README.md b/BlankProjectTemplate/Doc/ProblemStatement/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..e5c5ef46a45f7a6781c1695470be05c20fa59570
--- /dev/null
+++ b/BlankProjectTemplate/Doc/ProblemStatement/README.md
@@ -0,0 +1,5 @@
+# Problem Statement
+
+The folders and files for this folder are as follows:
+
+Describe ...
diff --git a/BlankProjectTemplate/Doc/README.md b/BlankProjectTemplate/Doc/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..423bf545a4205cc17195b66ff21cb8b00ced6911
--- /dev/null
+++ b/BlankProjectTemplate/Doc/README.md
@@ -0,0 +1,5 @@
+# Documentation folders
+
+The folders and files for this folder are as follows:
+
+Describe ...
\ No newline at end of file
diff --git a/BlankProjectTemplate/Doc/SRS/README.md b/BlankProjectTemplate/Doc/SRS/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..67ed341730f1e0be598fb7655254e1e0924994d4
--- /dev/null
+++ b/BlankProjectTemplate/Doc/SRS/README.md
@@ -0,0 +1,5 @@
+# Software Requirements Specification
+
+The folders and files for this folder are as follows:
+
+Describe ...
diff --git a/BlankProjectTemplate/Doc/SRS/SRS.bib b/BlankProjectTemplate/Doc/SRS/SRS.bib
new file mode 100644
index 0000000000000000000000000000000000000000..59ee07fbeb2bb8215f6f79cfb4b04bb844cc9956
--- /dev/null
+++ b/BlankProjectTemplate/Doc/SRS/SRS.bib
@@ -0,0 +1,30 @@
+%% This BibTeX bibliography file was created using BibDesk.
+%% http://bibdesk.sourceforge.net/
+
+%% Created for Spencer Smith at 2016-09-22 10:01:42 -0400 
+
+
+%% Saved with string encoding Unicode (UTF-8) 
+
+
+
+@book{RobertsonAndRobertson2012,
+	Author = {James Robertson and Suzanne Robertson},
+	Date-Added = {2016-09-22 13:54:40 +0000},
+	Date-Modified = {2016-09-22 14:01:42 +0000},
+	Edition = {16},
+	Publisher = {Atlantic Systems Guild Limited},
+	Title = {Volere Requirements Specification Template},
+	Year = {2012}}
+
+@article{ParnasAndClements1986,
+	Author = {David L. Parnas and P.C. Clements},
+	Date-Added = {2016-09-10 13:11:57 +0000},
+	Date-Modified = {2016-09-10 13:11:57 +0000},
+	Journal = {IEEE Transactions on Software Engineering},
+	Number = {2},
+	Pages = {251--257},
+	Title = {A Rational Design Process: How and Why to Fake it},
+	Volume = {12},
+	Year = {February 1986},
+	Bdsk-File-1 = {YnBsaXN0MDDUAQIDBAUGJCVYJHZlcnNpb25YJG9iamVjdHNZJGFyY2hpdmVyVCR0b3ASAAGGoKgHCBMUFRYaIVUkbnVsbNMJCgsMDxJXTlMua2V5c1pOUy5vYmplY3RzViRjbGFzc6INDoACgAOiEBGABIAFgAdccmVsYXRpdmVQYXRoWWFsaWFzRGF0YV8QQy4uLy4uLy4uLy4uL3NlNHNjL1NjaUNvbXBBbmRTb2Z0RW5nUGFwZXJzL1Bhcm5hc0FuZENsZW1lbnRzMTk4Ni5wZGbSFwsYGVdOUy5kYXRhTxEB9gAAAAAB9gACAAAMTWFjaW50b3NoIEhEAAAAAAAAAAAAAAAAAAAA0khroUgrAAAAhfxhGVBhcm5hc0FuZENsZW1lbnRzMTk4Ni5wZGYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACF/LDT7aEvAAAAAAAAAAAABAADAAAJIAAAAAAAAAAAAAAAAAAAABdTY2lDb21wQW5kU29mdEVuZ1BhcGVycwAAEAAIAADSSKPhAAAAEQAIAADT7dlvAAAAAQAUAIX8YQCF7/8AILODAAlg3gAGKpoAAgBcTWFjaW50b3NoIEhEOlVzZXJzOgBzbWl0aHM6AFJlcG9zOgBzZTRzYzoAU2NpQ29tcEFuZFNvZnRFbmdQYXBlcnM6AFBhcm5hc0FuZENsZW1lbnRzMTk4Ni5wZGYADgA0ABkAUABhAHIAbgBhAHMAQQBuAGQAQwBsAGUAbQBlAG4AdABzADEAOQA4ADYALgBwAGQAZgAPABoADABNAGEAYwBpAG4AdABvAHMAaAAgAEgARAASAEpVc2Vycy9zbWl0aHMvUmVwb3Mvc2U0c2MvU2NpQ29tcEFuZFNvZnRFbmdQYXBlcnMvUGFybmFzQW5kQ2xlbWVudHMxOTg2LnBkZgATAAEvAAAVAAIADf//AACABtIbHB0eWiRjbGFzc25hbWVYJGNsYXNzZXNdTlNNdXRhYmxlRGF0YaMdHyBWTlNEYXRhWE5TT2JqZWN00hscIiNcTlNEaWN0aW9uYXJ5oiIgXxAPTlNLZXllZEFyY2hpdmVy0SYnVHJvb3SAAQAIABEAGgAjAC0AMgA3AEAARgBNAFUAYABnAGoAbABuAHEAcwB1AHcAhACOANQA2QDhAtsC3QLiAu0C9gMEAwgDDwMYAx0DKgMtAz8DQgNHAAAAAAAAAgEAAAAAAAAAKAAAAAAAAAAAAAAAAAAAA0k=}}
diff --git a/BlankProjectTemplate/Doc/SRS/SRS.pdf b/BlankProjectTemplate/Doc/SRS/SRS.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..9c14fc718ca445ad71ff57c4a7c97858f58e8e67
Binary files /dev/null and b/BlankProjectTemplate/Doc/SRS/SRS.pdf differ
diff --git a/BlankProjectTemplate/Doc/SRS/SRS.tex b/BlankProjectTemplate/Doc/SRS/SRS.tex
new file mode 100644
index 0000000000000000000000000000000000000000..e6c8a5ccbab10f91c1fd1e268474d22e0d7048be
--- /dev/null
+++ b/BlankProjectTemplate/Doc/SRS/SRS.tex
@@ -0,0 +1,150 @@
+\documentclass[12pt, titlepage]{article}
+
+\usepackage{booktabs}
+\usepackage{tabularx}
+\usepackage{hyperref}
+\hypersetup{
+    colorlinks,
+    citecolor=black,
+    filecolor=black,
+    linkcolor=red,
+    urlcolor=blue
+}
+\usepackage[round]{natbib}
+
+\title{SE 3XA3: Software Requirements Specification\\Title of Project}
+
+\author{Team \#, Team Name
+		\\ Student 1 name and macid
+		\\ Student 2 name and macid
+		\\ Student 3 name and macid
+}
+
+\date{\today}
+
+\input{../Comments}
+
+\begin{document}
+
+\maketitle
+
+\pagenumbering{roman}
+\tableofcontents
+\listoftables
+\listoffigures
+
+\begin{table}[bp]
+\caption{\bf Revision History}
+\begin{tabularx}{\textwidth}{p{3cm}p{2cm}X}
+\toprule {\bf Date} & {\bf Version} & {\bf Notes}\\
+\midrule
+Date 1 & 1.0 & Notes\\
+Date 2 & 1.1 & Notes\\
+\bottomrule
+\end{tabularx}
+\end{table}
+
+\newpage
+
+\pagenumbering{arabic}
+
+This document describes the requirements for ....  The template for the Software
+Requirements Specification (SRS) is a subset of the Volere
+template~\citep{RobertsonAndRobertson2012}.  If you make further modifications
+to the template, you should explicity state what modifications were made.
+
+\section{Project Drivers}
+
+\subsection{The Purpose of the Project}
+
+\subsection{The Stakeholders}
+
+\subsubsection{The Client}
+
+\subsubsection{The Customers}
+
+\subsubsection{Other Stakeholders}
+
+\subsection{Mandated Constraints}
+
+\subsection{Naming Conventions and Terminology}
+
+\subsection{Relevant Facts and Assumptions}
+
+User characteristics should go under assumptions.
+
+\section{Functional Requirements}
+
+\subsection{The Scope of the Work and the Product}
+
+\subsubsection{The Context of the Work}
+
+\subsubsection{Work Partitioning}
+
+\subsubsection{Individual Product Use Cases}
+
+\subsection{Functional Requirements}
+
+\section{Non-functional Requirements}
+
+\subsection{Look and Feel Requirements}
+
+\subsection{Usability and Humanity Requirements}
+
+\subsection{Performance Requirements}
+
+\subsection{Operational and Environmental Requirements}
+
+\subsection{Maintainability and Support Requirements}
+
+\subsection{Security Requirements}
+
+\subsection{Cultural Requirements}
+
+\subsection{Legal Requirements}
+
+\subsection{Health and Safety Requirements}
+
+This section is not in the original Volere template, but health and safety are
+issues that should be considered for every engineering project.
+
+\section{Project Issues}
+
+\subsection{Open Issues}
+
+\subsection{Off-the-Shelf Solutions}
+
+\subsection{New Problems}
+
+\subsection{Tasks}
+
+\subsection{Migration to the New Product}
+
+\subsection{Risks}
+
+\subsection{Costs}
+
+\subsection{User Documentation and Training}
+
+\subsection{Waiting Room}
+
+\subsection{Ideas for Solutions}
+
+\bibliographystyle{plainnat}
+
+\bibliography{SRS}
+
+\newpage
+
+\section{Appendix}
+
+This section has been added to the Volere template.  This is where you can place
+additional information.
+
+\subsection{Symbolic Parameters}
+
+The definition of the requirements will likely call for SYMBOLIC\_CONSTANTS.
+Their values are defined in this section for easy maintenance.
+
+
+\end{document}
\ No newline at end of file
diff --git a/BlankProjectTemplate/Doc/TestPlan/README.md b/BlankProjectTemplate/Doc/TestPlan/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..2c8b6b82c5e7598ee50c62a0ee6a5f74ebe26f38
--- /dev/null
+++ b/BlankProjectTemplate/Doc/TestPlan/README.md
@@ -0,0 +1,5 @@
+# Test Plan
+
+The folders and files for this folder are as follows:
+
+Describe ...
diff --git a/BlankProjectTemplate/Doc/TestPlan/TestPlan.pdf b/BlankProjectTemplate/Doc/TestPlan/TestPlan.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..a10c6ab2c73656fa8e05cbd36d04595c504755fa
Binary files /dev/null and b/BlankProjectTemplate/Doc/TestPlan/TestPlan.pdf differ
diff --git a/BlankProjectTemplate/Doc/TestPlan/TestPlan.tex b/BlankProjectTemplate/Doc/TestPlan/TestPlan.tex
new file mode 100644
index 0000000000000000000000000000000000000000..82c7a96a60a179f5f9066c09f9b09bb750d8a713
--- /dev/null
+++ b/BlankProjectTemplate/Doc/TestPlan/TestPlan.tex
@@ -0,0 +1,251 @@
+\documentclass[12pt, titlepage]{article}
+
+\usepackage{booktabs}
+\usepackage{tabularx}
+\usepackage{hyperref}
+\hypersetup{
+    colorlinks,
+    citecolor=black,
+    filecolor=black,
+    linkcolor=red,
+    urlcolor=blue
+}
+\usepackage[round]{natbib}
+
+\title{SE 3XA3: Test Plan\\Title of Project}
+
+\author{Team \#, Team Name
+		\\ Student 1 name and macid
+		\\ Student 2 name and macid
+		\\ Student 3 name and macid
+}
+
+\date{\today}
+
+\input{../Comments}
+
+\begin{document}
+
+\maketitle
+
+\pagenumbering{roman}
+\tableofcontents
+\listoftables
+\listoffigures
+
+\begin{table}[bp]
+\caption{\bf Revision History}
+\begin{tabularx}{\textwidth}{p{3cm}p{2cm}X}
+\toprule {\bf Date} & {\bf Version} & {\bf Notes}\\
+\midrule
+Date 1 & 1.0 & Notes\\
+Date 2 & 1.1 & Notes\\
+\bottomrule
+\end{tabularx}
+\end{table}
+
+\newpage
+
+\pagenumbering{arabic}
+
+This document ...
+
+\section{General Information}
+
+\subsection{Purpose}
+
+\subsection{Scope}
+
+\subsection{Acronyms, Abbreviations, and Symbols}
+	
+\begin{table}[hbp]
+\caption{\textbf{Table of Abbreviations}} \label{Table}
+
+\begin{tabularx}{\textwidth}{p{3cm}X}
+\toprule
+\textbf{Abbreviation} & \textbf{Definition} \\
+\midrule
+Abbreviation1 & Definition1\\
+Abbreviation2 & Definition2\\
+\bottomrule
+\end{tabularx}
+
+\end{table}
+
+\begin{table}[!htbp]
+\caption{\textbf{Table of Definitions}} \label{Table}
+
+\begin{tabularx}{\textwidth}{p{3cm}X}
+\toprule
+\textbf{Term} & \textbf{Definition}\\
+\midrule
+Term1 & Definition1\\
+Term2 & Definition2\\
+\bottomrule
+\end{tabularx}
+
+\end{table}	
+
+\subsection{Overview of Document}
+
+\section{Plan}
+	
+\subsection{Software Description}
+
+\subsection{Test Team}
+
+\subsection{Automated Testing Approach}
+
+\subsection{Testing Tools}
+
+\subsection{Testing Schedule}
+		
+See Gantt Chart at the following url ...
+
+\section{System Test Description}
+	
+\subsection{Tests for Functional Requirements}
+
+\subsubsection{Area of Testing1}
+		
+\paragraph{Title for Test}
+
+\begin{enumerate}
+
+\item{test-id1\\}
+
+Type: Functional, Dynamic, Manual, Static etc.
+					
+Initial State: 
+					
+Input: 
+					
+Output: 
+					
+How test will be performed: 
+					
+\item{test-id2\\}
+
+Type: Functional, Dynamic, Manual, Static etc.
+					
+Initial State: 
+					
+Input: 
+					
+Output: 
+					
+How test will be performed: 
+
+\end{enumerate}
+
+\subsubsection{Area of Testing2}
+
+...
+
+\subsection{Tests for Nonfunctional Requirements}
+
+\subsubsection{Area of Testing1}
+		
+\paragraph{Title for Test}
+
+\begin{enumerate}
+
+\item{test-id1\\}
+
+Type: 
+					
+Initial State: 
+					
+Input/Condition: 
+					
+Output/Result: 
+					
+How test will be performed: 
+					
+\item{test-id2\\}
+
+Type: Functional, Dynamic, Manual, Static etc.
+					
+Initial State: 
+					
+Input: 
+					
+Output: 
+					
+How test will be performed: 
+
+\end{enumerate}
+
+\subsubsection{Area of Testing2}
+
+...
+
+\subsection{Traceability Between Test Cases and Requirements}
+
+\section{Tests for Proof of Concept}
+
+\subsection{Area of Testing1}
+		
+\paragraph{Title for Test}
+
+\begin{enumerate}
+
+\item{test-id1\\}
+
+Type: Functional, Dynamic, Manual, Static etc.
+					
+Initial State: 
+					
+Input: 
+					
+Output: 
+					
+How test will be performed: 
+					
+\item{test-id2\\}
+
+Type: Functional, Dynamic, Manual, Static etc.
+					
+Initial State: 
+					
+Input: 
+					
+Output: 
+					
+How test will be performed: 
+
+\end{enumerate}
+
+\subsection{Area of Testing2}
+
+...
+
+	
+\section{Comparison to Existing Implementation}	
+				
+\section{Unit Testing Plan}
+		
+\subsection{Unit testing of internal functions}
+		
+\subsection{Unit testing of output files}		
+
+\bibliographystyle{plainnat}
+
+\bibliography{SRS}
+
+\newpage
+
+\section{Appendix}
+
+This is where you can place additional information.
+
+\subsection{Symbolic Parameters}
+
+The definition of the test cases will call for SYMBOLIC\_CONSTANTS.
+Their values are defined in this section for easy maintenance.
+
+\subsection{Usability Survey Questions?}
+
+This is a section that would be appropriate for some teams.
+
+\end{document}
\ No newline at end of file
diff --git a/BlankProjectTemplate/Doc/TestReport/README.md b/BlankProjectTemplate/Doc/TestReport/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..f80df951360db6b6b3037ae0ecce4b546e9a64c4
--- /dev/null
+++ b/BlankProjectTemplate/Doc/TestReport/README.md
@@ -0,0 +1,5 @@
+# Test Report
+
+The folders and files for this folder are as follows:
+
+Describe ...
diff --git a/BlankProjectTemplate/Doc/TestReport/TestReport.pdf b/BlankProjectTemplate/Doc/TestReport/TestReport.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..8b9bc92a3b84a7eaac4f3eee84146a37ff2a16c3
Binary files /dev/null and b/BlankProjectTemplate/Doc/TestReport/TestReport.pdf differ
diff --git a/BlankProjectTemplate/Doc/TestReport/TestReport.tex b/BlankProjectTemplate/Doc/TestReport/TestReport.tex
new file mode 100644
index 0000000000000000000000000000000000000000..9b5f1f7d7e45d4347d710d0842586634758d1fab
--- /dev/null
+++ b/BlankProjectTemplate/Doc/TestReport/TestReport.tex
@@ -0,0 +1,83 @@
+\documentclass[12pt, titlepage]{article}
+
+\usepackage{booktabs}
+\usepackage{tabularx}
+\usepackage{hyperref}
+\hypersetup{
+    colorlinks,
+    citecolor=black,
+    filecolor=black,
+    linkcolor=red,
+    urlcolor=blue
+}
+\usepackage[round]{natbib}
+
+\title{SE 3XA3: Test Report\\Title of Project}
+
+\author{Team \#, Team Name
+		\\ Student 1 name and macid
+		\\ Student 2 name and macid
+		\\ Student 3 name and macid
+}
+
+\date{\today}
+
+\input{../Comments}
+
+\begin{document}
+
+\maketitle
+
+\pagenumbering{roman}
+\tableofcontents
+\listoftables
+\listoffigures
+
+\begin{table}[bp]
+\caption{\bf Revision History}
+\begin{tabularx}{\textwidth}{p{3cm}p{2cm}X}
+\toprule {\bf Date} & {\bf Version} & {\bf Notes}\\
+\midrule
+Date 1 & 1.0 & Notes\\
+Date 2 & 1.1 & Notes\\
+\bottomrule
+\end{tabularx}
+\end{table}
+
+\newpage
+
+\pagenumbering{arabic}
+
+This document ...
+
+\section{Functional Requirements Evaluation}
+
+\section{Nonfunctional Requirements Evaluation}
+
+\subsection{Usability}
+		
+\subsection{Performance}
+
+\subsection{etc.}
+	
+\section{Comparison to Existing Implementation}	
+
+This section will not be appropriate for every project.
+
+\section{Unit Testing}
+
+\section{Changes Due to Testing}
+
+\section{Automated Testing}
+		
+\section{Trace to Requirements}
+		
+\section{Trace to Modules}		
+
+\section{Code Coverage Metrics}
+
+\bibliographystyle{plainnat}
+
+\bibliography{SRS}
+
+\end{document}
\ No newline at end of file
diff --git a/BlankProjectTemplate/Doc/UserGuide/README.md b/BlankProjectTemplate/Doc/UserGuide/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..276087e7226577170d7cd4a53fed39a27defb9b8
--- /dev/null
+++ b/BlankProjectTemplate/Doc/UserGuide/README.md
@@ -0,0 +1,5 @@
+# User Guide (Optional)
+
+The folders and files for this folder are as follows:
+
+Describe ...
diff --git a/BlankProjectTemplate/LICENSE.txt b/BlankProjectTemplate/LICENSE.txt
new file mode 100644
index 0000000000000000000000000000000000000000..87df9ff3a2909bc9b60cd93c3931acfc2ab2e0bd
--- /dev/null
+++ b/BlankProjectTemplate/LICENSE.txt
@@ -0,0 +1 @@
+LICENSE Information
\ No newline at end of file
diff --git a/BlankProjectTemplate/ProjectSchedule/3X_Example.gan b/BlankProjectTemplate/ProjectSchedule/3X_Example.gan
new file mode 100644
index 0000000000000000000000000000000000000000..bcdff549f3f40b0386230b3f866acef67e8c2ddb
--- /dev/null
+++ b/BlankProjectTemplate/ProjectSchedule/3X_Example.gan
@@ -0,0 +1,113 @@
+<?xml version="1.0" encoding="UTF-8"?><project name="PCM" company="McMaster, CAS Department" webLink="" view-date="2015-11-03" view-index="1" gantt-divider-location="354" resource-divider-location="300" version="2.7.1" locale="en_US">
+    <description><![CDATA[Simulation of temperature over time for a solar water heating tank incorporating phase change material (PCM).]]></description>
+    <view zooming-state="default:2" id="gantt-chart">
+        <field id="tpd3" name="Name" width="57" order="0"/>
+        <field id="tpd4" name="Begin date" width="21" order="1"/>
+        <field id="tpd5" name="End date" width="21" order="2"/>
+    </view>
+    <view id="resource-table">
+        <field id="0" name="Name" width="52" order="0"/>
+        <field id="1" name="Default role" width="47" order="1"/>
+    </view>
+    <!-- -->
+    <calendars>
+        <day-types>
+            <day-type id="0"/>
+            <day-type id="1"/>
+            <default-week id="1" name="default" sun="0" mon="0" tue="0" wed="0" thu="0" fri="0" sat="0"/>
+            <only-show-weekends value="false"/>
+            <overriden-day-types/>
+            <days/>
+        </day-types>
+    </calendars>
+    <tasks empty-milestones="true">
+        <taskproperties>
+            <taskproperty id="tpd0" name="type" type="default" valuetype="icon"/>
+            <taskproperty id="tpd1" name="priority" type="default" valuetype="icon"/>
+            <taskproperty id="tpd2" name="info" type="default" valuetype="icon"/>
+            <taskproperty id="tpd3" name="name" type="default" valuetype="text"/>
+            <taskproperty id="tpd4" name="begindate" type="default" valuetype="date"/>
+            <taskproperty id="tpd5" name="enddate" type="default" valuetype="date"/>
+            <taskproperty id="tpd6" name="duration" type="default" valuetype="int"/>
+            <taskproperty id="tpd7" name="completion" type="default" valuetype="int"/>
+            <taskproperty id="tpd8" name="coordinator" type="default" valuetype="text"/>
+            <taskproperty id="tpd9" name="predecessorsr" type="default" valuetype="text"/>
+        </taskproperties>
+        <task id="0" name="Write Design Doc" color="#8cb6ce" meeting="false" start="2015-11-03" duration="4" complete="0" expand="true" cost-manual-value="20.0" cost-calculated="false">
+            <task id="29" name="MG" color="#8cb6ce" meeting="false" start="2015-11-03" duration="2" complete="0" expand="true">
+                <depend id="31" type="2" difference="0" hardness="Strong"/>
+            </task>
+            <task id="31" name="MIS" color="#8cb6ce" meeting="false" start="2015-11-05" duration="2" complete="0" expand="true">
+                <depend id="44" type="2" difference="0" hardness="Strong"/>
+            </task>
+            <task id="32" name="Schedule" color="#8cb6ce" meeting="false" start="2015-11-03" duration="4" complete="0" expand="true"/>
+        </task>
+        <task id="2" name="Design Doc Due" color="#8cb6ce" meeting="true" start="2015-11-06" duration="0" complete="0" expand="true"/>
+        <task id="44" name="Implementation" color="#8cb6ce" meeting="false" start="2015-11-07" duration="5" complete="0" expand="true">
+            <task id="20" name="Input Hiding Module" color="#8cb6ce" meeting="false" start="2015-11-07" duration="5" complete="0" expand="true"/>
+            <task id="49" name="Input Parameter Module" color="#8cb6ce" meeting="false" start="2015-11-07" duration="5" complete="0" expand="true"/>
+            <task id="51" name="Output Format Module" color="#8cb6ce" meeting="false" start="2015-11-07" duration="5" complete="0" expand="true"/>
+            <task id="53" name="Temperature ODEs Module" meeting="false" start="2015-11-07" duration="5" complete="0" expand="true"/>
+            <task id="55" name="Energy Equations Module" meeting="false" start="2015-11-07" duration="5" complete="0" expand="true"/>
+            <task id="57" name="Control Module" meeting="false" start="2015-11-07" duration="5" complete="0" expand="true"/>
+        </task>
+        <task id="61" name="Unit Testing" color="#8cb6ce" meeting="false" start="2015-11-12" duration="4" complete="0" expand="true">
+            <task id="62" name="Input Hiding Module" color="#8cb6ce" meeting="false" start="2015-11-12" duration="4" complete="0" expand="true"/>
+            <task id="63" name="Input Parameter Module" meeting="false" start="2015-11-12" duration="4" complete="0" expand="true"/>
+            <task id="64" name="Output Format Module" meeting="false" start="2015-11-12" duration="4" complete="0" expand="true"/>
+            <task id="65" name="Temperature ODEs Module" meeting="false" start="2015-11-12" duration="4" complete="0" expand="true"/>
+            <task id="66" name="Energy Equations Module" meeting="false" start="2015-11-12" duration="4" complete="0" expand="true"/>
+        </task>
+        <task id="68" name="System Testing" color="#8cb6ce" meeting="false" start="2015-11-15" duration="3" complete="0" expand="true"/>
+        <task id="21" name="Rev 0 Demo" color="#8cb6ce" meeting="true" start="2015-11-18" duration="0" complete="0" expand="true"/>
+        <task id="69" name="Revise SRS" color="#8cb6ce" meeting="false" start="2015-11-19" duration="2" complete="0" expand="true"/>
+        <task id="83" name="Revise Test Plan" color="#8cb6ce" meeting="false" start="2015-11-19" duration="2" complete="0" expand="true"/>
+        <task id="70" name="Revise MG" color="#8cb6ce" meeting="false" start="2015-11-20" duration="2" complete="0" expand="true"/>
+        <task id="71" name="Revise MIS" color="#8cb6ce" meeting="false" start="2015-11-20" duration="2" complete="0" expand="true"/>
+        <task id="72" name="Revise Implementation" color="#8cb6ce" meeting="false" start="2015-11-20" duration="2" complete="0" expand="true"/>
+        <task id="73" name="Testing" color="#8cb6ce" meeting="false" start="2015-11-19" duration="8" complete="0" expand="true"/>
+        <task id="74" name="Usability Test" color="#8cb6ce" meeting="false" start="2015-11-23" duration="3" complete="0" expand="true"/>
+        <task id="6" name="Test Report Due" color="#8cb6ce" meeting="true" start="2015-11-27" duration="0" complete="0" expand="true"/>
+        <task id="98" name="Prepare Final Demo" color="#8cb6ce" meeting="false" start="2015-11-28" duration="4" complete="0" expand="true"/>
+        <task id="8" name="Final Demo" color="#8cb6ce" meeting="true" start="2015-12-01" duration="0" complete="0" expand="true"/>
+        <task id="100" name="Revise Existing Documentation" color="#8cb6ce" meeting="false" start="2015-12-02" duration="7" complete="0" expand="true"/>
+        <task id="10" name="Final Doc Due" color="#8cb6ce" meeting="true" start="2015-12-08" duration="0" complete="0" expand="true"/>
+        <task id="76" name="New Requirements" color="#8cb6ce" meeting="false" start="2015-12-09" duration="3" complete="0" expand="true"/>
+        <task id="77" name="Second Usability Test" color="#8cb6ce" meeting="false" start="2015-12-14" duration="5" complete="0" expand="true"/>
+    </tasks>
+    <resources>
+        <resource id="0" name="Student 1" function="Default:0" contacts="" phone=""/>
+        <resource id="1" name="Student 2" function="Default:0" contacts="" phone=""/>
+        <resource id="2" name="Student 3" function="Default:0" contacts="" phone=""/>
+    </resources>
+    <allocations>
+        <allocation task-id="31" resource-id="0" function="Default:0" responsible="true" load="90.0"/>
+        <allocation task-id="29" resource-id="0" function="Default:0" responsible="true" load="90.0"/>
+        <allocation task-id="32" resource-id="0" function="Default:0" responsible="true" load="10.0"/>
+        <allocation task-id="29" resource-id="1" function="Default:0" responsible="false" load="50.0"/>
+        <allocation task-id="31" resource-id="1" function="Default:0" responsible="false" load="50.0"/>
+        <allocation task-id="32" resource-id="1" function="Default:0" responsible="false" load="50.0"/>
+        <allocation task-id="29" resource-id="2" function="Default:0" responsible="false" load="50.0"/>
+        <allocation task-id="31" resource-id="2" function="Default:0" responsible="false" load="50.0"/>
+        <allocation task-id="32" resource-id="2" function="Default:0" responsible="false" load="50.0"/>
+    </allocations>
+    <vacations/>
+    <taskdisplaycolumns>
+        <displaycolumn property-id="tpd2" order="-1" width="75" visible="false"/>
+        <displaycolumn property-id="tpd6" order="-1" width="75" visible="false"/>
+        <displaycolumn property-id="tpd3" order="0" width="190" visible="true"/>
+        <displaycolumn property-id="tpd4" order="1" width="72" visible="true"/>
+        <displaycolumn property-id="tpd7" order="-1" width="75" visible="false"/>
+        <displaycolumn property-id="tpd8" order="-1" width="75" visible="false"/>
+        <displaycolumn property-id="tpd12" order="-1" width="75" visible="false"/>
+        <displaycolumn property-id="tpd5" order="2" width="71" visible="true"/>
+        <displaycolumn property-id="tpd10" order="-1" width="75" visible="false"/>
+        <displaycolumn property-id="tpd11" order="-1" width="75" visible="false"/>
+        <displaycolumn property-id="tpd9" order="-1" width="75" visible="false"/>
+        <displaycolumn property-id="tpd1" order="-1" width="75" visible="false"/>
+        <displaycolumn property-id="tpd13" order="-1" width="75" visible="false"/>
+        <displaycolumn property-id="tpd0" order="-1" width="75" visible="false"/>
+    </taskdisplaycolumns>
+    <previous/>
+    <roles roleset-name="Default"/>
+</project>
diff --git a/BlankProjectTemplate/ProjectSchedule/README.md b/BlankProjectTemplate/ProjectSchedule/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..ca9b1921983ac459e3592a567411ee661b1ee492
--- /dev/null
+++ b/BlankProjectTemplate/ProjectSchedule/README.md
@@ -0,0 +1,3 @@
+# Project Name
+
+This folder contains the project schedule Gantt Chart.
\ No newline at end of file
diff --git a/BlankProjectTemplate/README.md b/BlankProjectTemplate/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..d5e659e049d588557103a7cf9dc736fb7a2ac491
--- /dev/null
+++ b/BlankProjectTemplate/README.md
@@ -0,0 +1,13 @@
+# Project Name
+
+Team Name: ?
+
+Team Members: ?, ?, ?
+
+
+This project is a reimplementation of ...
+
+The folders and files for this project are as follows:
+
+Doc - Documentation for the project
+Code - Implementation
diff --git a/BlankProjectTemplate/ReferenceMaterial/README.md b/BlankProjectTemplate/ReferenceMaterial/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..0a1eecaefa3ffc0d5c55fb84ca1900a9bc256c1f
--- /dev/null
+++ b/BlankProjectTemplate/ReferenceMaterial/README.md
@@ -0,0 +1,5 @@
+# Project Name
+
+This folder holds information and resources of interest for the project.  This
+is intended to be a convenient location for project members to access
+support material for the project.
diff --git a/BlankProjectTemplate/src/README.md b/BlankProjectTemplate/src/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..50aa3a2cf915773d339d82a8ecb43cd5a44f062c
--- /dev/null
+++ b/BlankProjectTemplate/src/README.md
@@ -0,0 +1,5 @@
+# Project Name Source Code
+
+The folders and files for this project are as follows:
+
+...