Digging My Blog - Dan Hounshell

Another .Dan Powered Site

WhatIWantMost: Adding attributes for the entities

In my last post I defined what I believe to be the basic set of entities needed for the site. I may need to add more later, but for now they will suffice. The goal is to make a decision and keep moving. I don't want to spend too much time over analyzing, I want to get to writing some code. Call it agile development or whatever you would like. I know that I will learn more about how the application needs to work once I get the application working.

I spent a few minutes looking at that list over the weekend and came up with a list of attributes that I think we'll need for each of those entities. I am taking a data centric view for this initial design and development because I will be generating a data layer and (some of) the domain layer using CodeSmith and .netTiers from the database. Because this is a smaller application driving the application from the data model should be fine.

After defining the entities and attributes I am going to "skip" early definition of the methods these entities should support. Most of the CRUD stuff will be handled by .netTiers (insert, update, delete, SelectByID, SelectAll, etc) and I have only loosely defined any domain logic so far (like copy wishlist item from userA's wisthlist to userB's wishlist). I will begin adding those piece-by-piece once we get the basics in place and I get to check out .netTiers' results. 

This approach is by no means a recommendation for all projects, it is just the way I am approaching this specific project.  

That's enough explanation and disclaimers. On with the show:

  • User: ID, FirstName, LastName, Email (Implicitly included is additional Membership, Role, and Profile stuff)
  • Address: ID, UserID, Street, City, State, Country, PostalCode, Label
  • Wishlist: ID, UserID, DateCreated
  • WishlistItem: ID, WishlistID, DateCreated ProductDesc, Size, Color, Qty, Other, Price, Url, ImageUrl, ItemCategoryID, Active
  • ItemCategory: ID, Name, Desc
  • FeaturedItem: ID, ProductDesc, Url, ReviewUrl, ImageUrl, ItemCategoryID
  • Vendor: ID, Name, Url
  • Reviewer: ID, Name, Url

Next steps: create a database adding tables to support the above entities. One of the things I read about .netTiers is that you have to explicitly create your relationships; I will have to keep that in mind when creating my tables.

 


Comments

TrackBack said:

# December 11, 2006 9:33 PM

Digging My Blog - Dan Hounshell said:

In my last post in the WhatIWantMost series I further defined the basic entities for the project by adding

# December 13, 2006 6:43 AM

Digging My Blog - Dan Hounshell said:

In my last post in the WhatIWantMost series I further defined the basic entities for the project by adding

# December 21, 2006 8:23 AM

Community Server Bits said:

Dan Hounshell gives us an object lesson in entity attributes for his WhatIWantMost application, with

# March 12, 2007 4:56 AM

Digging My Blog - Dan Hounshell said:

Following is a list of all the posts of the WhatIWantMost series. I'm listing them all here mostly for

# July 6, 2007 11:09 PM

Dan Hounshell said:

Following is a list of all the posts of the WhatIWantMost series. I'm listing them all here mostly

# July 7, 2007 12:06 AM
Leave a Comment

(required) 

(required) 

(optional)

(required) 

Please type in: hello world