diff --git a/CourseOutline/CAS741_Outline.tex b/CourseOutline/CAS741_Outline.tex index f1b0af74c47488a32bae2902906c000a78cd74c2..3bf68a55f4e095bc46af5470f082f43952eb2c86 100755 --- a/CourseOutline/CAS741_Outline.tex +++ b/CourseOutline/CAS741_Outline.tex @@ -274,10 +274,9 @@ select topics with varying levels of complexity in the required domain knowledge and possibly in the implementation. If a project requires graduate-level domain knowledge, it is classified as a ``research'' project. For projects that are not ``research'' projects, an extra task required. Examples of extra tasks -include usability testing, rigorous code walkthroughs, user manual -documentation, formal proof, etc. If a research project does extra work, the -extra work is graded as a bonus. The extra task is evaluated as part of the -final documentation. +include usability testing, rigorous code walkthroughs, user manual, formal +proof, etc. If a research project does extra work, the extra work is graded as +a bonus. The extra task is evaluated as part of the final documentation. \section {Policy Statements} diff --git a/Lectures/Deadlines.tex b/Lectures/Deadlines.tex index 2d509b27e19da432cac45594b94785e4c00bde63..dd98c2fdfa53c492b322de1b64ef415df4c1e6e8 100644 --- a/Lectures/Deadlines.tex +++ b/Lectures/Deadlines.tex @@ -4,12 +4,12 @@ \frametitle{Administrative Details: Report Deadlines} ~\newline \begin{tabular}{l l l} -%\textbf{Problem Statement} & Week 02 & Jan 19\\ -%\textbf{System Req.\ Spec.\ (SRS)} & Week 04 & Feb 2\\ -%\textbf{System VnV Plan} & Week 06 & Feb 16\\ -%\textbf{MG + MIS} & Week 09 & Mar 15\\ -%{Drasil Code} & Week 09 & Mar 15\\ -{Final Documentation} & Week 13 & Apr 12\\ +\textbf{Problem Statement} & Week 02 & Jan ?19?\\ +\textbf{System Req.\ Spec.\ (SRS)} & Week 04 & ?Feb 2?\\ +\textbf{System VnV Plan} & Week 06 & Feb ?16?\\ +\textbf{MG + MIS} & Week 09 & Mar ?15?\\ +{Drasil Code} & Week 09 & Mar ?15?\\ +{Final Documentation} & Week 13 & Apr ?12?\\ \end {tabular} \bi @@ -32,12 +32,12 @@ traditional SRS ~\newline \begin{tabular}{l l l} -%\textbf{SRS} & Week 03/04 & \textbf{Week of Jan 23, 30}\\ -%\textbf{Syst.\ VnV} & Week 06 & Week of Feb 12\\ -%\textbf{POC Demo} & Week 07 & Week of Feb 26\\ -%\textbf{MG + MIS} & Week 09 & Week of Mar 11\\ -%Drasil & Week 11 & Week of Mar 27\\ -Unit VnV/Implement & Week 12 & Week of Apr 3\\ +\textbf{SRS} & Week 03/04 & \textbf{Week of Jan 23, 30}?\\ +\textbf{Syst.\ VnV} & Week 06 & Week of Feb 12?\\ +\textbf{POC Demo} & Week 07 & Week of Feb 26?\\ +\textbf{MG + MIS} & Week 09 & Week of Mar 11?\\ +Drasil & Week 11 & Week of Mar 27?\\ +Unit VnV/Implement & Week 12 & Week of Apr 3?\\ \end {tabular} \bi @@ -97,9 +97,9 @@ take it personally \item Implementation Present (15 min each) \bi %\item \textbf{Mar 26: Reyhaneh, Waqar, Al, Tanya, Atiyeh} -\item \textbf{Apr 2: Phil, Xinyu, Fasil, Yi-Leng} -\item \textbf{Apr 5: Gaofeng, Morteza, Valerie, Hunter, Ali} -\item \textbf{Apr 9: Cynthia, Adrian, Yiding, Kim Ying, Nada} +% \item \textbf{Apr 2: Phil, Xinyu, Fasil, Yi-Leng} +% \item \textbf{Apr 5: Gaofeng, Morteza, Valerie, Hunter, Ali} +% \item \textbf{Apr 9: Cynthia, Adrian, Yiding, Kim Ying, Nada} \ei \ei diff --git a/Lectures/L01_IntroToCourse/IntroToCourse.pdf b/Lectures/L01_IntroToCourse/IntroToCourse.pdf index 80c5a9560dc5959fdcd9881a58b6ca442b628c09..d231262d1f2ec188f1667a02f832ffc4953ab86b 100644 Binary files a/Lectures/L01_IntroToCourse/IntroToCourse.pdf and b/Lectures/L01_IntroToCourse/IntroToCourse.pdf differ diff --git a/Lectures/L01_IntroToCourse/IntroToCourse.tex b/Lectures/L01_IntroToCourse/IntroToCourse.tex index dcc33f1cdc237c0b5cb6a0af82a67513e97cae8f..7aac292da83b6a4fd69ce7a75726c8fb1e74c706 100755 --- a/Lectures/L01_IntroToCourse/IntroToCourse.tex +++ b/Lectures/L01_IntroToCourse/IntroToCourse.tex @@ -51,7 +51,7 @@ \item Brief course overview \item Instructor introduction \item Course outline -\item Student background +\item Student background/questions \ei \end{frame} @@ -64,10 +64,10 @@ % \item New Grad Stdnt Orientation: Mon, Sept 9, 10 am -- 1 pm %may % %cancel our class -\item Lectures: Tues (2:30 -- 4:00) and Fri (1:30 -- 3:00) +\item Lectures: Tues (2:00 -- 3:30) and Fri (2:00 -- 3:30) \item Avenue for grade tracking (\url{http://avenue.mcmaster.ca/}) \begin{itemize} -\item Please put a picture on your profile +%\item Please put a picture on your profile \item Click arrow beside Announcements, select Notifications \end{itemize} \item Teams @@ -114,6 +114,10 @@ credit and details on your queries \item Application of software engineering methodologies to improve the quality of scientific computing (or research) software +\item Not a course on numerical algorithms or coding +\item An emphasis on documentation +\item Qualities of interest include maintainability, reusability, understandability, verifiability +\item Performance is less emphasized \end{itemize} @@ -181,6 +185,7 @@ credit and details on your queries \begin{itemize} \item \structure{What is the definition of software engineering?} +\item \structure{Why do we need software engineering?} \item \structure{What are some techniques, tools and principles for software engineering?} @@ -506,6 +511,9 @@ Analysis} \item \href{https://github.com/icbicket/SpectrumImageAnalysisPy} {Spectrum Image Analysis} \item \href{https://gitlab.cas.mcmaster.ca/smiths/cas741/-/tree/master/Examples/SoilWaterStructureInteraction} {Soil-Water-Structure Interaction (FEM)} \item \href{https://github.com/palmerst/cas741_sp} {Chemical Speciation} +\item \href{https://github.com/adrian-soch/attitude_check} {IMU-based Attitude Estimation (2024)} +\item \href{https://github.com/CynthiaLiu0805/BridgeCorrosion} {Bridge Corrosion (2024)} +\item \href{https://github.com/omltcat/turbulent-flow} {Synthetic Eddy (2024)} \item \href{https://gitlab.cas.mcmaster.ca/smiths/cas741/-/tree/master/Examples?ref_type=heads} {Examples folder} \end{itemize} \end{frame} @@ -611,18 +619,18 @@ Not all docs necessary \item (Traditional and Drasil) Presentations and class discussion 5\% -\item (Traditional and Drasil) ``Domain Expert'' and secondary reviewer roles 10\% +\item (Traditional and Drasil) ``Domain Expert'' reviewer role 5\% \item (Traditional and Drasil) Problem Statement, Risk, Proof of Concept (POC) Plan 0\% -\item (Traditional and Drasil) System Requirements Specification (SRS) 15\% +\item (Traditional and Drasil) System Requirements Specification (SRS) 10\% -\item (Traditional and Drasil) System Verification and Validation (VnV-Syst) Plan 15\% +\item (Traditional and Drasil) System Verification and Validation (VnV-Syst) Plan 10\% \item (Traditional) Module Guide and Module Interface Specification (MG and MIS) - 15\% + 10\% -\item (Drasil) Drasil code and Code Explanation Document 15\% +\item (Drasil) Drasil code and Code Explanation Document 10\% \end {itemize} @@ -637,7 +645,7 @@ Not all docs necessary \item (Traditional and Drasil) Final Documentation (including revised versions of previous documents, plus the source code, unit testing plan, reflection - report and testing reports (System and Unit)) 40\% + report and testing reports (System and Unit), extra task) 60\% \item Addition to Drasil infrastructure, pull request accepted (up to) 50\% (Bonus) @@ -654,27 +662,23 @@ All projects are expected %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{frame} -\frametitle{Challenge Level and Extras} +\frametitle{Challenge Level and Extra Task} \begin {itemize} -\item Projects have a challenge level of advanced or general -\item The basic category is not allowed for projects -\item The challenge comes from +\item Projects may be designed as ``research'' projects +\item Research projects involve \begin{itemize} - \item Domain knowledge - \item Implementation challenges - \item Other sources + \item graduate-level domain knowledge + \item a graduate-level implementation challenge \end{itemize} -\item For full grades a general challenge level requires Extras +\item non-research projects require an extra task, selected from: \begin{itemize} \item Usability testing + \item User manual \item Rigorous code walkthroughs - \item User documentation \item Formal proof - \item GenderMag personas - \item Design thinking - \item Etc. + \item Other (approved by instructor) \end{itemize} \item Extras can be used as bonus grades for advanced projects \end {itemize} @@ -683,36 +687,36 @@ All projects are expected %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\begin{frame} -\frametitle{Advanced Versus General} - -\begin {itemize} - -\item Advanced -\begin{itemize} - \item Novel - \item Senior undergrad level or graduate level domain knowledge or implementation - \item Large project scope - \item Limited use of external libraries - \item \href{https://github.com/omltcat/turbulent-flow} {Artificial turbulence - boundary conditions} -\end{itemize} -\item General -\begin{itemize} - \item Not particularly novel - \item Senior highschool level or junior undergraduate level domain knowledge or implementation - \item Limited project scope - \item Heavy use of external libraries - \item \href{https://github.com/WaqarAwan376/Damped_Harmonic_Oscillator-CAS741} - {Damped harmonic oscillator} -\end{itemize} -\item CL and extras in prob.\ state.\ and \texttt{Repos.csv} -\item Most projects will be General -\end {itemize} - -\end{frame} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \begin{frame} +% \frametitle{Advanced Versus General} + +% \begin {itemize} + +% \item Advanced +% \begin{itemize} +% \item Novel +% \item Senior undergrad level or graduate level domain knowledge or implementation +% \item Large project scope +% \item Limited use of external libraries +% \item \href{https://github.com/omltcat/turbulent-flow} {Artificial turbulence +% boundary conditions} +% \end{itemize} +% \item General +% \begin{itemize} +% \item Not particularly novel +% \item Senior highschool level or junior undergraduate level domain knowledge or implementation +% \item Limited project scope +% \item Heavy use of external libraries +% \item \href{https://github.com/WaqarAwan376/Damped_Harmonic_Oscillator-CAS741} +% {Damped harmonic oscillator} +% \end{itemize} +% \item CL and extras in prob.\ state.\ and \texttt{Repos.csv} +% \item Most projects will be General +% \end {itemize} + +% \end{frame} + +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{frame} \frametitle{Libraries} @@ -794,7 +798,7 @@ Probably best to use the same order when doing your requirements presentation %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{frame} -\frametitle{Student Background} %show of hands +\frametitle{Student Background} %show of hands, volunteers \begin{itemize} \item Your name @@ -816,6 +820,7 @@ Probably best to use the same order when doing your requirements presentation \item Your preferred OS \end{itemize} \item What do you hope to get out of this course? +\item Who has some potential project ideas? \end{itemize} \end{frame} diff --git a/Lectures/titlepage.tex b/Lectures/titlepage.tex index e82b102e09a32e14ad67ba0d9b38d9ba867dd54d..5b688568b3c879ad98ea9a8765b20077174853f1 100644 --- a/Lectures/titlepage.tex +++ b/Lectures/titlepage.tex @@ -5,7 +5,7 @@ \newcommand{\season}{Winter} %use to switch between Winter and Fall \newcommand{\instructor}{Dr.~Spencer Smith} %use to switch instructor \newcommand{\instructSmall}{Dr.~Smith} -\newcommand{\yr}{2024} +\newcommand{\yr}{2025} \newcommand{\courseCode}{CAS 741} \newcommand{\courseTitle}{Development of Scientific Computing Software}