Wednesday, July 19, 2006

Use Case updates

I have updated the Use Case Diagram I posted previously, as my understanding of the needs of the system improves. Specifically, I have added a new use case, "View Pending Ads". This will be an "inbox", essentially, where my wife can view ads/listings that have been submitted and are pending her review/approval.

I have also removed the <> relationship between "Purchase Ad Placement" and "Approve Ad Placement".

Next up will be a candidate architecture diagram. Analysis of the use cases and the technologies we will be using should yield a robust, yet flexible architecture to meet the current and future needs of momsinmadison.com.

Sunday, July 16, 2006

Use Case Diagram

Below is the basic Use Case Diagram for the momsinmadison.com shopping cart. The purpose of the cart is to provide a mechanism for partners to purchase ad placements initially, and eventually, business directory listings and more. Because of the nature of the "product", there will be an approval mechanism between the partner initiating the purchase and completing the transaction.

A Use Case Diagram is an important artifact to create, if only because it serves to communicate with your client/customer/manager what "The System" consists of. In the diagram below, the system being developed is outlined in the light grey box. Once consensus has been achieved on this point, the high-risk use case(s) should be detailed out. The Use Case Model consists of your Use Case Specifications and a Use Case Diagram.

For a diagram like the one below, you can use whatever software or pencil & notepad that fits your budget - I use OmniGraffle from The Omni Group with a UML 2.0 stencil pack.

Saturday, July 15, 2006

Getting Started

This blog will chronicle building a Web 2.0 shopping cart and administrative front-end for momsinmadison.com, with integration to Google Checkout. I will be using XHTML, CSS, and Google Web Toolkit (GWT) with Java on the server in either JBoss 4.x or Tomcat 5.5.x. I will also be using the newest Eclipse development environment (3.2 - Callisto) with Ant and a variety of static analysis tools such as Checkstyle, PMD, JCSC, and FindBugs.

Since my wife (owner of momsinmadison.com) and I both work on Macs with OS X, I will be shooting for Safari compatibility as well as the typical IE and Firefox compatibility. Hopefully using GWT will help a lot with that (that's the plan, at least!)

So that's the plan, my next post will show some of the use cases I have put together for this project.