SlideShare a Scribd company logo
1 of 19
Setfocus Project #1:
.NET Framework Project


Objective:

Build parts of the business tier for a retail company. The design is based on two Class Library
Projects:



                      Foundation: Contains Interfaces and Base Classes
AppType: contain various entity, collection, and exception classes




Summary:

This project demonstrates fundamental .NET skills and interaction between n‐
tiered applications, such as:

            Delegates, events

            Abstract classes & interfaces

            Enumerations

            Generics

            Custom exceptions

            Attribute classes

            Properties

            Custom serializations

            Binary and SOAP Formatters
Setfocus Project #2:
Library Phase 1 – Windows Front End Application


    Objective

    Create a Windows Forms-based front-end application that will provide a librarian with a
    visual interface to perform a lending library’s day-to-day operations:

        Adding new
         members (of
         type adult and
         juvenile)

        Checking
         books in and
         out.




    Provisions:

        Database scripts were provided in order to create the Library database. Book
         information, member records, loan records, etc. are all stored on SQL
         Server 2008.

        An interface that specifies the methods supported by the Data Access tier used
         for all database access and a class that implements the interface were provided.
         Classes that represent various “business entities” were also provided.
Functionality Details

Add Adult: First and
Last name, Street, City,
State, and Zip code are
mandatory. Middle Initial
and phone number are
optional.




Add Juvenile: First and
Last name, Birth date,
and Sponsoring Adult
Member ID are required
Check In Books: ISBN
and copy number
required




Check Out Books:
ISBN and copy number
required.




Check In Selected
Books: This option
allows the librarian to
check in, right from the
main form and at the
same time, all books on
loan to a member.

Overdue books, shown
in any display, must be
highlighted
When dealing with
juveniles, the
application should
detect if the juvenile is
18 years old or older
and convert the member
to an adult
automatically.




Data Validation:

Besides checking fields for required information, data had to be validated according to a set of
rules. Regular expressions were used for this purpose. A few of those rules were:

The first and last name
fields could only contain
15 alphabetic characters.
The first letter was
required to be uppercase
and the remaining
characters must be
lowercase.




The phone number had to
be in the (###)###-####
format when supplied.
The Zip code had to be a
##### or #####-####,
where # is a number (0-9).




Other Validations

Each member could
only have 4 books
checked out at a
time. Checking out a
book also required
that the member’s
expiration date be in
the future. (The UI
was designed in a
way that it reacts to
certain conditions,
enabling or disabling
menu items and
toolbar buttons
accordingly).


If a book was to be
checked out, but the
database indicated
that it was already on
loan, the librarian
was prompted if they
wanted to check the
book in first.
Summary

This project demonstrates the use of .NET windows form development techniques.Some of the
techniques used include:

           User input validation and feedback using error providers

           Data binding to a datagrid view control and manipulation of the control

           Incorporate n‐tier architecture for scalability

           Create a user interface that is intuitive and requires minimal training

           Effective error and exception handling.

           Use of regular expressions for input validation.
Setfocus Project #3:
Library Phase 2 – Windows Business and Data Access Tiers
Objective

Design and implement the business entity and data access tiers, replacing those provided in
Phase 1 of the project. However, in phase 2 we take advantage of the following techniques:



Linq and LinqToSql: LinqToSql
designer is of help in building and
model the Item and Member classes
(Member, Adult, and Juvenile). A
Datacontext is used to get data from
the Database and return the
appropriate class.




Views: Two read-only views were
created to take advantage of
LinqToSql inheritance technology
Stored procedures: These were
used to make database operations
more efficient. Also, since data
coming from a view is read only,
stored procedures were needed to
send data back to database.




Database Architecture

This diagram shows the tables and their relationships in the Library database used in this
project.
Stored Procedures

Stored Procedures were created in this phase to
duplicate the results of phase 1. However some
procedures were needed to supply additional
functionality (i.e. : usp_ConvertToJuvenile store
proc, used to convert juvenile member to adult)
Summary

This project demonstrates the use of LinqToSql and Transact-SQL to access a SQL Server
2008 database. Some of the techniques used include:



           Create and implement the Entities classes used in the library project

           Data validation in SQL

           Stored procedures in Transact‐SQL (T‐SQL) on SQL Server 2008

           Implementing error handling in SQL

           Process errors raised by T‐SQL in ADO.NET using error numbers and states

           Write a T‐SQL script to test Stored Procedures for functionality

           Create and utilize strongly typed datasets based on stored procedures.

           Use of Linq and LinqToSql rapid code development and abstraction techniques.
Setfocus Project #4:
Library Phase 3 – Web Application
Objective

Create a web application that supports all the functionality required for Phase I and II of the
Library project.
Functionality Details

In addition to the features already present in Phase #1 Windows Front-end application, some
additional functionality was implemented:

On detection of an
expired card, the app
gives the librarian the
option for a 1-year
renewal.




The librarian must be
able to enter a new book
into the database. If the
ISBN already exists in
the database, just a new
copy record is added. 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.
Design Requirements

On the Member Information
page two AJAX controls were
used: the Update Panel
control and the Update
Progress control. The grid
view that displays checked out
items will then be placed
within the Update Panel
control. When an item is
checked in a postback for the
entire page should not be
triggered, only the information
within the Update Panel
should be updated.
Additionally, the Update
Progress control should
display the progress of the
check in action. The librarian
should be able to select a row
and click a check in button to
check the item back into the
library




The web application project
must use Forms-based
authentication and
authorization. Only members
of the Librarian role must be
able to access the web
application.
Summary

This project demonstrates the use of ASP.NET. Some of the techniques used include:

           Create and use ASP.NET master pages to provide a consistent look
            across the website.

           Use of Membership and Roles Management features of ASP.NET 3.5
            to restrict access to pages.

           Utilizing ViewState and SessionState objects to save data between postbacks.

           Use of Ajax extensions for partial page postbacks, and Ajax Control Toolkit, to
            implement visual appealing controls making use of the Ajax technology.

           Create a web interface that is intuitive and requires minimal training.

           Use of various validation controls to validate input before postback
Setfocus Project #5:
Library Phase 4 (Final) – WCF Service Implementation
Objective

In this final phase, we’re aiming to allow interoperability with other systems by means of web
services. We use Windows Communication Foundation (WCF) to implement the service.




N-Tier Structure Description

The WCF service will call into the
business layer, already implemented in
Phase 2 of the project.
Security Considerations

Due to the possibility of utilizing the service between the Library systems and those of its
partners, security must be employed. For this project the following security mechanisms were
used:

           •     Transport-level security (SSL) to ensure confidentiality and integrity

           •     Authentication through ASP.NET membership

           •     Authorization using ASP.NET roles



Service Configuration Screenshots (using WCF Configuration Editor Tool)

Services Description

Services Node:

‐   Service Name: JR.LibraryServiceLib.
    LibraryService

‐   Endpoint Binding Type: wsHttpBinding




Binding Configuration

Bindings Node:

‐   Binding config. Name:
    WSHttpBindingConfig

‐   Security‐Mode:
    TransportWithMessageCredential

‐   Security‐MessageClientCredentialType:
    UserName
Authentication Configuration

ServiceCredentials node:

‐   MembershipProviderName:
    AspNetSqlMembershipProvider




Authorization Configuration

ServiceAuthorization node:

‐   PrincipalPermissionMode:
    UseAspNetRoles

‐   RoleProviderName:
    AspNetSqlRoleProvider




Summary

This project demonstrates the use of Windows Communication Foundation (WCF). Some
aspects of the implementation are:

            Creation of a WCF Service Library project

            Creation of a WCF Service Website for hosting the service.

            Use of transport-level security (SSL)

            Authentication using ASP.NET membership

            Authorization using ASP.NET roles

            Use FaultExceptions for passing error information

More Related Content

What's hot

Pa 10 n1 louis decroo jr.
Pa 10 n1 louis decroo jr.Pa 10 n1 louis decroo jr.
Pa 10 n1 louis decroo jr.ldecroo
 
Matthew Swanger .NET Portfolio
Matthew Swanger .NET PortfolioMatthew Swanger .NET Portfolio
Matthew Swanger .NET Portfoliomattswanger
 
Brandon Miller Portfolio
Brandon Miller PortfolioBrandon Miller Portfolio
Brandon Miller Portfoliobrandonmiller3
 
Jerry Baldwin's Project Portfolio
Jerry Baldwin's Project PortfolioJerry Baldwin's Project Portfolio
Jerry Baldwin's Project Portfoliojbaldwin85307
 
Oracle forms developer 10g vol1
Oracle forms developer 10g vol1Oracle forms developer 10g vol1
Oracle forms developer 10g vol1abdull466
 
Oracle apps online training
Oracle apps online trainingOracle apps online training
Oracle apps online trainingSekhar Byna
 
Jonathan Terry's Resume
Jonathan Terry's ResumeJonathan Terry's Resume
Jonathan Terry's Resumejcterry
 
Portfolio
PortfolioPortfolio
Portfoliojcterry
 
Mark Jackson\'s Portfoilo
Mark Jackson\'s PortfoiloMark Jackson\'s Portfoilo
Mark Jackson\'s PortfoiloMark_Jackson
 
G.Bs Presentation Of Guru Nanak Univ. National Conf.2009
G.Bs Presentation Of Guru Nanak Univ. National Conf.2009G.Bs Presentation Of Guru Nanak Univ. National Conf.2009
G.Bs Presentation Of Guru Nanak Univ. National Conf.2009Goutam Biswas
 
Curriculum vitae aug_2015
Curriculum vitae aug_2015Curriculum vitae aug_2015
Curriculum vitae aug_2015projjal ghosh
 
Library management in Data structure
Library management in Data structure Library management in Data structure
Library management in Data structure harshil1902
 
Library Management System Project in C
Library Management System Project in CLibrary Management System Project in C
Library Management System Project in Ccodewithc
 
Wickey Set Focus .Net Portfolio
Wickey Set Focus .Net PortfolioWickey Set Focus .Net Portfolio
Wickey Set Focus .Net Portfoliomwickey
 
owb-platform-adapter-cookbook-177344
owb-platform-adapter-cookbook-177344owb-platform-adapter-cookbook-177344
owb-platform-adapter-cookbook-177344Carnot Antonio Romero
 
Lecture14 abap on line
Lecture14 abap on lineLecture14 abap on line
Lecture14 abap on lineMilind Patil
 

What's hot (20)

Pa 10 n1 louis decroo jr.
Pa 10 n1 louis decroo jr.Pa 10 n1 louis decroo jr.
Pa 10 n1 louis decroo jr.
 
Matthew Swanger .NET Portfolio
Matthew Swanger .NET PortfolioMatthew Swanger .NET Portfolio
Matthew Swanger .NET Portfolio
 
Brandon Miller Portfolio
Brandon Miller PortfolioBrandon Miller Portfolio
Brandon Miller Portfolio
 
Sherry Cuenco .NET Portfolio
Sherry Cuenco .NET PortfolioSherry Cuenco .NET Portfolio
Sherry Cuenco .NET Portfolio
 
Jerry Baldwin's Project Portfolio
Jerry Baldwin's Project PortfolioJerry Baldwin's Project Portfolio
Jerry Baldwin's Project Portfolio
 
Oracle forms developer 10g vol1
Oracle forms developer 10g vol1Oracle forms developer 10g vol1
Oracle forms developer 10g vol1
 
Oracle apps online training
Oracle apps online trainingOracle apps online training
Oracle apps online training
 
Jonathan Terry's Resume
Jonathan Terry's ResumeJonathan Terry's Resume
Jonathan Terry's Resume
 
Portfolio
PortfolioPortfolio
Portfolio
 
Mark Jackson\'s Portfoilo
Mark Jackson\'s PortfoiloMark Jackson\'s Portfoilo
Mark Jackson\'s Portfoilo
 
Portfolio
PortfolioPortfolio
Portfolio
 
G.Bs Presentation Of Guru Nanak Univ. National Conf.2009
G.Bs Presentation Of Guru Nanak Univ. National Conf.2009G.Bs Presentation Of Guru Nanak Univ. National Conf.2009
G.Bs Presentation Of Guru Nanak Univ. National Conf.2009
 
Curriculum vitae aug_2015
Curriculum vitae aug_2015Curriculum vitae aug_2015
Curriculum vitae aug_2015
 
Library management in Data structure
Library management in Data structure Library management in Data structure
Library management in Data structure
 
fieldwork
fieldworkfieldwork
fieldwork
 
Library Management System Project in C
Library Management System Project in CLibrary Management System Project in C
Library Management System Project in C
 
VBS portfolio
VBS portfolioVBS portfolio
VBS portfolio
 
Wickey Set Focus .Net Portfolio
Wickey Set Focus .Net PortfolioWickey Set Focus .Net Portfolio
Wickey Set Focus .Net Portfolio
 
owb-platform-adapter-cookbook-177344
owb-platform-adapter-cookbook-177344owb-platform-adapter-cookbook-177344
owb-platform-adapter-cookbook-177344
 
Lecture14 abap on line
Lecture14 abap on lineLecture14 abap on line
Lecture14 abap on line
 

Similar to Portfolio

Carlos Amador .Net Portfolio
Carlos Amador .Net PortfolioCarlos Amador .Net Portfolio
Carlos Amador .Net PortfolioCMA_SlideShare
 
Appalanaidu_4.4 Years Exp in DotNet Technology
Appalanaidu_4.4 Years Exp in DotNet TechnologyAppalanaidu_4.4 Years Exp in DotNet Technology
Appalanaidu_4.4 Years Exp in DotNet TechnologyAPPALANAIDU KONDALA
 
Daniel Rivera .NET Portfolio
Daniel Rivera .NET PortfolioDaniel Rivera .NET Portfolio
Daniel Rivera .NET Portfoliodanieldrrivera
 
Darian Lowe Portfolio
Darian Lowe PortfolioDarian Lowe Portfolio
Darian Lowe Portfoliodarian.lowe
 
Public Library
Public LibraryPublic Library
Public Libraryeclumson
 
Online Library Management
Online Library ManagementOnline Library Management
Online Library ManagementVarsha Sarkar
 
VidyaBhooshanMishra_CV
VidyaBhooshanMishra_CVVidyaBhooshanMishra_CV
VidyaBhooshanMishra_CVLandis+Gyr
 
Components of a Generic Web Application Architecture
Components of  a Generic Web Application ArchitectureComponents of  a Generic Web Application Architecture
Components of a Generic Web Application ArchitectureMadonnaLamin1
 
Big Data projects.pdf
Big Data projects.pdfBig Data projects.pdf
Big Data projects.pdfssuserf0a206
 
Web-Dev Portfolio
Web-Dev PortfolioWeb-Dev Portfolio
Web-Dev Portfolionwbgh
 
Updated SAKET MRINAL Resume
Updated SAKET MRINAL ResumeUpdated SAKET MRINAL Resume
Updated SAKET MRINAL ResumeSaket Mrinal
 
Willie jackson portfolio
Willie jackson portfolioWillie jackson portfolio
Willie jackson portfoliowjax24
 

Similar to Portfolio (20)

Carlos Amador .Net Portfolio
Carlos Amador .Net PortfolioCarlos Amador .Net Portfolio
Carlos Amador .Net Portfolio
 
Appalanaidu_4.4 Years Exp in DotNet Technology
Appalanaidu_4.4 Years Exp in DotNet TechnologyAppalanaidu_4.4 Years Exp in DotNet Technology
Appalanaidu_4.4 Years Exp in DotNet Technology
 
Manikanta_Chimata
Manikanta_ChimataManikanta_Chimata
Manikanta_Chimata
 
Daniel Rivera .NET Portfolio
Daniel Rivera .NET PortfolioDaniel Rivera .NET Portfolio
Daniel Rivera .NET Portfolio
 
Darian Lowe Portfolio
Darian Lowe PortfolioDarian Lowe Portfolio
Darian Lowe Portfolio
 
ChandanResume
ChandanResumeChandanResume
ChandanResume
 
Public Library
Public LibraryPublic Library
Public Library
 
Online Library Management
Online Library ManagementOnline Library Management
Online Library Management
 
Siva_DotNet
Siva_DotNetSiva_DotNet
Siva_DotNet
 
VidyaBhooshanMishra_CV
VidyaBhooshanMishra_CVVidyaBhooshanMishra_CV
VidyaBhooshanMishra_CV
 
Components of a Generic Web Application Architecture
Components of  a Generic Web Application ArchitectureComponents of  a Generic Web Application Architecture
Components of a Generic Web Application Architecture
 
Big Data projects.pdf
Big Data projects.pdfBig Data projects.pdf
Big Data projects.pdf
 
Web-Dev Portfolio
Web-Dev PortfolioWeb-Dev Portfolio
Web-Dev Portfolio
 
Resume
ResumeResume
Resume
 
A.S.Sivaprakash
A.S.SivaprakashA.S.Sivaprakash
A.S.Sivaprakash
 
Uma SunilKumar Resume
Uma SunilKumar ResumeUma SunilKumar Resume
Uma SunilKumar Resume
 
Updated SAKET MRINAL Resume
Updated SAKET MRINAL ResumeUpdated SAKET MRINAL Resume
Updated SAKET MRINAL Resume
 
Sibananda_DotNet
Sibananda_DotNetSibananda_DotNet
Sibananda_DotNet
 
Willie jackson portfolio
Willie jackson portfolioWillie jackson portfolio
Willie jackson portfolio
 
Krishnagopal Thogiti_Java
Krishnagopal Thogiti_JavaKrishnagopal Thogiti_Java
Krishnagopal Thogiti_Java
 

Portfolio

  • 1. Setfocus Project #1: .NET Framework Project Objective: Build parts of the business tier for a retail company. The design is based on two Class Library Projects: Foundation: Contains Interfaces and Base Classes
  • 2. AppType: contain various entity, collection, and exception classes Summary: This project demonstrates fundamental .NET skills and interaction between n‐ tiered applications, such as:  Delegates, events  Abstract classes & interfaces  Enumerations  Generics  Custom exceptions  Attribute classes  Properties  Custom serializations  Binary and SOAP Formatters
  • 3. Setfocus Project #2: Library Phase 1 – Windows Front End Application Objective Create a Windows Forms-based front-end application that will provide a librarian with a visual interface to perform a lending library’s day-to-day operations:  Adding new members (of type adult and juvenile)  Checking books in and out. Provisions:  Database scripts were provided in order to create the Library database. Book information, member records, loan records, etc. are all stored on SQL Server 2008.  An interface that specifies the methods supported by the Data Access tier used for all database access and a class that implements the interface were provided. Classes that represent various “business entities” were also provided.
  • 4. Functionality Details Add Adult: First and Last name, Street, City, State, and Zip code are mandatory. Middle Initial and phone number are optional. Add Juvenile: First and Last name, Birth date, and Sponsoring Adult Member ID are required
  • 5. Check In Books: ISBN and copy number required Check Out Books: ISBN and copy number required. Check In Selected Books: This option allows the librarian to check in, right from the main form and at the same time, all books on loan to a member. Overdue books, shown in any display, must be highlighted
  • 6. When dealing with juveniles, the application should detect if the juvenile is 18 years old or older and convert the member to an adult automatically. Data Validation: Besides checking fields for required information, data had to be validated according to a set of rules. Regular expressions were used for this purpose. A few of those rules were: The first and last name fields could only contain 15 alphabetic characters. The first letter was required to be uppercase and the remaining characters must be lowercase. The phone number had to be in the (###)###-#### format when supplied.
  • 7. The Zip code had to be a ##### or #####-####, where # is a number (0-9). Other Validations Each member could only have 4 books checked out at a time. Checking out a book also required that the member’s expiration date be in the future. (The UI was designed in a way that it reacts to certain conditions, enabling or disabling menu items and toolbar buttons accordingly). If a book was to be checked out, but the database indicated that it was already on loan, the librarian was prompted if they wanted to check the book in first.
  • 8. Summary This project demonstrates the use of .NET windows form development techniques.Some of the techniques used include:  User input validation and feedback using error providers  Data binding to a datagrid view control and manipulation of the control  Incorporate n‐tier architecture for scalability  Create a user interface that is intuitive and requires minimal training  Effective error and exception handling.  Use of regular expressions for input validation.
  • 9. Setfocus Project #3: Library Phase 2 – Windows Business and Data Access Tiers Objective Design and implement the business entity and data access tiers, replacing those provided in Phase 1 of the project. However, in phase 2 we take advantage of the following techniques: Linq and LinqToSql: LinqToSql designer is of help in building and model the Item and Member classes (Member, Adult, and Juvenile). A Datacontext is used to get data from the Database and return the appropriate class. Views: Two read-only views were created to take advantage of LinqToSql inheritance technology
  • 10. Stored procedures: These were used to make database operations more efficient. Also, since data coming from a view is read only, stored procedures were needed to send data back to database. Database Architecture This diagram shows the tables and their relationships in the Library database used in this project.
  • 11. Stored Procedures Stored Procedures were created in this phase to duplicate the results of phase 1. However some procedures were needed to supply additional functionality (i.e. : usp_ConvertToJuvenile store proc, used to convert juvenile member to adult)
  • 12. Summary This project demonstrates the use of LinqToSql and Transact-SQL to access a SQL Server 2008 database. Some of the techniques used include:  Create and implement the Entities classes used in the library project  Data validation in SQL  Stored procedures in Transact‐SQL (T‐SQL) on SQL Server 2008  Implementing error handling in SQL  Process errors raised by T‐SQL in ADO.NET using error numbers and states  Write a T‐SQL script to test Stored Procedures for functionality  Create and utilize strongly typed datasets based on stored procedures.  Use of Linq and LinqToSql rapid code development and abstraction techniques.
  • 13. Setfocus Project #4: Library Phase 3 – Web Application Objective Create a web application that supports all the functionality required for Phase I and II of the Library project.
  • 14. Functionality Details In addition to the features already present in Phase #1 Windows Front-end application, some additional functionality was implemented: On detection of an expired card, the app gives the librarian the option for a 1-year renewal. The librarian must be able to enter a new book into the database. If the ISBN already exists in the database, just a new copy record is added. 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.
  • 15. Design Requirements On the Member Information page two AJAX controls were used: the Update Panel control and the Update Progress control. The grid view that displays checked out items will then be placed within the Update Panel control. When an item is checked in a postback for the entire page should not be triggered, only the information within the Update Panel should be updated. Additionally, the Update Progress control should display the progress of the check in action. The librarian should be able to select a row and click a check in button to check the item back into the library The web application project must use Forms-based authentication and authorization. Only members of the Librarian role must be able to access the web application.
  • 16. Summary This project demonstrates the use of ASP.NET. Some of the techniques used include:  Create and use ASP.NET master pages to provide a consistent look across the website.  Use of Membership and Roles Management features of ASP.NET 3.5 to restrict access to pages.  Utilizing ViewState and SessionState objects to save data between postbacks.  Use of Ajax extensions for partial page postbacks, and Ajax Control Toolkit, to implement visual appealing controls making use of the Ajax technology.  Create a web interface that is intuitive and requires minimal training.  Use of various validation controls to validate input before postback
  • 17. Setfocus Project #5: Library Phase 4 (Final) – WCF Service Implementation Objective In this final phase, we’re aiming to allow interoperability with other systems by means of web services. We use Windows Communication Foundation (WCF) to implement the service. N-Tier Structure Description The WCF service will call into the business layer, already implemented in Phase 2 of the project.
  • 18. Security Considerations Due to the possibility of utilizing the service between the Library systems and those of its partners, security must be employed. For this project the following security mechanisms were used: • Transport-level security (SSL) to ensure confidentiality and integrity • Authentication through ASP.NET membership • Authorization using ASP.NET roles Service Configuration Screenshots (using WCF Configuration Editor Tool) Services Description Services Node: ‐ Service Name: JR.LibraryServiceLib. LibraryService ‐ Endpoint Binding Type: wsHttpBinding Binding Configuration Bindings Node: ‐ Binding config. Name: WSHttpBindingConfig ‐ Security‐Mode: TransportWithMessageCredential ‐ Security‐MessageClientCredentialType: UserName
  • 19. Authentication Configuration ServiceCredentials node: ‐ MembershipProviderName: AspNetSqlMembershipProvider Authorization Configuration ServiceAuthorization node: ‐ PrincipalPermissionMode: UseAspNetRoles ‐ RoleProviderName: AspNetSqlRoleProvider Summary This project demonstrates the use of Windows Communication Foundation (WCF). Some aspects of the implementation are:  Creation of a WCF Service Library project  Creation of a WCF Service Website for hosting the service.  Use of transport-level security (SSL)  Authentication using ASP.NET membership  Authorization using ASP.NET roles  Use FaultExceptions for passing error information