From f88318f9cd2c9a34cdff98c6691dc679f67b3727 Mon Sep 17 00:00:00 2001 From: "W. Spencer Smith" <smiths@mcmaster.ca> Date: Thu, 27 Jul 2017 16:50:12 -0400 Subject: [PATCH] Addition of course outline. --- CourseOutline/CAS741Description.txt | 19 ++ CourseOutline/CAS741_Outline.pdf | Bin 0 -> 79172 bytes CourseOutline/CAS741_Outline.tex | 266 ++++++++++++++++++++++++++++ README.md | 2 +- 4 files changed, 286 insertions(+), 1 deletion(-) create mode 100644 CourseOutline/CAS741Description.txt create mode 100644 CourseOutline/CAS741_Outline.pdf create mode 100755 CourseOutline/CAS741_Outline.tex diff --git a/CourseOutline/CAS741Description.txt b/CourseOutline/CAS741Description.txt new file mode 100644 index 0000000..e621422 --- /dev/null +++ b/CourseOutline/CAS741Description.txt @@ -0,0 +1,19 @@ +CAS 741/CSE 741 Development of Scientific Software + +Overview + +This course presents the basic principles of software development for reliable scientific and engineering software. Using example applications, a systematic process is given for the development and documentation of requirements, system design, module design, implementation, testing and inspection. + +Description + +Scientific computation consists of using computer tools to simulate mathematical models of real world systems so that we can better understand and predict the system's behaviour. A small sample of some important applications of scientific computation include the following: designing new automotive parts, analysing the flow of blood in the body, and determining the concentration of a pollutant released into the groundwater. As these examples illustrate, scientific computation can be used for tackling problems that impact such areas as manufacturing, financial planning, environmental policy, and the health, welfare and safety of communities. Given the important applications of scientific computation, it is surprising that little emphasis is currently placed on the quality of the software that performs the computations. Although many successful and sophisticated algorithms have been developed for scientific computing, the software often suffers from problems with such qualities as reliability, usability, verifiability, maintainability, reusability and portability. This is why scientific software is routinely sold with a disclaimer instead of a warranty. To make matters worse, the quality of scientific software is becoming increasingly more of an issue because the complexity and size of the problems that can be simulated on modern computers is constantly growing. The question for the future is how to meet the growing need for providing quick solutions to large and complex problems, and at the same time ensure that the solutions are correct? This graduate course will investigate this question by applying to scientific computing problems such software engineering methodologies as commonality analysis, requirements analysis and documentation, modular decomposition, module interface specification, testing, code and document generation and assurance cases. + +The course will look at tools, techniques and principles for iterative and incremental development of scientific and engineering software. Despite the iterative development cycle, the documentation will follow 5 rational steps: i) identify the problem, ii) document the requirements, iii) design the system, iv) implement the software, and v) perform tests. This structure is well suited to scientific computing because it parallels the idealized scientific method, as follows: i) a physical problem of engineering or scientific importance is identified; ii) a system of governing equations and the associated boundary conditions are derived; iii) a numerical algorithms are developed; iv) the numerical algorithms are implemented on a computer; and, v) the model and the computed results are verified and validated, with the potential to return to one of the previous steps if necessary. These five steps are inherently multidisciplinary as they involve skills from physical modelling, mathematics, numerical analysis and computer science. For this reason it is important that requirements (including assumptions) and design decisions are clearly documented. + +Delivery + +The course will be taught as a series of lectures and group discussions. An important component of the course grade will be individual projects to design and develop software for solving a scientific computing problem. + +Prerequisites + +An interest in scientific computing is important, but no knowledge of numerical methods beyond what is typically covered in an undergraduate degree will be assumed. The projects will be selected to match the students background knowledge and interests. \ No newline at end of file diff --git a/CourseOutline/CAS741_Outline.pdf b/CourseOutline/CAS741_Outline.pdf new file mode 100644 index 0000000000000000000000000000000000000000..de42339cf4ca1d99c6c9fcad82a477a6cc390e67 GIT binary patch literal 79172 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 literal 0 HcmV?d00001 diff --git a/CourseOutline/CAS741_Outline.tex b/CourseOutline/CAS741_Outline.tex new file mode 100755 index 0000000..1b01356 --- /dev/null +++ b/CourseOutline/CAS741_Outline.tex @@ -0,0 +1,266 @@ +\documentclass[12pt]{article} + +\usepackage{hyperref} + +\hypersetup{ + bookmarks=true, % show bookmarks bar? + colorlinks=true, % false: boxed links; true: colored links + linkcolor=red, % color of internal links (change box color with linkbordercolor) + citecolor=green, % color of links to bibliography + filecolor=magenta, % color of file links + urlcolor=cyan % color of external links +} + +\oddsidemargin 0mm +\evensidemargin 0mm +\textwidth 165mm +\textheight 205mm + +\title{Computing and Software 741 (Computational Engineering and Science 741) + Development of Scientific Computing Software} +%\author{Spencer Smith} + +\pagestyle {plain} +\pagenumbering {arabic} + +\newcommand{\be}{\begin{enumerate}} +\newcommand{\ee}{\end{enumerate}} +\newcommand{\bi}{\begin{itemize}} +\newcommand{\ei}{\end{itemize}} + +% enumi counter is redefined for the purpose of numbering the deliverables +\renewcommand{\labelenumi}{\arabic{enumi}.} +\newcounter{temp} + +\begin {document} + +\maketitle + +This course outline contains important information that will effect your +grade. You should retain and refer to this outline throughout the term. + +\section {Instructor} + +Dr.~Spencer Smith\\ +Office: ITB/167\\ +E-mail: \texttt{smiths@mcmaster.ca}\\ +Web: \url{http://www.cas.mcmaster.ca/~smiths}\\ +Office Hours Term 1: Drop in, or by appointment\\ + +\section{Calendar Description} + +This course presents the basic principles of software development for reliable +scientific and engineering software. Using example applications, a systematic +process is given for the development and documentation of requirements, system +design, module design, implementation, testing and inspection. + +\section{Introduction} + +Scientific computation consists of using computer tools to simulate mathematical +models of real world systems so that we can better understand and predict the +system's behaviour. A small sample of some important applications of scientific +computation include the following: designing new automotive parts, analysing the +flow of blood in the body, and determining the concentration of a pollutant +released into the groundwater. As these examples illustrate, scientific +computation can be used for tackling problems that impact such areas as +manufacturing, financial planning, environmental policy, and the health, welfare +and safety of communities. Given the important applications of scientific +computation, it is surprising that little emphasis is currently placed on the +quality of the software that performs the computations. Although many +successful and sophisticated algorithms have been developed for scientific +computing, the software often suffers from problems with such qualities as +reliability, usability, verifiability, maintainability, reusability and +portability. This is why scientific software is routinely sold with a +disclaimer instead of a warranty. To make matters worse, the quality of +scientific software is becoming increasingly more of an issue because the +complexity and size of the problems that can be simulated on modern computers is +constantly growing. The question for the future is how to meet the growing need +for providing quick solutions to large and complex problems, and at the same +time ensure that the solutions are correct? This graduate course will +investigate this question by applying to scientific computing problems such +software engineering methodologies as commonality analysis, requirements +analysis and documentation, modular decomposition, module interface +specification, testing, code and document generation and assurance cases. + +The course will look at tools, techniques and principles for iterative and +incremental development of scientific and engineering software. Despite the +iterative development cycle, the documentation will follow 5 rational steps: i) +identify the problem, ii) document the requirements, iii) design the system, iv) +implement the software, and v) perform tests. This structure is well suited to +scientific computing because it parallels the idealized scientific method, as +follows: i) a physical problem of engineering or scientific importance is +identified; ii) a system of governing equations and the associated boundary +conditions are derived; iii) a numerical algorithms are developed; iv) the +numerical algorithms are implemented on a computer; and, v) the model and the +computed results are verified and validated, with the potential to return to one +of the previous steps if necessary. These five steps are inherently +multidisciplinary as they involve skills from physical modelling, mathematics, +numerical analysis and computer science. For this reason it is important that +requirements (including assumptions) and design decisions are clearly +documented. + +\subsection*{Course Web Site} + +This course will be administered via Avenue to Learn. Go to + +\bi + + \item[] \url{http://avenue.mcmaster.ca/} + +\ei + +\noindent to access the course's Avenue to Learn page. Please send only normal +McMaster e-mail; do not send mail via Avenue. + +Students should be aware that, when they access the electronic +components of this course, private information such as first and last +names, user names for the McMaster e-mail accounts, and program +affiliation may become apparent to all other students in the same +course. The available information is dependent on the technology +used. Continuation in this course will be deemed consent to this +disclosure. If you have any questions or concerns about such +disclosure please discuss this with the Instructor. + +\emph{It is the student's responsibility to be aware of the + information on the course's Avenue to Learn page and to check + regularly for announcements.} + +The primary purpose of Avenue will be for maintaining grades. Most +of the course content will be maintained in a public git repository. +You can access this repository at:\\ + +\href{https://gitlab.cas.mcmaster.ca/smiths/cas741/}{https://gitlab.cas.mcmaster.ca/smiths/cas741/}\\ + +\noindent Rather than use the Avenue discussion board, please post your +questions (issues) to the GitLab issue tracker. + +In addition to Avenue and the gitlab course note repository, every student will +create a public gitHub repository (with instructor added as a full access +collaborator) for their work. The GitHub server is located at +\url{https://github.com/}. Students will be expected to use GitHub to provide +comments on the work of other students in the class. + +\section {Course Project} + +At the beginning of the term each student will select a scientific computing +problem. Over the course of the term software will be developed to address the +selected problem. The software development process will follow the iterative +waterfall model, with the following milestones: + +\begin {enumerate} + +\item Software Requirements Specification (SRS) +\item Module Guide (MG) +\item Module Interface Specification (MIS) +\item Implementation (any appropriate programming language) +\item Testing + +\end {enumerate} + +With approval from the instructor, the deliverables can potentially be modified, +if a project is more suited to different deliverables. For instance, a project +could replace one of the above deliverables with an assurance case deliverable, +or with domain specific code to automatically build the deliverables. + +\section {Course Structure} + +The format of the course will consist of student and instructor presentations. +Each student will be expected to do an informal presentation on their SRS, MG, +MIS, Implementation and Testing. It is expected the class discussion will +assist in improving the quality of the written deliverables. Each student will +be expected to hand in the following written documents: SRS, MG, MIS, and Final +Documentation. + +\section {Grading} + +\begin {enumerate} + +\item Presentations and class discussion 10\% + +\item Quality of GitHub issues provided to classmates 5\% + +\item System Requirements Specification (SRS) 20\% + +\item Module Guide (MG) 10\% + +\item Module Interface Specification (MIS) 20\% + +\item Final Documentation (including revised versions of previous documents, + plus the source code and a testing report) 35\% + +\end {enumerate} + +\section {Policy Statements} + +This section of the course outline explains the course policy with respect to +improving the course, missed work, discrimination and academic dishonesty. + +\subsection {Improving the course} + +Ideas to improve the course are always welcome. Moreover, if you have problems +in the course please contact the instructors as early as possible. + +\subsection {Missed Work} + +Late assignments, without permission, will receive a penalty of -20 \% per +working day that the assignment is late. + +\subsection {Discrimination} + +The Faculty of Engineering is concerned with ensuring an environment +that is free of all adverse discrimination. If there is a problem, +that cannot be resolved by discussion among the persons concerned, +individuals are reminded that they should contact their Department +Chair and the Human Rights and Equity Services (HRES) office as soon +as possible. + +\subsection {Academic Dishonesty} + +You are expected to exhibit honesty and use ethical behaviour in all aspects of +the learning process. Academic credentials you earn are rooted in principles of +honesty and academic integrity. + +Academic dishonesty is to knowingly act or fail to act in a way that results or +could result in unearned academic credit or advantage. This behaviour can result +in serious consequences, e.g., the grade of zero on an assignment, loss of +credit with a notation on the transcript (notation reads: ``Grade of F assigned +for academic dishonesty''), and/or suspension or expulsion from the university. + +It is your responsibility to understand what constitutes academic dishonesty. +For information on the various types of academic dishonesty please refer to the +Academic Integrity Policy, located at +\[\texttt{http://www.mcmaster.ca/academicintegrity/}\] + +\noindent The following illustrates only three forms of academic dishonesty: + +\be + +\item Plagiarism, e.g., the submission of work that is not one's own or for + which other credit has been obtained. + +\item Improper collaboration in group work. + +\item Copying or using unauthorized aids in tests and examinations. + + \ee + +\emph{Your work must be your own.} Plagiarism and copying will not be +tolerated! If it is discovered that you plagiarized or copied, it +will be considered as academic dishonesty. + +Students may be asked to defend their written work orally. + +\subsection*{Course Modifications} + +The instructor and university reserve the right to modify elements of +the course during the term. The university may change the dates and +deadlines for any or all courses in extreme circumstances. If either +type of modification becomes necessary, reasonable notice and +communication with the students will be given with explanation and the +opportunity to comment on changes. It is the responsibility of the +student to check their McMaster e-mail and course websites weekly +during the term and to note any changes. Your McMaster e-mail is the +one with the address ending in \texttt{@mcmaster.ca}. This is a +separate e-mail address from your Avenue address. + +\end{document} \ No newline at end of file diff --git a/README.md b/README.md index 03d2a45..9c422d8 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# CAS 741 Development of Scientific Computing Software +# CAS 741/CSE 741 Development of Scientific Computing Software This course presents the basic principles of software development for reliable scientific and engineering software. Using example applications, a systematic -- GitLab