in
Forums
Blogs
Files
Devexpress.Com
ClientCenter
Support Center
DevExpress Channel

Gary's Blog

XAF RWA Use Case #1

It’s time to create our first use case, so where to start? Well it seems clear to me that a top down approach is needed here, after all you can’t book tee times on a course that doesn’t exist and you can’t book tee times on a course when you don’t know when it opens, right? So our first use case has to be for the administration system and has to be around the maintenance (create, read, update and delete functions) of our course diaries. The use case follows below. You will notice that I don’t favour the fully dressed style of use case for this project as I think it is “too much” for blog posting. Readers who wish to find out more about use cases should read the excellent book Writing Effective Use Cases by Alistair Cockburn (Wikipedia). Readers may also wish to read about (the more fashionable) user stories.

Now I know this is going to upset the architectural fundamentalists, but I’m going to roll up related functionality into a single use case. I’m doing this for purely aesthetic reasons, to enable me to adhere to the four post policy that I described earlier. Just to keep us on the straight and narrow though, it is worth pointing out to our less experienced readers that, under normal conditions, each use case would deal with only one… well, use case :-)

As an aside, for those of you who are unfamiliar with the business area (and I’m assuming that’s the majority) the course diary describes what day of the year the course opens and closes and the first and last tee times, as well as any “outages” (for competitions etc). This is because it takes time (say 5 hours) to complete a round of golf and the times at which you tee off, and thus the time you are expected to return to the club house, are set up so that you are playing in day light during both winter and summer. Okay, so let’s get on with it.

Use Case: 001 Maintain Golf Course Diaries

Primary Actor
Administrator

Priority
High

Frequency
2/year

Trigger
Course diary maintenance required

Main Success Scenario
1. Administrator logs on to the system
2. Administrator elects to create a new course diary
3. Administrator creates a new course diary

Extensions
2.1.1 Administrator elects to edit a course diary
2.1.2 Administrator selects a course diary
2.1.3 Administrator edits a course diary
2.1.4 Course diary is edited if it does not invalidate future tee time bookings

2.2.1 Administrator elects to delete a course diary
2.2.2 Administrator selects a course diary
2.2.3 Administrator deletes a course diary
2.2.4 Course diary is deleted if it is not in use

2.3.1 Administrator elects to create an outage
2.3.2 Administrator creates an outage
2.3.3 Outage is create if it does not invalidate future tee time bookings

2.4.1 Administrator elects to edit an outage
2.4.2 Administrator selects an outage
2.4.3 Administrator edits an outage
2.4.4 Outage is edited if it does not invalidate future tee time bookings

2.5.1 Administrator elects to delete an outage
2.5.2 Administrator selects an outage
2.5.3 Administrator deletes an outage
2.5.4 Outage is deleted

Digg This
Published Oct 07 2008, 02:41 PM by Gary Short (Developer Express)
Filed under: ,
Technorati tags: XAF, Real World App

Comments

 

Your 2nd favourite developer said:

What happens if there are tee-time bookings that would be invalidated?  Does the system offer a listing of tee-time bookings that are affected?  Refuse to save and throw away any data entered? Or something else?

October 7, 2008 3:54 PM
 

Gary Short (Developer Express) said:

Well in true agile style we'll sort that out in the "just in time design" post which will follow tomorrow

October 7, 2008 5:20 PM
 

Mocte said:

Gary,

Thanks, altough I'm not a XAF user I'm following your posts an d perhaps this case can encourage me to renew the subscription I had before.

So don't stop please

Regards,

Mocte

October 7, 2008 8:44 PM
 

Gary's Blog said:

Now that we have our first use case , it’s time to do a little design work. The first task we have to

October 8, 2008 10:28 AM
 

Bill Hazelwood said:

Is it possible to subscribe to the blog so that we can get it in email form? I would hate to miss one.

October 9, 2008 9:12 AM
 

Gary Short (Developer Express) said:

Bill, you can subscribe to the RSS feed at community.devexpress.com/.../rss.aspx then you wont miss a thing :-)

October 9, 2008 9:39 AM
 

Mike said:

Gary:  These are great posts!  They give a great taste of the development process.

October 14, 2008 1:34 PM
 

Gary Short (Developer Express) said:

Glad you are enjoying them Mike

October 14, 2008 2:21 PM

Leave a Comment

(required)  
(optional)
(required)  
Verification code: Required
   
Add
Copyright © 1998-2008 Developer Express Inc.
ALL RIGHTS RESERVED