CS Boilermakers Become Software Creators

05-11-2015
Writer(s): Jesica E. Hollinger

What would it be like to create an app that would improve lives and bring people together?

What if you could create a navigation app that provides up-to-date traffic information to ease your travel?  Or, what if you could create an app to help you find a partner who would join you at the gym? How about creating an app that brings groups of people together, who share common hobbies and interests, like sports, or gaming?

The students of CS 49000-SEP, also known as the Software Engineering Senior Project have done exactly that.  Each team has spent the entire semester developing an idea – from start to finish – to see their projects come to life.

Professor H.E. (Buster) Dunsmore is responsible for this course, which every Software Engineering Track student must take before graduating.  Dunsmore said the population of the Software Engineering Senior Project continues to grow.  This semester there were 15 teams of 61 students.  Already, 59 students have registered for Fall 2015.

"The Senior Project is the capstone class in Software Engineering.  It is the culmination of all that students have learned and have done in the Software Engineering Track.  The students have an opportunity to spend the whole semester creating a product that could have real-world value."

He also added that the sheer number of students would have been unmanageable without his Project Coordinator, Alina Nesen, a graduate student who worked as a software engineer in the Ukraine for Ciklum from 2010 to 2014 and did extensive software development for 20/20 vision, before coming to Purdue.  Nesen is the very first teaching assistant for the CS 49000-SEP course.

“Alina has actually used everything that I have taught our students (version control, Agile, Scrum, Sprints, standup meetings) as a professional software engineer,” Dunsmore said. “This semester she guided each team in a way that no college professor could ever do,” he added.

The members of Team Nielsen Radio, Michael Frick, Travis Henning, Jared Lindauer, and Tanner McRae worked with Nielsen (one of the CS department’s corporate partners), who asked them to create a prototype Android application that could explore the possibility of converting or expanding their current paper/online systems to an Android application interface. 

Henning said the experience was both challenging and gratifying.

“We worked as a team by splitting up different parts of our application and each working on our own components. Then, we came together to merge our results into one cohesive structure.” Henning said. “The biggest reward for all this effort is definitely the end-result being the finished application, as well as the approval and appreciation of all our project owners at Nielsen in addition to our instructors,” he added.

Team GymMate, which includes Neeraj Agrawal, Rishabh Mittal, Jai Nalwa, Ishan Shah, and Gurumukh Uttamchandani created a mobile platform for fitness buffs to find a workout partner. GymMate connects users based on their locations and schedules, with the additional ability of choosing and creating from a list of workouts to help build fitness communities around the world.

Neeraj Agrawal said this class was very different from others he has taken during his academic career.

“We all felt this class was a mixture of computer science and entrepreneurship.  Given so many resources at Purdue, the project in this class can easily be transformed into an entrepreneurial venture,” Agrawal said. “We plan to launch this application as soon as it satisfies the functional and scalability requirements,” he added.

Teammates from Cloud in a Box, including Ashley Braun, Andrew Companik, Matthew Rodgers, Matthew Wildrick, and Mark Williams took on the challenge of creating an app that would help in storing files.

Most solutions require files to be stored on a server belonging to a third party, which leaves it vulnerable to attack from a third party, or shut down by unforeseen events. Their app allows the user to store files in one’s home, and access them through a website.

Rodgers said creating the app was an exciting experience and the team enjoyed working together.

“We all enjoyed learning to make software, especially software that you see visually doing what it is intended to do,” Rodgers said.  We really liked the process of creating it, and ultimately the end result – seeing what we created come to life,” he added.

TeamUp, whose members include Travis Coria, Trevor Coria, Bo Heon Jeong, Sang Rhee, and Kartik Sawant created an iOS app that allows people to form groups or communities based on similar interests like sports, games, and hobbies. The app makes it easy to find or create groups, based on their interests and location.

Rhee said the class helped prepare him and the other students for life beyond the classroom.

“Designing and creating a project from the ground up gives us an experience we may never have in the real world,” Rhee said. “We realized how important the foundation of a project is and that all the effort spent in its design is well worth it in the end,” he added.

MyMapper teammates, Chen Gong, Zhihao Hu, Ben Pastene, Yunkai Sun, Mingsheng Xu, and Yang Xu set out to create an app that helps the user navigate traffic on the way to his or her destination. Unlike other navigational apps, MyMapper allows the user to view up-to-date information regarding moving actors in their vicinity, like busses, taxis, and police cars.

Sun said it was rewarding to meet new people and work with them to find the best possible way to get things done. She added that her teammates enjoy the structure of the non-traditional software engineering class

“We all liked the way this course is set-up, because a lot of things can be learned and not taught,” Sun said. “We learned more from completing this project than we have in any traditional lecture class on software engineering,” she added.

As the project coordinator, Nesen worked with all 15 teams throughout the semester, watching them grow and develop not only their projects, but also enhance their skills and ability to work together to solve problems in a group setting.

“Interpersonal communication can be learned in other classes, but this class is unique,” Nesen said. “Students work similarly to the way software engineers do in industry. The students learn new skills as they develop their app.”

“Every team had a team leader and my role was to keep all the projects moving forward. Students were fairly independent, but when they asked, I would give them choices and provide focus if they needed my help,” she added.