back to CSSE
Capstone schedule
Computer Science and Software Engineering Capstone Presentations
Summer Quarter
August 21, 2020
Chandler Mendoza-Eastman (T-Mobile) Faculty Advisor: Dr. Kelvin Sung |
Abstract At the start of my internship I was
assigned to the R&D team, which mainly consists of Android developers.
This would allow me to be closer to those that would be able to help me. I
was tasked with creating a proof of concept (POC) application for an internal
customer. The application needed to be written in Kotlin, the
Google-preferred language for Android app development. I can't talk about
what the app does since all the work my team does is confidential. I spent a couple of weeks learning
Kotlin at first. The next few weeks I worked with a team member to follow the
requirements and technical specifications. My POC was meant to be a basic
implementation with a simple UI to show that the requirements and technical
features were possible. The next iteration of the application was to be done
by the development team and have a more robust UI. Once the POC was done, I started
learning about architecture patterns such as MVP, MVC and MVVM. My team
wanted me to create the next version of the app using the MVVM pattern - the
POC used a single class for all display and business logic. The MVVM uses a
Model, for a repository, a View, for display logic, and a ViewModel for
business logic. We decided a Model wasn't necessary since we weren't storing
any data. I proceeded with a modified MVVM design pattern using the View and
ViewModel components with the concept of Data Binding. The second iteration of the app
won't take as long as the POC since most of the business logic could be
reused, with some modifications. After it's completion, I will present the
final product to T-Mobile leadership which includes my manager, director,
senior director, and the rest of my team. I will also create a document for
the team's internal wiki, detailing the features and technical requirements. In addition to the technical skills
I've learned so far, I've also learned a lot about the software industry. I
gained a better understanding of how sprints work in an Agile methodology,
how to communicate and collaborate with my coworkers, and better time
management with work and personal life. |
|
Updated August 20, 2020, 3:03