Case Study BP624: Interactive programming for school-based clients
Abstract
Reference: BP624
Classroom Practice: Year 13
Unit title: Interactive programming project for school-based clients
Overview: Students learn to write an interactive quiz using computer programming and database technology.Students undertook interface design and interactivity to develop a computer program to address an identified issue for a staff-member client at the school.
Focus Points:
Background
Wellington High School is a decile 8 co-ed secondary school with a roll of around 1,000 students. Its Technology department includes Information Science teacher Vince Brannigan who, together with Marietjie van Schalkwyk, represents the school in the Beacon Practice Wellington cluster.
Vince Brannigan came to teaching after working for a number of years in telecommunications. An Information Science teacher at Wellington High School since 2002, he has played a leading role the growth of the ICT department. The department is undergoing a transition from Unit Standards based teaching to using Technology Achievement Standards.
Over the last few years the school has had a good record of student achievement both within the classroom and external exams.
Pre-planning
A major part of the year's planning was the development of a streamed teaching programme for Years 11-13 at Wellington High, with incremental skill learning (.pdf 24K) within the technological practice framework as outlined in the Components of Practice. These plans finally cemented a transition in ICT teaching in the senior school from teaching of Unit Standards-based courses to the use of the Technology Achievement Standards for assessment purposes, supplemented by Unit Standards when required.
Skills included in Information Science courses at Wellington High are selected in line with the following publications, which include a diverse range of skills that can be taught to students with a wide range of abilities and personal goals.Vince created a streamed table showing the alignment of these curricula with the progression within the Technology Curriculum, from Years 9-13 - see Curriculum document "The International Olympiad in Informatics Syllabus contains challenges for the most talented students," says Vince. "The lower levels of K-12 and some International Computer Driving Licence Syllabus modules contain skills that most people need to function in today's society. Most of the concepts contained in these documents can be mapped onto the Technological Knowledge, Nature of Technology and Technological Practice strands of the Draft Technology Curriculum."
In planning the year-long, Technology Achievement Standards-based Year 13 programme, it was critical there was a strong focus on client interaction. While the Year 13 class of 2005 had been very successful, with many of the students going on to do ICT or Science at Massey and Victoria University, Vince felt that the class was not client-focussed enough.
Although students had gained a basic understanding of database concepts and function and Java programming from their Years 11 and 12 work, in Year 13 much of the skill set they would learn would be new and included different types of mark-up and query languages, such as SQL and PHP. To contextualise this skill learning in terms of project and client needs, Vince planned to introduce the major end-of-year project at the beginning of the year. Skill development therefore resulted directly from the needs of the individual project.
This project was to provide an external client within the school with an interactive software-based solution to an identified need - either:As in past years, Vincent planned to use Futureintech Ambassador Scott Abernethy, Software Engineer for Harris Stratex. He also negotiated with Liz Richardson of Victoria University of Wellington for the use of student mentors through the implementation phase of project development.
Delivery
The year was divided into two parts - first the selection of the project and client, and the associated research and design this involved, culminating in an initial brief. The second part was the development and implementation of project proper.
The class started by first choosing their project and client - out of the 10 students that finished the class, nine chose either the interactive Technology project or the student database, and one came up with their own client. "Another student also came up with his own client for an ordering system on a cell phone," says Vince. "He did substantial research and looked at wml (the wireless markup language used in cell phones) - in the end he looked at three projects, but ended up doing the interactive Technology test."
Each student analysed their project and researched existing solutions. Research was centred at the library, to get students out of the computer lab. Most students were doing the interactive Technology project, and were pointed towards online examination environments such as WintecActive and HotPotatoes.
Vince Brannigan:
"Once you have your existing situation and your preferred solution, then you can construct a plan between the two points and organise your time. So after we did our research assignment we planned our time and resources. We did Gantt charts in Excel. And then they started interviewing the clients, planning and working on their projects."
After deciding on a possible solution, initial plans were made based on several factors: the time available, the research required, and the amount of time expected for the project to be complete. Time was a major issue as students only had 11 weeks available for implementing the project. Students used a Gantt-style chart (but made in Excel) to allocate time efficiently throughout the year in order to maximise levels of output in regard to the project. Stakeholders were identified and defined, and key factors identified and prioritised to allocate resources effectively.
The initial brief that evolved from this process was made into a PowerPoint presentation by each student, and given to the others in the class.
Students now had an applied context for the two terms of skill development that would be required for the project - the learning of different types of mark-up language for writing an interactive program from scratch, and a query language so they could include a database.
"When designing their project, students had to think very carefully about its requirements, so they can use the environment and language that is most appropriate," says Vince.
"They already had a good idea of programming. We extended that to PHP, a scripting language. They also picked up how to use a markup language and then how to use a query language and gained understanding of how it all fits together.
In the end students were given an introduction to and advice on a wide range of open source development environments and languages so they could make the most appropriate choice. These included learning to write html coding using Notepad++, learning PHP, a server-side scripting language used for generating dynamic web pages, CSS scripting for global styling, MySQL, an open-source online databasing application, and using the XAMPP package to serve the database and site.
Database design was an important new skill. "A lot of the teaching was how to design a database - something they all had to learn. They had already learnt what a database was in Year 11, and had a good understanding of how to use a SQL query language."
In terms of the design/useability, Vince encourages the use of the functional over the flashy. He uses the concept of the iPod over the ghetto-blaster as an example everyone can understand. "Do you want all these unnecessary bells and whistles, or a good clean, simple functional design that is pared-down to its absolute essentials," he asks his students.This year Futureintech Ambassador Scott Abernathy, Senior Software Engineer at Stratex Networks (NZ) Ltd, Lower Hutt, spoke to the class only once - his role with the previous class as ongoing consultant to the development of prototypes was taken over by the Victoria University student mentors. Two student mentors visited once a week to help students with their work.
"Their involvement was crucial to the high quality of the final outcomes," says Vince. "Including me that made a staff/student ratio of 1:3 at the most critical time of the project, which, of course, was fantastic. All the Year 13 students thought it was great."
Although not involved so much for this class, over the past few years, Scott has been a regular visitor to Vince's classes and has been extremely valuable in introducing workplace methodology and perspectives to his classes, and shares his practical experience and advice in individual feedback sessions with students on their projects.
Scott has been fantastic," says Vince. "He introduced us to Extreme Programming XP, which he uses at his work. XP is a break from procedural programming and enables designers to think of the system as a set of interacting objects. We now use objected-oriented programming in our teaching. Students find out what the client wants, deciding what they have to do, breaking down these tasks into smaller events or objects, then they structure their code to match. We now introduce students to objected-oriented programming in Year 11 and by Year 12 they're right into it. This Year 13 class benefited from this planning and were all using use objects in php.
Scott also introduced extreme programming XP. XP uses CRC Cards, which is a technique that would get students to role-play their system, interacting with each other as if they were each a module in the system. In 2007 we're definitely using a module approach to building stuff, as it lines up very well with the new curriculum strands."
"Also Scott doesn't use comments in his code - in fact it's company policy. His object-oriented code has very descriptive names - good variable names and good function names - so when you read it you understand what's going on. Generally the code itself tells you what's happening, with comments only for things that need a bit more explanation.
"It's great for students to be exposed in this way to innovative procedures straight from industry, to learn different ways of working. An important part of technology education is understand what models are available and to pick the right model for a particular situation."
Documentation was done is a variety of ways, using visual diaries, PowerPoint presentations, saved versions of prototypes, "I like them to have their visual diaries out when they are doing any work," says Vincent, "and make sure they are up-to-date at least once a week. Every time students reach a crossroads in their coding - either adaptations or a 'wow it works' - then they save that as a version and record in their diaries what they have done and what they're going to do next.
Excellent overviews of the project can be seen in Mounika's visual diary of her Biology quiz project and in Sam Archer's final report (.pdf 622kb) and final prototype.Time was allocated at the end of the year for reflection for those students who wish to submit their project for Scholarship - these two students took up this opportunity.
Outcomes
Vince Brannigan:
"Because the students had so much one-on-one and so much help from the Victoria student mentors, students got quite challenging projects done and functioning so well. This was a great bonus to students as every one of them gained something from their interaction with the mentors. This, and the use of industry mentors such as Scott Abernethy, has been a major factor in the increased number of students we are seeing opting for technology-related tertiary studies."
Working with 'real customers' motivated students, improved the quality of the outcomes and raised awareness amongst the students of the opportunities available within the Technology sector.
We generally do a major software project each year. Within each year's project there are a number of things identified for the students to learn, but, because of the nature of the projects and the need to meet individual requirements, they always end up learning more. Even in Year 11 now, the projects are quite large. Which is why it's important to teach students to plan their work and break it down into smaller, achievable chunks.
Vince says that a key outcome for students this year has been learning this lesson: do your planning and work out what you can and can't achieve in a year's work. "That's something all students, whether they've achieved or not, have learnt: that you can't just jump in to a project, you have to plan things first," says Vince. "And maybe when they go to university they will take that focussed attitude with them."
As with the previous year's class, a number of the 2006 Year 13 students went on to university and to pursue ICT-related careers! Their contact with the Victoria University mentors has made them realise that ICT at university is a realistic option and something they could do themselves.
Vince Brannigan:
"It's interesting. Last year we did client work with the Year 12s and 13s. This year its been the Year 11s as well, and when you look at the visual diaries of the Year 11s you can see they have a very good idea of what's required. They seem to be much more open to the Assessments Standards based environment. I'm looking forward to this new lot as they move through the levels to see what they do at Year 13."
Vince also has an ongoing dialogue with both Massey and Victoria Universities to work out ways to accommodate student transition into first year computing courses. This has resulted in some students being exempt papers based on their portfolio of work.
He also keeps in contact with other ICT teachers at schools outside the Wellington Beacon cluster, including Rongotai and Onslow. "A concern that teachers have is that a technology approach to teaching ICT may lead to students not gaining ICT specific skills, and also that students with excellent skills may fail because of poor documentation of their technological practice."
"However, with the right balance and focus, I've found that delivering ICT through technological practice does not necessarily reduce skill levels. Proof of this is the continuing success of our senior students in external skill-based competitions, with, in 2006, our two teams gaining third and fourth places in the School Team NZ Computer Society Programming Competition, a student gaining a place on the International Olympiad in Informatics New Zealand Team and a Royal Society Silver Crest Award for another student's work."
Year 13 Information Science students covered most of the material required to sit the Waikato University Computer Science Scholarship Examination by the end of week four in term 2.
What next?
Vince Brannigan:
"The move from Unit Standards to Technology Achievement Standards can mean a legacy of the students achieving a lot in the past, and then suddenly finding that it's a lot harder to be sure they're going to be marked well when dealing with clients. We've found Year 12-13 students can get very distracted by trying to get the credits - 'don't worry about what the customer wants, as long as it works'. With Year 11 now doing client-based projects this will become less of an issue."
The unit is being repeated, with improvement, for the 2007 Year 13 class.
The Year 12s going on to Year 13 were more familiar with using clients, so were briefed on the unit before the summer holidays so they can think about and maybe even set up clients over the Christmas break.
For this class Vince formalised the process of research and developing a brief by adopting a Five Questions approach, based on the MORST future thinkin tool.
This approach works through five key questions:
For his 2007 class, Vince has also developed a new set of database and PHP notes.
University mentors are being used again, and there will be a visit by Scott Abernethy.
Vince is keen to develop the use of CRC cards and role-playing systems in his teaching to help students understand the nature of the code they are writing.
He will also the introduce the CREST Award scheme one year earlier, in Year 12, so that students will have the opportunity to gain the award at the Gold level in Year 13.