Skip to content

Instantly share code, notes, and snippets.

@vithu
Created May 3, 2011 09:13
Show Gist options
  • Select an option

  • Save vithu/953053 to your computer and use it in GitHub Desktop.

Select an option

Save vithu/953053 to your computer and use it in GitHub Desktop.
Usecase
participant "«actor»\nTravel Coordinator" as TC
participant "«boundary»\nUI" as UI
participant "<<controller>>\nTFS" as TFS
note left of TFS
Travel Forms System
(administrative backend)
end note
participant "«actor»\nDatabase" as DB
participant "«actor»\nTraveller" as T
TC->UI: login()
activate TC
activate UI
UI->TFS: createlogin()
activate TFS
TFS-->UI: access
UI-->TC: access
TC->UI: selectTripApplication()
UI->TFS: retrieveTripApplication()
TFS-->UI: trip application
UI-->TC:selectTripApplication
loop check status
TC->UI: setApprovalStatus(TravelDiary,status)
TC->UI: setComment(TravelDiary)
TC->UI: setApprovalStatus(AbsenceOnDuty,status)
TC->UI: setComment(AbsenceOnDuty)
TC->UI: setApprovalStatus(TravelBudget,status)
TC->UI: setComment(TravelBudget)
TC->UI: saveApproval()
UI -> UI: package = \ncreatePackage
UI -> TFS: setApplicationPackage(package)
end
UI->TFS: updateTravelDiary(status,comment)
TFS-->UI: TravelDiaryStatus
TFS-->UI: TravelDiaryComment
UI->DB : UpdateTravelDiary()
activate DB
UI->TFS: updateAbsenceOnDuty(status,comment)
TFS-->UI: AbsenceOnDutyStatus
TFS-->UI: AbsenceOnDutyComment
UI->DB : UpdateAbsenceOnDuty()
UI->TFS: updateTravelBudget(status,comment)
TFS-->UI: TravelBudgetStatus
TFS-->UI: TravelBudgetComment
UI->DB : UpdateTravelBudget()
deactivate DB
TFS->UI: notifyResult()
UI-->TC: notifyResult
TC->UI : notify()
UI->T:notifyTraveller()
TC->UI: logout()
UI->TFS :createlogout()
TFS-->UI :logout
deactivate TFS
UI-->TC: logout
deactivate UI
deactivate TC
participant "«actor»\nTraveller" as T
participant "«boundary»\nUI" as UI
participant "<<controller>>\nTFS" as TFS
participant "«entity»\nAbsence on Duty" as AoD
participant "«entity»\nTravel Budget" as TB
participant "«entity»\nTravel Diary" as TD
participant "«entity»\nChecklist" as CL
participant "«actor»\nDatabase" as DB
loop until entire checklist has been processed
T->UI: New Trip Application
activate UI
UI->TFS: create_new_application()
activate TFS
TFS->AoD: complete_forms()
activate AoD
AoD-->TFS: AoD entries
deactivate AoD
TFS->DB : add(AoD entries)
TFS->TB: complete_forms()
activate TB
TB-->TFS: TB entries
deactivate TB
TFS->DB: add(TB entries)
TFS->TD: complete_forms()
activate TD
TD-->TFS:TD entries
deactivate TD
TFS->DB: add(TD entries)
TFS->CL: complete_forms(CL)
activate CL
CL-->TFS: CL entries
deactivate CL
TFS->DB: add(CL entries)
end
opt
TFS-->UI: forms sucessfully completed
UI-->T: Submission Success Message
else or
TFS-->UI: forms incompleted
deactivate TFS
UI-->T: Incomplete form or Checklist
Message
deactivate UI
end
@vithu

vithu commented May 4, 2011

Copy link
Copy Markdown
Author

Try the new one

@vithu

vithu commented May 4, 2011

Copy link
Copy Markdown
Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment