Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
C
cas741
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
W. Spencer Smith
cas741
Commits
8a7e5e65
Commit
8a7e5e65
authored
2 years ago
by
W. Spencer Smith
Browse files
Options
Downloads
Patches
Plain Diff
Updates to MIS continued lecture
parent
74ff2cfa
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
Lectures/L15_MIS/MIS.tex
+1
-1
1 addition, 1 deletion
Lectures/L15_MIS/MIS.tex
Lectures/L16_MISContinued/MISContinued.pdf
+0
-0
0 additions, 0 deletions
Lectures/L16_MISContinued/MISContinued.pdf
Lectures/L16_MISContinued/MISContinued.tex
+21
-213
21 additions, 213 deletions
Lectures/L16_MISContinued/MISContinued.tex
with
22 additions
and
214 deletions
Lectures/L15_MIS/MIS.tex
+
1
−
1
View file @
8a7e5e65
...
...
@@ -926,7 +926,7 @@ seq\_init():
\item
Example
\bi
\item
\href
{
https://gitlab.cas.mcmaster.ca/smiths/se2aa4
_
cs2me3/-/blob/master/Assignments/PreviousYears/2018/A2/A2.pdf
}
\href
{
https://gitlab.cas.mcmaster.ca/smiths/se2aa4
_
cs2me3/-/blob/master/Assignments/PreviousYears/2018/A2
-CurveADT
/A2.pdf
}
{
Curve ADT Module
}
\ei
\end{itemize}
...
...
This diff is collapsed.
Click to expand it.
Lectures/L16_MISContinued/MISContinued.pdf
+
0
−
0
View file @
8a7e5e65
No preview for this file type
This diff is collapsed.
Click to expand it.
Lectures/L16_MISContinued/MISContinued.tex
+
21
−
213
View file @
8a7e5e65
...
...
@@ -45,11 +45,8 @@
\frametitle
{
MIS Continued
}
\bi
\item
Start recording
\item
Administrative details
%\item Feedback on System VnV Plan
\item
Questions?
%\item Take up Homework
\item
Nonfunctional requirements
\item
Review: Records, Libraries, ADTs, Abstract Objects, Generic ADTs
\item
Example - Student data
...
...
@@ -66,94 +63,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle
{
Administrative Details
}
\bi
\item
When developing your code, remember that your goal is for someone else to
be able to compile and run it
\item
Upcoming classes
\bi
\item
L16 - MIS Continued
\item
L17 - POC + MG Presentations
\item
L18 - MIS Presentations
\ei
\item
Mathematical review (
\cite
{
HoffmanAndStrooper1995
}
and separate slides)
\item
Potential software for drawing figures
\bi
\item
\href
{
https://app.diagrams.net/
}
{
draw.io
}
\item
\href
{
https://www.bu.edu/math/files/2013/08/tikzpgfmanual.pdf
}
{
Tkiz
}
\ei
\ei
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle
{
Administrative Details: Report Deadlines
}
~
\newline
\begin{tabular}
{
l l
}
%\textbf{SRS} & Oct 8\\
\textbf
{
MG + MIS (Traditional)
}
&
Nov 19
\\
\textbf
{
Drasil Code and Report (Drasil)
}
&
Nov 19
\\
Final Documentation
&
Dec 9
\\
\end
{
tabular
}
\bi
\item
The written deliverables will be graded based on the repo contents as of
11:59 pm of the due date
\item
If you need an extension for a written deliverable, please ask
\item
You should inform your primary and secondary reviewers of the extension
\item
Two days after each major deliverable, your GitHub issues will be due
%\item Domain expert code due 1 week after MIS deadline
\ei
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle
{
Admin Details: Presentation Schedule
}
\bi
\item
Proof of Concept Demonstrations (15 min)
\bi
\item
\textbf
{
Thurs, Nov 12: Salah, John
}
\ei
\item
MG Present (10 minutes)
\bi
\item
\textbf
{
Thurs, Nov 12: John, Tiago, Leila, Xuanming, Andrea
}
\ei
\item
MIS Present
\bi
\item
Mon, Nov 16: Shayan, Parsa, Gaby, Sid, Xingzhi
\ei
\item
Drasil Project Present (20 min each)
\bi
\item
Thurs, Nov 26: Andrea, Naveen, Ting-Yu
\ei
\ei
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle
{
Presentation Schedule Continued
}
\bi
\item
Test or Impl.
\
Present (15 min each)
\bi
\item
Mon, Nov 30: John, Salah, Liz, Xingzhi, Leila
\item
Thurs, Dec 3: Shayan, Naveen, Sid, Gaby, Seyed
\item
Mon, Dec 7: Ting-Yu, Xuanming, Mohamed, Andrea, Tiago
\ei
\item
4 presentations each
\item
If you will miss a presentation, please trade with someone else
\ei
\end{frame}
\input
{
../Deadlines.tex
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
...
...
@@ -170,15 +80,15 @@ Final Documentation & Dec 9\\
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle
{
Nonfunctional Requirements
}
\begin{itemize}
\item
Aim to be unambiguous
\item
Say the quality you want to achieve, not how you are going to achieve it
\item
Point to the Verification and Validation plan
\item
Added to the blank SRS template
\end{itemize}
\end{frame}
%
\begin{frame}
%
\frametitle{Nonfunctional Requirements}
%
\begin{itemize}
%
\item Aim to be unambiguous
%
\item Say the quality you want to achieve, not how you are going to achieve it
%
\item Point to the Verification and Validation plan
%
\item Added to the blank SRS template
%
\end{itemize}
%
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
...
...
@@ -214,65 +124,6 @@ Final Documentation & Dec 9\\
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle
{
Examples of Modules: Record
\cite
{
GhezziEtAl2003
}}
\begin{itemize}
\item
Consists of only data
\item
Has state but no behaviour
\item
Example
\bi
\item
Specification Parameters Module in SWHS
\ei
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle
{
Examples of Modules: Library
\cite
{
GhezziEtAl2003
}}
\begin{itemize}
\item
\structure
{
Collection of related procedures (library)
}
\item
Has behaviour but no state
\item
Procedural abstractions
% like many routines in a scientific computing library
\item
Example
\bi
\item
Library of trigonometric functions
\item
ODE Solver Module in SWHS
\item
\href
{
https://gitlab.cas.mcmaster.ca/smiths/se2aa4
_
cs2me3/-/blob/master/Assignments/PreviousYears/2018/A2/A2.pdf
}
{
Sequence Services Module
}
\ei
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle
{
Examples of Modules: Abstract Object
\cite
{
GhezziEtAl2003
}}
\begin{itemize}
\item
Consists of data (
\structure
{
fields
}
) and procedures (
\structure
{
methods
}
)
\item
Consists of a collection of
\structure
{
constructors
}
,
\structure
{
selectors
}
, and
\structure
{
mutators
}
\item
Has state and behaviour
\item
There is only ONE
\item
Singleton design pattern
\item
Example
\begin{itemize}
\item
Input Parameters Module for SWHS
\item
Logger
\end{itemize}
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle
{
Examples of Modules: Abstract Data Type
\cite
{
GhezziEtAl2003
}}
...
...
@@ -288,7 +139,7 @@ Final Documentation & Dec 9\\
\item
Example
\bi
\item
\href
{
https://gitlab.cas.mcmaster.ca/smiths/se2aa4
_
cs2me3/-/blob/master/Assignments/PreviousYears/2018/A2/A2.pdf
}
\href
{
https://gitlab.cas.mcmaster.ca/smiths/se2aa4
_
cs2me3/-/blob/master/Assignments/PreviousYears/2018/A2
-CurveADT
/A2.pdf
}
{
Curve ADT Module
}
\ei
\end{itemize}
...
...
@@ -297,75 +148,32 @@ Final Documentation & Dec 9\\
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle
{
Examples of Modules: Generic
\cite
{
GhezziEtAl2003
}}
\begin{itemize}
\item
A single abstract description for a family of abstract objects or ADTs
\item
Parameterized by type
\item
Eliminates the need for writing similar specifications for modules that
only differ in their type information
\item
A generic module facilitates specification of a stack of integers, stack
of strings, stack of stacks etc.
\item
Example
\bi
\item
\href
{
https://gitlab.cas.mcmaster.ca/smiths/se2aa4
_
cs2me3/-/blob/master/Assignments/PreviousYears/2019/A2/A2.pdf
}
{
Generic Sequence ADT Module
}
\ei
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle
{
Chemistry Example - Highlight Mathematics
}
\begin{itemize}
\item
\href
{
https://gitlab.cas.mcmaster.ca/smiths/se2aa4
_
cs2me3/blob/master/Assignments/
A2
/A2.pdf
}
\href
{
https://gitlab.cas.mcmaster.ca/smiths/se2aa4
_
cs2me3/
-/
blob/master/Assignments/
PreviousYears/2020/A2-ChemReacts
/A2.pdf
}
{
Problem Description
}
\item
\href
{
https://gitlab.cas.mcmaster.ca/smiths/se2aa4
_
cs2me3/tree/master/Assignments/
A2
/A2Soln/src
}
\href
{
https://gitlab.cas.mcmaster.ca/smiths/se2aa4
_
cs2me3/
-/
tree/master/Assignments/
PreviousYears/2020/A2-ChemReacts
/A2Soln/src
}
{
Source Code
}
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle
{
Exception Signalling
}
\item
\href
{
https://gitlab.cas.mcmaster.ca/smiths/cas741/-/blob/master/Lectures/MathReviewPlusExample/StoichExamplePage1.pdf
}
{
Stoichiometry page 1
}
\item
\href
{
https://gitlab.cas.mcmaster.ca/smiths/cas741/-/blob/master/Lectures/MathReviewPlusExample/StoichExamplePage2.pdf
}
{
Stoichiometry page 2
}
\begin{itemize}
\item
Useful to think about exceptions in the design process
\item
Will need to decide how exception signalling will be done
\begin{itemize}
\item
A special return value, a special status parameter, a global variable
\item
Invoking an exception procedure
\item
Using built-in language constructs
\end{itemize}
\item
Caused by errors made by programmers, not by users
\item
Write code so that it avoid exceptions
\item
Exceptions will be particularly useful during testing
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle
{
Assumptions versus Exceptions
}
\frametitle
{
SWHS Example
}
\begin{itemize}
\item
The assumptions section lists assumptions the module developer is permitted to make about the programmer's behaviour
\item
Assumptions are expressed in prose
\item
Use assumptions to simplify the MIS and to reduce the complexity of the final implementation
\item
Interface design should provide the programmer with a means to check so that they can avoid exceptions
\item
When an exceptions occurs no state transitions should take place, any output is
{
\it
don't care
}
\item
\href
{
https://github.com/smiths/swhs/blob/master/docs/Design/MIS/PCM
_
MIS.pdf
}
{
SWHS MIS
}
\item
Shows environment variables
\item
Specification parameters module
\item
Shows modules with external interaction
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment