The Capstone Experience for the BSU Computer Science BS First (solo) Project




Recommended libraries to look at:


Project 1 Sprint 4


Summary: In this final sprint in your first project, you will use all the data that you have downloaded and


Tools:

We will continue to use the same version control, continuous integration tools and programming language requirements that we put together for parts one & two.


Sprint 4: A GUI with data visualization:

You have come a fair ways in creating a project that is useful and built in parts. This last sprint will finish it up and add lots of useful features. You have more time to be self directed, but the extra time is important because you will need it.This sprint takes more time and will be worth more credit, this one sprint will be worth about two of the previous sprints

Due: Tuesday March 16th  at 11:59pm


Refactor: 

So your customer realizes that a mistake was made in an earlier sprint. please refactor your data collection from sprint2 to include


New Code:

Now create a GUI to allow the user  to interact with your project more naturally.


The steps below are numbered only to make it easier to read. If you find it easier to work on the deliverables in a different order please do so.


  1. When your program first starts up, with the GUI, allow the user to choose to either
    1. update the data
    2. run the data visualization
  2. When updating the data:
    1. let the user choose the file name for the excel file
  3. The data visualization
    1. provide the user the ability to do two forms of data analysis
      1. The first analysis should display the data in a color coded text format as a list in ascending or descending order  (let the user choose)
      2. The second should render a map to visualize the data.
  4. the data Analysis
    1. allow the user to choose the following data fr either map or text visualization
      1. compare the number of college graduates in a state (for the most recent year) with number of jobs in that state that likely expect a college education. (lets remove those that usually require a specialized school like police academies or apprenticeships). So lets remove all those professions which have an occ_code that begins with 30-39 or 40-49. (yes this is a broad brush, but we need to do this in 2 weeks)
        comparing total jobs isn't going to be perfect since it isn't entry level jobs, but that data required a second API key
      2. Compare the 3 year graduate cohort declining balance percentage to the 25% salary in the state and visualize that data

Tests:

Add additional tests to your test suite. You should include tests to make sure your data analysis functions work properly (both forms)

you should also make tests/adjust your tests to make sure that the refactor  worked properly.


For the GUI, either use a tool like selenium, or write a detailed manual test plan (with pictures)  to explain what should happen when your graphical elements are invoked. There is a lot of disagreement in the industry about whether GUI tests are worthless or vitally important.



DevOps:

as before, update any github actions with dependency management and anything else you need to make the Continuous Integration continue to function.



Recommended libraries to look at: