December 11, 2006

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,

  • Trackbacks,
  • and Pingbacks

Comments are closed.

 

Trackbacks and Pingbacks


  1. TrackBack says:
  2. In my last post in the WhatIWantMost series I further defined the basic entities for the project by adding

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

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

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

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

Shortcuts

Where is Dan?


My Blog
My Blog
Twitter
Twitter
Facebook
Facebook
LinkedIn
LinkedIn
Flickr
Flickr
YouTube
YouTube
Delicious
Delicious
Foursquare
Foursquare
Pinterest
Pinterest
GetGlue
GetGlue
Pintley
Pintley
XBOX Live
XBOX Live
Last.fm
Last.fm
Windows Live
Windows Live
Telligent.com
Telligent
Graffiti CMS on CodePlex
Graffiti CMS
Popular

Recent Posts