For this assignment, you will generate a UML class diagram for a class and implement it. In addition, you will learn how to use GitHub classroom to start a new project and submit your solution using git version control.

Pre-Lab (DUE BEFORE LAB - see due date in Canvas)

As part of the pre-lab activity you will see how to use GitHub Classroom to start your lab assignment and submit it when you are finished. You will also be adding the CheckStyle tool to help you with the MSOE Coding Standard

  • How to start a new project from your GitHub repository
  • How to commit changes to your local repo
  • How to push changes from your local repo to GitHub

The project is cloned from the GitHub repo to your local machine at the three minute mark in the video. You will likely need to authorize IntelliJ to access your GitHub account. Hopefully the process is simple enough, but you can see screenshots of what to do in Figures 13-16 of this page.

* What is the MSOE Coding Standard? * What is CheckStyle? * How to install CheckStyle in IntelliJ

The full MSOE Coding Standard can be found on our Coding Standards Page. Please be aware the videos are a few years old, and the link to the CheckStyle configuration file has changed. The correct configuration can be found at the bottom of the Coding Standards page, along with instructions on how to install CheckStyle.

What Must Be Done by the Pre-lab Due Date?


House and BuildingCostEstimator classes

The House class in the project defines a program that makes use of a BuildingCostEstimator class. You will need to implement the BuildingCostEstimator class so that the program functions properly.

The cost of the home should be based on the following calculation:

UML Diagram

You must generate a UML class diagram for the BuildingCostEstimator class.


This laboratory assignment was developed by Dr. Chris Taylor.

See your professor's instructions for details on submission guidelines and due dates.