Deleted User wrote: » Begs the question was there any testing at all. Seems trivial
iLikeWaffles wrote: » An even better question is how did 6,500 students grades only get affected. Code can only do things you tell it to do. It does not make mistakes people do.
Wombatman wrote: » Most likely down to the impact of the standardization shift not resulting in an overall grade change.
tobsey wrote: » If they’ve determined that already they’ve known about this bug for a while.
iLikeWaffles wrote: » Would be way more than 1 line of code! It would have had to find the minimum grade and the second second minimum grade. These functions are separate lines of code! Further more the minimum grade would likely be stored somewhere removed from the array of grades in order to find the second minimum. Reasonable and likely speculation would be that the company responsible were given the wrong instructions from the DoE. As in: combine the 2 minimum grades instead of the 2 maximum non-core subjects!
zephyro wrote: » tbf most likely is that one function returns a sorted array of non-core grades (correctly), then the famous "one line of code" simply takes 2 from the wrong end! easy enough mistake to make when coding but even debugging should catch it never mind the most basic of test plans, makes you wonder what other creepy-crawlies are lurking in there! :eek:
iLikeWaffles wrote: » There would need to be an assignment of the 2 variables so even if it is a sorted array these things are separate lines of code i.e. grade1 = marks[array.length()]; grade2 = marks[array.length() - 1];
zephyro wrote: » language and variable-dependent of course but these 2 lines would fit the story: grades = sum(marks[2:]) vs. grades = sum(marks[:2]) (excuse the magic number!! )
Seth Brundle wrote: » Of course there was. It's just that it was all done in the production environment
iLikeWaffles wrote: » Would be way more than 1 line of code!
GreeBo wrote: » Maybe it was written in Perl? :pac:
GreeBo wrote: » In their defence, I doubt anyone was able to provide them with test input and expected output. Very hard to write tests in that scenario.
Wombatman wrote: » On the contrary this is a very easy case for testing as it is numbers based solution and isn't complicated by the vagaries of user behavior. The calculations could have absolutely been done on paper to validate for a sample control set of individual students.
...The system was meant to draw on the core subjects of Irish, English and Maths and their two strongest non-core subjects, instead, it combined the weakest non-core subjects....In the course of the review by Department, staff found a further error in the code, where the Civic Social Public Education module was meant to be discarded and wasn't, as a result approximately 6,500 students received at least one result one grade lower than should've been, that is being rectified.
iLikeWaffles wrote: » It is a quote from the Minister of Education talking to the press. So are you saying that she is wrong about the whole thing?
Slutmonkey57b wrote: » A politician would never lie.
beauf wrote: » I never said she was wrong ; )
The third error discovered in this latest review had to do with the incorrect treatment of Junior Certificate results belonging to students who were missing one of the three core subjects of Irish, English, and Maths. The company contracted to carry out this latest review Educational Training Systems corrected this newly discovered mistake during the review process. ETS also found a fourth "issue" which "does not exactly match what is described". However the Department was reluctant to call this an error. It said it was an anomaly which had not impacted on students' results.
beauf wrote: » Its the nature of software development to have bugs. Nothing remarkable about that.
The model was designed to take the Junior Cycle results of a group of students and use that group’s results to inform the calculation of their Leaving Certificate Results. It bears re-stating; the system did not take the results of a single student’s Junior Cycle exams and apply it to that specific student’s Leaving Certificate. Rather, the system looked at performance at an aggregate class level in the Junior Cycle examinations, and applied that in calculating students’ Leaving Certificate Results.
iLikeWaffles wrote: » It's the nature of software developers to find bugs.