Tina Ostrander, MS, gives her IT students real-world experience with local clients, setting them up for Scrum certification—and job offers.
Instructor, Software Development, Green River College in Auburn, WA
MS in Computer Information Technology, MA in Theology, BS in Cognitive Science
Tina Ostrander knows that learning can be challenging and sometimes even painful. But she also knows that those difficult classroom moments can provide opportunities to learn. So when students at Green River College in Auburn, Washington, stumble in her class, she doesn’t catch them. Instead, she lets them figure out how to correct course.
What makes the situation unique, however, is that students are working on real projects for real customers when they stumble.
Five years ago, Ostrander, a software development instructor and Certified ScrumMaster (CSM), began infusing Agile software development and the Scrum framework into the curriculum for a course called Web Development Frameworks.
The idea was to give students the tools they need to collaboratively develop data-driven web applications for a local business or nonprofit organization.
Challenging students to deliver a product to a real client—usually for the first time—helps them see value and meaning in what they are learning, Ostrander says.
“[Students] ask a lot of good questions and a lot of bad questions and make a lot of wrong assumptions. Two weeks later, they present their work, and the client says, ‘I don’t need that. Why did you do that?’ Then they have to go back and start again,’” Ostrander says. “It’s painful for them, but they learn through doing.”
And they are successful. The clients for one recent project were Green River College Aviation instructors, who had no way to account for students’ flight hours and certifications completed outside of class. Ostrander’s students solved the problem by creating a custom flight tracker web application in which students could log their hours and instructors could track their progress.
Traditional software planning can be inflexible
Ostrander was concerned with the “waterfall mindset” of traditional software development, in which each step is planned in advance to such an extent that it becomes difficult to adapt along the way. To prepare her students to enter a career in software development—where requirements and budgets (and minds) are often in flux—Ostrander wanted to introduce students to a more flexible approach, using a methodology and pedagogy that allows teachers and students to adapt, change, and learn based on experience.
Teaching agility through real projects for real clients
Ostrander developed a program for her third-year Bachelor of Applied Science students that teaches them to work together within the Scrum framework. The idea is to lay the foundation of Scrum—before they have even learned what that is—by immersing them in the fundamentals: teamwork and collaboration, product sprints (timeboxed production periods), client product reviews, and feedback implementation. To provide them with the opportunity to put these ideas into practice immediately, Ostrander tasks them with completing a team-based website development project for a real-world client, under her guidance.
This project also primes students for future courses using Agile/Scrum, as well as a Scrum Alliance ScrumMaster certification test. As a result, most students graduate with both a BAS and a CSM certification, along with a professional portfolio of several real-world products, making them more competitive in the workplace.
“Countless students have come to me to say, ‘I got my job or internship because I had that project experience.’ ”— Tina Ostrander, MS, CSM
Course description: Students form software development teams and build responsive database-driven web applications. Focus on understanding and integrating the various technology components of modern web applications. Survey of security practices in the web technology stack.
See resources shared by Tina Ostrander, MS, CSMSee materials
Lesson: Learning Agile and Scrum through client interactions
To put the ideas of Agile/Scrum into practice in her IT 305 course, Ostrander breaks her students into teams of four. Each group works in parallel with the same client, developing software in two-week sprints complete with planning, product reviews, and retrospectives. Through it all, Ostrander coordinates their efforts.
Because the course is already packed with necessary web programming information, and because students will not be Scrum-certified until the following summer (in between their junior and senior years), Ostrander does not teach Agile and Scrum directly. Instead, she lays the foundation for them with a learning-through-doing approach. That means having students function with an Agile mindset and Scrum framework—working off a product backlog in two-week sprint cycles, for example—without spending class time specifically teaching Scrum.
Ostrander concedes that this also means that not everything they do is Scrum-approved. “The one thing that’s very un-Scrum about the course is that not only am I playing the Product Owner by creating the backlog and prioritizing the tasks but I’m also telling them, ‘These are the tasks we need to accomplish in sprint 3,’” she says. “In the Scrum framework, the teams would choose the tasks, or ‘user stories,’ themselves.”
Nonetheless, Ostrander is able to weave the Agile mindset into a learning opportunity and client experience that is based in the classroom. Here is how she does it:
Look for local, reliable clients
Tap your local professional network to find people who have a software or website need the student web developers can fulfill—and who will take the time to work with students.
“If you can find a client whom you have a relationship with, and you know that they’re going to be reliable and available, that’s a huge bonus,” Ostrander says. The clients must be available for an in-person product review every two weeks—known in Scrum as a sprint review. This is an important part of the students’ experience, because each team presents its work in front of the class, with the client present, and receives feedback.
If leveraging existing relationships is not an option, Ostrander suggests reaching out to local community nonprofits, who appreciate free labor but may be strapped for time. “You’re taking a gamble that they’re going to show up [at sprint reviews] and see it through,” she warns.
Ostrander also recommends avoiding brand-new startups, since their business may not ever get off the ground. That can leave the students with no evidence of their work, and part of the educational value is giving students something they can showcase when applying to internships and jobs.
Schedule a meeting before getting underway
Ostrander sets up a face-to-face meeting (without students present) to vet potential clients. She looks at their project scope in relation to her course curriculum to ensure that the two are an appropriate match. She also reviews with the client what their participation will entail. “Always meet with the client to get a sense of how invested they are,” she says. “We’ve had clients bail on us halfway through the quarter, and it’s really hard on the students.”
Team up students of similar abilities and schedules
Pair strong students with strong students, and weak students with weak students, advises Ostrander. At the core of Scrum are collaborative, team-based projects, with everyone stepping in when something needs to be done. “When you put weak students with strong students, the strong tend to carry the weak,” Ostrander says. On the other hand, grouping weak students together encourages them to lift each other up—to “sink or swim!” as Ostrander puts it.
Also, because the course requires students to work through sprints on their own, it is important for them to be able to meet together regularly, outside of class. (Ostrander notes that this is not too difficult for her students, given that her class meets in person, during the daytime—but scheduling these meetings would be more difficult for online or night-school students. And she has not yet found a free scheduling tool that meets her purposes.)
Stay hands-off until review time
In Week 3 of the 12-week course, students meet with and interview the client to get a sense of what they want and need. Going forward, the client will attend future sprint reviews and see demonstrations of the students’ ongoing work. Clients will provide them with feedback, which can be both exhilarating and painful. “[The students] go down a lot of rabbit holes, but they eventually figure it out. And they learn from each other.”
Ostrander does not usually step in or offer guidance until each sprint review (there are typically four reviews during the 11-week quarter), which is when she or the client may put the kibosh on a particular idea. Students learn through their mistakes.
The next steps aren’t always obvious. Sometimes clients change their minds many times, or even contradict themselves, and students are left to try and guess at what they actually want. “We let them try to figure it out—we call it the ‘inspect and adapt’ approach” Ostrander says.
Act as the client-student liaison
Ostrander does not want students to bombard clients with emails. Her students send her their questions, which she reviews and funnels to the client. She shares the client’s responses with the entire class.
Sometimes students will reach out anyway—the client for the Green River College Aviation project had an office a few doors down from Ostrander’s, which resulted in a lot of polite knocking. But she advises that educators protect the client as much as possible. That can help make the client’s experience more positive, which may improve the likelihood that they will participate again with another class.
The student projects—which have included a client tracking tool for a nonprofit that provides job training for people with disabilities, a budget-tracking tool for an outreach agency that provides gas vouchers and utility assistance for low-income people in the community, a flashcard app to allow students to practice their English language skills, and an online volunteer application for a local food bank—solve actual client problems, which is tremendously rewarding for all involved. Nonprofit projects are particularly gratifying for the students, giving them a sense of the tremendous impact that software development can make in their communities and in the world.
Most of Ostrander’s students go on to become software developers, technical product managers, product owners, or CSMs—which she says is astounding, given the competitive market in the Puget Sound area, where she teaches. (According to a 2018 article in the Seattle Times, “software developer” is currently the most common occupation in Seattle.)
“Countless students have come to me to say, ‘I got my job or internship because I had that project experience,’” she says.