Project Updates

Spring 2023

This semester, we were able to achieve almost all of our goals.

The first of these goals was the homepage dashboard. We worked closely with Penny (our project partner from the Kellermann Foundation) to create a homepage that had what she wanted. The final homepage includes graphics of some statistics on the database. This added a lot of utility compared to the original homepage, which was just a large image with a navigation bar.

Another change was a reworking of grant designations in the database. Although this wasn’t included in our semester goals, it was important for streamlining the database and helped with other goals. Specifically, providing a filtering method for the report generator was one of our semester goals. The grant designation changes facilitated the implementation of a filtering method.

We also added two new pages. These were a user manual page and a page for adding users. Both of these pages were included in our semester goals. The manual page allows users of the webpage to access the users manual, which contains directions on how to use the webpage. The users page allows a user to add users to the database. Users added to the database will be able to login to the webpage using the login information submitted in the users page.

Another one of our semester goals was cleanup and bug fixes. Fortunately, our project partner, Penny, met with us regularly and was able to share any concerns that she had. This included several bugs that she discovered and some minor improvements that she asked us to make. We were able to get these bugs and improvements dealt with quickly and made sure to stay updated on any new ones that came up.

A major bug that had been pointed out to us by the previous semester’s team was an issue with grant form submissions. Fixing this bug was one of our semester goals. We were able to get it fixed, and the fields with valid information no longer reset whenever invalid information from other fields is submitted.

Additionally, code cleanup was included in our semester goals. There were several files from last semester’s team which included code that was unused that we removed.

The one goal from our list that we were unable to achieve was automation of deployment to azure. We underestimated how long it would take, and it was low on our priority list, so we were unable to complete it this semester.

Our main goal this semester was to provide Penny with a working version of the webpage that she can actually use and ideally test over the summer. We did achieve this goal. The current version of the webpage has all of the functionality needed for Penny to use it. However, she plans to test it over the summer, and may be able to bring some goals to a team next semester.

November 2022

This month, the team made progress with the website and were able to accomplish the goals/acceptance criteria that we had placed in the beginning of the year.

This semester we had 4 main goals that we wanted to accomplish and use as our acceptance criteria: Add and Restore Basic Database, Fix the Report Builder, Update the User Interface, and Satisfy our Clients with Progress. Under our goal of adding and restoring basic database functions, the client should be able to update grant and organization data, pull a report data from database, organize the database using stronger relational structures, and being able to clean the database by removing excess files. We should also be able to fix the report builder by being able to generate a report and display it properly, customize the types of reports created and export reports and automate delivery. Under our goal of updating the user interface, we should be able to add more buttons that allow for additional features like more tabs, data access, customization options for viewing data, and ways to navigate and access the website easier through links, images and buttons. Our last goal for the semester would be to satisfy our partner with the progress that we are making by doing weekly checks with the clients, ask for feedback on additions and adjust accordingly, and add in features that we think will help achieve their goals outside of the ones explicitly stated.

As we were working on accomplishing the acceptance criteria, we also came across many issues, but were also able to make a lot of progress.

Issues:

  • Report builder was not working
  • Auto 0 is not working as it should
  • Figuring out which type of security to use, in order to make the website more secure

Progress:

  • Finished Auto 0 implementation
  • Finished graphic redesign
  • Discovered several undetected errors
  • Fixed date range filtering functionality
  • Added “are you sure” message when deleting donors and grants
  • Minor cosmetic redesign
  • Fixed dollar amount range filtering functionality
  • Designed function to disallow default values on mandatory fields

October 2022

Design Brief:

This month, the team presented the design brief to Andrea, Max and Taz about what the team was currently working on. We spoke about our accomplishments and what we had done so far, our goals for the semester, the path we would take to achieve these goals, any potential issues we may encounter and our current progress.

Accomplishments: 

  • Accessed the database and website through GitHub
  • Created a backup report generator
  • Repaired the organization view feature
  • Improved the UI
  • Added features to the website and debugged some of the original features

Goals:

  • Add / restore basic database functions
    • Update grant and organization data
    • Pull report data from database
    • Organize the database using stranger relational structures
    • Clean the data by removing junk and excess files
  • Fixed the report builder
    • Generates a report and displays it properly
    • Customizes the types of reports created
    • Exports reports and automates delivery
  • Update UI
    • Added more buttons that allows for additional features like more tabs, data access, and customization options for viewing data
    • Added more ways to navigate and access the website easier through links, images, and buttons
    • Added a more “modern” and “Kellermann” feel to the UI and color scheme
  • Satisfy partner with progress
    • Be able to do weekly checks with the clients to demonstrate progress
    • Ask for feedback from the client on additions and adjust accordingly
    • Add in features that we think will help achieve their goals outside of the ones explicitly states

Path on How to Achieve Our Goals:

  1. Learn JavaScript/SQL as we work
  2. Meet with our partners to prioritize features
  3. Set deadlines to get features done
  4. Divide and conquer

Potential Issues:

  • Learning new programming languages
  • Need to understand the structure of the website
  • Need to learn how to use MySQL
  • Fix bugs from previous groups
  • Understand the foundation of previous teams work

Current Progress:

  • Dylan Trang – Coordinating GitHub and helping out team members with problems, as well as automating Azure report generation
  • Robert Appling – Created backup report generator, repaired organizations view, currently tracing bug relating to adding new grants, still learning about github
  • Kelly Pham – All software is installed and is currently working on delete/edit feature of the database
  • Sanya Oak – all software is installed and is currently working on adding organizations to the database
  • Nazeeha Fatima – Set up all of the application and is currently working on the edit feature with Kelly on the database

During the design review, we were asked various questions, one of those being the security of the website. After further investigation we soon found out that the website was not as secure as we initially believed it to be, and will need to implement a form of security under the guidance of Taz. The team was also given advice on implementing a better schedule to help keep the team on track of upcoming deadlines and having a time set outside of lab time to meet up and work on the program. 

Throughout the month, although we have had some difficulties with understanding the code and why errors are showing up; the team was also able to make a lot of progress.

Progress:

  • Ran SQL code from adding grant issue on phpmyadmin – error is in javascript
  • Pushed changes to other teammates over github
  • Looked through the code and tried linking to Github
  • Fixed adding grants
  • Found out the delete button issue with API and looked up resources regarding it
  • Fixed adding organizations
  • Fixed editing organizations
  • Fixed editing grants on technical side
  • Fixed deleting grants
  • Fixed deleting orgs
  • Resolved database version issue with Taz
  • Made a schedule for team deadlines

August/September 2022

Meeting with the Clients:

This month, the team had the opportunity to meet with the client of the Kellermann Foundation and visit their office in Richardson, TX. By speaking with the client, we were better able to understand the needs and expectations of the project, as well as understand what the Kellermann Foundation’s main purpose was and what the purpose of the database was for and who the main user of the site would be. By understanding all of the various factors, the team would be better able to understand the structural design of the database/website and understand what features are important to incorporate and what features are not.

Installation of XAAMP, Visual Studio Code, and LocalHost:

During our meeting with the clients we also had the opportunity to meet with our mentor, Mr. Tom Hill. During our initial meeting we were given information as to how to access the code for the website and database and how to open up LocalHost on our personal devices. It was crucial to have LocalHost running on our personal devices because this was the site that we could view, once we had made changes to the program before sending it to Tom who would upload it to Azure Cloud, to make sure the changes we had made were working for everyone. Throughout the process of downloading and installing all of the different types of software we made a lot of progress, but we also came across many issues.

Issues:

  • Unable to run/open the local host, which led to delays in system setup and little progress in debugging the code that we were given
  • Unsure as to how to read the source code from the report generator, how to load the database of the Kellermann Foundation, as well as unsure whether due to technical glitch or personal misuse, the database was unable to produce any reports besides blank defaults from the report builder. The former uncertainty was tested with various file types, browsers, computers, report types and with and without VPN; yet there seemed to be no solution.
  • The generate button seems to refresh page
  • Found an issue on the website, where the user can create an organization in the organization tab, but the organization does not appear in the database
  • There are some organizations that are missing from the website, but is appearing in the VS Code’s terminal
  • In the progress of understanding handlebars
  • Having trouble setting up a version control of the project
  • Did some research to understand how JavaScript works in the back-end side and what role the SQL database plays

Progress:

  • Able to successfully download all code needed for the database and run the sample database and be able to make changes to it
  • Researched on Node.js, Bootstrap, Azure Powershell module and automation, and network configuration
  • Connected the VS Code to the Kellermann Foundation’s current grant website
  • Have a general idea of how the overall program works (how the front-end and back-end servers are communicating with each other)
  • Divided work among frontend and backend
  • Fixed the problem where the delete and edit button could not the page (there wasn’t any router connecting to it)
  • Figured out how to make some changes to the website front-end
  • Narrowed down possible issue sources on how to add grants to the website
  • Added a drop-down menu to delete the organization/grants
  • Fixed the connection problem with loading the github repos
  • The default report generator now produced numbers
  • Able to categorize the error while adding grants
  • Identified the error where the Organizations tab appears to only display one tag
  • Worked on generating full reports

March 2022

For April, we have made a lot of progress in the database, design, and report! We are using the same link https://kgrantdbv1.azurewebsites.net however, this time you won’t be able to view it since we created a log-in system!

What we added

  • Log-in system
  • Default report
  • Organization Table
    • Add org
    • Edit org
    • Delete org
    • View org
    • Add grant
    • View grant
    • edit grant
    • delete grant
  • The donor table is disabled for now
Log in system
Org Table overview
Report builder – only a default one for now

March 2022

For March, we have achieved a new goal in which our prototype is now up and running on the cloud. Currently, it’s accessible by anyone through the link https://kgrantdbv1.azurewebsites.net with a new Grant table! However, this is still a prototype that needs editing and security which is our goal for the rest of the semester.

We have also had another meeting with our client in which we gathered more requirements and preferences. This helped us understand their perspective. The picture below shows our plans to further enhance the prototype.

February 2022

Our team was able to conduct a very resourceful requirement hearing with our client. We learned about what the client likes and hates about previous databases, this allowed us to create a simple database prototype that was introduced to the client. We got an overall positive reaction to the database including the following comments:

  • A very user friendly and intuitive design.
  • Solved the comment box issue in previous databases in which word count was limited.
  • Phone compatibility through bootstrap.

A few negatives that will we hope to get fixed in the next month:

  • More coloumns are required (e.g. grants, donation amount).
  • The ability to add multiple contact information for big donars.
A quick view of the current database