Delma Hagen Portfolio


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Delma Hagen Portfolio

  1. 1. .NET Portfolio<br />Library System<br />Delma Hagen<br /><br />(973) 263-4013<br />
  2. 2. Table of Contents<br /><ul><li>Library Phase I - Windows Front-End Application
  3. 3. User Interface Samples
  4. 4. Library Phase II - Windows Business & Data Access tiers
  5. 5. Business Layer Code Sample
  6. 6. Data Access Code Sample
  7. 7. Store Procedure Code Sample
  8. 8. Library Phase III - Web Application
  9. 9. User Interface Samples
  10. 10. Markup Code Sample
  11. 11. Code Behind Sample
  12. 12. Library Phase IV – Web Service Application
  13. 13. Web Service Code sample
  14. 14. Web Method Code Sample
  15. 15. Secured Remote Invocation Code Sample
  16. 16. Certificate Policy Configuration
  17. 17. Class Using XML Include Attribute Sample</li></li></ul><li>Library Phase I Windows Front-End Application<br /><ul><li>Develop a Windows desktop front-end to allow librarians perform daily operations managing library items and members:
  18. 18. Add Adult Member, Display Adult Information
  19. 19. Add Juvenile Member, Display Juvenile Information
  20. 20. Check Out an Item
  21. 21. Check In an Item
  22. 22. .Net 2.0 Multi-tired application
  23. 23. Presentation Layer: Windows Forms 2.0
  24. 24. Data Access Layer: ADO.Net 2.0
  25. 25. Database: SQL Server 2005
  26. 26. Techniques used
  27. 27. User input validation using error provider, regular expression checking and event handlers
  28. 28. Data binding to a data grid control and related manipulation
  29. 29. MDI application format
  30. 30. Effective exception handling</li></li></ul><li>User Interface Add Adult Member<br /><ul><li>MDI Application format </li></ul> with dropdown menus <br /> allowing user select the<br /> function <br /><ul><li> Textbox to enter member</li></ul> information<br /><ul><li> Input validation using</li></ul> error provider and regular<br /> expression checking<br /><ul><li> OK and Cancel button</li></ul> to process or cancel<br /> the function <br />
  31. 31. User Interface Add Adult Member<br /><ul><li> When the input data is </li></ul> validated and the User <br /> press OK button the<br /> Adult Member is added <br /> to the Library<br /><ul><li> If the User press the</li></ul> Cancel button the <br /> transaction is canceled <br />
  32. 32. User Interface Display Adult Member Information<br /><ul><li> New member info is </li></ul> displayed to confirm <br /> that was added to <br /> the Library<br /><ul><li> The Check Out menu is</li></ul> activated allowing the<br /> items to be checked out<br /> for the new member<br /><ul><li> Grid shows the items</li></ul> checked out for the <br /> member – no items are<br /> checked out for the new<br /> member yet<br />
  33. 33. User Interface Add Juvenile Member<br /><ul><li>Text box is used to</li></ul> enter data to Add a <br /> Juvenile member on <br /> the Library<br /><ul><li> Error provider </li></ul> indicating error <br /> with additional <br /> information <br /><ul><li> Status strip used</li></ul> for communicating<br /> errors<br />
  34. 34. User Interface Display Member Information<br /><ul><li>The Juvenile member </li></ul> Information is displayed<br /> to confirm that was added<br /><ul><li> The Check Out menu</li></ul> is activated allowing<br /> the Librarian to check<br /> Out an Item<br /><ul><li> Grid shows the items</li></ul> checked out for the <br /> member. Item overdue <br /> is in red.<br />
  35. 35. User Interface Check Out Item<br /><ul><li>When Checking Out an</li></ul> Item is given to the <br /> Librarian an option<br /> to continue with the <br /> checkout or not<br /><ul><li> If the Librarian answer</li></ul> YES the item is checked <br /> out and added to the <br /> grid<br />
  36. 36. User Interface Check Out Item<br /><ul><li> When the item is </li></ul> already checked out<br /> is given an option to<br /> Check In the Item first<br /><ul><li> If the Librarian answer</li></ul> Yes the Item is Checked<br /> In and Checked Out<br /> for the member<br /> that requested the <br /> transaction<br />
  37. 37. User Interface Check In Item <br /><ul><li>When Check In an Item </li></ul> is given to the user an <br /> option to continue with<br /> the checkout or not<br /><ul><li> If the User answer YES </li></ul> the Item is checked Out<br /> and displayed on the<br /> GRID<br />
  38. 38. Library Phase II Windows Business & Data Access tiers<br /><ul><li>Requirements:
  39. 39. Use stored procedures to make database operations more efficient
  40. 40. Provide adequate error handling.
  41. 41. Use database-programming techniques that provide maximum programming flexibility and control while minimizing resource utilization.
  42. 42. Design and Implement your own Business and Data Access tiers
  43. 43. Check the item if it is “loan able” and prevent from being checked out if it’s not.
  44. 44. Convert juvenile membership to adult member ship when juvenile became and adult
  45. 45. Techniques used:
  46. 46. Developed stored procedures for the processes (Add Member, Get Member, Check In, Check Out, Get Item, Get Items)
  47. 47. Created a Data Access Layer that calls stored procedures and return data or throw errors to Business Layer
  48. 48. Produced a project of Entities classes accessible to all layers (Member, Adult, Juvenile, Item, ItemsDataSet and Library Exception)</li></li></ul><li>Business Layer Code SampleAdd Adult Member<br />
  49. 49. Data Access Layer Code SampleCheck Out Item<br />
  50. 50. Stored ProcedureRenew Member membership<br />
  51. 51. Library Phase III Web Application<br /><ul><li>Requirements:
  52. 52. Create a web application that supports all the functionality required for Phase I and Phase II of the Library project.
  53. 53. 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.
  54. 54. Overdue books, shown in any display must be highlighted.
  55. 55. 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.
  56. 56. Use Forms-based authentication and authorization. Only members of the Librarian role must be able to access the web application.
  57. 57. Techniques used:
  58. 58. Developed a ASP.NET 2.0 Web Application and coded according with the requirements
  59. 59. Reused the Data Access Layer and the Business Layer from the Windows Desktop Application Library Phase I.</li></li></ul><li>User Interface Authentication<br /><ul><li> Security using ASP.NET </li></ul>membership and role<br /> management<br /><ul><li> Functionality restricted </li></ul> to Librarian role members<br />
  60. 60. User InterfaceAuthentification<br /><ul><li>Only members of the</li></ul> Librarian role are able<br /> to login and access <br /> the Web Application<br />
  61. 61. User Interface Display Member Information<br /><ul><li>Display Member </li></ul> Information and <br /> Items Checked on<br /> the GRID - Overdue <br /> items are in red<br />
  62. 62. User Interface Display Member Information<br /><ul><li> When displaying </li></ul> an adult member<br /> detect if the <br /> membership is <br /> expired and give<br /> the Librarian a<br /> chance to renew<br /> the card<br />
  63. 63. User Interface Adding a Juvenile member<br /><ul><li>Error provider </li></ul> indicating error <br /> with additional <br /> information<br />
  64. 64. User Interface Adding a Juvenile member<br /><ul><li> All fields are </li></ul> validated and <br /> Librarian can<br /> Add or Cancel<br /> the process<br />
  65. 65. User InterfaceDisplaying the member Info added<br /><ul><li>Display the information </li></ul> for the new member <br /> added to the Library<br /><ul><li> A message is displayed </li></ul> informing that are not<br /> books checked out for<br /> the new member<br /><ul><li> The Check Out button</li></ul> is activated allowing<br /> the Librarian to check<br /> Out an Item for the <br /> new member<br />
  66. 66. User Interface Adding an Item<br /><ul><li>When adding a new</li></ul> Item do the Library <br /> and the Item already<br /> exist, give an option <br /> to add a new copy<br /><ul><li> If the Librarian </li></ul> confirm the new <br /> copy is added and<br /> the confirmation is <br /> displayed to confirm<br /> the new copy added<br />
  67. 67. User InterfaceAdded a copy of the Item<br /><ul><li>The page is displayed</li></ul> to confirm that the <br /> copy was added to<br /> the library and also<br /> to display the copy<br /> number<br />
  68. 68. Markup Code SampleAdd Juvenile Member<br />
  69. 69. Code SampleAdd Juvenile Member<br />
  70. 70. Library Phase IV Web Service Application<br /><ul><li>Requirements:
  71. 71. Create a Web Service that calls into either the business or data layer.
  72. 72. Update the layers in the system to use the service as deemed appropriate.
  73. 73. Make sure the Web service supports the Basic Profile. The service also should use Document/Literal formatting of the Soap messages.
  74. 74. Customize formatting of XML for some of the business types.
  75. 75. Employ WSE 3.0 security using Certificates. Signing, encryption and secure session are required.
  76. 76. Techniques used:
  77. 77. Created a ASP.NET 2.0 Web Service
  78. 78. Added a secured service layer to the library Application
  79. 79. Improved the existing Web Application Library Phase III to consume the new Web Service secured with WSE 3.0</li></li></ul><li>Web Service Code Sample<br />
  80. 80. Web Method Code Sample<br />
  81. 81. Secured Remote Invocation Code Sample<br />
  82. 82. Certificate Policy Configuration<br />
  83. 83. Class Member using XMLInclude attribute<br />
  84. 84. What is SetFocus?<br />SetFocus is equivalent to 2-3 years of hands on experience.  <br />I received over 500 hours of in-depths hands on experience focused on .NET Development. <br />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.<br />