I tutor a fairly new Agile Project Management unit at the Queensland University of Technology (QUT), headed by a friend of mine, Chris Fortuin. INB123 ran for the first time last semester (Semester 2, 2014) for under-graduates, and it went fairly well. The students enjoyed the course overall, even though we might have made the final exam a little harder than we should have. In our defence, we also gave 40% of the grade from participating in workshops/tutorials, so I think it evened out okay.
The course material is primarily based on an Agile Project Management framework called DSDM Atern (also referred to as the Agile PM framework), with a smattering of Scrum and some other concepts.
In order to be allowed to tutor, I had to get an Agile PM Foundation certification, which involved studying a handbook and then answering a bunch of multiple choice questions online in a controlled environment. It was a fairly hard test, but I passed.
This semester we are running a similar Agile Project Management unit at QUT again, except for post-graduates, so we need to raise the bar somewhat.
In order to be allowed to tutor the post-graduate unit, I need to get another certification, the Practitioner one. Luckily this is an extension of the Foundation level, and I just have to complete another exam (multiple choice still). I assume it will focus more on application of the framework instead of just raw fact regurgitation.
I’ll post about how I actually go afterwards.
Unit of Work
Apart from the tiniest possible amount of private tutoring back in Uni, I’ve never really taught anyone anything in an official capacity before. Being that I was only a tutor, you can probably say that I still haven’t taught anyone anything, but that would be mean.
As part of the tutoring, we tried to teach by doing rather than just lecturing. showing the students Agile practices and principles used in a real situation. We tutored in pairs, students worked in groups, we did incremental assignments and ran our workshops like mini-scrums.
Pair tutoring was one of the things that the students liked the most. Obviously we stole the idea from pair programming and we got a lot of the same benefits, which was nice. It allowed the students to get the attention they needed (clarifying topics, asking questions, etc), while also allowing the workshop to continue running. It worked in our favour as tutors as well, as whenever one tutor got tired or ran out of things to say, the other was there to supplement. We’re doing pair tutoring again this semester.
Our attempt at doing an incremental assignment was a mixed bag. The university wouldn’t really let us mark incrementally, so we still required the students to submit once (at the end), which was disappointing, because that’s not really how it works in reality. Still, we encouraged the students to deliver something to us each week, both so that we could make sure that they were making progress and to allow them to get feedback to improve their final result. Not a lot of the students embraced the concept, which was a shame, but they were under-graduates, and I remember what that was like, so I can’t really hold it against them. I think if we had of been able to mark incrementally we would have seen some interesting side effects, like groups meeting their minimum viable product (i.e. marks) and then leaving their assignment there, while others would have chased that perfect mark. Ah well, maybe next time.
Mini-scrum workshops went really well. Each workshop started with a standup, we had a backlog of items in priority order and they all ended with a retrospective, where the students could give feedback, which in turn would make our next workshop better. Standard Scrum stuff. I particularly liked this approach, as it gave the students some exposure to what it was like being inside a working Scrum process, rather than what the process is supposed to be.
All told I greatly enjoyed tutoring the unit for the first time, and I’m eager to do it again. We’ve got some hard earned experience and some new ideas, and I’m eager to see how everything turns out this time.
Expect another post at some point in the future about how this upcoming semester goes.
I mentioned the DSDM Atern framework earlier, so I suppose I should talk about it for a few moments.
Its a strange framework.
It’s popular in Europe (apparently) but I had never heard of it before mid 2014, being far more familiar with the other frameworks like Scrum. That doesn’t really mean anything, as I’m certainly no Agile expert.
DSDM Atern attempts to bring some Agile into the process heavy project space, or maybe it attempts to being some heavy process into an Agile space? I’m not really sure. It feels like it fits in the intersection of those two worlds though, which I assume is it goal.
I have conflicting emotions about it, as it definitely has some great ideas, but it is also very prescriptive. While it is very careful to say that you should measure delivery of useful things over raw output, it does place a large amount of emphasis on what it calls “products”, but what most people would interpret as “documents”.
To be honest, I would view it as a transitory step, one you use in order to migrate a crazy waterfall organisation slowly towards Agile nirvana. Agile is really just a matter of trust, so I can see using DSDM Atern as a way of building trust by focusing on delivery. When you have accumulated some trust, you don’t need a heavy process, just a general goal and people who get out of your way.
Still, the unit was for Agile Project Management, and the framework is quite literally Agile PM so there’s a nice piece of alignment there.
At some point in the future I will likely revisit this topic, and talk more about tutoring at QUT. We’ve got some great new ideas for this upcoming semester, including some shamelessly stolen from EduScrum (flipbooks! student engagement!) and a different way to present assessment (as a backlog, value decided by us, prioritization decided by the students), and I’m very interested to see how they work in practice.
Its good to see that QUT is incorporating more Agile into their curriculum. Teaching new entrants to the workforce how Agile works and why is only going to improve the software development community as a whole, helping us to move away the traditional, heavily controlled processes into something much more enjoyable and effective.