1 / 36

DotNet Market Web Site “EMarket”

044167 – Project A Semester spring, 2006. DotNet Market Web Site “EMarket”. Milena Natanov Project Supervisor: Victor Kulikov Lab Chief Engineer: Dr. Ilana David. Agenda. About EMarket Technologies and design patterns EMarket Architecture Database Application Presentation

selina
Download Presentation

DotNet Market Web Site “EMarket”

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 044167 – Project A Semester spring, 2006 DotNet Market Web Site “EMarket” Milena Natanov Project Supervisor: Victor KulikovLab Chief Engineer: Dr. Ilana David

  2. Agenda • About EMarket • Technologies and design patterns • EMarket Architecture • Database • Application • Presentation • Security considerations • Possible extensions and improvements

  3. EMarket is an eBay-like online market place • The web site is used to sell or buy new and usedproducts.

  4. EMarket Users • All users • Registration • Search for products, review product categories • Add/remove products in Shopping Bag • Registered users • Propose products for sell • Can also remove or hide them • Buy products proposed by others • Resell bought products • Comment and rate other users

  5. EMarket Administrator • Manage users, products and categories • blocks/unblocks users’ accounts • blocks/unblocks products for sell • adds/removes categories • Buy, Sell, Comment, like a regular registered user

  6. Technologies • Application Tier • .Net Framework 2 (C#) • Database Tier • Microsoft Enterprise SQL server. • ADO.Net • Presentation Layer • ASP.Net • Development Environment • Visual Studio 2005

  7. Architectural patterns and Methodologies • Object-oriented Analysis and Design (OAD). Project report includes: • Project requirements • Use-case diagram and specifications • Class and Package diagrams • Sequence diagram • Three-tier architecture • Application, Presentation and Data • Model-View-Controller (MVC) • Model, View, Controller

  8. Additional Software Components • User Session Management • Web Cookies • Encryption • Password Hashing • Web Config File Encryption • Mail • Send mails using SmtpClient class of .Net

  9. EMarket Architecture

  10. System overview

  11. Three-tier architecture

  12. Three-tier architecture EMarket Database • User information • Credentials • Products for sell • Bought products history • Comments • Rating • Product information • Categories • Status • Stored Procedures and Views

  13. EMarket Database Relationships

  14. Application tier MVC - Introduction EMarket application tier was designed using Model-View-Controller design pattern: • Model – the application object that represents the data saved in EMarket database • View – UI (ASPX code-behind) • Controller – connects between UI requests and EMarket data

  15. Application tierMVC - GUI

  16. Application tierMVC - Controller

  17. Application tierMVC - Model

  18. Database and Application Intersection • EMarket uses Ado.Net to access the SQL database from the application tier. • Using this technology it operates stored procedures for retrieving relevant data or updating it in the EMarket database.

  19. Database and Application Intersection How it works: • create a connection to EMarket database • update or retrieve data using: • SqlCommand • SqlDataReader • SqlDataAdapter

  20. Database and Application Intersection SqlCommand - represents a Transact-SQL statement or stored procedure to execute against a SQL Server database.

  21. Database and Application Intersection SqlDataReader – provides a way of reading a forward-only stream of rows from a SQL Server database.

  22. Database and Application Intersection SqlDataAdapter - represents a set of data commands and a database connection that are used to fill the DataSet or DataTable and update a SQL Server database.

  23. Three-tier architecturePresentation Tier • Server Controls used in EMarket: • Web Server Controls • Emarket User Controls • Login Control • Validation Server Controls

  24. Three-tier architecturePresentation Tier • The GridView web control: • It was used in most of the pages • Binding to data source. • Built-in sorting capabilities. • Built-in updating and deletingcapabilities. • Built-in paging capabilities. • Built-in row selectioncapabilities.

  25. Three-tier architecturePresentation Tier • UserControls: • MainFrame • Admin

  26. Three-tier architecturePresentation Tier • Login Control

  27. Three-tier architecturePresentation Tier • Validation Control

  28. Three-tier architecturePresentation Tier Web Usability If a website is difficult to use or is unclear, the user leaves and looks for a different site. Usability is necessary for survival!

  29. Presentation Tier – Web usability • Learnability • A user should get along EMarket easily. • Efficiency • complete tasks quickly • matching messages assists the user to obtain better performance • Errors • currently there is no confirmation messages • user should be certain before “pushing the button” • Satisfaction • I asked few students and they indicated that it was convenient and easy to use EMarket web-site services. • Utility • compliance with the project requirements

  30. Security Application security: • EMarket web.config file encryption Data security: • Separate user roles: • authorized users: see and manage only their private data at EMarket, sell/ purchase products • administrator: manage the users, products and categories • unauthenticated users: can only view the products, user comments and ratings. • Password protection: • After authorization only username is saved in cookies. Password is not exposed. • Password is hashed before it is saved to EMarket database • One-way encryption

  31. Possible extensions and improvements Data tier: • Remove all queries from application to database as stored procedures.

  32. Possible extensions and improvements Logic tier: • Define and implement the interface EMarket money account with real bank accounts. • Manage the user session data (for example, shopping bag) on the server and not in the session cookie to prevent cookie poisoning (stealing or manipulating this data by hackers).

  33. Possible extensions and improvements Presentation tier: • Improve and make graphics more attractive • Allow products sorting in “Shop” and “History” sections by edition date • Allow products sorting in “Shop” section by price • Add new sub-“Shop” section called Sale and present there products that are on sale

  34. Possible extensions and improvements Presentation tier: • Add advertisement panel, EMarket web-site can make gains. • When user wants to delete some data (product in buyer history, product in seller history, or comment he wrote) or to update balance at money account, the system will show to user small confirmation message window. Thus, many errors will be prevented. • Allow multiple EMarket administrators to be defined.

  35. Me and Victor 

  36. Thanks to Soft-lab staff And special thanks to Victor, Ilana and Lev for technical support and encouragement!

More Related