\documentclass[12pt]{article}
\usepackage{amsfonts, amssymb, amsmath, comment}
\usepackage{times}
%\usepackage{listings}
\usepackage{fancyhdr}
\usepackage{hyperref}
\usepackage{url}
%\usepackage{xypic}
%\usepackage{epsf}
%\usepackage{epsfig}
\usepackage{enumitem}
%\usepackage{comment}

\setlist[itemize]{nosep}
\setlist[enumerate]{nosep}

\setlength{\oddsidemargin}{0in}
\setlength{\evensidemargin}{0in}
\setlength{\textwidth}{6.5in}
\setlength{\textheight}{9.0in}
\setlength{\topmargin}{-0.5in}
\setlength{\headheight}{0in}
\parskip12pt
\parindent0pt
\pagestyle{fancy}
\lhead{CS 430 - Fall 2023}
\chead{CM A02}
\rhead{Due Friday, October 6, 11:59 PM EST}
\cfoot{\normalfont\medskip Copyright \copyright 2023}

\newcommand{\rmp}{\reversemarginpar\marginpar}

\providecommand{\SolutionQuestionParticipationMarks}{\vspace{8cm}}
\providecommand{\SolutionQuestionLifeCycle}{}
\providecommand{\SolutionQuestionDefinitionsPartA}{\vspace{2cm}}
\providecommand{\SolutionQuestionDefinitionsPartB}{\vspace{2cm}}
\providecommand{\SolutionQuestionDefinitionsPartC}{\vspace{2cm}}
\providecommand{\SolutionQuestionDefinitionsPartD}{\vspace{2cm}}
\providecommand{\SolutionQuestionDefinitionsPartE}{\vspace{2cm}}
\providecommand{\SolutionQuestionEstimatedDaysPartA}{\vspace{8cm}}
\providecommand{\SolutionQuestionEstimatedDaysPartB}{\vspace{3cm}}
\providecommand{\SolutionQuestionWorkflowsAndPhasesPartA}{\vspace{15mm}}
\providecommand{\SolutionQuestionWorkflowsAndPhasesPartB}{\vspace{15mm}}
\providecommand{\SolutionQuestionWorkflowsAndPhasesPartC}{\vspace{15mm}}
\providecommand{\SolutionQuestionWorkflowsAndPhasesPartD}{\vspace{15mm}}
\providecommand{\SolutionQuestionWorkflowsAndPhasesPartE}{\vspace{15mm}}
\providecommand{\SolutionQuestionWorkflowsAndPhasesPartF}{\vspace{15mm}}
\providecommand{\SolutionQuestionWorkflowsAndPhasesPartG}{\vspace{15mm}}
\providecommand{\SolutionQuestionWorkflowsAndPhasesPartH}{\vspace{15mm}}
\providecommand{\SolutionQuestionDemocraticTeam}{\vspace{10cm}}
\providecommand{\SolutionQuestionChiefProgrammerTeam}{\vspace{10cm}}

%\input xy
%\xyoption{all}

\begin{document}

\begin{itemize}
\item{
Assignments must be completed individually.
}
\item{
No late assignments will be accepted.
}
\item{
Provide \textbf{concise} answers to the following questions.
Use \textbf{point form} whenever possible.
}
\item{
Submit your completed solutions to \textbf{Crowdmark}.
}
\end{itemize}

\begin{enumerate}

\item \label{QuestionParticipationMarks}
Your \rmp{[3]}instructor maintains a database to track your iClicker responses, to compute your class participation grades for CS 430.
This database is a software product (albeit a very small one).
Which software development life-cycle model do you think your instructor used to develop this database?
Give two reasons to justify why this choice of life-cycle model is appropriate for developing this software product.
\SolutionQuestionParticipationMarks

\newpage

\item \label{QuestionLifeCycle}
To \rmp{[4]}compare the open source life-cycle model against the (modified) waterfall life-cycle model within a large software company, the following experiment is proposed.
\begin{quote}
The same software product will be built by two different teams, one using the open source life-cycle and the other using the (modified) waterfall life-cycle.
The life-cycle that completes the project sooner will be considered the winner.
\end{quote}
Give two reasons why this experiment is impractical and unlikely to yield meaningful results.
Briefly explain each reason.
\SolutionQuestionLifeCycle

\newpage

\item \label{QuestionDefinitions}
In \rmp{[5]}each part, indicate of which definition (\textbf{regression fault}, \textbf{regression test}, \textbf{scope creep}, \textbf{Miller's Law}, \textbf{stepwise refinement}) the given description is an example.
No justification is required.

\noindent
You are completing an IT project to modify a payroll system to modify the income tax deducted at-source for salaried employees, per new Canada Revenue Agency (CRA) rules.
The change to the CRA rules does not affect hourly paid employees.

\begin{enumerate}
\item{ \label{QuestionDefinitionsPartA}
The Requirements document contains a list of 30 requirements.
During the Analysis phase of your project, your business analyst cannot work on all 30 requirements simultaneously.
\SolutionQuestionDefinitionsPartA
}
\item{ \label{QuestionDefinitionsPartB}
The Requirements document contains a list of 30 requirements.
During the Analysis phase of your project, your business analyst begins by analyzing the most important 5 requirements first, temporarily ignoring all the rest.
\SolutionQuestionDefinitionsPartB
}
\item{ \label{QuestionDefinitionsPartC}
Your business partners request to add a change to the computation of the at-source deductions for benefits coverage to the Requirements document for your project.
\SolutionQuestionDefinitionsPartC
}
\item{ \label{QuestionDefinitionsPartD}
You run your old code (pass 0) and your new code (pass 1) against a set of test cases selected from the hourly paid employees, and confirm that the computed at-source income tax deductions are identical in pass 0 and pass 1.
\SolutionQuestionDefinitionsPartD
}
\item{ \label{QuestionDefinitionsPartE}
You deploy your completed code, and after deployment, your business partners report that the at-source income tax deductions for hourly paid employees have changed, where they should not have changed.
\SolutionQuestionDefinitionsPartE
}
\end{enumerate}

\newpage

\item \label{QuestionEstimatedDays}
The Software Project Management Plan (SPMP) is produced during the Requirements %Analysis
Workflow.
The SPMP must contain an estimate of the person-days required to complete the project.
\begin{enumerate}
\item \label{QuestionEstimatedDaysA}
What \rmp{[3]}consequences might we face if we under-estimate the person-days required?
\SolutionQuestionEstimatedDaysPartA
\item \label{QuestionEstimatedDaysB}
What \rmp{[1]}consequence might we face if we over-estimate the person-days required?
\SolutionQuestionEstimatedDaysPartB
\end{enumerate}

\newpage

\item \label{QuestionWorkflowsAndPhases}
% Replace the options in this question
In this question you will identify the \textbf{workflow} to which an artifact belongs, and the \textbf{phase} during which it will most likely be completed.
\begin{enumerate}
\item \label{QuestionWorkflowsAndPhasesA}
State \rmp{[1]}to which workflow the artifact of \textbf{code: ready for unit testing} belongs.
\SolutionQuestionWorkflowsAndPhasesPartA
\item \label{QuestionWorkflowsAndPhasesB}
State \rmp{[1]}during which phase the artifact of \textbf{code: ready for unit testing} will most likely be completed.
\SolutionQuestionWorkflowsAndPhasesPartB
\item \label{QuestionWorkflowsAndPhasesC}
State \rmp{[1]}to which workflow the artifact of \textbf{system architecture design: final version} belongs.
\SolutionQuestionWorkflowsAndPhasesPartC
\item \label{QuestionWorkflowsAndPhasesD}
State \rmp{[1]}during which phase the artifact of \textbf{system architecture design: final version} will most likely be completed.
\SolutionQuestionWorkflowsAndPhasesPartD
\item \label{QuestionWorkflowsAndPhasesE}
State \rmp{[1]}to which workflow the artifact of \textbf{database analysis: first draft} belongs.
\SolutionQuestionWorkflowsAndPhasesPartE
\item \label{QuestionWorkflowsAndPhasesF}
State \rmp{[1]}during which phase the artifact of \textbf{database analysis: first draft} will most likely be completed.
\SolutionQuestionWorkflowsAndPhasesPartF
\item \label{QuestionWorkflowsAndPhasesG}
State \rmp{[1]}to which workflow the artifact of \textbf{database analysis: final version} belongs.
\SolutionQuestionWorkflowsAndPhasesPartG
\item \label{QuestionWorkflowsAndPhasesH}
State \rmp{[1]}during which phase the artifact of \textbf{database analysis: final version} will most likely be completed.
\SolutionQuestionWorkflowsAndPhasesPartH
\end{enumerate}

\newpage

\item \label{QuestionDemocraticTeam}
You \rmp{[4]}have just started a new software firm.
All your employees are recent university graduates; this is their first programming job.
Will it be possible to implement democratic teams in your firm?
Justify your answer.
\SolutionQuestionDemocraticTeam

\newpage

\item \label{QuestionChiefProgrammerTeam}
A \rmp{[4]}student programming team is organized as a classical chief programmer team.
What can be deduced about the students in the team?
\SolutionQuestionChiefProgrammerTeam

\end{enumerate}

\end{document}