UCI’s 15-month Master of Software Engineering (MSWE) professional degree program concluded with a quarter-long capstone project that, in addition to the program’s internship component, ensures students graduate with real-world experience in software design and development. The projects often have real-world impact as well, such as with the Digital Referral Database project, presented at the 2021 MSWE Showcase. Four team members — Brandon Apana, Zenyu Chang, Weiyu Guan and Mandy Tsai — collaborated with UCI’s Elder Abuse Forensic Center (EAFC) on the project, working to modernize the center’s outdated referral system.
“The Forensic Center has a database that we use to keep track of our cases and the outcomes, but the database is quirky and has some issues,” says UCI EAFC Assistant Director Jorge Solé. “It’s something we have been wrestling with for several years.”
The Digital Referral Database Project
Housed in the UCI School of Medicine’s Division of Geriatric Medicine and Gerontology, EAFC has been partnering with medical agencies, social services, legal professionals and law enforcement since 2003. The goal is to help those 65 and older who are (or are at risk of) experiencing maltreatment. UCI EAFC turns the referrals they receive from outside professionals into cases, which it stores in a database. However, the aging database is difficult to navigate and frequently crashes.
So, over 10 weeks, the MSWE team worked closely with Solé to update the current database using cutting-edge technologies such as Vue.js, Flask and MongoDB.
“We basically built a web portal where you can see all the referral cases, you can add new cases, and you can import [new data],” says Apana. “It was a 10 week project, which is a really short amount of time for a software project, but [our] system ended up being something actually usable.”
The next step is for the center’s IT department to implement the code in the UCI server and migrate the old data into the new database. Solé hopes that by next year, UCI EAFC will be using the new database.
“I was very impressed with the team and their poise in the face of challenges,” says Solé. “I had a very good experience working with the capstone project, and with this particular group, so if I had another project, I would definitely reach out again.”
A Win for Everyone
Solé stresses that the capstone project was a win-win situation. “This opportunity to have this [database upgrade] done by the students, as part of their project, was great for us because there was no financial commitment on our part.” Instead, he explains, the “commitment was to meet with them regularly and give them guidance and provide them with the experience they needed.”
The team agreed that Solé held up his end of the bargain. “It was really great working with him,” says Apana. The team gained experience relevant to their career goals, as they divided up the project based on their background and interests. “I guess a good analogy might be almost like a sandwich,” says Apana of how they approached the work. “So you have the front end, which is what the user sees, and then you have the in-between, which involves getting information from the front end and delivering it to the back end and vice versa. Then you have the database, which is all the way in the back, hidden from the user, storing all the information.”
Guan was the team’s front-end expert, so he took charge of the interface. “The most useful thing I learned from the project is the actual experience to follow a full circle of project management and collaboration with my wonderful teammates using modern team management tools,” says Guan, who was recently hired as a Rust developer at ByteDance.
Apana, who earned his computer science degree from UCI prior to joining the MSWE program, took the “in between” section of the project and worked on the API. “I graduated in 2020, which was not a great time for the job market, so this was my plan B,” he admits of the MSWE program. “But I was able to build my skills, [and] part of the program requirement is actually to have an internship [and] I got a job offer from that, so it totally worked out for me!”
Tsai and Chang, both of whom also graduated from UCI in 2020, tackled the back end. Tsai, who earned her undergraduate degree in informatics with a specialization in organizations and IT, designed the database structure and the interface that the back end uses to interact with the database. She studied informatics to focus on the “connection between technologies and humans,” and she joined the MSWE program to further her technical expertise. “With the deeper technical knowledge acquired from the program, I am now able to develop more plausible designs and to bring those designs to life!”
Chang was a bioscience major with a minor in computer science. “My interest in bioscience waned after four years,” he says, “and I just wanted to get back into computer science.” He’s now a junior data engineer at Retina AI. During the project, he focused on the parser for the Word docx import and Excel imports and export. “This involves going through the docx and pulling all the information, then mapping that information to their respective column names,” he explains. “This process is fairly similar with the Excel import, in addition to being compatible with the old Access Excel and the new MongoDB Excel.”
The team is now hopeful that their new referral system “will prove to be a powerful tool for the EAFC and their mission for years to come.”
“Every year, I learn a lot from new projects and new project sponsors,” says Informatics Professor Hadar Ziv, who leads the MSWE capstone course. “I especially appreciate and learn from projects for social or medical good, and this one certainly does good. The student team helped the center redesign and re-implement an old and crumbling database system and, in so doing, helped the center improve its services and social mission.”
— Shani Murray