Log In

Come Join Us!

Are you a
Computer / IT professional?
Join Tek-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Tek-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here


Which diagram should I use?

Which diagram should I use?

Which diagram should I use?

Hi all,
I'm new to UML and would like your advice please.
My company uses a charts application to display charts about how well the company is doing.
These charts use data collected from our live SQL db.
These are the processes that I'd like to document in an UML diagram.
SQL Scheduler:
  Job 1: Data collected from our live SQL db (runs at 6am)
Charts application scheduler:
  Job 2: gets the collected data into the off the charts application own db in a new format (runs at 7am)
  Job 3: this task makes the charts ready for users (runs at 8am)

These 3 steps are not related at all and if one step fails the rest will still run but the charts will be incorrect.
I thought the best diagram to use is the "sequence diagram" but this requires messages that flow between
As you can see there's no messages flowing and these jobs run at certain times of the day.

How would you document these steps?
Thanks in advance.

RE: Which diagram should I use?

I would consider using an Activity diagram.  A sequence diagram, as you have correctly surmised, has to do with (among other uses) diagramming a single path through a scenario of linear events.  What you have here are events that are dependent on one another but are not self-coordinating, in other words job 1 isn't responsible for starting job 2 when finished.

With an activity diagram, you can simply say do job 1, then do job 2, then do job 3.  Then you can set up your relationships between them in terms of constraints.  I would not say as a constraint that job 1 runs at 6 am, job 2 runs at 7 and so on.  What you care about is that job 1 ran successfully before job 2 runs and so on, and you should express your constraints in those terms.  That way, you add flexibility to the process design.  If, for example, you find down the road that your business demographic changes and you need to accommodate other time zones, you may wish to decide to run the reports at a different time of day.  However, what will not change is that the last 2 jobs are dependent on the previous ones running.

An unforeseen consequence of the information revolution has been the exponential propagation of human error.

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Tek-Tips Forums free from inappropriate posts.
The Tek-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Tek-Tips forums is a member-only feature.

Click Here to join Tek-Tips and talk with other members!

Close Box

Join Tek-Tips® Today!

Join your peers on the Internet's largest technical computer professional community.
It's easy to join and it's free.

Here's Why Members Love Tek-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close