+ All Categories
Home > Technology > LKF Portfolio

LKF Portfolio

Date post: 12-Jul-2015
Category:
Upload: leon-francis
View: 376 times
Download: 3 times
Share this document with a friend
Popular Tags:
21
.NET Portfolio .NET Portfolio Leon K. Francis Leon K. Francis Email: [email protected] Email: [email protected] Phone: (801)651-0863 Phone: (801)651-0863
Transcript
Page 1: LKF Portfolio

.NET Portfolio.NET Portfolio

Leon K. FrancisLeon K. FrancisEmail: [email protected]: [email protected]: (801)651-0863Phone: (801)651-0863

Page 2: LKF Portfolio

.NET Framework Project.NET Framework Project

Build parts of the business tier for a Build parts of the business tier for a retail company.retail company.

Create and test two assemblies:Create and test two assemblies:• The first assembly is a class library The first assembly is a class library

project called Foundation, containing project called Foundation, containing various interfaces and base classes.various interfaces and base classes.

• The second assembly is a class library The second assembly is a class library project called AppTypes, containing project called AppTypes, containing various entity, collection and exception various entity, collection and exception classes.classes.

Page 3: LKF Portfolio

Classes of Many Types Classes of Many Types RequiredRequired

Page 4: LKF Portfolio

Sample CodeSample Code

Page 5: LKF Portfolio

Library Database ProjectLibrary Database Project

Introduction: A database has been created Introduction: A database has been created to support the principal functions of a to support the principal functions of a lending library’s day to day operations: lending library’s day to day operations: checking books in and out, and adding new checking books in and out, and adding new members (adult and juvenile)members (adult and juvenile)

Audience: Users of the library database Audience: Users of the library database (i.e. librarians).(i.e. librarians).

Project Goals: Provide an easy to use user Project Goals: Provide an easy to use user interface to access and manipulate the data interface to access and manipulate the data in the database.in the database.

Page 6: LKF Portfolio

Layered ArchitectureLayered Architecture Data transport between layers using Data transport between layers using

EntitiesEntities User-friendly Interface.User-friendly Interface. Menu driven Navigation.Menu driven Navigation. Well Covered ValidationsWell Covered Validations

Design Highlights

Page 7: LKF Portfolio

Library Phase ILibrary Phase I

Requirements:Requirements:• Develop a Windows front-end with four functionsDevelop a Windows front-end with four functions

Add adult memberAdd adult member Add juvenile memberAdd juvenile member Check in an itemCheck in an item Check out an itemCheck out an item

Two Projects Developed:Two Projects Developed:• Windows ClientWindows Client

Form controlForm control ValidationValidation

• Business LayerBusiness Layer Business layer enforcementBusiness layer enforcement Data access layer communicationData access layer communication

Page 8: LKF Portfolio

Project Sample (Get Member Project Sample (Get Member Info)Info)

Can view member information Highlights out dated card expiration Highlights over due books

Page 9: LKF Portfolio

Project Sample (Add Adult Project Sample (Add Adult Member)Member)

Combo box populated from XML file Icon and tool tip used to communicate errors

Page 10: LKF Portfolio

Hi-light expired membershipHi-light expired membership

Page 11: LKF Portfolio

Library Phase IILibrary Phase II Develop stored procedures for seven processes:Develop stored procedures for seven processes:

• Add memberAdd member• Get memberGet member• Check in an itemCheck in an item• Check out an itemCheck out an item• Get item (returns an item with a specific ISBN and copy #)Get item (returns an item with a specific ISBN and copy #)• Get items (returns all items a member has checked out)Get items (returns all items a member has checked out)• Convert juvenile to adult membershipConvert juvenile to adult membership

Create a data access layer:Create a data access layer:• Call stored procedures in the databaseCall stored procedures in the database• Return data or throw errors to the Business layerReturn data or throw errors to the Business layer

Create Entities classes accessible to all layers:Create Entities classes accessible to all layers:• MemberMember• AdultMember (derived from Member)AdultMember (derived from Member)• JuvenileMember (derived from Member)JuvenileMember (derived from Member)• ItemItem• ItemsDataSetItemsDataSet• LibraryExceptionLibraryException

Page 12: LKF Portfolio

ADO.NET code in Data Access ADO.NET code in Data Access LayerLayer

Page 13: LKF Portfolio

Stored Procedure (ConvertJuvenileToAdult)Stored Procedure (ConvertJuvenileToAdult)

Page 14: LKF Portfolio

Library Phase IIILibrary Phase III

Convert Windows interface to Web Convert Windows interface to Web interfaceinterface

Add functionality:Add functionality:• Add new item to the database (new Add new item to the database (new

ISBN or copy of existing ISBN)ISBN or copy of existing ISBN)• Ability to renew membership cardAbility to renew membership card

Add Security:Add Security:• Add a Librarian role to the database Add a Librarian role to the database

with userswith users• Prevent everyone except the Librarian Prevent everyone except the Librarian

role from accessing library functionsrole from accessing library functions

Page 15: LKF Portfolio

Log-in screen on startup for Log-in screen on startup for securitysecurity

Page 16: LKF Portfolio

All functionality from Windows UI All functionality from Windows UI remains in Web UIremains in Web UI

In addition, user has the option to renew an expired card

Page 17: LKF Portfolio

Use of validators to provide error Use of validators to provide error checkingchecking

Page 18: LKF Portfolio

Sample code to add member to Sample code to add member to databasedatabase

Page 19: LKF Portfolio

Library Phase IVLibrary Phase IV

Create a Web service that calls into Create a Web service that calls into the business layerthe business layer

Update the presentation (UI) layer to Update the presentation (UI) layer to call the Web servicecall the Web service

Employ WSE 3.0 security using Employ WSE 3.0 security using certificatescertificates

Support previous project Support previous project functionalityfunctionality

Page 20: LKF Portfolio

Sample code implementing the Sample code implementing the Web serviceWeb service

Page 21: LKF Portfolio

SummarySummary

Six projects (Framework, Library Six projects (Framework, Library Phase I – IV, Evaluation Surveys Phase I – IV, Evaluation Surveys (team project))(team project))

10,000+ lines of C# code10,000+ lines of C# code 1000+ lines of supporting code (SQL, 1000+ lines of supporting code (SQL,

XML, HTML)XML, HTML) 240+ project hours240+ project hours


Recommended