34
.NET Portfolio Library System Delma Hagen [email protected] (973) 263-4013

Delma Hagen Portfolio

Embed Size (px)

Citation preview

Page 1: Delma Hagen Portfolio

.NET PortfolioLibrary System

Delma [email protected](973) 263-4013

Page 2: Delma Hagen Portfolio

Library Phase I - Windows Front-End Application• User Interface Samples

Library Phase II - Windows Business & Data Access tiers• Business Layer Code Sample• Data Access Code Sample• Store Procedure Code Sample

Library Phase III - Web Application• User Interface Samples• Markup Code Sample• Code Behind Sample

Library Phase IV – Web Service Application• Web Service Code sample• Web Method Code Sample• Secured Remote Invocation Code Sample• Certificate Policy Configuration• Class Using XML Include Attribute Sample

Table of Contents

Page 3: Delma Hagen Portfolio

Develop a Windows desktop front-end to allow librarians perform daily operations managing library items and members:• Add Adult Member, Display Adult Information• Add Juvenile Member, Display Juvenile Information• Check Out an Item• Check In an Item

.Net 2.0 Multi-tired application • Presentation Layer: Windows Forms 2.0• Data Access Layer: ADO.Net 2.0• Database: SQL Server 2005

Techniques used• User input validation using error provider, regular expression checking and

event handlers• Data binding to a data grid control and related manipulation• MDI application format• Effective exception handling

Library Phase I Windows Front-End Application

Page 4: Delma Hagen Portfolio

User Interface Add Adult Member

• MDI Application format with dropdown menus allowing user select the function

• Textbox to enter member information • Input validation using error provider and regular expression checking

• OK and Cancel button to process or cancel the function

Page 5: Delma Hagen Portfolio

User Interface Add Adult Member

• When the input data is validated and the User press OK button the Adult Member is added to the Library • If the User press the Cancel button the transaction is canceled

Page 6: Delma Hagen Portfolio

User Interface Display Adult Member Information

• New member info is displayed to confirm that was added to the Library

• The Check Out menu is activated allowing the items to be checked out for the new member

• Grid shows the items checked out for the member – no items are checked out for the new member yet

Page 7: Delma Hagen Portfolio

User Interface Add Juvenile Member

• Text box is used to enter data to Add a Juvenile member on the Library

• Error provider indicating error with additional information • Status strip used for communicating errors

Page 8: Delma Hagen Portfolio

User Interface Display Member Information

• The Juvenile member Information is displayed to confirm that was added

• The Check Out menu is activated allowing the Librarian to check Out an Item

• Grid shows the items checked out for the member. Item overdue is in red.

Page 9: Delma Hagen Portfolio

User Interface Check Out Item

• When Checking Out an Item is given to the Librarian an option to continue with the checkout or not

• If the Librarian answer YES the item is checked out and added to the grid

Page 10: Delma Hagen Portfolio

User Interface Check Out Item

• When the item is already checked out is given an option to Check In the Item first

• If the Librarian answer Yes the Item is Checked In and Checked Out for the member that requested the transaction

Page 11: Delma Hagen Portfolio

User Interface Check In Item

• When Check In an Item is given to the user an option to continue with the checkout or not

• If the User answer YES the Item is checked Out and displayed on the GRID

Page 12: Delma Hagen Portfolio

Requirements:• Use stored procedures to make database operations more efficient• Provide adequate error handling.• Use database-programming techniques that provide maximum programming flexibility and control

while minimizing resource utilization. • Design and Implement your own Business and Data Access tiers• Check the item if it is “loan able” and prevent from being checked out if it’s not.• Convert juvenile membership to adult member ship when juvenile became and adult

Techniques used:• Developed stored procedures for the processes (Add Member, Get Member, Check In, Check Out,

Get Item, Get Items)• Created a Data Access Layer that calls stored procedures and return data or throw errors to Business

Layer• Produced a project of Entities classes accessible to all layers (Member, Adult, Juvenile, Item,

ItemsDataSet and Library Exception)

Library Phase II Windows Business & Data Access tiers

Page 13: Delma Hagen Portfolio

Business Layer Code SampleAdd Adult Member

Page 14: Delma Hagen Portfolio

Data Access Layer Code SampleCheck Out Item

Page 15: Delma Hagen Portfolio

Stored ProcedureRenew Member membership

Page 16: Delma Hagen Portfolio

Requirements:• Create a web application that supports all the functionality required for Phase I and

Phase II of the Library project. • When displaying an adult’s information, the application should detect if the card is

expired and give the librarian a chance to renew the card. • Overdue books, shown in any display must be highlighted.• The librarian must be able to enter a new book into the database. If the ISBN already

exists in the database, all that is needed is to add a record for a new copy number. If the ISBN does not yet exist in the database, you must add all necessary records for the new ISBN and a new copy number 1 for that ISBN.

• Use Forms-based authentication and authorization. Only members of the Librarian role must be able to access the web application.

Techniques used:• Developed a ASP.NET 2.0 Web Application and coded according with the requirements• Reused the Data Access Layer and the Business Layer from the Windows Desktop

Application Library Phase I.

Library Phase III Web Application

Page 17: Delma Hagen Portfolio

User Interface Authentication

• Security using ASP.NET membership and role management

• Functionality restricted to Librarian role members

Page 18: Delma Hagen Portfolio

User InterfaceAuthentification

• Only members of the Librarian role are able to login and access the Web Application

Page 19: Delma Hagen Portfolio

User Interface Display Member Information

• Display Member Information and Items Checked on the GRID - Overdue items are in red

Page 20: Delma Hagen Portfolio

User Interface Display Member Information

• When displaying an adult member detect if the membership is expired and give the Librarian a chance to renew the card

Page 21: Delma Hagen Portfolio

User Interface Adding a Juvenile member

• Error provider indicating error with additional information

Page 22: Delma Hagen Portfolio

User Interface Adding a Juvenile member

• All fields are validated and Librarian can Add or Cancel the process

Page 23: Delma Hagen Portfolio

User InterfaceDisplaying the member Info added

• Display the information for the new member added to the Library

• A message is displayed informing that are not books checked out for the new member

• The Check Out button is activated allowing the Librarian to check Out an Item for the new member

Page 24: Delma Hagen Portfolio

User Interface Adding an Item

• When adding a new Item do the Library and the Item already exist, give an option to add a new copy

• If the Librarian confirm the new copy is added and the confirmation is displayed to confirm the new copy added

Page 25: Delma Hagen Portfolio

User InterfaceAdded a copy of the Item

• The page is displayed to confirm that the copy was added to the library and also to display the copy number

Page 26: Delma Hagen Portfolio

Markup Code SampleAdd Juvenile Member

Page 27: Delma Hagen Portfolio

Code SampleAdd Juvenile Member

Page 28: Delma Hagen Portfolio

Requirements: • Create a Web Service that calls into either the business or data layer.• Update the layers in the system to use the service as deemed appropriate. • Make sure the Web service supports the Basic Profile. The service also should use

Document/Literal formatting of the Soap messages. • Customize formatting of XML for some of the business types. • Employ WSE 3.0 security using Certificates. Signing, encryption and secure session are

required.

Techniques used:• Created a ASP.NET 2.0 Web Service • Added a secured service layer to the library Application• Improved the existing Web Application Library Phase III to consume the new

Web Service secured with WSE 3.0

Library Phase IV Web Service Application

Page 29: Delma Hagen Portfolio

Web Service Code Sample

Page 30: Delma Hagen Portfolio

Web Method Code Sample

Page 31: Delma Hagen Portfolio

Secured Remote Invocation Code Sample

Page 32: Delma Hagen Portfolio

Certificate Policy Configuration

Page 33: Delma Hagen Portfolio

Class Member using XMLInclude attribute

Page 34: Delma Hagen Portfolio

What is SetFocus?

• SetFocus is equivalent to 2-3 years of hands on experience.

• I received over 500 hours of in-depths hands on experience focused on .NET Development.

• SetFocus projects are real world projects that are distributed just as I would receive in a position. I received project specifications and was expected to identify best courses of action with deadlines set for completion.