summaryrefslogtreecommitdiff
path: root/iadocs/crita_planning.tex
blob: 70c985ca7939b1163b0779a8ff0f3389d2241254 (plain) (blame)
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
\documentclass{scrartcl}

\subject{IBDP Computer Science Internal Assessment}
\title{Criterion A: Planning}
\author{Runxi Yu}
\date{\today}

\usepackage{tgtermes}
\usepackage{tgheros}
\usepackage{microtype}

\begin{document}
\maketitle

\section{Problems with the existing system}

There are various issues with Schoolsbuddy, the current system our school uses
for CCA registrations:

\begin{itemize}
	\item There are various race conditions and locking issues that occur when too many
		students use the system at the same time. Course member caps are enforced by
		kicking random users out of the system while over-filling some courses,
		instead of having the course choice fail gracefully. The number of remaining
		seats in each course is also not updated live.
	\item If a lot of people are trying to load the Schoolsbuddy page, it takes ages.
	\item The web interface is extremely bloated and contains more than 10 megabytes of
		unnecessary JavaScript.
	\item The main interface displays three CCA periods, and inside each CCA period you
		can choose between Monday/Wednesday and Tuesday/Thursday. That's a bit
		unintuitive.
	\item It seems to only support authentication by PowerSchool single sign-on, which
		is problematic because PowerSchool only supports a limited number of students
		logging on at the same time.
	\item The selection system does not enforce CCA hours requirements, and the CCA
		office's staff must manually verify that students have completed CCA choices
		to the year group's requirements, by literally printing out the spreadsheet
		to paper and reading through them.
	\item The school has to pay Schoolsbuddy a subscription fee, while something as
		simple as CCA selection could be easily accomplished on cheap hardware and
		minimal software.
\end{itemize}

\section{Key questions}

\begin{itemize}
	\item How does the CCA staff enter available courses, teacher information, member
		caps, and timing information into the system? Would it be okay if I just
		accept a CSV spreadsheet?   
		Apparently they use the Schoolsbuddy web page to do so. I'd add a CSV upload
		as that would be more convenient for most purposes.
	\item How do they get student choices out of the system and into PowerSchool?   
		It looks like they export an Excel sheet. See \texttt{docs/fields.txt}.
\end{itemize}

\end{document}