ASSIGNMENTS
ASSIGNMENT 1 - ASSIGNMENT 2 - ASSIGNMENT 3
The purpose of the individual assignment is to encourage further practice for the topics covered in our book but not covered in class (due to time constraints) and to give you the opportunity to work on more comprehensive exercises than those covered in the book. Rather than giving you homework assignments centered on different topics, I prefer to give you homework assignments that build and refine a single solution. This semester's assignments will focus on solving the needs of a small Real Estate company.
Here is an overview of the 3 assignments:
Assignment 1: Create an Application that calculates the benefits and costs of owning a house.
Assignment 2: Create an Application that uses data from a database to find properties for sale.
Assignment 3: Develop Web Forms.
Assignment Submitting Standards:
All assignments are due at the beginning of the class period.
Late assignments will NOT be accepted.
All assignments should be submitted in a 9x12 manila envelope with the cover letter statement (click for sample) attached (stapled, glued, taped) to the the outside of the envelope.
ASSIGNMENT 1: HOUSE CALCULATOR APPLICATION top
PURPOSE
The purpose of this assignment is to provide you with a comprehensive exercise to practice the following material:
Review your skills from MIS 15
Use event-handling
Use arrays and collections
Use exception handling
Use multiple windows and forms
Write multiple classes
Understand UML Diagrams and translate them into Visual Basic code
Work in pairs to learn from each other
Files Needed:
You need the following files to complete all assignments: error.gif, sac_seal_c.jpeg, inform.gif
UML DOCUMENTATION
Class Diagram
Visual Studio
Visual Paradigm
SOLUTION DESCRIPTION
PROGRAM FILES: You will build a project named HouseCalculator which will calculate the costs and benefits of home ownership.
Interface Description:
Application consists of one tabbed panel which contains the 3 tabs named "Step 1: Enter your Data", "Step 2: Cost Estimates", and "Step 3: Analysis and Results". This tabbed panel appears on the top of the applet area. On the bottom of the applet area, there is a label which displays the error messages (described later).
On the bottom of the window, there is Status Strip bar with only one label which displays the error messages to the user.
"Step 1: Enter your Data" panel
Figure
1
Picture on the left contains the image shown.
Objects "House Data", "Mortgage Data", and "Personal Data" are group boxes.
All objects with white background are Text Boxes except the Loan Points which is a label.
Loan Interest Rate object is a Combo Box.
"Step 2: Cost Estimates" panel
Figure 2
"Framed" objects are group boxes and contain labels only (display data)
Objects displaying totals of calculations have larger fonts.
"Step 3: Analysis and Results" panel
Figure 3
"Framed" objects are group boxes and contains labels only (display data)
Objects displaying totals of calculations have larger fonts.
On the top of this panel, I have placed a Track Bar object (behavior of this object is described below). Cursor is Hand. Also, on the left area above the track bar, there is a label to display the values selected from the track bar (as you slide bar).
Implementation Description:
"Step 1: Enter your Data" panel
Figure 4
"Step 2: Cost Estimates" panel
Down Payment label shows the amount from tab 1 (formatted as currency).
Funding fee is the (House Price - Down Payment) * Loan Points.
Loan Amount is (House Price - Down Payment) + Funding fee.
Loan Origination Fee is 1% of the Loan Amount.
Prepaid Interest is 1 month interest of the loan amount.
Except from the costs described above, all other items have fixed costs (i.e., Appraisal Fee, Credit Report Fee, etc). Use them as constants in your code.
Payment & Interest will be calculated using the PMT Function. Interest is calculated using the IPMP function
Property taxes are 1.18% of the House Price.
Mortgage insurance is 0.5% if the Down Payment divided by the House Price is less than 20%.
Home Insurance is 0.34% of the Home Price.
Garbage and Sewer bills are fixed.
All amounts in this panel are formatted as currencies.
"Step 3: Analysis and Results" panel
When the user selects the number of Loan Terms (loan years) from the radio button, the Track Bar object updates its MAX values.
House Appreciation is the House Price times the Estd. Appreciation you typed in the "Step 1 ..." tab.
Tax Savings is the (Interest Payment of your Loan Amount plus the property taxes minus 10,000) times the total of Federal and State Income Tax rates.
Rent Expense is the amount you typed in the "Step 1 ..." tab.
Equity Appreciation is difference of your Payment & Interest minus the Interest Payment.
Opportunity Cost DP is the Total Closing Costs times the Opportunity Cost % you typed in the "Step 1 ..." tab.
Opportunity Cost MP is (PITI + Monthly Bills - Tax Savings - Rent Cost) times the Opportunity Cost % you typed in the "Step 1 ..." tab.
Maintenance is 0.3% of the House Price.
Monthly Gain/Loss is Total Benefits - Total Costs.
Cumulative Gain/Loss is Monthly Gain/Loss times 12 times the number of years selected in the Track Bar.
All calculated amounts in this panel are formatted as currencies.
If the Monthly Gain/Loss and Cumulative Gain/Loss values are positive the amounts are shown in Black text. Negative values display in Red text.
Note to help out with all these calculations, I have prepared an Excel work book that does the same thing (almost). Here it is: Home.xls.
Edits and Validations:
Figure 5
I will demonstrate this application in class and will provide more clarification.
ASSIGNMENT 2: HOUSE CALCULATOR APPLICATION Version 2.0top
PURPOSE
The purpose of this assignment is to provide you with a comprehensive exercise to practice the following material:
Use Menus
Use data sources with databases
Use ADO to write your own data access code
Use data sources with business objects
Files Needed:
You need the following files to complete all assignments: InterfaceImages.zip, PropertyImages.zip, and Assignment1. Here is the database: HouseCalculatorSQL.bak ((in SQLServer Management Studio, right click on the Databases folder and then select Restore Database).
BUSINESS DESCRIPTION
This assignment builds upon the Assignment 1.You will continue working on this application but now you will add the database functionality to it.
UML DOCUMENTATION

STATE EVENT DESCRIPTION
Application Interface
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Application Implementation
Figure 6
Edits and Validations:
Here is the database select statement:

Program has the following requirements:
Have the main menu described above.
Information displayed in your program is read and written to the HouseCalculatorSQL database.
Write your solution to include the classes shown in the class diagram above.
Pay attention to structure, style, and features.
Ask questions, in class, if you need more explanation on this assignment.
ASSIGNMENT 3: HOUSE CALCULATOR Version 3.0 top
PURPOSE
The purpose of this assignment is to provide you with a comprehensive exercise to practice the following new material:
Files Needed:
Here is Thao Lee's Assignment 2 (best, I believe, among all submitted code) and Assgn3Logo.gif.
BUSINESS DESCRIPTION
This applications builds on the previous assignments but it runs on the web.
UML DOCUMENTATION
None provided for this assignment.
ASSIGNMENT DESCRIPTION
Figure 1
Figure 2
If there is an exception, the exception message is displayed on an Error Page (design and build the error page to your discretion).
Note that your web pages do not need to look exactly like the images above. You may change the look and feel, as long as they contain the information shown in the Figures above.