net-auction this online auction project directed by: mr. maxim gurevich submitted by: yuri kipnis...

23
NET-AUCTION This online auction project This online auction project Directed by: Mr. Maxim Gurevich Directed by: Mr. Maxim Gurevich Submitted by: Yuri Kipnis Submitted by: Yuri Kipnis Alex Scheotkin Alex Scheotkin

Upload: logan-osborne

Post on 03-Jan-2016

218 views

Category:

Documents


1 download

TRANSCRIPT

NET-AUCTION

This online auction project This online auction project

Directed by: Mr. Maxim Directed by: Mr. Maxim GurevichGurevich

Submitted by: Yuri KipnisSubmitted by: Yuri Kipnis

Alex ScheotkinAlex Scheotkin

AgendaAbstractAbstractGoalsGoalsArchitecture and Architecture and

PatternsPatternsDesignDesignDemoDemo

AbstractOne of the One of the

ancient and ancient and popular popular market way is market way is an auctions.an auctions.

Always, action Always, action was a very was a very loud place, the loud place, the travelling to travelling to auction places auction places took a lot of took a lot of participants participants time and were time and were dangerous.dangerous.

Abstract

But now!...But now!...

You only need to You only need to turn on your turn on your computer and computer and enter the web-site enter the web-site

NET-NET-AUCTIONAUCTION

Abstract Net-AuctionNet-Auction is an implementation is an implementation

of web auction, like eBay, Sotheby, of web auction, like eBay, Sotheby, and others with it’s own design and others with it’s own design and bid politics.and bid politics.

This web site have an intuitive This web site have an intuitive interface and unique visual objects interface and unique visual objects that make it friendly for use. that make it friendly for use.

Common client operations were Common client operations were implemented in this application. In implemented in this application. In addition, there were used some addition, there were used some original marketing solutionsoriginal marketing solutions..

Our goals

The main goal is to provide The main goal is to provide easy way for buying and easy way for buying and selling over the web selling over the web

Studying ASP.NET 2, Microsoft Studying ASP.NET 2, Microsoft SQL Server, C# and an SQL Server, C# and an interaction of all above .interaction of all above .

Throwing over an engineering Throwing over an engineering process from planning of process from planning of project to it’s implementation. project to it’s implementation.

Net-auction features

GuestsGuests Searching for items by tags and Searching for items by tags and

categoriescategories Studying available tenders and Studying available tenders and

itemsitems Studying seller’s information Studying seller’s information Web registrationWeb registration

Registered usersRegistered users Proposing items for tenderProposing items for tender Participating in active tendersParticipating in active tenders Account management Account management Commenting and rating other usersCommenting and rating other users

ASP.NET 2

• Dynamic web-Dynamic web-applicationsapplications

• ASPX file formatASPX file format• Rendering technique Rendering technique • Microsoft .NET languages Microsoft .NET languages

(C#)(C#)

Design

Three layer design pattern

• Presentation Layer Presentation Layer

-Web pages (GUI).-Web pages (GUI).• Business Logic LayerBusiness Logic Layer

- Project’s logic.- Project’s logic.

- Classes & algorithms- Classes & algorithms• Data Access LayerData Access Layer

- Ordered DB access.- Ordered DB access.Related tables. Related tables.

Three Layer design pattern

•Advantages: Advantages: Modular software Modular software

Technology Technology independencyindependency

•Disadvantage:Disadvantage: ComplexityComplexity

Related tables – sql server

ClientsClientID

FirstName

SecondName

StreetAddress

StateProvince

ZipPostalCode

Country

City

eMail

NickName

Password

CreditCardNumber

CreditCardExpiredDate

Cache

Telephone

Rank

VotesNumber

NumberOfSales

NumberOfPurchases

RankImage

Waiting ClientsClientID

FirstName

SecondName

StreetAddress

StateProvince

ZipPostalCode

Country

eMail

NickName

Password

Telephone

YearsYear

CountiesName

MonthsMonth

CategoriesName

Description

Parent

TendersProductTenderNumber

StartTime

EndTime

StartPrice

ProductsSerialNumber

ItemTitle

Category

Condition

OwnerID

Quantity

AfterTender

Image

ItemLocation

ShipsTo

Active

Description

SellersVSBuyersSellerID

BuyerID

IsVoted

BidsPerTenderBid

ClientID

TenderNumber

Quantity

DateTime

QuantityBound

TagsVSProductsSerialNumber

Tag

Category

IsTitleTag

SoldProductsHistoryTenderNumber

NewOwnerID

ItemTitle

SellerID

SaleBid

Quantity

DateTime

FeedbacksVSClientsFeedbackNumber

FeedbackText

AuthorID

TargetID

FeedbackDateTime

Data access Technologies

ADO.NET Framework

-DataSet: object represents an entire database, contains its tables and relationships.

-DataAdapter: A bridge used to transfer data between a data source and a DataSet object.

Data Access Layer (dal)

Code structure

Auto generated classes“DAL” access classesLogics and Algorithms

classes

Business Logic Layer• All links in this diagram represent All links in this diagram represent composition UML linkscomposition UML links

between classes.between classes.

BLL: bidding

algorithm

Check the user account

Is present? Sign InNo

Get the bid

Is the users account is negative?

NoYe

s

Update the user account

Is it a legal bid? Compare to the

bigest bid and check the required quantity

Accept the bid

No

Yes

Client not registered

Client is not responsible

BLL: Winners Detecting algorithm

Get the field with the best bid in a “Bids per

Tender“ table

Are there enough items

to supply? Bids per Tender.quantity <

Product.quantity - sold.quantity

No

Yes

Add the product to history list.

Sold products history . Quantity = Bids per Tender . Quantity

Sold Quantity += Bids per Tender . quantity

Is the Bids per Tender . Quantity

Bound is true?

Throw away the field from the “Bids per

Tender” table

Yes

No

Add the product to history list.

Sold products history . Quantity = Product .

quantity - sold . quantity

Yes

Sold Quantity = 0

End

Product . Quantity > 0

No

Yes

. The

re a

re m

ore

item

s to

sup

ply,

so

lets

che

ck th

e ne

xt b

id

Sell this item, with required quantity

Sell this item, with available quantity

Can’t supply requered quantity

BLL: Feedback

and vote algorithm

Get the Client IDGet the Author ID

Is there is a pair of Seller-Buyer in

“Sellers vs. Buyers” table and “Votes”=false

Can’t perform this operation.

Get the rank from Buyer (-2,-2).

Increment the “Votes No.” field.

End

No

Rank = [(“Votes No.”-1)*Rank + New Rank]/”Votes No.” Renew the rank image for

client row.

BLL: Search algorithm

• Parse the search string to get search Parse the search string to get search elementselements

• Get all items from Get all items from “TagsVSProductsTable” that contain “TagsVSProductsTable” that contain search elements search elements

• Compute the number of search elements, Compute the number of search elements, separately for title and regular elementsseparately for title and regular elements

• Sort all appropriate items by number of Sort all appropriate items by number of elements (high priority for title elements elements (high priority for title elements and low priority for regular elements)and low priority for regular elements)

Web-Technologies

Master PagesHTML ObjectsForms Authentication CSS Visual Design

Presentation layerHome Page

Products

Product

Categories

New Bid

Sign In Registration

MyAccount

Personal Information

Active Tenders

History1

New Tender

User Information

About me

Tenders before

openning

My not succeed tenders

Found products

Product1

HistoryTenders before

openning

DEMO

WELCOME…WELCOME…

http://softlab-dev-web.technion.http://softlab-dev-web.technion.ac.il/Auctionac.il/Auction