UWB Logo

 

Computer Science and Software Engineering Capstone Presentations

Spring Quarter

June 12, 2020

 

Welcome to the School of STEM CSSE Capstone Symposium! We are celebrating the hard work and perseverance of our students, who have conducted their projects remotely during a very challenging quarter, amidst a global pandemic, an economic crisis, and the recent and widespread protest against racial inequities. Many presentations will be running concurrently, so you will have to make difficult decisions about which to attend.

Lobby Zoom: Any last minute announcements will be posted in the Lobby Zoom. You can also come in here to text or video chat with other attendees. Meeting ID: 98573031178

Zoom Etiquette: Mute your microphone. Turn on your video if possible, so you are providing an engaged audience rather than a blank page to the presenter. If you have a question, use "Raise Hand" under Participants in Zoom controls. At the end of the presentation, use "Clap" under Reactions to show your appreciation of the presentation. Treat being a Zoom audience similar to being an audience in a regular presentation, excessive fidgeting or moving around can be distracting to the presenter. If you or anybody in the household is streaming video during the presentation, you may get choppy video or see "unstable connection" appear on your screen.. If you are using a laptop machine, plug it in so you don't run out of power during the presentations or worse run out of power when you are presenting!

CSS Students: All CSS students must attend a CSS Colloquium before they complete their own capstone and present at a CSS Colloquium. If you are a CSS student and you need to document that you have attended the colloquium, fill out the form at Colloquium Attendance

 

 

 

ACMPT/CSSE

Room 1

CSSE Room 2

 CSSE Room 3

CSSE Room 4

CSSE Room 5

CSSE Room 6

CSSE Room 7

CSSE Room 8

 

Room-1 Zoom

Room-2 Zoom

Room-3 Zoom

Room-4 Zoom

VR Demo Room

Room-5 Zoom

Room-6 Zoom

Room-7 Zoom

Room-8 Zoom

12:30

 Tony Torzillo
"Mission Critical Push to Talk (MCPTT) - Call Detail Records"




Advisor: Laurie Anderson

 

Lauren Hager
"Alation Data Catalog"




Advisor: Arkady Retik

Mustafa Majeed

"IMD Programmer

Authentication using Deep Learning and

ECG Signal"


Advisor: Geetha Thamilarasu

CJ Hillbrand

"Virtual Academic Advisor Support Software"



Advisor: Erika Parsons

Ji-Hoon Kang
"mSET Mobile Livestreaming App"




Advisor: Bill Erdly

Temesgen Baye
"Technical Internship at Amazon (AWS)"



Advisor: Mark Kochanski

Robert Maricutu

"Summer Java Development Internship at Expeditors"

 



Advisor: Hazel Asuncion

Avery James Mortenson

"College Guidance: A Mobile Application for UWB Students"




Advisor: Nancy Kool

12:45

ACMPT

 

12:45pm - 1:15pm

 

Panel Presentation:

 

"Impacting business problems"

 

Brandon Clardy

 

Ryan Forstie

 

Hiral Vikmani

 

 

Zach Kobayashi & Jolene Truong

 

 

 

Dev Mathur

 

Advisor: Laurie Anderson

 

 

 

Ends at 1:15

Michael Ngo
"Implementing Change Management Workflow Automation"

 

 

Advisor: Arkady Retik

Adam Snyder
"Attack Detection in Medical Devices Using Machine Learning"

 



Advisor: Geetha Thamilarasu

Quan Nghiem

"VR Engineering Education Project"




Advisor: Erika Parsons

Jeremy Tandjung
"Luminator Technology Group Software Engineering Internship"



Advisor: Bill Erdly

Juan Arias
"Full Stack Development at KaJi Inc."

 


Advisor: Mark Kochanski

Elif Hepateskan
"Security Pattern Mining Leveraging Semantic-Web Capabilities"

 


Advisor: Hazel Asuncion

Jakob Wilter
"College Guidance: A Mobile Educational Platform for Android"



Advisor: Nancy Kool

1:00

Natallia Ustsiamchuk
"Technical Program Manager for Design Verification team"

 


Advisor: Arkady Retik

Daniel Gallo
"Web Application Development for JIA Imaging Project"



Advisor: Dong Si

Nathan Pham
"ThreadOS C++ Port Continuation"

 

 

Advisor: Erika Parsons

Yingjun Fan
"Quick Check Application Testing"

 



Advisor: Bill Erdly

Zoe Wisser
"Mentor Matcher: Application Fostering Peer Mentorship"



Advisor: Arnie Lund

Sepehr Yazdani
"Security Design Pattern Matching Using Machine Learning"

 


Advisor: Hazel Asuncion

Kaleb Yigezu

"Kadey Book Review Web Application"


Advisor: Nancy Kool

1:15

ACMPT

 

1:15pm- 1:35pm

 

Panel Presentation:

 

"Impacting societal problems"

 

 

Shawni Van Vessem

 

Ashley Hay

 

Callie Bianco

 

 

 Daniel Jones

 

Advisor: Laurie Anderson

 

 

Ends at 1:35

 

Samuel Krogh

"Self-aware Modular Satellite Cluster"


Advisor: Kelvin Sung

Austin Landas
"Sleep AI

on Parent Data"



Advisor: Dong Si

Megan Rasco
"VR Engineering Education Project"

 



Advisor: Erika Parsons

Jeffrey Murray
"mSET Mobile Application"

 


Advisor: Bill Erdly

William Nelson

"Software Engineering Internship"


Advisor: Arnie Lund

Andrew James Kwak
"Life at Magenta"



Advisor: Hazel Asuncion

Anya Biryukova

"Software Development at Airship Industries"

 



Advisor: Yusuf Pisan

1:30

Yuto Akutsu
"Virtual Reality and Collaboration"



Advisor: Kelvin Sung

Noah McMichael
"Iterative Method for CT Reconstruction with a Learned Regularization Term"



Advisor: Dong Si

Marc Skaarup

"VR Engineering Education"

 



Advisor: Erika Parsons

Lei Wu
"Alexa Skill for Convergency Insufficiency Symptom Survey"



Advisor: Bill Erdly

Mevin Santhosh
"​Implementing an AWS Service to Efficiently Store & Query Subnet Data"



Advisor: Arnie Lund

Tolaesh W Mengeste
"Full Stack Developer for Prime Directive Collective"

 


Advisor: Min Chen

Marcela Gomez
"Custom Website Template for Content Content Systems"

 


Advisor: Yusuf Pisan

1:45

ACMPT

 

1:35pm - 2:05pm

 

Panel Presentation:

"Impacting society with games"

 

Adrienne Co

&

HsinYu "Katie" Chi

 

 

Lukasz Bakun, Kyle McCulloch, & Sean McCulloch

 

 

Rachael Tustison

 

Tom Blanchard

 

Advisor: Laurie Anderson

 

Ends at 2:05

 

Daniel Smith

"Manipulation of Virtual Views in Physical Space"



Advisor: Kelvin Sung

Nodira Povey
"Applying U-Net Model to Improve the Quality of Low Dose ​and Sparse-View CT Scans"

 



Advisor: Dong Si

Daria Sykuleva
"VR Engineering Education Project"



Advisor: Erika Parsons

Yanling Zhu
"​mSET Mobile Streaming App"



Advisor: Bill Erdly

Krystle Levin

"T-Mobile TechX Internship"



Advisor: Marc Dupuis

Tri Minh Nguyen

"Mobile Development with Computer Vision"

 


Advisor: Min Chen

Jenna Martin

"Software Development for Security Awareness Training Company"


Advisor: Yusuf Pisan

2:00

Lizzy Presland
"Grammar Generation for Self-Organizing Robotic Systems"



Advisor: Michael Stiber

Cuong Vo
"Sleep AI: Machine Learning for Predicting Sleep Parameters"

 



Advisor: Dong Si

Thomas William
"Virtual Academic Advisor Support Software"



Advisor: Erika Parsons

Thaer Khalid Abudayya

"Identifying Hate Speech in Twitter Data"




Advisor: Bill Erdly

Rebecca Lynn Yang
"Psychological Factors of Social Networking"

 



Advisor: Marc Dupuis

Alex Hayden Van Zuiden-Rylander
"T-Mobile Internship"

 


Advisor: Min Chen

Xavier Cheng
"Auto  Parking Assigning Web Application"

 


Advisor: Robert Dimpsey

2:15

 

Riley Kilgore
"Internship at Maana"

 


Advisor: Rob Nash

 

 

Erik Maldonado
"Improving Performance of SIFT Descriptor Variants & Combinations"

 



Advisor: Clark Olson

Sudhana Lai

"Xemelgo Software Developer Internship"




Advisor: Jeffrey Kim

Benjamin Stephen Fulton
"A Vision of Optometry's

 Future"



Advisor: Bill Erdly

 

Andy Tran

"Full-Stack Development for Ripl Inc."

 


Advisor: Min Chen

Adam Sirkis

"Jetty Island Reservation System"


 

Advisor: Robert Dimpsey

2:30

End of Presentations Meet in Lobby

https://washington.zoom.us/j/98573031178

 

End of Presentations - Meet in Lobby

https://washington.zoom.us/j/98573031178

End of Presentations - Meet in Lobby

https://washington.zoom.us/j/98573031178 

End of Presentations - Meet in Lobby

https://washington.zoom.us/j/98573031178 

End of Presentations - Meet in Lobby

https://washington.zoom.us/j/98573031178 

End of Presentations - Meet in Lobby

https://washington.zoom.us/j/98573031178 

End of Presentations - Meet in Lobby

https://washington.zoom.us/j/98573031178 

End of Presentations - Meet in Lobby

https://washington.zoom.us/j/98573031178 


 

 

Presenters


Zachary Brader (Example)

"AuNemoLib C++"

 

Industry Sponsor: University of Washington Bothell School of STEM

 

Faculty Advisor: Wooyoung Kim

 

Abstract: Network Motifs are statistically unique subgraph patterns that exist in networks. Identifying them is an important task but can be also quite time consuming and expensive. One of the solutions, the Network Motif Library, also known as "NemoLib", significantly reduces the cost and time necessary to identify these subgraph patterns. NemoLib was originally written using Java, and later C++. The C++ version lacked multiple features that the current version of NemoLib Java and had a significantly slower runtime compared to the Java version. In order to improve upon the current C++ version, the application was extended to include the additional functionality that it lacked, its data was verified for correctness, and various methodologies were tested and implemented to improve it. By reducing the overhead during execution and fixing some bugs that caused the C++ version to incorrectly parse information, the runtime was drastically reduced. With the newly implemented changes, the C++ version is now a more competitive option on the market.

 


Thaer Khalid Abudayya

"Identifying Hate Speech in Twitter Data"

 

Faculty Advisor: Bill Erdly

 

Abstract: Social media has transformed and modernized the way people communicate. It is the most efficient and instant communication medium that connects people around the world and helps them share their opinions. However, some people abuse this freedom by using aggressive and abusive language through messages or comments that defame, insult, or target an individual or group of individuals. The mainstream media reports various cases of suicide and depression caused by social media trolling and online bullying. As a result, companies, government agencies, and security agencies are concerned about stopping or mitigating this type of user behavior. In this project, we aim to develop the method for the recognition of the hate speech in the twitter data with the help of BERT (a Bidirectional Encoder Representations from Transformers) which is used for the transformation of the twitter text to word embeddings. Using the embedding from the BERT model. By using the BERT model all the contextual relation between the word of the comments is preserved as it uses the attention mechanism called the transformers, we than training the specialized type of Convolutional Neural Network (CNN), called the KimCNN, which transform the comment to vectors. We then evaluated our model of the ROC AUC thus obtain the accuracy of 79.8% for the testing phase which is higher than the current state of the art methods.

 


Yuto Akutsu

"Virtual Reality and Collaboration"

 

UWB CCS Faculty Research

 

Faculty Advisor: Kelvin Sung

 

Abstract: During the 2020 Spring quarter, I worked on a project with the UWB Cross Reality Collaboration Sandbox (CRCS) Research Group mentored by Prof. Sung. This project focused on investigating the issues involved in collaborative Virtual Reality (VR) applications. In this project, I was in-charge of two areas while working with two other team members. The first was that I learned to work with the underlying libraries by porting an assignment from Prof. Sung's 3D Computer Graphics class to VR with Mixed Reality Toolkit (MRTK) from Microsoft and integrated multi-person collaborative functionality with the newly released Augmented Space Library (ASL) 2.0, developed by Greg Smith, a CSS grad student. After this initial project, our team started creating a 2-person collaborative VR escape room game based on the experience and knowledge gained in the first phase. Through the project, we became familiar with MRTK, ASL and integrated 3D graphics into our VR application with specific interactive functions. This process allowed me to investigate the issues of multiplayer collaborative VR applications. The results of my efforts not only increased my technical skill on integrating VR collaborative applications, but also allowed me to experience application development processes as a member of a research team and the management of team dynamics.

 


Juan A. Arias

"Full Stack Development at KaJi Inc."

 

Industry Sponsor: Kaji Inc.

 

Faculty Advisor: Mark Kochanski

 

Abstract:

The goal was to add features to a website with a virtual tour hosting service. These features allowed administrators to manage their subscriptions to the service. Work began in the database by creating a data model for subscriptions and a model for languages that be included in subscriptions. In order to send this data through the internet, research and study of HTTP fundamentals was required. Nearly 15 APIs were then created including GET, POST, PUT and DELETE. Most notable of which was a GET to retrieve all subscriptions with many possible filters to query the database.

 

After prototyping these APIs, the basics of frontend development (HTML, CSS, JavaScript) had to be learned. With these basics, several webpages were created to access these APIs, including a detailed display page, a page to directly edit the JSON, a page to list all subscriptions for a single organization and a search page for the GET API with many filters.

 

A lot of time was spent refactoring and improving both frontend and backend code as many concepts, tools and languages were being learned on the fly. This resulted in a more robust server with optimized functions database calls, as well as increasing the dynamicity and usability of the webpages.

 

During the end-to-end development of these features, the company began converting the backend to a serverless architecture. A new class was created to serve the same APIs with this new architecture. This design reduced costs as the servers no longer needed to constantly run, instead an API call would deploy a function a call on the server and end the instance once the response is sent.

 

Lastly, security vulnerabilities had been discovered while testing the APIs. Token based authorization within the HTTP headers already existed but was limited to authorizing user roles such as user, organization admin and full website admin. Another layer was required to authorize a user with an admin role to access data within a specific organization.

 

This was accomplished by retrieving the user's identity, the organization referenced within the data or transaction requested, and using both to query the database for an entry that could authorize their admin role within the organization. All existing APIs used by the entire website was enhanced with this new security layer. Escalation of privilege, denial of service, information disclosure and data integrity risks were prevented by implementing this layer.

 


Lukasz Bakun

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


Temesgen Baye

"Technical Internship at Amazon (AWS)"

 

Industry Sponsor: Amazon

 

Faculty Advisor: Mark Kochanski

 

Abstract: I worked on a machine learning project that is able to classify object in a picture as one of recyclable objects such as paper, plastic, metal, or glass. This was a team project and we delivered the architecture and the machine learning model. The model was fairly accurate.

 


Callie F Bianco

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


Anya Biryukova

"Airship Industries Internship"

 

Industry Sponsor: AirShip Industries

 

Faculty Advisor: Yusuf Pisan

 

Abstract: For my capstone project, I worked as a software developer at Airship Industries. Airship Industries is a video surveillance company based in Redmond, WA, which provides video management systems to large enterprise customers. My goal for the capstone was to apply what I had learned through my CSSE courses in an industry setting, and expand my knowledge and practice of software engineering in a professional work environment. As a software developer on the core team, I developed code for their Windows software, working with both client and server code to implement new features and fix bugs. My work involved coding with C# for Nexus Client and Metadata Server, and Delphi--a programming language from the 2001 software Delphi 6--for Airship Server and Replay Server. During my internship, I implemented and contributed several features and fixed multiple bugs for their code base. The primary software components I worked with were Nexus Client, their client software that allows viewing of video footage and metadata; Airship Server, their server software that records and sends live and playback video; Metadata Server, a server that deals with camera metadata; and the Enterprise Management System (EMS),  a web-based software that provides customers a way to manage servers, cases, cameras, users, and permissions all in one application. By working at Airship Industries, I got to understand what it means to be a software developer. I experienced what it's like to work with a massive code base that had been in development for over ten years, and learned to work with older development environments like Delphi 6, and what it meant to have "tech debt." I collaborated closely with a team of software developers and worked with other company teams like quality assurance, marketing, and customer support in order to deliver software products that fit the needs of customers. I learned about the importance of backwards compatibility and that it's critical to think about how code changes in one area can affect other parts of the system elsewhere. At the end of my capstone, I received an offer to continue working at Airship Industries, and I accepted. The performance review from my manager and director of software development at Airship Industries, Jim Qi, indicated that my quality of work was good in their four review categories: quality of work, communication, taking initiative, and reliability.

 


Tom Blanchard

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


Xavier Cheng

"Auto Assigning Parking System"

 

Faculty Advisor: Robert Dimpsey

 

Abstract: For my capstone project, I decided to develop a parking system which has the feature to assign parking spaces for the drivers. Many times, when drivers enter a parking area, they would just drive around the parking lot until they find a desirable parking spot. This behavior could create congestion inside a parking area, especially for a one-way parking garage (UWB South Parking Garage). The goal of this project is to create a web application that assign drivers to the next available parking spots, so they would not keep driving inside the park area to look for spaces. The three parts of this application are a website, a MySQL database, and an ALPR (Automated License Plate Recognition) API. For the website, administrator could use the "initialization" page to set up a customized parking area. The administrator could also use the "add" and "remove" pages to input the parking information. A text input or an image upload would be accepted. The "enter" and "exit" pages are created for parking garage gates, when the buttons are pressed, they would invoke the connected camera and captures the plate number. If a license plate image is presented, the image would be sent to the Plate Recognizer API to decode the plate number. After that, the data would be inserted to the MySQL database. For the result, the application automatically saves the vehicle's entry time, leaving time, and space parked in the MySQL database without the needs to input manually. With the highly customizable "initialization" page, this web application could be used in different parking situations including parking garage gates, event parking, or valet parking. Throughout the project, I got the chance the learn about database and web application, which I did not have the opportunity to take the course in UWB. I also learnt about Java servlet and Apache Tomcat.

 

 


HsinYu (Katie) Chi

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


Brandon Clardy

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


Adrienne Co

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 

 


Yingjun Fan

"Quick Check Application Testing"

 

UWB CSS Faculty Research

 

Faculty Advisor: Bill Erdly

 

Abstract: The Educating Young Eyes vision project aims to increase the awareness of the importance of functional vision in children's learning ability. It develops Quick Check Application is testing for near vision problems in children and recommending they go to the optometrist if they show signs. There are five kinds of test items, namely Near Vision Acuity Test, Distance Vision Acuity Test, Distance Vision Acuity with Flippers Test, Stereopsis Test, and Convergence Insufficiency Symptoms Survey. It is carried out through Android phones, the child is shown symbols and asked what they see, as well as give a quick survey. Since wireless and mobile healthcare systems have always been the target of hacker attacks, and the Quick Check application contains a lot of student data and medical test data, it may face the threat of viruses, cracking, secondary packaging, and so on. To ensure the user's data confidentiality and the smooth operation of the application, for the test Quick Check Application, I am focusing on security tests. It uses many different test tools to test the application. Tests content includes test whether each step of the application meets the requirements, whether the application has security features, it can guarantee the safety of user data, and connect to the network safely. Plan to perform APK decompiling, client program security test, client protection test, and sensitive information security test respectively. All the test results showed that the developers of this application have sufficient security awareness, and the security level of the software is low risk. Through this project, I learned some application testing skills. Learned about common security vulnerabilities in applications. Learned to use various security testing tools. Discover and analyze application security vulnerabilities. Understand the principles of client programs and prevent hacker attack skills.

 

 


Ryan Forstie

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


Benjamin Stephen Fulton

"Educating Young_Eyes (EYE)_Center Neuro-Optometric Database Gamification"

 

UWB CSS Faculty Research

 

Faculty Advisor: Dr. Bill Erdly

 

Abstract: "Gamification" refers to the process of applying elements and concepts of games into other activities in order to improve the user experience. This project involved gamifying vision therapy applications within a web framework (the Neuro-Optometric Database, or N-OD). It is important to make the applications enticing for the sake of younger users of the software, as vision therapy is more effective with regular usage. One application within the database, the Fixation Stretch application, was chosen to be the baseline for the new gamified N-OD application framework. Initial planning of the new framework was made through rough sketches and digital mock-ups, before it was eventually fully assembled in an independent "sandbox" model of the N-OD. The user interface was redesigned in order to appear more appealing and game-like, and elements such as high scores and in-game medals were added in order to further enhance the experience of the application. The creation of the framework for the Fixation Stretch application within the N-OD serves as the baseline to be applied to all future applications in the system. In order to demonstrate this eventuality, the project also involved the creation of a series of mock-up web pages made to demonstrate how the new gamified framework could be applied elsewhere within the N-OD, in addition to the primary functional Fixation Stretch application framework.

 


Daniel Gallo

"Web Application Development for JIA Imaging Project"

 

UWB CSS Faculty Research

 

Faculty Advisor: Dong Si

 

Abstract: Over the course of the past 3 quarters of this research project, I have assisted in developing a web application to help technicians diagnose JIA (Juvenile Idiopathic Arthritis) in children. Nearly 300,000 children in the United Stateshave some form of JIA. Currently, Seattle Children's Hospital is the only clinic in the Pacific Northwest that screens for JIA. This web application would allow technicians to take a thermal image of a potentially affected area and upload it to the web app to get screened and possibly diagnosed instead of having to come to Seattle Children's Hospital for screening. The functionality of this web application allows for a technician to upload a thermal image of a patient's legs and select the knees, ankles, and a midpoint for screening. They can then submit that image and the click points to an API to analyze the image using the click points and receive a diagnosis of JIA in each of the screened areas (knees and ankles). The web application would also give then a detailed analysis of the regions of interest in each leg. This web application would allow for JIA to be diagnosed, without having to travel to Seattle Children's Hospital for screening.

 


Marcela Gomez

"Custom Website Template for Integration into Content Management System."

 

Industry Sponsor: Btown Web

 

Faculty Advisor: Dr. Yusuf Pisan

 

Abstract: I was hired by Btown Web to fill two areas of need; create custom website templates that can be integrated into content management systems and UI/UX design.

A static website was created using HTML, CSS, and JS. Basic functions a client could later access those sections within the CMS for easier maintenance. This gives the administrator control over the comments section of a blog, update blog content and photos, and provide page search options. Local by Flywheel is used to launch the site onto WordPress by creating a server on your local machine. From an administrator account, the end user can then approve comments, access contact emails from a sign up form and update content. The objective of Btown web is to increase services to customers looking for a custom design and easier website maintenance.

I worked with one client to redesign their existing website to increase donations and make their services easier for their audience to find. Highline Schools Foundation's existing site was lacking consistent branding, important resources and donation options were hidden several pages deep and lacked a way for a donor to easily find a compelling motivator to donate. Once changes were made with these considerations in mind, site wide testing was performed to make sure are links are directed to the right location and the website presents correctly on all screen sized from using Chromes inspector. Emphasis was given to prioritize donation options to HSF.

Of the 60+ pages in the original site, content was organized, improve or updated down to 40 pages of relevant content. Sprints were organized to deliver working components of the site starting from the home pages down to the next level of landing pages as they appear across the navigation menu. The client received two hours of face to face training on how to use the CMS before delivering the final project. The site was published to the internet May of 2020.

The goal of this internship was to gain experience in working in front end development, UI/UX design, use kanban board to organize deliver of large quantities of work, and learn to engage stakeholders int the process.

 


Lauren Hager

"Alation Data Catalog"

 

Faculty Advisor: Dr. Arkady Retik

 

Abstract: My capstone project was an internship at Liberty Mutual Insurance, working with an agile squad using Scrum. Data analysts were frustrated trying to work with the vast amount of data available to them. For example, they couldn't find the data they need to do their job or were unsure who to go to with questions about the data. They did not know what the best sources were, if any, or were unsure how to join it together, among other questions. It took a lot of time to organize the data, leaving little time left to analyze data. To solve this, I worked on a Data Catalog using Alation, a SaaS product. This is a one-stop shop for users, containing metadata about datasets, from all the sources. The business value is that it allows analysts to spend a little time organizing the data, leaving a lot of time left to do their job. To process datasets for the data catalog, I worked with AWS Glue to find the locations associated with a dataset in Alation and added it manually. I wrote Java code within AWS Lambda functions to further automation processes. I used AWS Identity and Access Management by updating a cloud formation template file to grant the right people access to certain datasets based on security classifications set by data stewards. I also worked with Atlassian software – most notably Jira which helped us manage our Scrum sprints, Bamboo to build and deploy code, and Bitbucket to work with the repositories and git version control. I used Sprint Tool Suite to write code and MySQL Workbench to query our connected MySQL database we use for certain services we provide to other teams. The project will continue beyond my internship but has been successful thus far. We have received positive feedback from the business users that Alation has made their job much easier by saving time and expediting the ability to deliver queries.

 


Ashley Hay

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


Elif Hepateskan

"Security Pattern Mining Leveraging Semantic-Web Capabilities"

 

Faculty Advisor: Hazeline Asuncion

 

Abstract:

During the Winter2020 - Spring2020 quarters, I have assisted one of UWB faculty project named Data Provenance. 

 

Overall, the goal of this project is to address the problem with web application security gaps toward cyberattacks. It utilizes software traceability and reverse engineering methods which helps engineer to develop a novel framework. 

 

The ability to identify existing patterns in source code is especially important for legacy code that needs to meet new security requirements. It serves the purpose of helping security engineers to rapidly understand which security mechanisms have been designed into the existing code base. The mined security design patterns can then be compared with security requirements. 

 

During the first half of my period, I focused on developing Sparql queries using Semantic Web technologies to mine design pattern over source code. I first started learning design pattern that were prior on the list of the team like Proxy Design Pattern, Visitor Design Pattern, Factory Design Pattern and etc. I first developed small java projects to these patterns so I could use them to mine with my Sparql queries later.

 

In the second half of my duration, I worked with one of other graduate student for a publication paper which will be publish on International Conference on Software Maintenance and Evolution from Sep 27th to Oct 3rd. The publication is about Automated Query Generation for Design Pattern Mining in Source Code. I worked on extracting relationships from patterns' UML diagram, test the automated generated query over source code, improve the query if necessary and then check the result to calculate Precision and Recall table. I also researched on finding more open source projects to add them in our library.  

 

At the end of my term,  we were able to develop and mine Sparql queries for about 15 different patterns with a Precision and Recall outcome. We have enriched our library with different open source projects to be able to test our queries for a better result

 

 


CJ Hillbrand

"Virtual Academic Advisor"

 

Faculty Advisor: Dr. Erika Parsons

 

Abstract: Erika Parsons' Academic Advisor project is intended to provide advisors and students the tools to generate school schedules based on user preferences. The project has been ongoing since 2016 where a collective mind of undergraduate and graduate students have developed and refined the academic advising project. The goal was to build and expand on modules relating to the interconnectivity of the whole project. One of the modules created was a data generation program that creates a larger input space for machine learning frameworks.  Another module was created for the course network API that allowed for better interconnectivity of the research project. The course network API allowed for the retrieving of prerequisite courses for a given class ID. The primary focus resided in a grading engine, where academic schedules are evaluated. The evaluation returns a specific score that coincides with the relevance of the schedule to a given student. The implementation for the grading engine revolved around a robust design. Having separate components for different criteria allowed for a more modular and easily expanded upon grading engine. The criteria being graded includes preset decisions that were collected from academic advisors. In addition to predefined criteria students may enter unique identifiers that would allow for more personalized class schedules. Although, the three components vary in scope, all three modules advanced the progress of the academic advising project.

 


Sesario Hiroyuki Imanputra

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


Daniel Jones

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


Ji-Hoon Kang

"mSET Mobile Live-streaming App"

 

Industry Sponsor: Luminator Technology Group

 

Faculty Advisor: Bill Erdly

 

Abstract: Luminator Technology Group (LTG) provides technology solutions for Aviation, Transit, and Railroad transportation products. Apollo Video Technology, a sub-company of LTG, hosted the group and I for the internship. Their mSET Software Modules allow their clients to view a specified bus, plane, or railroad car's video and/or audio in real-time as well as save the clips and download them to their local machine. The mSET web application works well on a laptop or desktop computer but falls short in terms of viewing the video stream(s) on a mobile device such as a smartphone or tablet. The intended end-goal for this project was to produce a mobile application that'd work on Android tablets specifically but have potential functionality with Android smartphones and iOS devices as well.  The group and I quickly decided on our technology stack to maximize time efficiency. Following a plethora of start guides for our technology stack, we began replicating the mSET web version into a mobile format. The extensive amount of testing included familiarizing ourselves with how the mSET Open API interface worked by first handling the data in Python, a programming language most of us were already familiar with. Porting over the main logic over to Flutter, we definitely ran into a lot of problems concerning the critical functions of the application. There were moments where the feasibility of the project itself went into question but through a series of resolutions, all roadblocks were eventually cleared and successfully created a functional app.  The application worked for Android smartphones and tablets but not for iOS at the time of development. We successfully showed that we could integrate the mSET livestreaming module into a mobile application and get real-time video and audio. The project served as a feasibility check for Luminator Technology Group to see if such an application was possible with their mSET software. Though the application had some bugs by the end of the internship, the team and I were successfully able to show Luminator Technology Group and Apollo Video Technology that their mSET software could be integrated into an Android app for a smartphone or tablet. 

 


Riley Edward Kilgore

"Internship at Maana"

 

Industry Sponsor:

 

Faculty Advisor: Rob Nash

 

Abstract: For trading companies, shipping costs and revenue are the most significant determining factors in the total profit of the company. By reducing shipping costs and increasing revenue we are able to drastically increase the profitability of trading companies. In order to reduce shipping costs and increase revenue without increasing the fleet size of the client, the client has hired us to create an optimization solution that will provide the most profitable routes for their current fleet. Given a set of vehicles, a set of depots, and a set of deliveries to be made (where each delivery is assigned a quantity, start date, end date, etc.), find the most profitable routes for the vehicles to take from their current position to fulfill all deliveries. The approach that we have taken in our solution is to first come up with a set of schedules that are viable to the problem at hand by constraining possible schedules based on travel time, docking quantity, etc.; and then run a linear optimization over the set of schedules that is available. By taking this approach, we have managed to create a solution that is able to provide a reduction in cost and increase in revenue for our client. Furthermore, the client is satisfied with the speed at which the solution is able to provide answers, and the answers are satisfactory to the customer.

 

 


Zach Kobayashi

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


Sam Krogh

"Self-Aware Modular Satellite Cluster"

 

Industry Sponsor: Tethers Unlimited Inc.

 

Faculty Advisor: Kelvin Sung

 

Abstract:

The ultimate goal of the project I assisted on during my internship at Tethers Unlimited Inc. (TUI) was to reduce the cost and risk of investing in space satellite technology. Satellites are often outfitted with multiple redundant parts in case any of them fail due to hazards, but this causes them to be rather expensive. Our project aimed to fix this issue by developing a satellite architecture that's just as resilient as others, but far cheaper. The primary conceit was to use multiple independent but interconnected nodes that could keep watch on one another, each being able to adjust its behavior in the event of a failure in the others.

 

The project was only in its infancy, so I had two primary responsibilities – Develop a prototype program to demonstrate how nodes could use one another to resolve problems caused by radiation corruption, and lay the groundwork for future phases of the project by researching other protections that could be implemented at various levels.

 

By the end of my time on the project, I had successfully developed a “File Verification Algorithm” that enabled even just two connected nodes to assist each other in resisting constant simulated file corruption. The collection of protections that I'd researched became a core portion of the proposal for the project's next phase of funding. In addition, I'd also taught myself python, low-level computer networking concepts, and a multitude of approaches to low-level hardware error detection and correction.

 

 


Andrew James Kwak

"Life at Magenta"

 

Industry Sponsor: T-Mobile

 

Faculty Advisor: Hazeline Asuncion

 

Abstract:

Since October of 2019 I have been an intern at T-Mobile through their TechX internship program. Working part time in the Digital Security Organization (DSO) on the Cyber Comms & Awareness team. Our team facilitates any sort of cybersecurity awareness initiates through events, campaigns and communications and helps provide support to Business Operations.

 

Many of my projects are centered around utilizing SharePoint, such as migrating all DSO sites to newly redesigned  modern UI Team Sites on SharePoint Online, creating a virtual event site for Cyber Security Awareness Month, an Onboarding and integration site for new DSO team members, and helping automate various business functions by augmenting SharePoint with the Power Apps and Power Automate platforms.

 

Using SharePoint, we have increased our capability of quickly sending out meaningful up to date information to our audience. Also utilizing these tools, we can create highly customizable forms, complex workflows, automate many manual tasks, and centralize and store artifacts that used to exist in E-mails/Word/Excel sheets into highly visible SharePoint lists.

 

 


Sudhana Lai

"Xemelgo Software Developer Internship"

 

Industry Sponsor: Xemelgo

 

Faculty Advisor: Jeffrey Kim

 

Abstract: This report discusses the experience of an intern at the startup Xemelgo with a focus on working on working on the inventory solution. This report will go over the team practices, lessons learned from the project, and challenges faced during the course of the project. This report also goes over the two main projects during the course of this capstone: an Audit page and Alerts for Expired Items.

 

                                                           


Austin Landas

"Sleep AI on Parent Data"

 

Industry Sponsor: UW Population Health Initiative

 

Faculty Advisor: Dong Si

 

Abstract: Sleep AI is a project aimed to use machine learning to analyze actigraphy sleep data. This project is tailored towards toddlers with health conditions that can affect sleep, such as juvenile idiopathic arthritis (JIA) and asthma, as well as their caregiving parents. Families with chronically ill children experience significant time, resource, and other burdens. The gold standard sleep study involves going to a special lab and undergo one night of polysomnography, which is challenging for these families. Upon data collection through a special watch that measures sleep, technicians score the data by determining when the subjects sleeps and wakes up. The goal of Sleep AI is to automate this process. I used different python libraries to pre-process parent data until it was ready to use for machine learning. From there, I created various models to predict if the parent was awake, resting, or asleep during the night. I used K-nearest neighbors , Naive Bayes, Decision Trees, two versions of Random Forest, bagging classification, Easy ensemble, and Neural Networks. I also worked on optimization methods such as weight balancing and oversampling, as well as verifying the models through cross validation and comparing validation set accuracy to testing accuracy. By using SMOTE oversampling, I was able to obtain results; among the best of them were bagging classification, which was 93>36%, random forest, which was 93.90%, and balanced random forest, which was 94.80%. These findings show that implementing a balanced random forest yields the best results for the machine learning models. However, there is opportunity for further optimization by continuing to use data augmentation and other techniques that can benefit the machine learning models. Futhermore, there is future opportunity to optimize the neural network through different activation and loss functions, neuron amounts, validations, dropout, and other methods that may potentially result in even better accuracies.

 


Krystle Sue Levin

"T-Mobile TechX Internship"

 

Industry Sponsor: T-Mobile

 

Faculty Advisor: Marc J. Dupuis

 

Abstract: My T-Mobile TechX Internship was with the Digital Security Organization under the Capability Management and Governance team. The projects I worked on were divided into these two categories, Capability Management and Data Security Governance. In the Capability Management space, I oversaw and worked with KPMG to develop an automated Capability Maturity Assessment against the NIST Cyber Security Framework. For this project we developed a questionnaire, identified and refined a scoring logic, mapped NIST 800-171 and ISO/IEC 27001 controls to capabilities, identifies gaps in the assessment, conducted User Acceptance Testing, and launched the pilot for the application.

 

In the Data Security Governance space, I was responsible for updating and creating policies, standards, and processes for managing T-Mobile Hardware Security Modules, which hold the cryptographic keys for T-Mobile applications. Additionally, I identified and tracked the tools used by Data Security and relevant information needed by the senior leaders of the Digital Security Organization. I was also responsible updating and improving Data Security weekly status reports sent out to the enterprise.

 


Mustafa Majeed

"IMD Programmer Authentication using Deep Learning and ECG Signal"

 

Industry Sponsor:

 

Faculty Advisor: Geetha Thamilarasu

 

Abstract: This work implemented a deep learning model for biometric authentication of entities seeking access to Implantable Medical Devices. These devices' wireless capabilities pose a security risk for patients as unauthorized access could result in exposing private information and compromising the device's critical functionality. It is necessary to address this risk by implementing security measures such as authentication that complies with the specific constraints of Implantable Medical Devices. In this work, we use the patient's Electrocardiogram signal to authenticate programmers attempting to communicate with the implanted medical device. Our proposed solution was chosen based on the evaluation of deep learning models with a different number of hidden layers for accuracy rate and the number of false positive classifications over 10 folds. The results show that a CNN with 10 hidden layers achieved an accuracy of 99.7% with 2 false positive predictions out of 5,184 samples over 10 folds.

 

 


Erik Maldonado

"Improving Performance of SIFT Descriptor Variants & Combinations"

 

Industry Sponsor:

 

Faculty Advisor: Clark Olson

 

Abstract: This project examines methods of descriptor variants and combinations related to combining or condensing single or multiple descriptors. Descriptors capture information about keypoints and store them in vectors to be used in comparision functions. A keypoint describes a particular area of interest within an image like a pattern or distinct structure that has been identified as significant. That point is then transformed into a vector to invariably describe particular data. Invariant descriptors also allow the comparison to descriptors generated in one image to descriptors generated in other images. Improving the precision of descriptors would improve the match accuray across multiple applications. My project encompased three goals, implement pooling channels for individual descriptors, implement pooling between different descriptors, implement stacking after domain size pooling, and quanitfying changes in performance using MAP with the goal of improving descriptor accuracy. In general, pooling removes too much information for the amount of benefit received. Color data does not benefit from stacking over domain size. This could mean that relationships between colors is not as important when varying domain-size or could be better captured by different or newer algorithms. Spatial data benefits from descriptor stacking. This could imply that a lot of information is being lost when only one domain size is considered.

 

 


Robert Arthur Maricutu

"Summer Java Development Internship at Expeditors"

 

Industry Sponsor: Expeditors

 

Faculty Advisor: Hazel Asuncion

 

Abstract:

During the summer of 2019 I spent 3 months working as a full-time Java Developer Intern at Expeditors in Seattle. During my time there I participated in several events and training sessions with fellow interns as part of their internship program. In addition, I was also integrated into my team for the work that I would be doing there. This team consisted of other developers, quality assurance engineers, a scrum master, project managers, a technical lead, and a software architect.

 

Right off the bat I received an isolated project to work on a scheduled database purging service. This was nerve wracking but exciting for me as I had no previous experience with any databases. I was able to see this project through from design meetings with other developers, to testing with a QA engineer, and finally the chance to release both to a QA server and production. After this initial project I really began to integrate with the team. Getting a better feel for the code base I became more active during standups, sprint grooming's, and retrospectives. While on the team I was able to work with a wide range of technologies and experienced more than I could have imagined possible in such a short amount of time.

 

Towards the end I was able to perform a presentation for the internship to over 40 people including business leaders and the VP of their technology department who I had a chance to meet and speak with previously. I had heard a compliment from a manager two levels above mine that he had good words to say in the elevator after about my presentation. In addition to this presentation I was able to participate in presenting our sprint deliverables to business stakeholders. Originally, I was only driving the presentation but towards the end I got the courage to go up and speak for the team.

The goal of this internship was to approach the job with an open mind and gain some real-world experience. Through good mentorship and access to resources and technology I increased my technical abilities. More importantly though, I realized the importance of asking questions, working as a team, and taking a chance. I walked away from this experience with a job offer and months of positive memories, too many to list here.

 

 

 

 


Jenna Martin

"Software Development for Security Awareness Training Company"

 

Industry Sponsor: MediaPRO

 

Faculty Advisor: Yusuf Pisan

 

Abstract: The primary goal of this Capstone project was to participate in infrastructure development and develop the core automation framework for two web applications offered by MediaPRO. Before working for MediaPRO, the organization primarily relied on black-box manual testing strategies and I was tasked with creating structure and standardizing the test suite and then implementing the basic acceptance and regression tests into the automation development so that staging testing and production validation could be performed more efficiently.

Using the software development lifecycle, I gathered requirements from our product and engineering department to define the basic acceptance and regression test cases. In the planning stage, I mapped out the applications with concept diagrams and decided to implement a dynamic approach to locate individual user interface objects, create functions that test each object, and scripts that run the tests for each segment of the web application. This allows the automation framework to be highly cohesive and loosely coupled so end-to-end testing can be performed or a user can elect to run individual tests. In applying this design, I have located the majority of the elements within each application and created functions to test these elements, which allowed me to concurrently develop and code the framework.

Another facet of my Capstone project was to expand my skill sets to other crucial roles in engineering, including Developer Operations (DevOps) and acting as a liaison for Support to escalate customer requests so that I could assist or document potential bugs within our product line. As a DevOps engineer, I automated the process workflow for customers requesting single sign-on for our third-party LMS system by implementing a serverless web form using a variety of Amazon Web Service tools that greatly reduced the process for clients. I developed CloudWatch canaries to monitor the uptime of our production applications, updated and integrated repositories into SonarQube for code analysis as the code enters our integration environment, and participated as a member of the deployment team for every release.

As MediaPRO continues to enhance the applications, there is more work required to complete the automation framework; however, I made significant progress in getting the core automation developed for the applications. Agile software development and engineering require more than writing code, many components of engineering are required to make a deployment successful. I gained valuable experience learning about the different facets to take into consideration when working on an engineering team.

 


Dev Ashish Mathur

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


Noah Paul McMichael

" Iterative Method For CT Reconstruction With Learned Regularization Term"

 

UWB CSS Faculty Research

 

Faculty Advisor:  Dong Si

 

Abstract: Due to the potentially hazardous levels of radiation used in CT imaging, interest in deep learning methods for CT reconstruction is high. In the field of CT reconstruction, an image obtained with reduced radiation, by means such as sparse-view and limited-angle imaging, is reconstructed to fill in missing or otherwise obstructed image data. Traditional approaches for CT reconstruction have used iterative reconstruction with a regularization term. One such term includes Total Variation. In this work, I contributed to a reconstruction algorithm where multiple regularization terms are learned by Convolutional Neural Networks in Python using TensorFlow and Pyro-NN. In this approach, an iterative algorithm uses a fixed number of iterations where each iterative step has a separate Convolutional Neural Network. Each network learns it's own regularization term in an end-to-end fashion. The CNN is trained by using pairs of sinogram-image data, where subsampled sinograms converted to 512x512 images are used for training. The approach described is based on the LEARN method (Chen et. al.) originally implemented in MatLab. Our results show that the algorithm significantly reduces artifacts caused by subsampled (sparse-view and limited-angle) data.

 


Tolaesh W Mengeste

"Full Stack Developer for Prime Directive Collective"

 

Industry Sponsor: Vincent Palomar

 

Faculty Advisor: Min Chen

 

Abstract: Abstract: During the Spring quarter of 2020, I worked at Prime Directive Collective as a Full Stack Developer. Prime Directive Collective is a very start up social media business with future plan of uplift the individual and share the wealth with members around the world by transferring real money directly onto phones in the form of cooperative income. The main objective of my internship was to develop a full stack web application by creating modern responsive websites that derived from a strong architecture supplementing and data-driven applications that optimize site functionality throughout the lifecycle project. I worked on creating user-based interactions websites through effective front-end architecture. In addition to that I was working on functional database applications, and search integration associated with ranking algorithms. During the quarter I mentored coding of modules, proofs of concept, integrations, and related activities to exercise knowledge gained from training and schoolwork's. I learned a lot about how to create a payment distribution system that utilizes customized payment schemes for fees paid by members of a hierarchical organization. I also gained a better experience of adapting a fast-paced environment with major deadlines, learned a new programming language and strengthen web programming skills. Agile development cycle helps me throughout the project by execute the entire software development lifecycle in smaller increments. Last but not least I got an opportunity to be a co-founder for the company.

 

 


Avery James Mortenson

"College Guidance: A Mobile Application for UWB Students"

 

Industry Sponsor: Builders Interiors

 

Faculty Advisor: Nancy Kool

 

Abstract: Incoming Computer Science and Software Engineering students can be intimidated by their lack of knowledge about what it takes to achieve academic success. There has been a consistent information gap at the University of Washington Bothell that has yet to be addressed. This gap consists of a lack of on-campus tutor availability, social interaction, and external resources for academic success. This mobile application allows UWB CSSE to find information on prerequisite and core courses. The application consists of a course tab for each prerequisite or core course for the major and allows students to post homework examples, quiz examples, worked problems, a review of the professor, and a synopsis of the course. Students can search for friends and message peers to ask questions about courses. The app also allows students to access content, otherwise unavailable, about CSSE courses, adding another learning tool to existing lectures and textbooks. Finally, the app benefits students who are not social or who may be too shy to ask classmates or instructors, allowing them to interact using the platform. The application was built using Java on the Android Studio platform and Firebase as the datastore. Implementation was used by gaining information through UWB CSSE courses, androiddevelopment.com, firebase.com, and external resources.

 

 


Jeffrey Murray Jr

"Live-Streaming Mobile Application "

 

Industry Sponsor: Apollo Video Technology

 

Faculty Advisor: Bill Erdly

 

Abstract: As apart of the Apollo Video Technology capstone team. Our cohort of four were tasked with a proof of concept, which we developed a Flutter application to deliver a mobile-live streaming application with their proprietary libraries. There was no previous solution to this task, so we had the opportunity to create our application from scratch. The focus of my work pertained to the back end and networking calls in the application. Setting up a fluid framework for our application to display current events on the front-end, and execute system calls to interact with their service.

 

The pinnacle of the project's focus was on live streaming. The implementation required WebSocket network calls. The roadblock was with Dart and SSL certificates, which was later resolved by upgrading an HTTPS to WebSocket manually. Second, once we received the data, it must be decoded. We configured the application to decode with JavaScript via WebView. This was by no means a simple task, however, with the help of our mentor, Stanislav Krasnyi, we were able to overcome these obstacles.

 

The application final state was delivered on time and included every expectation the project manager laid out initially. As a team, we gained industry experience, project management, agile development, networking knowledge, and mobile application development.

 


Will Nelson

""

 

 

Faculty Advisor: Arnie Lund

 

Abstract: My capstone was done in collaboration with T-Mobile from Winter 2020 through Spring 2020. I was working with under the Product & Technology organization developing IoT products in a team closely tied to the SyncUP PETS team. Professor Arnie Lund acted as my capstone advisor for this project, providing much needed advice and guidance as I navigated my first position inside a big technology organization. The product that I worked on is an internal dark project that used Bluetooth Low-Energy technology to interface with a cross-platform Xamarin application. We ran into several problems with the original Xamarin-based system, however, and ended up pivoting to a fully native Swift iOS application and a cloud-based serverless backend architecture. I was pulled into working on the SyncUP PETS application in May 2020, shortly before my internship ended. There, I worked on network testing and analysis and some features in the PETS Android application. My experience at UW Bothell was highly relevant, as I ended up directly applying a lot of the management and coding knowledge in my daily activities at T-Mobile. If there was one thing I would have done differently before going into the project, I would have focused on learning more about UX and management since I relied heavily on that knowledge through my capstone experience.

 

 


Quan Trung Nghiem

"VR Engineering Education Project"

 

Faculty Advisor: Erika Parsons

 

Abstract: VR Engineering Education is an application for engineering students. The main purpose of the application is to create a virtual space for engineering simulations, replacing the need for purchasing and assembling actual models. The application also allows users to interact with models, which hopefully will improve their intuition in solving engineering problems. Users can view models down to the molecular level and demos of physics concepts. The project is a collaboration between 5 individuals, which are assigned to different aspect of the project to work on, such as designing the application, creating models, developing the database, and developing the physics framework. For my capstone, I was the sole developer for the physics framework. My tasks are to improve and integrate our own physics library with the native Unity physics engine and to work on the user input. I learned to work with remote teams, taught myself physics concepts, experienced working in an agile development, and applying coding skills I learned during my years at UWB.

 

 


Michael Ngo

"Implementing Change Management Workflow Automation"

 

Faculty Advisor: Arkady Retik

 

Abstract: The main aim of this capstone project was to design, develop and automate a change management workflow called the Greenlight. The Greenlight process encapsulate everything from developing to the deployment of the changes in production. The focus of the project is to automate some of the process within the Greenlight process.

The first step in automating the management process was to analyze which area could be automated. Closer examination with the change management workflow shows that the deployment and audit tracking form were areas in the workflow that could be automated.

After identifying the potential automation areas was found, the next step was to create and design a workflow that reflects the Greenlight workflow in Jira. Using the Jira workflow, grants API control for automating deployment in Gitlab from Jira. The same automation was done with Pier, auto filling in fields from Jira to create a Pier form that is SOX compliance.

The next step was designing and creating the RESTful architecture for Automation API using Spring boot. Unit and integration testing were performed to check for logic and external API responses error handling.

The approach found provided a proof of concept of how the process can be simplified. This showed the potential and the automation using Jira, Gitlab and Pier. As a result, from automating the process, management teams reduced the manual labor of filling and tracking the information required by auditors and industry.

 


Tri Minh Nguyen

"Mobile Development with Computer Vision"

 

Faculty Advisor: Minh Chen

 

Abstract: Computer vision, with all the real-life applications this field has to offer, has given us countless possibilities of integrating its features to better benefit us daily. With the newly developed UI Kit, "Flutter" by Google, I've successfully integrated computer vision functions such as object and text recognition onto a mobile platform. Also, with the development of TensorFlow Lite and Google's Firebase, implementing these cores function has never been this straightforward for mobile programmers. The application I developed allows user to experience object text recognitions withot the use of cloud resources.

 


Nathan Pham

"ThreadOS C++ Port Continuation"

 

Faculty Advisor: Erika Parsons

 

Abstract:

ThreadOS is originally an OS emulator programmed in Java. Due to performance and synchronization issues, in addition to lack of documentation, Dr. Erika Parsons wanted the emulator to be ported in C++. The state of the project given to me was documentation, packages, and the source code were complete, but were not completely verified and validated. I was tasked to solve an issue between the Scheduler and Loader classes, verify the Filesystem classes, fix any bugs that were missed, and remove the deprecated documentation about the Boost Thread library.

 

Overall, the project was successful. The Scheduler and Loader issue was caused by an incorrect scheduling paradigm. Asynchronous suspension of threads was not possible with POSIX threads, and the scheduling paradigm was changed to cooperative multitasking. The Filesystem classes type-safe issues when transferring byte data, in addition to synchronization issues with the FileTable class. These issues were resolved successfully. Furthermore, I fixed issues with the Cache and Shell classes, where incorrect results were occurring. Finally, I removed the deprecated documentation about the Boost Thread Library in the HTML files and updated the documentation to reflect the changes I made.

 

 


Nodira Povey

"Applying U-Net Model to Improve the Quality of Low Dose ​and Sparse-View CT Scans"

 

Industry Sponsor: University of Washington Bothell

 

Faculty Advisor: Dong Si

 

Abstract: The key tradeoff in Computed Tomography (CT) imaging is between image quality and radiation dose.  The dose can be reduced in two ways: (i) acquiring data with a lower beam intensity, and (ii) reducing the number of views (sparse-view CT). Both methods decrease image quality, but in different ways. The low dose image looks like a noisy version of a normal image, while the sparse-view CT has streaking artifacts. Our interest is to improve the quality of low dose and sparse-view CT images by using deep neural networks, building on prior work using neural networks for denoising image reconstruction. The approach is based on the well known UNet model implemented in PyTorch. We compared the results with the DDNet model that has previously been described.  Experiments showed that the UNet model was producing better results for all data types, especially for sparse-view images.

 


Lizzy K Presland

"Grammar Generation for Self-Organizing Robotic Systems"

 

Industry Sponsor:

 

Faculty Advisor: Michael Stiber

 

Abstract: This project explores self-assembly of robotic systems consisting of programmable nodes. The primary goal was to produce software which creates a set of rules so that a swarm of individual nodes may self-assemble into a target structure without centralized control. When each of the nodes in a given system has an identical set of instructions which validates (or invalidates) connections between nodes, larger structures may be formed without the need for a master node coordinating assembly steps within the swarm. Each validation step in this assembly process is called a rule, and together, a set of rules is called a graph grammar. Initial efforts to implement software to produce a graph grammar for a target structure were based on algorithms described in existing research from UW Seattle's EE department and the University of Indiana. After careful analysis of the graph rewriting processes described in the aforementioned literature, it was determined that a manual application of the algorithm to a simple graph did not produce the described results. An alternative algorithm to produce a graph grammar for an acyclic tree structure was developed with the help of Dr. Casey Mann. This algorithm was encoded in a C++ application which, given a generic target graph, derives a spanning tree and produces the necessary rules for a graph grammar which constructs that tree. Additional mechanisms were needed to convert the plain-text rule representation into executable code which is compatible with a programmable node. To create device-specific code, a companion Python application was developed; the existing implementation produces an Arduino sketch given a formatted set of rules as input. Finally, the system was tested end-to-end with Arduino devices using several simple target graphs. A demonstration of the end-to-end functionality of this work has been recorded and uploaded to YouTube. All software and companion documentation for this project is on GitHub. Additionally, GitHub issues and issue milestones were used to delineate individual tasks and track works in progress.

 


Megan Rasco

"VR Engineering Education Project"

 

Faculty Advisor: Erika Parsons

 

Abstract: For my capstone, I managed a team of people developing an application  for engineering students in Virtual Reality (VR). During this last quarter, I  had three roles on the project, including project management, research  and development, and conducting usability studies. To manage the  project, I created a schedule for the team to follow, coordinated efforts of  team members, and ran weekly meetings. For research and development, I  researched database security, environmental psychology, and integrating  an open source learning assessment system and 3D engineering models  into the system. For usability, a teammate and I created a wireframe and  collected user feedback, and with a pre-alpha prototype, we conducted  another usability study with professional game developers. All this work  and much more occurred entirely virtually, with the team never having  fully met in person. In the future, students will be able to take bite sized  pieces of the foundation my team and I have built and develop on it with ease.

 


Mevin Santhosh

"​Implementing an AWS Service to Efficiently Store & Query Subnet Data"

 

Industry Sponsor: Amazon

 

Faculty Advisor: Arnie Lund

 

Abstract: The service that I worked on at Amazon is called the Network Locality Service (NLS), which provides the physical location for a given IP address or subnet. NLS's primary use case is to allow users to pick the most optimal member(s) of the set of remote hosts that provides a desired service. Currently, the way in which IP address data accessed by NLS gets queried and stored is performed inefficiently through a legacy service. My main task will be to improve the performance of this service by designing a more efficient program that can query and store the IP address data.

 

The new service I wrote aimed to provide improved reliability and maintainability by implementing it utilizing Java and Amazon's Coral service for providing server/client architecture. Since the old service contained a mixture of C++, Perl, Python, and a custom implementation of the server architecture written over six years ago, it was important to streamline the new service as engineers had trouble debugging and updating the old service due to its complexity. Additionally, I wrote unit tests with one-hundred percent code/branch coverage to improve the service's maintainability as the old service lacked thorough unit and integration testing. IPv6 support was also added in the new service to future-proof it as networks are running out of available IPv4 address. Finally, I created an internal wiki document explaining the service's design, features, and use case to aid future engineers who work or use the service.

 


Adam Wright Sirkis

"Jetty Island Reservation System"

 

Industry Sponsor: City of Everett

Faculty Advisor: Robert Dimpsey

 

Abstract: Jetty Island is a park run by the City of Everett Parks and Community Services. Jetty Island is accessible by public ferry, which has a fixed capacity that groups can make reservations to fill up. The current mode of making these reservations is over-the-phone at the parks office, which leads to inaccuracies including number of people, names, dates, and the total capacity of the ferry being exceeded, which is illegal under U.S. Coast Guard regulations. In this presentation, Adam Sirkis shows us an online reservation system created to fulfill the needs of the City of Everett in modernizing their systems.

 


Marc Skaarup

"VR Engineering Education"

 

Faculty Advisor: Erika Parsons

 

Abstract: The goal my team and I had for this capstone was to develop a VR application that helps engineering students learn and solve problems more intuitively. Instead of using expensive labs, or poorly-drawn pictures, VR Engineering Education was made to allow students to see problems as interactable 3D models. Doing this in VR allows the unique experience of being able to manipulate fully explorable models at any scale within the problems, and see, in real-time, the effects of those changes on the outcome of the problem. My role on the team was to handle the input/interaction system. I designed and implemented an easy to expand, cross-platform input system that greatly simplifies how future students will access hardware inputs. It allows a developer of any skill level to make simple, single-line calls for input, that automatically detect the user's setup, and handles the plumbing to the hardware-specific API calls. I learned a lot about designing an API from the ground up, while focusing on the simplicity of use and ease of expansion. I also gained a lot of experience working with a team remotely, and managing my time and energy effectively to get the most out of my work before deadlines.

 

 


Daniel James Smith

"Manipulation of Physical Views in Virtual Space"

 

Faculty Advisor: Kelvin Sung

 

Abstract: We often observe remote spaces from camera footage, for example, video conferencing, distance learning. We currently observe remote space from a fixed viewpoint. That is, we are limited to seeing the world from the position of the imaging device, e.g., a webcam. This can be frustrating if we want to observe something outside the visible region. Ideally, we want to be able to move the webcam anywhere in the space. Rather than viewing footage from a moving camera, we should be able to achieve the same effect by compositing footage from a collection of stationary cameras. My capstone project was an initial investigation of this problem. Picture a conference room or a lecture hall with cameras mounted in the corners of the room. The goal was to, based on video feeds of these cameras, implement a system that synthesizes footage with viewpoints that can be located anywhere in the conference room. The idea is that the user can manipulate the virtual viewpoints to positions that are in between the mounted physical cameras. To construct the synthetic view, we needed to know the distances between the objects and the cameras. A system could acquire this information several ways. We chose to use depth cameras: cameras that report distance per pixel. We believed that using depth-sensing devices would provide better accuracy and convenience compared to software solutions. I implemented a system that allows the user to move a synthetic view between two cameras. I developed the system for two depth-sensing cameras positioned less than a meter apart, but I believe the approach can be applied to devices with greater distance. Future work can add more cameras to the system and replace the depth-sensing devices with common RGB cameras by approximating depth information with software.

 


Adam Snyder

"Attack Detection in Medical Devices Using Machine Learning"

 

Faculty Advisor:  Geetha Thamilarasu

 

Abstract: Data breaches in the healthcare industry are on the rise and embedded medical devices (EMD) are among the most vulnerable systems on a hospital's network. Most embedded devices use legacy software with known vulnerabilities and resource constraints that don't allow for typical firewalls or other security protocols. There aren't many known malwares that are affecting EMDs, but that doesn't mean they are or have been infected. Medjack is a known malware that has been discovered in CT-scanners, X-ray machines, and blood gas analyzers at several different hospital locations. None of the hospitals investigated were aware that their systems were compromised, and intruders went undetected for over 3 months on average. Constant monitoring of embedded systems could become cumbersome and costly, which is why research into machine learning for anomaly detection is highly sought after. There are a few types of machine learning methods such as supervised, semi-supervise, and unsupervised learning. Supervised learning produces great results for previously known malware, where unsupervised learning is more accurate at predicting unknown malware. Our system, Meditect, uses unsupervised machine learning to detect malicious activity with reasonable accuracy. We used features extracted our simulated embedded device and incorporated network flow data to generate a model that predicts unknown malicious activity at a rate of 85% and through our supervised learning model we predict all activities at 100%. Also, we determined the feasibility of deploying a machine learning detection model on an embedded device without hindering normal operation of the device.

 


Daria Sykuleva

"VR Engineering Education Project"

 

Faculty Advisor: Erika Parsons

 

Abstract: The main purpose of this capstone project was to create a virtual reality application that would replace the need for buying and storing physical models, and that can be used anywhere. The goal of this project is to create an environment where students can interact with objects in a way they can't do in real life, and to improve students' intuition for solving problems. Users can interact with different physics models, see the real-life size or molecular views, do homework problems based on the models, and watch videos. This project was a collaboration with four other individuals, each working on a different aspect of a project, such as designing the application, creating models, working on a backend, frontend, managing the database, and managing the project. I was tasked with designing the application from scratch, working on a wireframe, creating and managing the database, and working on some parts of the user interface. I got to learn about working with remote teams, teaching myself various technologies that I've never used before, problem solving within deadlines, and strengthening academic skills I got from the previous classes. 

 

 


Jeremy Immanuel Putra Tandjung

"Luminator Technology Group Software Engineering Internship"

 

Industry Sponsor: Apollo Video Technology

 

Faculty Advisor: William Erdly

 

Abstract: Apollo Video Technology (Apollo Video) is a leading manufacturer of mobile video surveillance, fleet and information management solutions for mass transit, school transportation, law enforcement, and military and government applications. During the course of the internship, Apollo Video was transitioning in a merger with Luminator Technology Group (Luminator) and at the time of this document's writing, they have merged into one entity. Therefore, this document will refer the employer as Luminator.

As mentioned before Luminator's product are mostly public transit surveillance technology such as, cameras, microphones, etc. As one of the leading companies in the industry, Luminator has a implemented a platform where clients can easily monitor their public transportations' cameras through a web application named mSET. However, Luminator was looking for a more portable solution i.e. a mobile application. This internship revolves around finding a mobile solution for mSET.

I was put in a team of four fellow UWB students; Jeffrey Murray Jr., Ji (Jayden) Kang, and Yanling Zhu. We decided on using Google's cross-platform development environment for both android and iOS, Flutter.

We as a team not only had to teach ourselves Flutter, but also internal tools such as Luminator's existing streaming API to stream the live video feed onto the device. During the internship we had our obstacles such as debugging the streaming implementation and fixing some bugs, but we managed to work together and solve it.

Overall, I applied the things I learned at UWB as a CSSE student and learned many industry practices in different areas such as communications and version control. I believe that I can use this experience to propel my future career in the industry.

 


Ethan Thomas

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


William Thomas

"Virtual Academic Advisor"

 

Faculty Advisor: Dr. Erika Parsons

 

Abstract: Erika Parsons' Academic Advisor project is intended to provide advisors and students the tools to generate school schedules based on user preferences. The project has been ongoing since 2016 where a collective mind of undergraduate and graduate students have developed and refined the academic advising project. The goal was to build and expand on modules relating to the interconnectivity of the whole project. One of the modules created was a data generation program that creates a larger input space for machine learning frameworks.  Another module was created for the course network API that allowed for better interconnectivity of the research project. The course network API allowed for the retrieving of prerequisite courses for a given class ID. The primary focus resided in a grading engine, where academic schedules are evaluated. The evaluation returns a specific score that coincides with the relevance of the schedule to a given student. The implementation for the grading engine revolved around a robust design. Having separate components for different criteria allowed for a more modular and easily expanded upon grading engine. The criteria being graded includes preset decisions that were collected from academic advisors. In addition to predefined criteria students may enter unique identifiers that would allow for more personalized class schedules. Although the three components vary in scope, all three modules advanced the progress of the academic advising project.

 

 


Tony Torzillo

"Employer-Sponsored Project with F5: Mission Critical Push to Talk (MCPTT) Call Detail Records"

 

Faculty Advisor: Dr. Laurie Anderson

 

Abstract: The customer uses the F5 Big-IP software as a SIP security proxy to provide firewall and NAT function in a Mission Critical Push to Talk (MCPTT) infrastructure. I worked on the project as part of a pre-sales engagement. for my role, the majority of the work in the project required creation and modification of F5 iRules. An iRule is an event-driven language that allows the Big-IP system to manipulate network traffic. The solution required custom iRules that could modify the SIP headers to account for the additional requirements of running in a 3GPP infrastructure for a mobile service provider.

The project required modeling of the system in a virtual lab infrastructure using tools such as SIPP, virtual machines in VMWare and public clouds such as Microsoft Azure, and testing of iRules in those simulated infrastructures.

Ultimately, the iRules had to be tested in the customer environment with real phones running the MCPTT software.

The iRules provide the customer with the ability to troubleshoot calls placed through the system by creating Call Detail Records (CDR's).

The customer now has the ability to gain additional insight into the calls placed through the MCPTT system.

I learned a great deal about the SIP protocol, especially the specific nuances in a push to talk system. I gained some additional knowledge of modeling calls using SIPP. Documenting the existing iRules was a critical component of making the project successful.

 


Andy Tran

"Full Stack Developer for Ripl Inc.

 

Industry Sponsor:Ripl Inc

 

Faculty Advisor: Min Chen

 

Abstract: For my capstone, I had an internship at Ripl Inc, where I worked as a full stack developer on their social media app. I gained valuable experience in working with many different tools and languages, as well as working in an agile environment. Throughout my stay, I worked on new features for the app while also making improvements to existing features. The most notable feature that we added was the ability to choose stock media for our app. Working on this feature allowed me to know how to add third-party APIs into our system, and see how to wire it into our backend system, then wiring that into the frontend, which all in all, the feature exposed me to many of the "non-coding" aspects of being a software engineer.

 

 


Jolene Truong

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


Rachael Tustison

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


Natallia Ustsiamchuk

"Technical Program Manager for Design Verification Team at Microsoft"

 

Faculty Advisor: Arkady Retik

 

Abstract:

The main aim of this capstone was to show what it takes to be a Technical Program Manager at one of the leading IT companies. Program Management plays an important role at Microsoft Company. Working as Program Manager for Design Verification team requires lots of collaboration between design, software, hardware and a manufacturing teams. These teams work closely throughout various development stages in order to deliver a success product to the market.

           

While working as PM at Microsoft I learned about software development phases/milestones that each product has to go through in order to become available for purchase. I learned how to coordinate multiple projects across various teams. Lead onshore and offshore testing teams, as well as perform testing myself. How to use debugging sessions to identify issues and find solutions for them. Learned that how to track technical issues. I learned how to create roadmaps for current and upcoming projects. I learned how to create cost estimation to make sure we have appropriate resource coverage for all testing aspects of the project.

 

As the result, my team was able to successfully launch two products to the market. We have launch Microsoft products called Surface Earbuds and Surface Headphones. Both products use Bluetooth technology which plays an important role for our team due to the fact that my team is responsible for designing and developing windows Bluetooth devices for Microsoft Company. 

 

Even though we ran into few roadblocks, one of them knows as Covid-19, overall results were very satisfactory.

 

 


Shawni Van Vessem

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


Hiral S. Vikmani

""

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


Cuong Tan Vo

"Sleep AI: Machine Learning for Predicting Sleep Parameters"

 

Faculty Advisor: Dong Si

 

Abstract: Sleep is an important factor to health; insufficient sleep can reduce physical, emotional, and mental wellbeing, As we can infer sleep with the lack of physical activity at night, having a model that can predict sleep quality based on physical activity would help people understand more about their sleep based on their daily activity. In this research, the scope of this project is on the sleep quality of caregivers and their children who may have JIA. The caregivers and their children wear an actigraphy sensor called Actiwatch to collect their physical activity. Actiwatch is a wearable medical device that use accelerometer to measure movement made by Phillips. The data collected is used by doctors to calculate the sleep parameters. To calculate sleep parameters, they need to label an interval status which tells whether the person is awake or asleep at a specific minute. Labelling interval statuses is a long and tedious process as there are hundreds of thousands of entries. The goal of Sleep AI is to automate this process of labeling interval status of physical activity for the caregivers and their children. however, labeling interval status has complex rules that depend on many factors and many of these rules may overlap; so deterministic or rule-based solutions from a traditional programming approach cannot be used. This makes machine learning a great approach because machine learning can produce a formula or rules that can classify the interval status. The data is separated into two sets. One set includes only the children daa and the other includes both the parent and children data. This separation lets us answer whether or not physical activity of the children and adults affect the interval status the same way. After applying different techniques such as over sampling, under sampling, cross validation in combination with different algorithms such as K nearest neighbor, Naive Bays, Decision Tree, Random Forest, and Neural network to build different models. The best models were produced with the Random forest algorithm. The model that has only children data, has 94.61% accuracy, and the model that has both parent and children data, has 93.79% accuracy. With this high accuracy we can replicate the labeling interval status process, and the results suggest that the model with a specific target of children performs better compared to a model that targets both parents and children.

 


Jakob A. Wilter

"College Guidance, A Mobile Educational Tool for Android Devices"

 

Faculty Advisor: Nancy L. Kool

 

Abstract: The education industry has remained one of the key markets that has not managed to effectively introduce a universal platform for social interaction, information distribution, and resource sharing. The objective of this capstone project was to create a scalable and comprehensive prototype which could effectively bring to light the benefit of such an application. 'College Guidance' is an Android based mobile application that allows UWB CSSE students to communicate and share information. Powered by Android Studio and Google Firebase, the system allows users to setup and personalize their own profile, join courses, privately message with peers, and post content to threads. It promotes community development through two key functions referred to as the Messaging System and the Posting System, all within a one-stop-shop closed mobile environment for various educational purposes. The platform encourages users to engage with others and experienced students can share advice with their more novice peers. Universities, classrooms, and groups are able to create and tailor their own pages and sections on the platform for their student body. Our platform demonstrates that a social networking approach to academic environments can be beneficial. College Guidance creates a more dynamic, immersive, and impactful collaborative atmosphere, and simply put, a more fun and exciting learning experience.

 

 


Zoe A Wisser

"Mentor Matcher: An Application Fostering Peer Mentorship"

 

Industry Sponsor:

 

Faculty Advisor: Dr. Arnold Lund

 

Abstract: The vision for my capstone project was to develop a cross-platform mobile application that could effectively and safely match, help to sustain the relationships of, and provide resources to student mentors and mentees. The concept for this individual project was derived from my Education coursework and my own experiences mentoring in multiple capacities on campus, finding outstanding mentors, and wishing I had access to more female mentors within Computer Science. Access to mentors can be a crucial turning point for many new college students; college self-efficacy and perceptions of mentorship are the most important indicators of persisting past the first semester of college, and successful first-year mentorships have been proven to have an overall positive effect on one's self-image, individuality, academic and social achievement, skills necessary to succeed, and sense of belonging on campus.

 

With this in mind, I set out to develop an application that could potentially serve as a starting point for students that may not have access to mentors or available mentorship programs. From taking CSS 480 (Principles of Human-Computer Interaction), I had learned about the importance of user research and design thinking as a foundation for great software and so decided to spend all of Winter Quarter 2020 conducting user research. In my research stage, I had organized multiple rounds of user interviews and received questionnaire responses from over a hundred students across UW Bothell. Through the overlapping design stages, I was able to synthesize my research and ideas into personas, journey maps, and storyboards that would help guide the sketches and paper prototypes to follow. Then, throughout Spring Quarter, I was able to use the research I had done to build out my application.

 

Mentor Matcher is a React Native mobile application to help potential student mentors and mentees across college campuses develop and sustain mentoring relationships. The interfaces and majority functionality have been completed for four core features: user matching, profile customization, task management, and communication. Overall, this project allowed me to grow in my knowledge of user research, design, scripting languages and frameworks, database management, and project management while working with a topic that I deeply care about.

 


Lei Wu

"Alexa Skill for Convergency Insufficiency Symptom Survey"

 

Faculty Advisor: Bill Erdly

 

Abstract:    With the increasing risks of vision problems and decreased awareness among adults and children, there is an increase in the need for implementation of tools available for people which can be accessed at home for helping in the area of detecting near vision disorders. The EYE Center for Children's Vision Learning & Technology is a university-sponsored non-profit organization dedicated to the research, development, and education of technologies. It aims to help increase awareness of the importance of functional vision in children's learning process and provide software tools accessible. The Convergence Insufficiency Symptom Survey (CISS) is developed to determine whether a person is suffering near vision problems. The survey includes fifteen well-researched diagnostic questions. After all questions are answered, then the system calculates the score to indicate whether near vision issues are present or not. This project focuses on developing an audio-automated tool by using an Alexa device, that enables the CISS survey to be readily available and accessible to individuals outside of the traditional optometry office. It's targeted to ease the process of taking a survey for people suffering from near vision disorders. The further enhancements such as providing multilingual capabilities, improving the understanding of various dialogue forms, and embedding real-time usability metrics can improve the efficiency of this approach.

 


Rebecca Yang

"Psychological Factors of Social Networking"

 

Industry Sponsor:

 

Faculty Advisor: Marc J. Dupuis

 

Abstract: Various studies have shown that there are a number of biases at work with respect to accepting a stranger's friend request through online social media. Based on these studies, this project will focus on four specific factors involved in social networking and how they affect an individual's decision to accept a stranger's friend request on social media. One of those very influential factors is gender. Men and women have varying behavior towards privacy concerns where women have more tendency to protect themselves, thus they are less likely to accept a friend request from a stranger. Additionally, women are also more likely to be accepted by both genders. Two other influential factors are skin tone and ethnic background. Even though the battle against discrimination is an old topic, it still rings quite relevant today. Studies have shown that darker skin individuals are less likely to be accepted as a friend versus their lighter skin tone counterpart. This is not just a question for black individuals, but also other ethnic or racial groups as well. A study conducted in a Hispanic community showed that darker skin Hispanics were perceived as less intelligent even while holding multiple degrees. The final factor this project will discuss is affiliation. Research studies have shown our desire for like-minded individuals; however, no studies were found to focus specifically on shared affiliations, such as academic institution affiliations. I hypothesize that individuals are more likely to accept friend requests from those who have similar academic affiliations than those who do not. Studies support that those with similar values are more likely to befriend a stranger.

 

 


Sepehr Yazdani

"Security Design Pattern Matching Using Machine Learning"

 

Industry Sponsor:

 

Faculty Advisor:

 

Abstract:

 

 


Kaleb Yigezu

"Developing A Book Review Web Application"

 

Industry Sponsor:

 

Faculty Advisor: Nancy L. Kool

 

Abstract:

For this capstone project, I built a book review and rating web application. The application allows users to register and log in using their username and password. Once they log in, they are able to search for books, post reviews and rate individual books, and see the reviews and ratings made by other users. In addition, I inherited data from a third-party database, the Goodreads book review web application, using API, to pull in ratings from a broader audience.

 

First, I used Harvard University library sources and found a list of 5,000 additional books not available on the Goodreads site, adding these to my books database. In addition, whenever the Goodreads site adds a book, my web application updates itself, so that my users can also see the book information.  As a result, users of my application will have access to a larger list of books.  Finally, users will be able to query for a book's details and user reviews stored in both my and Goodreads books database. Besides the ability to access the reviews and rating of books, users will be able to write their own reviews and post rating the books stored in both databases.  I added a condition limiting each user to one review and rating per book.  There is no limit on the number of books which users can review and rate. 

 

The language I used for the backend of this project is Python;  PostgreSQL was used for the database. I used Heroku to put my database online and to deploy the web application. I used Pycharm IDE by Jetbrains, with few plugins, to develop in Python and frameworks including Flask. Pycharm allowed me to enhance productivity while coding by providing some features, e.g. "suggestions."  

 

 

 

 


Yanling Zhu

"mSET Live-streaming Mobile App"

 

Industry Sponsor: Apollo Video Technology

 

Faculty Advisor: Bill Erdly

 

Abstract: Apollo Video Technology is a leading manufacturer of mobile video surveillance, fleet and information management solutions for mass transit, and military and government applications. Their web application mSET allows supervisors of transit agencies to do a live stream from the bus in the event they hear about any issues. A mSET live streaming App is a much-awaited app, requested by customers and the internal sales team which allows users to view live steam on their smartphone or tablet anytime and anywhere. 

In this project, I worked in a team of 4 students to implement this real-time cross-platform live streaming App. We worked with our mentors, the engineer Stan Krasnyi and senior engineer Michael Rebar of the company. The technology and logic for the App were referred from the existing module in the company's enterprise software application, mSET.

To build a beautiful, natively complied application for mobile, web, and desktop from a single codebase, we decided to use Google's UI toolkit Flutter and Dart language. However, Flutter is completely new for all team members. We did researches and learned by doing. The back end challenges are integrating the application with existing back-end APIs and HTTP server for user authentication and data exchange and integrating the application with a WebSocket backend server and decoding H.264 bitstream to display the live streaming on App. With the efforts of members and the guidance of mentor, we finally completed the challenges.

Our final deliverable is a real-time cross-platform live streaming App. It allows users to login with credentials, select buses and cameras, and view live streaming on their phone or tablet. We did a presentation for the stakeholders of the company and our deliverable met all the stakeholders' expectations.

 


Alex van Zuiden-Rylander

"T-Mobile Internship"

 

Industry Sponsor: T-Mobile

 

Faculty Advisor: Min Chen

 

Abstract: This capstone project was an internship at T-Mobile. While there, I was on two separate teams, both as a software engineering inter. It has taught me web development, working in an agile environment, and the need for a build pipeline for constant integration and constant development (CI/CD). The first team that I was on was the cooperate communications and digital experience team (CCDX). While on that team I helped build an API health status website using React as the framework, docker for testing and building, and was eventually built and deployed using Jenkins. Once that was completed, I started to help code parts of a new internal support site. I built out landing pages, such as "latest updates" that would pull the most recent data added to the site. I also built the "type search" function that allowed the user to start typing while on the site and it would pull up the search and query the input. The second half of the internship I was on the drone team. While there, I wrote a script that would scrape drone flight data from AWS, put it into one continuous .CSV file, and run it through an SDK that another company had made to track and visualize the in flight data of a drone on the T-Mobile network. Then I built a proxy VPN service that allowed the drone and ground control to communicate. This was done using UDP and encryption with a shared symmetric key, so there's no exchange of keys. Eliminating the chance of a man-in-the-middle attack.

 


 

 

 

Updated June 12, 2020, 4:01