June 13, 2016

CofC Course Pairs Computer Science Students With Tech Firms

Ashley Heffernan  /  Charleston Regional Business Journal

When government agencies and high-tech companies needed a piece of software created 30 years ago, they hired a developer, explained what they needed and then waited for the final product.

"You got stuck in the basement with a computer, and you got a problem to work on, and six months later you had to emerge with a solution, and that was it," said Sebastian van Delden, chair of the College of Charleston's Department of Computer Science. "There wasn't a lot of communication."

Software developers followed what is called a "Waterfall" method, in which the developer met with the client only at the beginning, to receive the product's requirements, and at the end, to deliver the finished product, van Delden said.

For the past decade, though, development companies have transitioned to "Agile" methodology –- many use an Agile-inspired method called a "Scrum framework" –- which involves a team of developers meeting with a client several times throughout the process to create various iterations of the product until the client is satisfied.

Van Delden said a Scrum team –- the name is based on the term for rugby players getting together and fighting for the ball –- usually meets with the client to get the product requirements and then again two weeks later. "At that point, we might just have drawings on a napkin to show them what it could look like," he said.

The team takes feedback from the client back to the office and works on the product. They meet again, and the process continues over and over until complete. "Teamwork is crucial," van Delden said. "The communication is crucial among the team members and also with the client and any other constituencies when developing software."

Earlier this year, 27 CofC students participated in an industry projects capstone course, the first of its kind at the college, to learn to work together and communicate.

In January, representatives from 12 Lowcountry technology companies went to the class and pitched projects to the students. Some were pet projects that the company didn't have the time, money or personnel to complete, and others were more mission-critical projects that could be integrated into the company's day-to-day operation, van Delden said.

Eight were selected, and the students were broken into teams to tackle the projects:

  • Team Bosch worked on a project to help manufacturing technicians maintain quality control.
  • Team Medical University of South Carolina worked on a smoking cessation app for Android users.
  • Team Sparc worked on an employee skill-tracking tool.
  • Team Blackbaud worked on an app to plug into the company's EveryDayHero website.
  • Team Booz Allen Hamilton worked on an app to help in military training.
  • Team CSS worked on a tool to help gather job information from contractors.
  • Team Geocent worked on a program to manage interviews during the hiring process.
  • Team Hawkes Learning Systems worked on an interactive math-learning program.

"We pretty much were working from scratch. ... A lot of it was just research and trial and error," said Lauren Donner, a member of Team Hawkes Learning Systems. Hawkes, headquartered in Mount Pleasant, wanted the college students to build software that would allow middle school students to manipulate a parabola, the graph of a quadratic function, using the movement of their fingers.

The company, which produces educational software and publishes textbooks, bought the team a Microsoft Kinect, a piece of equipment that senses movement. The students designed and built gestures: People can pull their hands apart, for instance, and make the parabola on the screen in front of them widen.

Donner and her teammates didn't know much about the technology, and neither did van Delden.

"I would give them minimal advice on what they were doing. It was their job to figure it out," van Delden said. "I wasn't telling them, 'Hey you shouldn't use XYZ technology together with ABC technology.' It was their responsibility to figure that out, to make mistakes and to start over if they went down the wrong path."

By the end of the semester, Donner said her team had successfully developed the program and learned how to work better as a team.

"We read about stuff like Agile and other kinds of things like that all the time in classes, but you really don't get a good feel for it unless you do it," she said. Donner talked about the project during her job interview at Sparc, where she started working as a junior software developer two days after graduating from CofC in May.

Six students landed either internships or full-time jobs with the companies that participated in the class projects, van Delden said.

The code for each of the projects was turned over to the companies at the end of the semester, and the college doesn't retain any intellectual property rights.

Marcel Prevuznak, vice president of research and development at Hawkes, said the students' product is probably not going to be commercially profitable for the company. But he expects to use it as a marketing tool for instructors and students to play with during conferences and outreach events.

"This was something that we had an idea about and had proposed," he said. "Several of these students embraced it and ran with it and came back to us with something that's pretty cool and pretty neat."

The company wants to participate in the class again and is already brainstorming new project ideas, Prevuznak said.

Van Delden said he was pleased with the students' work and plans to offer the course again next year.

"As a computer scientist, you have to be a lifelong learner, and there's no way someone can teach you how to be a lifelong learner," he said. "This class taught them to figure it out on their own."