aboutsummaryrefslogtreecommitdiff
path: root/plan.tex
blob: 69a28ae6fedb96f036b1d09b82d9d3aa6770bd2c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
\documentclass{projdoc}
\input{meta.tex}

\title{Project Plan}

\begin{document}

\tablestables
\newpage

% Documentation Standard is described here
\section{Documentation}

This section describes the required documentation for the project, including the
 types of documents to be created and the standards they must adhere to.

\subsection{Documents}

This project consists of five main documents:\noparbreak

\begin{description}
	\item[Project Plan] Contains all elements related to the organization of the
	 project, including timelines, milestones, roles, responsibilities.
	\item[Requirements] Details the requirements and 
	user stories, including both functional and non-functional requirements. 
	\item[Research] Consists of all research related to this project.
	\item[Design] Describes the design choices, including architecture,
	 user interface, and system components.
	\item[Qualification] Includes test cases, test plans, and quality 
	measures to ensure the project meets its requirements and standards.
	\item[Working hours] 
	\item[Api referenece]  
\end{description}

\subsection{Documentation standard}

\newpage

\section{Work agreements}
Work agreements are the expectations and commitments made by the team members. 
This section includes details on roles and responsibilities, documentation of 
work hours, protocols for handling absences or delays, guidelines for addressing
 inconsistent participation, and procedures for weekly updates and meetings. All
  team members reviewed and agreed to these terms.

\subsection{Project roles}
\begin{itemize}
	\item \textbf{Loek Le Blansch}: Integrator
	\item \textbf{Wouter Boerenkamps}: Project Member
	\item \textbf{Jaro Rutjes}: Team Leader / Scrum Master
	\item \textbf{Max Smits}: Project Member
	\item \textbf{Niels Stunnebrink}: Project Member
\end{itemize}


\subsection{Work hours}
Each project member will keep track of their own working hours and 
add them to the `file'.

\subsection{Absence or delay}
If a project member is going to be absent or delayed, they are required to 
notify the team through either WhatsApp or Outlook. Additionally, the teacher 
should be informed of the absence as well.

\subsection{Inconsistent participation}
Inconsistent participation will be addressed in a structured manner:

\begin{description}
	\item[Initial Discussion] The team leader will first discuss the 
	issue of inconsistent participation with the individual team member.
	\item [Team Discussion]: If no improvement is observed, the issue 
	will be brought up with the entire team to seek a collective solution.
	\item [Project Supervisor Involvement]: Should the problem persist 
	despite these efforts, it will be escalated to the project supervisor for 
	further action.
\end{description}

Valid reasons for absence or inconsistency will be considered, and no 
repercussions will be necessary in such cases. However, if the inconsistency is 
due to other factors, potential repercussions may include additional assignments
 or actions as determined by the project supervisor.
 
A team member is considered to have inconsistent participation if their hours 
are significantly behind the team’s average or if tasks are not completed 
without valid reasons. It is essential that any concerns regarding a team 
member's performance be resolved through unanimous agreement within the team.


\subsection{Weekly update}
Each team member is required to send their technical weekly update to Jaro 
Rutjes before 12:00 on Friday. Personal updates may also be included and will be
 confidential between the team member, the Team Leader, and/or the teacher, if 
 requested.

Jaro Rutjes will compile and send a team update to the project supervisor,Bob 
van der Putten, also by Friday. This update will include technical information 
on what has been accomplished, plans for upcoming work, and an overview of the 
team's overall progress.

\subsection{Weekly meetings}
The project team will hold at least two meetings each week, with each meeting 
lasting a maximum of 30 minutes. Following these meetings, an additional one 
hour will be scheduled for discussions on the topics covered.

Meetings will be planned and discussed one week in advance, with invitations 
sent via Outlook. Additional meetings may be scheduled if necessary to address 
issues or project needs.

\newpage

% Information about how and when Scrum will be used in this project (using Miro).
\section{Scrum (Miro)}

The team will start using scrum after the inital fase of sructering the project is over.This fase is over when proof of concepts are being made.

\subsection{Scrum Board}
The \href{https://miro.com/app/board/uXjVKjtdM64=/?share_link_id=303851465474}{Scrum board} will consist of the following tabs:

\begin{description}
	\item[Backlog]: This tab contains a list of all tasks and user stories that are planned for future sprints.
	\item[Next Sprint]: This tab includes tasks and user stories that have been selected for the upcoming sprint.
	\item[Current Sprint]: This tab displays the tasks and user stories that are actively being worked on in the current sprint.
	\item[In Progress]: Tasks that are actively being worked on are moved to this tab.
	\item[Review]: Completed tasks that are awaiting review or testing will be placed in this tab.
	\item[Done]: Once tasks have been reviewed and are considered complete, they are moved to the Done tab.
	\item [Blocked]: This tab is used for tasks that cannot proceed due to obstacles or dependencies.
\end{description}

\noindent
To manage tasks effectively:
\begin{itemize}
	\item A task from the \emph{Current Sprint} tab should be selected and moved to the \emph{In Progress} tab when work begins. 
	\item The status of the task should be updated to \emph{In Progress} as soon as work starts.
	\item Once the task is completed and reviewed, it should be moved to the \emph{Done} tab, and its status should be updated to \emph{Done}.
\end{itemize}

\noindent
Each task or user story will be assigned user points, which indicate the relative size or complexity of the task compared to these examples.
TODO: add examples

\subsection{Burn down chart}
The Burn Down Chart will be generated using Excel from the Scrum board data every week.
Each user story or tasks marked as done will burn the chart downwards.
This Burn down chart is shared in the weekly updates with the team and the project supervisor.
\newpage

% Information regarding the git workflow of this project. Diagram explaining the workflow
\section{Git Workflow}

GitHub is used for version management of both code and documentation, each in its own respective repository.
This keep the documentation and code seperate, resulting in ordened and manageable repositories. 

\begin{itemize}
	\item Code Repository: \href{https://github.com/lonkaars/crepe}{crepe}
	\item Documentation Repository: \href{https://github.com/lonkaars/crepe-docs}{crepe-docs}
\end{itemize}

\subsection{Git new branch}
% TODO: add here details from contributing.md?
\subsection{Git merge to master}
% TODO: add here diagram on what actions are taken before merge.
\newpage

\end{document}