Introduction: Design and Implement a library application, using Windows Forms, where a librarian could perform the following functionality:
Check in books.
Check out books.
Add an adult member.
Add a juvenile member.
Obtain member book loan information.
Upgrade juvenile membership to adult once they reach the age of 18.
(Library Inventory Control)
Microsoft Visual Studio 2008 was used for coding
Microsoft SQL Server was used to house all data
Multiple tiers were used to implement the project (i.e. Front End, Business Layer, Data Access Layer, Entities Layer)
Data was accessed in a variety of different ways (SQL Stored Procedures, LinqToSql, etc.)
Visual representation of the layers
Initial Screen on Start Up Enter a member ID into the text box . Click to retrieve the record.
Successful Member Retrieval Appropriate fields are populated upon successful record retrieval . Populates Data Grid with books that are currently on loan.
Result if not found Non-modal communication to inform the user .
Notification if Card is Expired Expiration date shows up in red . Tells the Librarian the card is expired Check In Button is disabled if the user has no items out.
If member is a Juvenile…. Two additional fields show up for Juvenile Records.
Checking in an item Clicking the Check In button triggers an event when there is an item selected . This message box pops up to give the user the option to back out of the transaction.
If you click “No”…. A non-modal message informs the user that the transaction was cancelled.
If you click “Yes”…. Data Grid is updated to reflect the change . Non-modal message to inform the user the transaction is successful
To check out an item Click on Member Services and select “Check Out”. Note: “Check Out” will not be available if member ‘s card has expired or member has 4 books out.
This dialog box shows up… Text box for entering ISBN. Text box for entering the copy number . Option to cancel . Note: Member number shows up in title bar.
Possible outcomes Non-Modal message to inform user of errors Input validators prevent user from entering bad data. Message to inform user that no such item exists. Note: If item is already out on loan, the Librarian has the option of checking it in before checking it out. In the event that the user has 4 items checked out, a non-modal message is displayed.
More possible outcomes… Item is not on loan and is available for check-out. If you click on “Yes”, a non-modal message is displayed to indicate success. If “No” is clicked, a messages is displayed indicating the operation was cancelled by user.
Data Grid is updated to reflect changes Newly checked out item is displayed in the grid.
Adding an Adult Validators prevent an add with bad data. Non-modal communication to inform user that there was a problem.
Adding an Adult If data is valid, click on the “Add Adult” button . If successful, a non-modal message is displayed with the assigned ID number.
Confirm the Add was a success Note the assigned member ID. Expiration date is one year from the date the data was entered.
Adding a Juvenile The Juvenile must be less than 18 years of age. Sponsoring member must be an adult and must not have an expired card . Other validators prevent data from being submitted. Non-modal communication informs user that there are problems.
Adding a Juvenile All data is good, so it is time to click on the “Add Juvenile” button. Non-modal communication to let the user know the add was a success and the new ID number of the juvenile.
Confirm the add was a success Note the member ID . Expiration Date is that of the sponsoring adult . Sponsoring Adult’s ID along with the valid DOB.
DBML The member object with its properties. Child classes of the member object. Stored procedures created in MS SQL Server.