Skip to content

Commit f4b86c1

Browse files
committed
Complete Background section with images & citations
1 parent 9977c48 commit f4b86c1

File tree

5 files changed

+278
-86
lines changed

5 files changed

+278
-86
lines changed

Dissertate.cls

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@
163163

164164
% References.
165165
\renewcommand\bibname{References}
166-
\RequirePackage[super,comma,numbers]{natbib}
166+
\RequirePackage{natbib}
167167
\renewcommand{\bibnumfmt}[1]{[#1]}
168168
\RequirePackage[palatino]{quotchap}
169169
\renewcommand*{\chapterheadstartvskip}{\vspace*{-0.5\baselineskip}}
@@ -318,9 +318,9 @@
318318
\renewcommand{\backmatter}{
319319
\input{endmatter/personalize}
320320
\clearpage
321+
\bibliographystyle{harvard}
321322
\bibliography{references}
322323
\addcontentsline{toc}{chapter}{References}
323-
\bibliographystyle{harvard}
324324
\begin{appendices}
325325
\input{chapters/appendixA}
326326
\end{appendices}

chapters/1-background.tex

Lines changed: 88 additions & 84 deletions
Original file line numberDiff line numberDiff line change
@@ -6,55 +6,51 @@
66
\end{savequote}
77

88
\chapter{Background}
9-
% TODO
10-
% * 20% = https://www.gov.uk/government/uploads/system/uploads/attachment_data/file/600465/family-resources-survey-2015-16.pdf
11-
% * Reference Disability Discrimintaion Act: http://www.legislation.gov.uk/ukpga/1995/50/contents
12-
% * Reference JAWS: http://www.freedomscientific.com/Products/Blindness/JAWS
13-
% * Reference WCAG: https://www.w3.org/TR/WCAG20/
14-
% *
15-
\newthought{20\% of the UK population reported they have a disability} in
16-
2016. That is
17-
approximately 13.3 million people. In the physical world, companies are by law
18-
bound to ensure that this minority are able to access their services; be it by
9+
\newthought{20\% of the UK population reported they have a disability
10+
\citep{UkGovFamilySurvey}.}
11+
That is approximately 13.3 million people. In the physical world,
12+
companies are by law
13+
bound \citep{DDA} to ensure that this minority are able to access their services; be it by
1914
leaving enough room to accomodate wheel chairs; or offering large text prints
2015
of their products. In the digital world there are no such laws and thus the web can be a
2116
difficult place for these users to consume services and content.
2217

2318
A range of assistive
2419
tools aim to improve the experience by targeting a selection of
2520
disabilities and offering other means to consume the content. For example,
26-
JAWS targets visually impaired users; reading the content,
21+
JAWS \citep{JAWS} targets visually impaired users; reading the content,
2722
labelling actions and offering keyboard shortcuts to navigate. The
2823
problem
2924
with all these tools is that they rely upon Software Engineers to produce
30-
content semantically (using HTML) and add metadata (WCAG) to enable the tools
31-
to better process the content.
32-
33-
The core purpose of this project is to enable the development community to
34-
produce content which is as 'accessible' as possible.
25+
content semantically (using HTML) and add metadata using, until recently,
26+
very loose specifications \citep{WCAG} to enable the tools to better process
27+
the content.
28+
29+
Although difficult to assess some companies \citep{Slate}
30+
\citep{SightAndSound} believe \textasciitilde70\% of all websites are
31+
inaccessible to all users. This identifies a clear gap in knowledge within
32+
the development community when it comes to producing accessible web
33+
applications. Thus, the purpose of this project is to enable the development
34+
community through education and 'easy to use' tools to think about and
35+
implement accessibility during development.
3536

3637
\section{What is accessibility?}
37-
% TODO
38-
% * Reference Oxford Dictionary
39-
% * Reference Tim Bernes-Lee: https://www.w3.org/standards/webdesign/accessibility
40-
% * Reference Adobe: http://www.adobe.com/uk/accessibility/gettingstarted.html
41-
% * This feels a bit 'bitty' I think it requires some additional quotes and
42-
% reasoning over the meaning
4338
"Accessibility" is a subjective term which offers many opinionated
44-
definitions. The Oxford English Dictionary defines accessiblity as:
39+
definitions. The \cite*{OxDict} defines accessiblity as:
4540
\begin{quote}
4641
"The quality of being able to be reached or entered"
4742
\end{quote}
4843

49-
Tim Berners-Lee 'Inventor of the web' wrote the following:
44+
\cite*{TimBerners} 'Inventor of the web' wrote the following:
5045
\begin{quote}
5146
"The power of the Web is in its universality. Access by everyone regardless
5247
of disability is an essential aspect"
5348
\end{quote}
5449

5550
Both of these point towards accessibility being the ability to access the
5651
information on offer through the web. Which in my opinion is definitely
57-
correct. Adobe become more specific, they identify that designers and
52+
correct. \cite*{Adobe} become more specific, they identify that
53+
designers and
5854
developers have a key part to play in enabling users to access content.
5955

6056
\begin{quote}
@@ -63,7 +59,7 @@ \section{What is accessibility?}
6359
used by individuals with disabilities"
6460
\end{quote}
6561

66-
Finally Jim Bryne founder of Guild of Web Designers offers an interesting
62+
Finally \cite*{JimByrne} founder of Guild of Web Designers offers an interesting
6763
insight. He refers to Google as a blind visitor which is technically correct
6864
as google will never be able to see all the `pretty' pictures on your website.
6965
It can however understand text and markup. This hints at the fact that
@@ -81,28 +77,35 @@ \section{What is accessibility?}
8177
structured web page yet it is still totally inaccessible.
8278

8379
\section{Business Context \& Requirement}
84-
% TODO
85-
% * Reference 'public/private' sector company
86-
% * Reference Agile Cost Of Change http://www.agilemodeling.com/essays/costOfChange.htm
87-
% * Reference John
8880
Capgemini undertakes a range of projects across both public and private
8981
sector. In the current digital climate most projects involve the
9082
development of some form of web frontend. As a Professional Services supplier it
91-
is quite common for Software Engineers to be multi-skilled and thus web
92-
development may not be a ``core skill". A common problem is that developers
93-
who have not had sufficient experience or training in the area of producing
94-
accessible websites/applications are making simple mistakes in both design and
95-
implementation which result in a poor experience for users of assistive tools.
96-
97-
These mistakes are only identified later in the project when
98-
'assistive tool' testing is performed at which point repetitive and sometimes
99-
significant rework may be necessary. This is costly and completely
100-
avoidable.
101-
102-
This project aims to enable developers with limited experience in web
103-
development to write cleaner, more semantic code. It is through educating
104-
developers that the primary goal of offering a better experience to users of
105-
assistive tools can be achieved. By building a tool that can be used during
83+
is quite common for Software Engineers to be multi-skilled and thus web
84+
development may not be a ``core skill". A common problem is that developers
85+
who have not had sufficient experience or training in the area of producing
86+
accessible websites/applications are making simple mistakes in both design and
87+
implementation which result in a poor experience for users of assistive tools.
88+
89+
These mistakes are only identified later in the project when
90+
'assistive tool' testing is performed at which point repetitive and sometimes
91+
significant rework may be necessary. The agile 'Cost of Change' \citep{CostOfChange} curve
92+
shown in Fig.~\ref{fig:costOfChange} demonstrates this.
93+
94+
\begin{figure}[H]
95+
\centering
96+
\includegraphics[width=0.6\textwidth]{figures/costOfChange}
97+
\captionsetup{justification=centering}
98+
\caption{Scott Amblers agile cost of change curve
99+
\label{fig:costOfChange}}
100+
\end{figure}
101+
102+
With this in mind this project aims to enable developers with limited
103+
experience in web development to write cleaner, more semantic code. It is
104+
through educating developers that the primary goal of offering a better
105+
experience to users of assistive tools can be achieved.
106+
107+
108+
By building a tool that can be used during
106109
the development process the feedback loop on issues will be much
107110
shorter and as described in agile 'cost of change' the cost of remediation
108111
much lower. The tool will be supported by an accessibility guide which can
@@ -112,13 +115,9 @@ \section{Business Context \& Requirement}
112115
paragraph about Capgemini's need for a project in this area:
113116
\begin{quote}
114117
% TODO - Talk to John RE project business benefits paragraph
118+
Pending paragraph from John.
115119
\end{quote}
116120

117-
% * Myths in the community
118-
% * Expensive
119-
% * Ugly
120-
% * No user will use it
121-
122121
\section{Project Goals}
123122
The core aim of this project is to make an impact in both Capgemini and the
124123
wider web development community. By discovering the software
@@ -150,61 +149,57 @@ \section{Project Stakeholders}
150149
\end{itemize}
151150

152151
\section{Methodology}
153-
% TODO
154-
% * Reference Capgemini Values: https://www.uk.capgemini.com/careers/working-at-capgemini/our-values-culture
155-
% * Reference Sprints - SCRUM: https://www.scrum.org/resources/what-is-a-sprint-in-scrum
156-
% * Refernece Medium: https://medium.com/
157-
% * Reference Contiunous Delivery through 'The Lean Startup': https://continuousdelivery.com/
158-
% * Refernece JVM team "How we work": https://capgemini.github.io/development/how-we-work/#share-knowledge
159-
% * Reference MIT licence: https://opensource.org/licenses/MIT
160-
% * Reference Zach Holman "Deployment should be a boring task": https://zachholman.com/posts/deploying-software
161-
% * Reference Travis CI: https://travis-ci.com/
162-
% * Reference Github Pages: https://pages.github.com/
163-
% * Reference Spiral Model:
164152
Capgemini employees are encouraged to follow seven core values. Two of them
165-
which stand out to me are ``Boldness" and ``Fun" \cite{CapValues}, it is these
153+
which stand out to me are ``Boldness" and ``Fun" \citep{CapValues}, it is these
166154
two that drive me to try out new things in the aim of team (and consequently
167155
self) improvement.
168156

169157
Although individual, this project serves as no exception and offers an
170158
opportunity to experiment for the full duration of a project rather than a
171-
few 'sprints'. These 'experiments' will be evaluated at the end of
172-
the project for both myself and others to gain value from. Highlighted below
173-
are a few aspects in which the traditional academic model for a project will
174-
be broken and experimentation will prevail:
159+
few 'sprints' \citep{ScrumSprint}. These 'experiments' will be evaluated at the
160+
end of the project for both myself and others to gain value from. Highlighted
161+
below are a few aspects in which the traditional academic model for a
162+
project will be broken and experimentation will prevail:
175163
\begin{itemize}
176164
\item Project Diary - Typically this is done on paper, or captured later in
177-
the project. 'Medium' a blogging platform will instead be used to
165+
the project. 'Medium' \citep{Medium} a blogging platform will instead be
166+
used to
178167
capture key events and entries. At the end of the project this will be
179168
supplemented with notes from meetings between myself and my acadamic
180169
supervisor.
181170
%TODO - Check with HARRY if the below statement is correct. This is
182171
%TODO currently an assumption and may be totally incorrect.
183172
\item Project Deliverables - The products of an academic project are usually
184173
completed in isolation or as part of a group and made available only upon
185-
completion of the project. Experimenting with ``Continuous Delivery",
186-
products of this project will be delivered whilst still undergoing active
187-
development. This will enable 'faster feedback' from stakeholders and
188-
produce a higher quality product
174+
completion of the project. Experimenting with ``Continuous Delivery"
175+
\citep{ContinuousDelivery}, products of this project will be delivered
176+
whilst still undergoing active development. This will enable 'faster
177+
feedback' from stakeholders and produce a higher quality product
189178
\item Open Source Everything - Capgemini consumes and
190179
produces a lot of open source software! With myself sitting within a team
191180
that are leading this drive, all code produced will be available under a MIT
192-
Licence on Github.
193-
\item Share Everything - The JVM team has its own 'ethos' that sits on top
181+
Licence \citep{MITLicence} on Github.
182+
\item Share Everything - The JVM team has its own 'ethos'
183+
\citep{JVMHowWeWork} that sits on top
194184
of Capgemini's core values one of these is to share knowledge within the
195185
company and the wider development community. This project will follow that
196186
ethos and everything will be available online.
197187
\item Automation - Another of the JVM teams 'values'. Repetitive boring tasks
198188
should be automated at the earliest possible chance! ``Deployment should be a
199-
repetitive boring task" so this will be one of the first things tackled on
189+
repetitive boring task" \citep{ZachHolman} so this will be one of the first
190+
things
191+
tackled on
200192
each deliverable. This will allow its process to be tested and validated
201193
for every change made thereafter; reducing risk of failure later in the
202-
project. Travis CI and Github Pages will enable this.
194+
project. Travis CI \citep{TravisCi} and Github Pages \citep{Ghpages} will
195+
enable
196+
this.
203197
\end{itemize}
204198

205199
\subsection{Making Better Decisions}
206200
% TODO * reference Agile Manifesto
207-
Coming from a background in Agile projects, the ``Agile Manifesto" has enabled
201+
Coming from a background in Agile projects, the ``Agile Manifesto" \citep{AgileManifesto} has
202+
enabled
208203
me to make and justify difficult decisions under pressure. For example deciding
209204
if a time constrained delivery should be moved into or out of the next
210205
sprint. One of the 'experiments' I wish to undertake is whether having such a
@@ -223,7 +218,8 @@ \subsection{Making Better Decisions}
223218
\end{center}
224219

225220
\subsection{A Process}
226-
Capgemini projects always follow a process to ensure a quality
221+
Capgemini projects always follow a process \citep{CapgeminiSustain} to ensure a
222+
quality
227223
product is delivered with the speed being measurable and quantifiable to
228224
stakeholders and clients.
229225

@@ -252,7 +248,6 @@ \subsubsection{Why the Unified Process?}
252248
each spiral dedicated to risk analysis .
253249

254250
\subsection{High Level Planning}
255-
% * TODO - GANTT CHART of initial plan
256251
At a high level I was aiming for the following to be acheived:
257252
\begin{enumerate}
258253
\item {Inception - February}
@@ -299,12 +294,21 @@ \subsection{Change of process}
299294
I chose to change from the 'Unified Process' towards a more
300295
prototypical/iterative process; 'Evolutionary Prototyping'. This is a form of
301296
the prototyping model which often suits tight time scales and fast development
302-
lifecycles. The 'Evoloutionary' aspect means rather than the prototype being
303-
thrown away and rebuilt at the end, it will instead be iteratively enhanced
304-
until a final product is produced.
305-
306-
This method enables the code and project to carry some technical debt whilst
307-
still using continuous delivery. There is a higher
297+
lifecycles \citep{EvoProto}. The 'Evoloutionary' aspect means rather than the
298+
prototype being thrown away and rebuilt at the end, it will instead be
299+
iteratively enhanced until a final product is produced. Fig.~\ref{fig:proto}
300+
from \citep{EvoProto2} displays the process.
301+
302+
\begin{figure}[H]
303+
\centering
304+
\includegraphics[width=0.6\textwidth]{figures/prototyping}
305+
\captionsetup{justification=centering}
306+
\caption{Evolutionary Prototyping
307+
\label{fig:proto}}
308+
\end{figure}
309+
310+
Using this method will enable the code and project to carry some technical debt
311+
whilst still using continuous delivery. There is a higher
308312
risk to the quality of the product but as this is an individual process I am in
309313
control of that and thus it will be consistent. All technical debt
310314
accumulated and areas for improvement will be documented in the

figures/costOfChange.gif

4.55 KB
Loading

figures/prototyping.png

42.2 KB
Loading

0 commit comments

Comments
 (0)