School Projects


Here are some of the School Projects I have done.

Givsum Analytics Page

A two quarter long capstone project involving an actual client/company sponser and an acutal product. Givsum is a platform that allows charitable donors the ability to track and promote their philanthropic interests. Givsum provides charitites and service clubs with a tool to raise awareness, sell tickets, manage membership, organize volunteers, and collect funds. With a team of six students, we created and added an analytics page to their existing website, which displays metrics such as source, bounce rate, action rate, purchases, donations, demographics, etc. We created Mockups, Prototypes, and a Persona, we conducted Chart library research and evaluation, we routinely attended mob programming sessions, and remote meetings, and performed requirements gathering and demonstrations. We utilized Jira for project tracking (initially used Trello) and bug tracking, Zoom for meetings and mob programming, Discord, Slack and Messenger for communication, Google Team Drive for collaboration and documentation storage and Github for code repository.

www.givsum.com

INF 191 A/B Senior Design Project
HTML, CSS & JavaScript Ruby HAML Ruby on Rails Postgres Google Analytics Chartkick (Charts.js) Elasticsearch Redis Mailcatcher Webpack Github Discord, Messenger, Slack, & Zoom Jira & Trello Docker VSCode

Youtube

Gamehub E-commerce website

A quarter long, four part project, which involved building an e-commerce website. With a team of four students, we choose to build a video/computer games e-commerce website, that was implemented in four iterations. The first project, PA-1, included building the website from scratch, using no frameworks and no libaries and just a static multipage website using pure HTML, CSS and JavaScript. The second project, PA-2 involved converting the static pages of PA-1, into PHP for dynamic rendering and the use of AJAX. The third project, PA-3, involved converting the site to use Java Servlets and a MySQL database. The fourth project, PA-4, involved adding JSP in replacement of servlets that were solely used to generate HTML, and to split the project into a Web Client and a REST API to wrap the existing database.

Gamehub website

INF 124 Internet Applications Engineering
HTML, CSS & JavaScript AJAX PHP XAMPP (PHP, Apache HTTP, MySQL) Java Java Servlets Java JSPs Java POJO Jersey JAX-RS REST POSTMAN Apache Tomcat MySQL Atom & Eclipse

Github PA-3 Demo PA-4 Demo

Tile Matching Game Environment (TMGE)

With a team of eight students, we designed and implemented an extensible Tile-Matching Game Environment (TMGE). We adhered to the definition of a tile-matching game as used in this Wikipedia article Tile Matching Video Game. We created a Tetris and Dr.Mario game from our TMGE platform. The GUI is built with JavaFX and core of the code is written in Java. We incorporated Inheritance and the Factory Design Pattern. We also made use of the Java Platform Module System for encapsulating packages and Maven for build and dependency management.

INF 122 Software Design: Structure and Implementation
Java JavaFX Java Platform Module System Maven IntelliJ

Github Youtube

141OS mini operating system

Developed a mini operating system simulation. It simulates the management of multiple users, multiple disks and multiple printers all of which are considered concurrent processes. Multithreading is utilized to manage concurrent use of resources. The GUI is built with JavaFX and core of the code is written in Java.

CS 141 Concepts in Programming Languages I
Java JavaFX Multithreading IntelliJ

Github Youtube

Calendar Program

The assignment demonstrates the ability to implement the object-oriented design from a previously created UML Class Diagram, all written in Java and with built-in Java Libraries. Also, to apply two common design patterns and two refactoring methods to the project. Design Patterns implemented were the Template Method Pattern and Singleton, and the Refactoring methods used were the Null Object refactoring method and the Encapsulation Collection refactoring method.

INF 122 Software Design: Structure and Implementation
Java Command Line Interface Design Patterns Refactoring Methods IntelliJ

Github

Roomdr

Built a prototype for a mobile app, which allows students to search other students for potential roommates. Used Figma for User Interface Design and Prototyping.

INF 151 Project Management
Figma PowerPoint

Sleep Tracker

Created a mobile app, which allows a user to track sleep, sleepiness and view logged data. A user can log what time they went to bed and when they woke up. A user can log how sleepy they feel throughout the day according to the Stanford Sleepiness Scale. This means allowing a person to log how they felt on the scale's 1-7 rating system and when they felt this way. User can view overnight sleep and sleepiness data they have logged. Used Angular, Typescript and Ionic.

INF 133 User Interaction Software
Ionic Angular Typescript VSCode

Github

Spotify Browser

Created a webpage, which gathers and displays data from Spotify’s API. This assignment demonstrates the ability to gather data from an API, using HTTP requests to the backend server to trigger API Calls, develop a frontend interface which displays the data, and provides pages that support searching for artist, albums and tracks. Used Angular, Typescript and Bootstrap 4.

INF 133 User Interaction Software
Angular Typescript Bootstrap 4 VSCode

Github

Runkeeper Tweet Report

Created a webpage report, which helps a potential researcher understand a week’s worth of tweets from Runkeeper, a popular running app. The report has three main features. The report can Summarize Tweets, which provide the dates of the earliest and latest tweets in the set, how many of each category exist and how many of the completed tweets contain written text. The report can Identify the Most Popular Activities and Distances in completed tweets, and visualize how distances varies by activity type and day of the week. The report has a Text Search Interface, which allows researchers to look thorugh the tweets and their corresponding activities. Used Angular, Typescript and Vega-Lite Library.

INF 133 User Interaction Software
JavaScript TypeScript Vega-Lite library VSCode

Github

Theft Security System

Final group project for Ubiquitous Computing course. In a team of two students, the task was to design a concept for our own Internet of Things (IOT) technology. The assignment required us to find a function, a device or a purpose around which we could develop that techology and then summarize the following points:

  • Why there is a need for what you are developing?
  • Sketch out examples of your device.
  • Sketch out the interface and describe its functionality.
  • What will be the security measures put in place to prevent unauthorized access?
  • What data will be collected and transmitted?

INF 148 Project in Ubiquitous Computing
Sparkfun

View Report

Design Studio I: FamilyMonitor App

Designed an inteface mockup for the FamilyMonitor App. In a team of six students, designed an app to locate the whereabouts of one’s family members (no implementation, just determining the functionality and design of interface). Identified the project’s audience, stakeholders, goals, constraints, assumptions, and functional/non-functional requirements. Created sketches/wireframe of user interface using just Microsoft Power Point.

INF 121 Software Design: Applications

Design Studio II: Traffic Light Simulator

In a team of five students, designed a traffic simulator for a fictional professor who teaches civil engineering. The app is to be used by her students to provide education of traffic signal timing and traffic outcome, through observation of using/exploring different traffic signal timing schemes on a user configured road map. Identified the project’s audience, stakeholders, goals, constraints, assumptions, and functional/non-functional requirements. Designed UML Diagram, Traffic Light Phase Diagram and various Road/Intersection Diagrams. Determined Data Structure (Queue) to be used and Algorithm for changing of Traffic Light States and advancement of automobiles through intersections. Algorithm written in Pseudocode.

INF 121 Software Design: Applications

Design Studio III: Collaborative Math Learning

The final of the three design studios for INF121, which involved applying all of the software designs concepts together into this project. The team consisted of five students. Project involved designing a math learning application for a fictional educational software company. The company is interested in an app for kids (target age 5 to 9) to learn math using Amazon Alexa. The company is not versed in software design and is interested in the design process and would like to see detailed deliverables:

  • Application Design
  • Interaction Design
  • Architecture Design
  • Implementation Design
Our team created several design deliverables for the “Math is Fun” app: Mind Map, Personas and Scenarios, Storyboards, High Level System Architecture Diagram, Data Warehouse Architecture Diagram, Data Schema, AWS Custom Skill (pseudo code), AWS Lambda Function (pseudo code). Most of the deliverables were Low Fidelity rough sketch prototypes and no actual implementation was provided.

INF 121 Software Design: Applications

Project Template

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed vestibulum nec ligula eget luctus. Phasellus ultrices justo et egestas dictum. Nullam ut dapibus elit. Mauris eget tristique metus. Donec porta nunc a posuere laoreet. Curabitur mattis risus sed nulla sollicitudin tempus. Aliquam a porttitor neque. Aenean mattis eget nibh vel ornare. Suspendisse potenti. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Mauris ultrices mauris sit amet eros consequat, non bibendum tortor ultricies. Aenean felis neque, volutpat quis faucibus at, convallis sagittis risus. Etiam quis dolor diam.

Course Name
Skill

Learn More

Connect