110
Modeling Car Crash Management with KAOS Antoine Cailliau, Christophe Damas, Bernard Lambeau, and Axel van Lamsweerde Université catholique de Louvain (UCL) (http://uclouvain.be/) Louvain‑La‑Neuve, Belgium {firstname}.{lastname}@uclouvain.be Introduction This document contains a KAOS [Lam09] modeling for a car crash system [Cal12]. It is the "full modeling" companion of [Cai13]. We invite the reader to have a look at [Cai13] to understand the context in which this work took place and to have a first overview of the modeled system and the KAOS method that has been applied to create it. This document is semi‑automatically generated from the model. The latest pdf and html versions are maintained online at the adresses below. We recommend the HTML version which contains hyperlinks for navigating the model. It requires a modern browser and has been tested both under Google Chrome and Firefox. HTML version with hyperlinks (http://kaos.info.ucl.ac.be/bcms.html) PDF version (http://kaos.info.ucl.ac.be/bcms.pdf) For any question about the model, available tool support or this document, please contact the authors of [Cai13]. References [Cal12] A. Capozucca, B. H.C. Cheng, G. Georg, N. Guelfi, P. Istoan, G. Mussbacher, Requirements Definition Document for a software product line of car crash management systems, May 2012, http://cserg0.site.uottawa.ca/cma2013re/CaseStudy.pdf (http://cserg0.site.uottawa.ca/cma2013re/CaseStudy.pdf) [Cai13] A. Cailliau, C. Damas, B. Lambeau, A. van Lamsweerde, KAOS Modeling for a Car Crash System, Submitted to "Comparing Requirements Modeling Approaches", Workshop at Requirements Engineering (RE) 2013 [Lam09] A. van Lamsweerde, Requirements Engineering: From System Goals to UML Models to Software Specifications. Wiley, 2009

Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Embed Size (px)

Citation preview

Page 1: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Modeling Car Crash Management with KAOS

Antoine Cailliau, Christophe Damas, Bernard Lambeau, and Axel van LamsweerdeUniversité catholique de Louvain (UCL) (http://uclouvain.be/)

Louvain‑La‑Neuve, Belgium{firstname}.{lastname}@uclouvain.be

Introduction

This document contains a KAOS [Lam09] modeling for a car crash system [Cal12]. It is the "full modeling" companion of[Cai13]. We invite the reader to have a look at [Cai13] to understand the context in which this work took place and to have afirst overview of the modeled system and the KAOS method that has been applied to create it.

This document is semi‑automatically generated from the model. The latest pdf and html versions are maintained online atthe adresses below. We recommend the HTML version which contains hyperlinks for navigating the model. It requires amodern browser and has been tested both under Google Chrome and Firefox.

HTML version with hyperlinks (http://kaos.info.ucl.ac.be/bcms.html)

PDF version (http://kaos.info.ucl.ac.be/bcms.pdf)

For any question about the model, available tool support or this document, please contact the authors of [Cai13].

References

[Cal12] A. Capozucca, B. H.C. Cheng, G. Georg, N. Guelfi, P. Istoan, G. Mussbacher, Requirements Definition Documentfor a software product line of car crash management systems, May 2012,

http://cserg0.site.uottawa.ca/cma2013re/CaseStudy.pdf (http://cserg0.site.uottawa.ca/cma2013re/CaseStudy.pdf)

[Cai13] A. Cailliau, C. Damas, B. Lambeau, A. van Lamsweerde, KAOS Modeling for a Car Crash System, Submitted to

"Comparing Requirements Modeling Approaches", Workshop at Requirements Engineering (RE) 2013

[Lam09] A. van Lamsweerde, Requirements Engineering: From System Goals to UML Models to Software Specifications.

Wiley, 2009

Page 2: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Outline

Modeling Car Crash Management with KAOS1 — Introduction2 — References3 — Outline4 — Goal Model

4.1 — Behavioral goals4.1.1 — Functional goals

4.1.1.1 — Achieve [Communication Established When Crisis Reported]4.1.1.2 — Achieve [Crisis Resolved When Reported]

4.1.1.2.1 — Achieve [Crisis Details Exchanged When Crisis Reported]4.1.1.2.2 — Achieve [Crisis Requirements Known When Crisis Details Exchanged]4.1.1.2.3 — Achieve [Vehicle Positions And Availabilities Known At Police Station When RequirementsKnown]4.1.1.2.4 — Achieve [Route Plan Built From Information About Crisis And Vehicles Available At PoliceStation]4.1.1.2.5 — Achieve [Route Plan Eventually Agreed When Built]4.1.1.2.6 — Achieve [Route Plan Objectives Completed When Agreement Reached]4.1.1.2.7 — Achieve [Crisis Closed When Route Plan Objectives Completed]

4.1.2 — Non‑functional goals4.1.2.1 — Avoid [Coordinator Decisions Based on Inaccurate Data]

4.1.2.1.1 — Maintain [Accurate Information About Crisis Location At Both Stations]4.1.2.1.2 — Maintain [Accurate Fire Truck Position And Availability Information At Fire Station]4.1.2.1.3 — Maintain [Accurate Police Vehicle Position And Availability Information At Police Station]

4.1.2.2 — Avoid [Coordinator Decisions Based on Corrupted Data]4.1.2.2.1 — Maintain [Communication Integrity]4.1.2.2.2 — Maintain [Database Integrity]4.1.2.2.3 — Maintain [Display Integrity]

4.1.2.3 — Maintain [Data Availability]4.1.2.3.1 — Maintain [Communication Availability Between Stations Until Crisis Resolved]

4.2 — Soft goals4.2.1 — Minimize [Time To Get Resources on Crisis Location]4.2.2 — Maximize [Data and Estimates Precision and Accuracy]4.2.3 — Minimize [Stress Level]4.2.4 — Minimize [System Cost]4.2.5 — Minimize [Response Time]

4.3 — Anti‑Goals4.4 — Conflicts4.5 — Obstacles

4.5.1 — Route Plan Not Proposed When Requirements, Positions and Availibilities Known4.5.1.1 — Not Enough Vehicles Available To Handle The Crisis

4.5.1.1.1 — Achieve [Backup Asked To Other Police And Fire Stations When Not Enough Vehicles Available]4.5.1.1.2 — Achieve [Route Plan Proposed on Weakened Crisis Requirements When Not Enough VehiclesAvailable]

4.5.2 — Fire Vehicle Not On Scene In Time When Dispatched4.5.2.1 — Fire Vehicle Lost or Destination Confused

4.5.2.1.1 — Avoid [Fire Truck Driver In Unfamiliar Area]4.5.2.1.2 — Achieve [Route Indications Provided When Fire Truck Lost]

4.5.3 — Communication Between Stations Broken4.5.3.1 — Maintain [Communication Robust To Cable Cut]4.5.3.2 — Avoid [Network Cable Unplugged]

4.5.4 — Communication Integrity Violated4.5.4.1 — Avoid [Malicious Message Alterations In Communication Between Fire and Police Station]4.5.4.2 — Maintain [Double Level Integrity Mechanism For Inter‑Station Communication]

4.5.5 — Encoded Crisis Details No Longer Encoded4.5.6 — Blackboard Not Kept Up To Date From Fire Truck Notifications4.5.7 — Fire Truck Positions Not Received When Sent

5 — Structural model5.1 — Objects in the environment5.2 — Software information about the environment5.3 — Shared phenomena

5.3.1 — Crisis details exchange5.3.2 — Crisis requirements exchange5.3.3 — Route plan agreement5.3.4 — Dispatching notification5.3.5 — Vehicle availability notification5.3.6 — Vehicle position update5.3.7 — Crisis closing agreement

6 — Agents6.1 — Context diagram6.2 — Responsibilities

6.2.1 — AVLS6.2.2 — Communication Compromiser6.2.3 — Crisis Software6.2.4 — Fire Software6.2.5 — Fire Station Coordinator6.2.6 — Fireman6.2.7 — MDT6.2.8 — MDT/AVLS Network6.2.9 — Police officer6.2.10 — Police Software6.2.11 — Police Station Coordinator6.2.12 — Radio Network6.2.13 — Stations Network6.2.14 — Videoconference Infrastructure6.2.15 — Witness

7 — Behaviors7.1 — Scenarios

Page 3: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

7.1.1 — Route plan building and agreement7.1.2 — Timeout during route plan building

7.2 — State machines7.2.1 — Crisis Software Information7.2.2 — Vehicle Availability Information

8 — Operations8.1 — ProposeRoutePlanDraft8.2 — UpdateRoutePlanDraft8.3 — UpdateFireTruckAvailabilityInfo

9 — Detailed definitions9.1 — Agents9.2 — Goals9.3 — Soft goals9.4 — Domain properties9.5 — Domain hypotheses9.6 — Obstacles

10 — Predicates

Page 4: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Goal Model

This section provides an overview of the main objectives of the bCMS system. High‑level goals are successively refined untilbeing assignable to particular agents (see the graphical legend below).

Despite obstacle analysis has already been conducted, the goal model is still idealistic; in particular, it relies on somedomain hypotheses whose list can be found in the detailed definition section. Most of those hypotheses should probably berelaxed.

Page 5: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Behavioral goals

Functional goals

Page 6: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Achieve [Communication Established When Crisis Reported]

For every reported crisis, communication shall be established between the responsible police and firecoordinators.

Name Definition

Achieve [Communication Established When CrisisReported]

For every reported crisis, communication shall be established between theresponsible police and fire coordinators.

Achieve [Fire Coordinator Connected When CrisisReported]

For every reported crisis, the reponsible fire coordinator shall connect to thesystem as soon as possible.

Achieve [Police Coordinator Connected When CrisisReported]

For every reported crisis, the reponsible police coordinator shall connect to thesystem as soon as possible.

Achieve [Communication Established WhenCoordinators Connected]

For every reported crisis, communication shall be established between the policeand fire coordinators as soon as they are connected.

Achieve [Communication Established At PoliceStation When Coordinators Connected]

For every reported crisis, communication shall be established at police station assoon as fire and police coordinators are connected.

Achieve [Communication Established At Fire StationWhen Coordinators Connected]

For every reported crisis, communication shall be established at fire station assoon as fire and police coordinators are connected.

Page 7: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Achieve [Crisis Resolved When Reported]

Every crisis shall be eventually resolved when reported.

Name Definition

Achieve [Crisis Resolved WhenReported]

Every crisis shall be eventually resolved when reported.

Achieve [Crisis Requirements KnownWhen Crisis Reported]

For every reported crisis, required resources for handling the crisis shall eventually be known byboth coordinators.

Achieve [Route Plan AgreementReached When Requirements Known]

For every crisis, based on established requirements, the police and fire coordinators shalleventually agree on a route plan to be deployed so as to resolve the crisis.

Achieve [Crisis Resolved When RoutePlan Agreement Reached]

For every crisis, when a route plan has been agreed by coordinators then the crisis is eventuallyresolved.

Achieve [Crisis Details ExchangedWhen Crisis Reported]

For every reported crisis, all relevant information (e.g. crisis location, number of victims, etc.) shalleventually be exchanged between coordinators.

Achieve [Crisis Requirements KnownWhen Crisis Details Exchanged]

For every reported crisis, when the details have been exchanged between coordinators, therequirements (e.g. the number of required vehicles) shall eventually be known by both of them.

Achieve [Route Plan Built When CrisisRequirements Known]

For every crisis, based on established requirements, a feasible route plan is eventually built by thepolice coordinator.

Achieve [Route Plan Eventually AgreedWhen Built]

For every crisis, the route plan built by the police coordinator is eventually agreed by the firecoordinator.

Achieve [Vehicle Positions AndAvailabilities Known At Police StationWhen Requirements Known]

For every crisis whose requirements are known, the positions and availabilities of police vehiclesand fire trucks shall be known at the police station (so as to allow the PSC to build a route plan).

Achieve [Route Plan Built FromInformation About Crisis And VehiclesAvailable At Police Station]

The route plan shall be built from the known crisis requirements and known positions of policevehicle and fire truck. By built, we mean that a route plan draft shall exists with a route for eachinvolved vehicle. The draft shall meet all requirements.

Achieve [Route Plan ObjectivesCompleted When AgreementReached]

For every crisis, when an agreement has been reached between coordinators on the route plan todeploy, the objective of every vehicle allocated to the crisis is eventually completed.

Achieve [Crisis Closed When RoutePlan Objectives Completed]

Every crisis whose all objectives are complete shall eventually be closed.

Page 8: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Achieve [Crisis Details Exchanged When Crisis Reported]

For every reported crisis, all relevant information (e.g. crisis location, number of victims, etc.) shall eventuallybe exchanged between coordinators.

Name Definition

Achieve [Crisis Details Exchanged WhenCrisis Reported]

For every reported crisis, all relevant information (e.g. crisis location, number of victims,etc.) shall eventually be exchanged between coordinators.

Achieve [Crisis Details Discussed AsSoon As Possible When CommunicationEstablished]

For every reported crisis, as soon as the communication has been established betweencoordinators, they shall discuss (share and compare) relevant information about the crisis.

Achieve [Crisis Details Encoded WhenCrisis Reported]

For every crisis, all relevant information shall be independently encoded by coordinators assoon as the crisis is reported.

Maintain [Encoded Crisis DetailsAvailable At Both Stations WhenCommunication Established]

For every reported crisis, all encoded details shall be made available both at the firestation and the police station.

Achieve [Police Details Encoded WhenCrisis Reported]

For every crisis, all relevant information shall be encoded by the police coordinator as soonas the crisis is reported.

Achieve [Fire Details Encoded WhenCrisis Reported]

For every crisis, all relevant information shall be encoded by the fire coordinator as soonas the crisis is reported.

Maintain [Encoded Crisis Details RemainEncoded]

For every reported crisis, encoded details shall remain encoded until the crisis is resolved.

Maintain [Encoded Crisis DetailsAvailable At Fire Station]

The encoded details about the crisis shall be available at fire station. By available, we meanthat the information can be known by the fire coordinator (for example, displayed on ascreen, printed, etc.).

Maintain [Encoded Crisis DetailsAvailable At Police Station]

The encoded details about the crisis shall be available at police station. By available, wemean that the information can be known by the police coordinator (for example, displayedon a screen, printed, etc.).

Maintain [Encoded Fire Details AvailableAt Fire Station]

The encoded fire details about the crisis shall be available at fire station.

Maintain [Encoded Police DetailsAvailable At Fire Station]

The encoded police details about the crisis shall be available at fire station.

Maintain [Encoded Police DetailsAvailable At Police Station]

The encoded police details about the crisis shall be available at police station.

Maintain [Encoded Fire Details AvailableAt Police Station]

The encoded fire details about the crisis shall be available at police station.

Page 9: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Achieve [Crisis Requirements Known When Crisis Details Exchanged]

For every reported crisis, when the details have been exchanged between coordinators, the requirements(e.g. the number of required vehicles) shall eventually be known by both of them.

Name Definition

Achieve [Crisis Requirements KnownWhen Crisis Details Exchanged]

For every reported crisis, when the details have been exchanged between coordinators, therequirements (e.g. the number of required vehicles) shall eventually be known by both ofthem.

Achieve [Fire RequirementsEstablished Based on ExchangedCrisis Details]

For every crisis, based on exchanged information, the number of fire trucks required shalleventually be established by the fire coordinator.

Achieve [Police RequirementsEstablished Based on ExchangedCrisis Details]

For every crisis, based on exchanged information, the number of police vehicles requiredshall eventually be established by the police coordinator.

Achieve [Crisis RequirementsExchanged When Established]

For every crisis, when fire and police requirements have been established, they are eventuallyexchanged with the other coordinator.

Achieve [Crisis RequirementsDiscussed When IndependentlyEstablished]

Crisis requirements shall be discussed by both coordinators when crisis has been reported atboth station independently.

Achieve [Crisis Requirements EncodedWhen Established]

Fire and route requirements shall be encoded when crisis has been established at bothstations.

Maintain [Crisis RequirementsAvailable When Encoded]

Crisis requirements shall be made available to both coordinators when encoded.

Achieve [Crisis Requirements EncodedAt Fire Station When Established]

Fire vehicle requirements shall be encoded at fire station when crisis is established.

Achieve [Crisis Requirements EncodedAt Police Station When Established]

Route and police vehicle requirements shall be encoded at police station when crisis isestablished.

Maintain [Encoded CrisisRequirements Remain Encoded]

When crisis requirements have been encoded in the software they shall remain encoded untilthe crisis is closed.

Page 10: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Achieve [Vehicle Positions And Availabilities Known At Police Station When RequirementsKnown]

For every crisis whose requirements are known, the positions and availabilities of police vehicles and firetrucks shall be known at the police station (so as to allow the PSC to build a route plan).

Name Definition

Achieve [Vehicle Positions AndAvailabilities Known At Police StationWhen Requirements Known]

For every crisis whose requirements are known, the positions and availabilities of policevehicles and fire trucks shall be known at the police station (so as to allow the PSC tobuild a route plan).

Maintain [Accurate Vehicle Position AndAvailability Information At The Station ItBelongs To]

The system shall ensure that the information about the positions and availibilities ofpolice vehicles and fire trucks used in critical decisions remains accurate 99,99% of thetime at the station to which the vehicle belongs.

Achieve [Fire Truck Positions AndAvailabilities Gathered From Fire StationAt Police Station]

For every crisis whose requirements are known, the positions and availabilities of firetrucks shall be gathered from the fire station so as to be known at police station too.

Achieve [Fire Truck Position AndAvailabilities Shared By Fire StationCoordinator]

The position and availabilities of each fire truck shall be shared by the fire stationcoordinator with the police station coordinators.

Maintain [Fire Truck Positions andAvailabilities Available At Police StationWhen Available At Fire Station]

The position and availabilities of each fire truck shall be available at the police stationwhen available at the fire station.

Achieve [Fire Truck Position AndAvailabilities Replicated From Fire StationTo Police Station]

The position and availabilities of each fire truck shall be replicated from the database ofthe fire station to the database of the police station.

Page 11: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Achieve [Route Plan Built From Information About Crisis And Vehicles Available At PoliceStation]

The route plan shall be built from the known crisis requirements and known positions of police vehicle andfire truck. By built, we mean that a route plan draft shall exists with a route for each involved vehicle. Thedraft shall meet all requirements.

Name Definition

Achieve [Route Plan BuiltFrom Information AboutCrisis And VehiclesAvailable At Police Station]

The route plan shall be built from the known crisis requirements and known positions of police vehicleand fire truck. By built, we mean that a route plan draft shall exists with a route for each involvedvehicle. The draft shall meet all requirements.

Achieve [Route Plan DraftProposed From KnownRequirements, VehiclePositions And Availabilities]

When the crisis requirements as well as vehicle positions and availibilities are known a route plan draftis eventually proposed by the software to the coordinators.

Achieve [Route Plan DraftConsolidated WhenProposed]

When a route plan draft is proposed, it is eventually consolidated, meaning that necessary constraintsknown by coordinators are taken into account such that the plan deployment is feasible and such thatthe crisis is likely to be resolved in a timely manner. Also, for each vehicle its path (from its currentposition to the crisis scene) and its ETA is computed.

Achieve [Route Plan DraftEventually Promoted ToRoute Plan]

The consolidated route plan draft is eventually promoted as a route plan when it all necessaryconstraints have been taken into account.

Achieve [Police ConstraintsProvided When Route PlanDraft Proposed]

When a route plan draft is proposed, the police constraints are eventually provided to the software forplan consolidation.

Maintain [Real‑Time DraftConsolidation FromProvided Constraints]

The software shall consolidate the route plan draft from the known vehicle position and constraintsprovided by coordinator(s). In particular, the path (from its current position to the crisis scene) and ETAis computed for each vehicle.

Achieve [Fire ConstraintsProvided When Route PlanDraft Proposed]

When a route plan draft is proposed, the fire constraints are eventually provided to the software forplan consolidation.

Achieve [Police and FireConstraints Provided WhenRoute Plan Draft Proposed]

When a route plan draft is proposed, the police and fire constraints are eventually provided to thesoftware for plan consolidation.

Page 12: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Achieve [Route Plan Eventually Agreed When Built]

For every crisis, the route plan built by the police coordinator is eventually agreed by the fire coordinator.

Name Definition

Achieve [Route Plan EventuallyAgreed When Built]

For every crisis, the route plan built by the police coordinator is eventually agreed by the firecoordinator.

Achieve [Route Plan Explained WhenBuilt]

For every crisis, the route plan built by the police coordinator is eventually explained to the firecoordinator.

Achieve [Route Plan Agreed OnceExplained]

For every crisis, the route plan built by the police coordinator is eventually agreed by the firecoordinator when it has been explained.

Achieve [Route Plan Displayed WhenRoute Plan Built]

For every crisis, the route plan built by the police coordinator is eventually displayed at the firestation.

Achieve [Route Plan Agreed WhenDisplayed]

For every crisis, the route plan built by the police coordinator is eventually agreed by the firecoordinator when displayed in the fire station.

Achieve [Route Plan Sent WhenBuilt]

For every crisis, the route plan built by the police coordinator is eventually sent at the firestation.

Achieve [Route Plan Displayed WhenReceived]

When received at the fire station, the route plan is eventually displayed.

Page 13: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Achieve [Route Plan Objectives Completed When Agreement Reached]

For every crisis, when an agreement has been reached between coordinators on the route plan to deploy, theobjective of every vehicle allocated to the crisis is eventually completed.

Name Definition

Achieve [Route Plan ObjectivesCompleted When AgreementReached]

For every crisis, when an agreement has been reached between coordinators on the route planto deploy, the objective of every vehicle allocated to the crisis is eventually completed.

∀ c:Crisis · RoutePlanAgreementReached(c) Ó ◊ ∀ v:Vehicle ·VehicleObjectiveCompleted(c, v)

Achieve [Vehicle On Scene When InRoute Plan]

Every vehicle involved in a agreed route plan shall be at the crisis location as soon as possible.

∀ c:Crisis, v:Vehicle, rp:RoutePlan · Agreed(rp, c) ∧ VehicleInRoutePlan(v, rp) Ó◊ VehicleOnScene(c, v)

Achieve [Vehicle Dispatched WhenIn Route Plan]

Every vehicle involved in a agreed route plan shall be dispatched as soon as possible.

∀ c:Crisis, v:Vehicle, rp:RoutePlan · Agreed(rp, c) ∧ VehicleInRoutePlan(v, rp) Ó◊ VehicleDespatched(c, v)

Achieve [Police Vehicle DispatchedWhen In Route Plan]

Every police vehicle involved in a agreed route plan shall be dispatched as soon as possible.

∀ c:Crisis, v:PoliceVehicle, rp:RoutePlan · Agreed(rp, c) ∧ VehicleInRoutePlan(v,rp) Ó ◊ VehicleDespatched(c, v)

Achieve [Vehicle On Scene WhenDispatched]

Every dispatched vehicle shall reach the crisis location as soon as possible.

∀ c:Crisis, v:Vehicle · VehicleDespatched(c, v) Ó ◊ VehicleOnScene(c, v)

Achieve [Fire Truck On Scene WhenDispatched]

Every dispatched fire truck shall reach the crisis location as soon as possible.

∀ c:Crisis, v:FireVehicle · VehicleDespatched(c, v) Ó ◊ VehicleOnScene(c, v)

Achieve [Police Vehicle On SceneWhen Dispatched]

Every dispatched police vehicle shall reach the crisis location as soon as possible.

∀ c:Crisis, v:PoliceVehicle · VehicleDespatched(c, v) Ó ◊ VehicleOnScene(c, v)

Achieve [Vehicle ObjectiveCompleted When On Scene]

Every vehicle at the crisis location shall eventually complete its objective.

∀ c:Crisis, v:Vehicle · VehicleDespatched(c, v) Ó ◊ VehicleObjectiveCompleted(c, v)

Achieve [Fire Truck ObjectiveCompleted When On Scene]

Every fire truck at the crisis location shall eventually complete its objective.

∀ c:Crisis, v:FireVehicle · VehicleDespatched(c, v) Ó ◊VehicleObjectiveCompleted(c, v)

Achieve [Police Vehicle ObjectiveCompleted When On Scene]

Every police vehicle at the crisis location shall eventually complete its objective.

∀ c:Crisis, v:PoliceVehicle · VehicleDespatched(c, v) Ó ◊VehicleObjectiveCompleted(c, v)

≤12m

≤2m

≤2m

≤10m

≤10m

≤10m

Page 14: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Achieve [Crisis Closed When Route Plan Objectives Completed]

Every crisis whose all objectives are complete shall eventually be closed.

Name Definition

Achieve [Crisis Closed When Route PlanObjectives Completed]

Every crisis whose all objectives are complete shall eventually be closed.

∀ c:Crisis · (∀ v:Vehicle · VehicleObjectiveCompleted(c, v)) Ó ◊CrisisClosed(c)

Achieve [Closing Proposed When RoutePlane Objectives Completed]

For every crisis for which all route plan objectives have been completed a closingproposal shall be proposed by the PSC to the FSC.

∀ c:Crisis · (∀ v:Vehicle · VehicleObjectiveCompleted(c, v)) Ó ◊ClosingProposed(c)

Achieve [Closing Agreed When ClosingProposed By PSC]

A crisis closing proposal shall eventually be accepted by the FSC when proposed by thePSC.

∀ c:Crisis · ClosingProposed(c) Ó ◊ CrisisClosed(c)

≤1h

≤55m

≤5m

Page 15: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Non‑functional goals

Page 16: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Avoid [Coordinator Decisions Based on Inaccurate Data]

The system shall ensure that every critical decision taken by coordinators shall be based on accurate data 99,99%of the time and 95% of the time for other decisions.

Name Definition

Avoid [Coordinator Decisions Based onInaccurate Data]

The system shall ensure that every critical decision taken by coordinators shall be based onaccurate data 99,99% of the time and 95% of the time for other decisions.

Maintain [Accurate Vehicle PositionAnd Availability Information At TheStation It Belongs To]

The system shall ensure that the information about the positions and availibilities of policevehicles and fire trucks used in critical decisions remains accurate 99,99% of the time at thestation to which the vehicle belongs.

Maintain [Accurate Information AboutCrisis Location At Both Stations]

The system shall ensure that the information about the crisis location is accurate 99,99% of thetime as such information is used for critical decisions.

Maintain [Accurate Display Of CriticalInformation]

The system shall ensure the accuracy of critical information when displayed. In particular, devicesdiplaying the location of the crisis and vehicles shall be refreshed in less than 3 sec. every timethe underlying information changes.

Maintain [Accurate Replication ofCritical Information]

Every replication of critical information from one station to the other shall be accurate. Inparticular, if replicated, vehicle information (position, availability) shall not differ for longer than1 sec, 99,99% of the time.

Maintain [Accurate Police VehiclePosition And Availability InformationAt Police Station]

The positions and availabilities of police vehicle shall be accurately known at police station. Therefinement of this goal is similar to what happens for fire trucks.

Maintain [Accurate Fire Truck PositionAnd Availability Information At FireStation]

The position and availabilities of fire truck shall be accurately known at fire station. By accurate,we mean that the position does not differ for more than X meters and the availability are thesame within Y seconds.

Page 17: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Maintain [Accurate Information About Crisis Location At Both Stations]

The system shall ensure that the information about the crisis location is accurate 99,99% of the time as suchinformation is used for critical decisions.

Name Definition

Maintain [Accurate Information About CrisisLocation At Both Stations]

The system shall ensure that the information about the crisis location is accurate99,99% of the time as such information is used for critical decisions.

Maintain [Crisis Location Accurate When InitiallyReported]

The crisis location shall be accurately reported by witnesses.

Maintain [Cross Check Of Crisis LocationInformation Updates During Crisis]

The system shall ensure that updates to the crisis location information atstations shall be cross checked by both coordinators.

Achieve [Location Information Checked By PoliceCoordinator On Update Requests]

The crisis location shall be explicitely checked by the police coordinator everytime an update of the location information is requested to the software.

Achieve [Location Information Checked By FireCoordinator On Update Requests]

The crisis location shall be explicitely checked by the fire coordinator every timean update of the location information is requested to the software.

Maintain [Crisis Location Information UpdateRejected Unless Confirmation From BothCoordinators]

Every request for update of the crisis location information at stations shall berejected unless a confirmation has been explicitely made by both coordinators.

Page 18: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Maintain [Accurate Fire Truck Position And Availability Information At Fire Station]

The position and availabilities of fire truck shall be accurately known at fire station. By accurate, we meanthat the position does not differ for more than X meters and the availability are the same within Y seconds.

Name Definition

Maintain [Accurate FireTruck Position AndAvailability Information AtFire Station]

The position and availabilities of fire truck shall be accurately known at fire station. By accurate, we meanthat the position does not differ for more than X meters and the availability are the same within Yseconds.

Achieve [Fire TruckPosition and AvailibilityUpdates Announced AtRadio When Changed]

Fireman shall announce at radio state main changes of the fire truck position and availability updates.

Achieve [Fire Truck StateUpdates Emitted At FireStation When Announced]

Fire truck, resp. police vehicle, state updates announced by radio shall be emitted at the fire station.

Maintain [Blackboard KeptUpToDate From Fire TruckNotifications]

Accurate information about the position and availability of the fire trucks shall be kept up‑to‑date anddisplayed on a blackboard. State shall be updated on update notification.

Maintain [Accurate FireTruck PositionInformation At FireStation]

The position of fire trucks shall be accurately known at fire station.

Maintain [Accurate FireTruck AvailabilityInformation At FireStation]

The availabilities of fire truck shall be accurately known at fire station.

Maintain [Accurate FireTruck Position SentRegularly]

The accurate position of fire truck shall be sent every 30 seconds.

Achieve [Accurate FireTruck Position ReceivedWhen Sent]

The accurate position shall be received within 5 seconds when sent.

Maintain [Accurate FireTruck PositionInformation At Fire StationFrom Received AVLSNotifications]

The accurate position of fire truck shall be known at fire station when received.

Achieve [Fire TruckAvailability ChangeEncoded on MDT]

When the availability of the fire vehicle changes, the fireman shall encode that change by pressing rheright button on its MDT. More specifically, the 'Available' button shall be pressed when the fire truckcompleted its objectives, 'Dispatched' shall be pressed when the fire vehicle acknowledges itsparticipation to a route plan and 'OnScene' when the fire truck arrives on the crisis scene.

Achieve [Accurate MDTMessage Sent When FireTruck Availability ChangeEncoded]

Every time the availability of a fire truck is changed through encoding on its MDT, a message shall besent containing the vehicle ID and information about the new availability.

Achieve [MDT MessageReceived When Sent]

Sent MDT messages shall be received at corresponding station.

Maintain [Accurate FireTruck AvailabilityInformation At Fire StationFrom Received MDTMessages]

The accurate availabilities of fire trucks shall be known at fire station based on the received MDTmessages.

Page 19: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Maintain [Accurate Police Vehicle Position And Availability Information At Police Station]

The positions and availabilities of police vehicle shall be accurately known at police station. The refinementof this goal is similar to what happens for fire trucks.

Name Definition

Maintain [Accurate Police Vehicle PositionInformation At Police Station]

The positions of police vehicle shall be accurately known at police station. Therefinement of this goal is similar to what happens for fire trucks.

Maintain [Accurate Police VehicleAvailability Information At Police Station]

The availabilities of police vehicle shall be accurately known at police station. Therefinement of this goal is similar to what happens for fire trucks.

Page 20: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Avoid [Coordinator Decisions Based on Corrupted Data]

The system shall ensure that the integrity of every data on which critical decisions are taken by coordinators(such as crisis location, vehicle number and vehicle location) is preserved 99,99% of the time and 95% of the timefor other data.

Name Definition

Avoid [CoordinatorDecisions Based onCorrupted Data]

The system shall ensure that the integrity of every data on which critical decisions are taken by coordinators(such as crisis location, vehicle number and vehicle location) is preserved 99,99% of the time and 95% of thetime for other data.

Maintain [DatabaseIntegrity]

The system shall ensure that the integrity of data kept in software databases is preserved 99,99% of the time.

Maintain[CommunicationIntegrity]

The system shall ensure that the integrity of every critical data transmitted to stations (such as crisis location,vehicle number and vehicle location) is preserved 99,99% of the time and 95% of the time for other data.

Maintain [DisplayIntegrity]

The system shall ensure that the integrity of every critical data displayed at stations (such as crisis location,vehicle number and vehicle location) is preserved 99,99% of the time and 95% of the time for other data.

Page 21: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Maintain [Communication Integrity]

The system shall ensure that the integrity of every critical data transmitted to stations (such as crisislocation, vehicle number and vehicle location) is preserved 99,99% of the time and 95% of the time for otherdata.

Name Definition

Maintain[CommunicationIntegrity Between Fire AndPolice Station]

The system shall ensure that the integrity of every critical data transmitted between fire and policestations (such as crisis location, vehicle number and vehicle location) is preserved 99,99% of the timeand 95% of the time for other data.

Page 22: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Maintain [Database Integrity]

The system shall ensure that the integrity of data kept in software databases is preserved 99,99% of the time.

Page 23: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Maintain [Display Integrity]

The system shall ensure that the integrity of every critical data displayed at stations (such as crisis location,vehicle number and vehicle location) is preserved 99,99% of the time and 95% of the time for other data.

Page 24: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Maintain [Data Availability]

The crisis details, route plan and information related to the identification of coordinators shall be available

with the exception of a total of 5 minutes during the time period when at least one crisis is active.

The crisis details and route plans should be available with the exception of a total of 30 minutes for every

48 hours when no crisis is active.

Page 25: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Maintain [Communication Availability Between Stations Until Crisis Resolved]

For every crisis, when communication is established between the responsible police and fire coordinators, itshall remain established until the crisis is resolved.

Name Definition

Maintain [Communication AvailabilityBetween Stations Until Crisis Resolved]

For every crisis, when communication is established between the responsible police andfire coordinators, it shall remain established until the crisis is resolved.

Maintain [Communication Availability AtPolice Station Until Crisis Resolved]

For every crisis, when communication is established at the police station, it shall remainestablished until the crisis is resolved.

Maintain [Communication Availability AtFire Station Until Crisis Resolved]

For every crisis, when communication is established at the fire station, it shall remainestablished until the crisis is resolved.

Page 26: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Soft goals

Minimize [Time To Get Resources on Crisis Location]

Getting needed resources on the crisis location, such as police vehicles and fire trucks shall take the shortestpossitble amount of time.

Maximize [Data and Estimates Precision and Accuracy]

The estimation of resource needs and time of arrivals for resources shall be as accurate as possible. More generallythe accuracy and precision of any non‑critical data critical shall be maximized.

Minimize [Stress Level]

The system shall help minimizing the stress level of both coordinators.

Minimize [System Cost]

The system shall ensure effective response times with minimal costs.

Minimize [Response Time]

The system shall respond to user requests within 5 seconds 95% of the time.

The system shall respond to user requests within 30 seconds 99,99% of the time.

Page 27: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Anti‑Goals

The anti‑goal model is only preliminary as the domain of the communication compromiser has not been elicited. See theobstacle‑analysis section for resolution of security threats identified here.

Page 28: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Conflicts

The conflict analysis is only preliminary and provided as an example of how conflicts can be identified and resolved. Seethe obstacle‑analysis section for resolution of the conflict identified here.

Page 29: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Obstacles

Page 30: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Route Plan Not Proposed When Requirements, Positions and Availibilities

Known

Despite crisis requirements being known as well as vehicle positions and availibilities, no plan is proposed to thecoordinators by the bCMS software.

Page 31: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Not Enough Vehicles Available To Handle The Crisis

No sufficient vehicles are available for handling the crisis given the stated requirements.

Page 32: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Achieve [Backup Asked To Other Police And Fire Stations When Not Enough VehiclesAvailable]

When not enough vehicles are available to handle the crisis with respect to the stated requirements thenbackup shall be asked to other police and fire stations.

Page 33: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Achieve [Route Plan Proposed on Weakened Crisis Requirements When Not Enough VehiclesAvailable]

When not enough vehicles are available to handle the crisis with respect to the stated requirements then thecrisis requirements shall eventually be weakened by the coordinators

Page 34: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Fire Vehicle Not On Scene In Time When Dispatched

The dispatched fire vehicle is not the crisis scene within the required delays. Similar obstacle analysis can beconducted on police vehicles.

Page 35: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Fire Vehicle Lost or Destination Confused

The fire vehicle driver confused the destination.

Page 36: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Avoid [Fire Truck Driver In Unfamiliar Area]

The route chosen for every allocated fire truck shall be such that the truck driver won't have to ride in anarea unfamiliar to her.

Page 37: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Achieve [Route Indications Provided When Fire Truck Lost]

Every truck driver lost of confused about the crisis location shall received details indications on how to reachthe crisis scene from her current location.

Page 38: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Communication Between Stations Broken

The communication between the fire and police station is completely broken.

Page 39: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Maintain [Communication Robust To Cable Cut]

The communication system between stations shall be sufficiently robust to support the failures/cuts of a smallnumber of communication lines.

Page 40: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Avoid [Network Cable Unplugged]

The system shall be such that unplugging network cables is as unlikely as possible at fire and police stations.

Page 41: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Communication Integrity Violated

Integrity of communication between fire and police station is violated either intentionally (by malicious users) orunintentionally (by network devices or software)

Page 42: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Avoid [Malicious Message Alterations In Communication Between Fire and PoliceStation]

The system shall ensure that no alteration of messages by malicious users is possible.

Page 43: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Maintain [Double Level Integrity Mechanism For Inter‑Station Communication]

The system shall ensure a double level integrity mechanism for every message exchanged between stations.

Page 44: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Encoded Crisis Details No Longer Encoded

The encoded crisis details are no longer available.

Page 45: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Blackboard Not Kept Up To Date From Fire Truck Notifications

The blackboard is not kept up to date when fire truck notifications.

Page 46: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Fire Truck Positions Not Received When Sent

The fire truck positions are not received in time when sent.

Page 47: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Structural model

The following sections contains various object model fragments. In those diagrams, objects in purple belong to the realworld, those in orange belong to the software world (i.e. capture information about the real world), and those in greenhighlight shared phenomena between software components and the environment agents.

Page 48: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Objects in the environment

Structural model capturing environment objects, i.e. real‑world citizens.

Page 49: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Software information about the environment

Structural model capturing the software information about the real‑world, in contrast to real‑world objects.

Page 50: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Shared phenomena

Structural models capturing shared phenomena between the software and its environment.

Page 51: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Crisis details exchange

Crisis details exchange as a shared phenomena through the encoding of a software‑based form about the crisis.

Page 52: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Crisis requirements exchange

Crisis requirements exchange as a shared phenomena through the encoding of a software‑based form about therequirements and constraints.

Page 53: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Route plan agreement

Coordinators agreement about a route plan seen as a shared phenomena, in terms of agreement information in thereal world about the route plan draft proposed in the software world.

Page 54: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Dispatching notification

Structural models capturing shared phenomena between the software and its environment.

Page 55: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Vehicle availability notification

Notification of vehicle availability changes seen as messages received by the software from the vehicle MDT.

Page 56: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Vehicle position update

Notification of vehicle position changes seen as messages received by the software from the vehicle AVLS.

Page 57: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Crisis closing agreement

Coordinators agreement for closing a crisis as a notification sent to the software.

Page 58: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Agents

Page 59: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Context diagram

Context diagrams capture agents and their interfaces in terms of monitored and controlled variables. The nodes in suchdiagram represent involved agents. Edges are labelled with objects, attributes and associations declared in the objectmodel. Semantically, such label means that the source agent controls that object, attribute or association, whereas thetarget agent monitors it.

Page 60: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Responsibilities

The following sub‑sections show responsibility diagrams for the different agents. Those diagrams provide a niceoverview of all expectations and requirements assigned to environment and software agents, respectively. Together withsoft goals, responsibility diagrams help comparing and choosing between various system alternatives.

Page 61: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

AVLS

The Automated Vehicle Location System is an agent located vehicles and fire trucks that frequently reports thevehicle location to the police and fire stations, respectively.

Page 62: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Communication Compromiser

The communication compromiser wants to achieve personal gain during the crisis.

Page 63: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Crisis Software

The Crisis Software is the main software in the centralized system alternative. Among others, it is responsible ofmaintaining effective communitation between the FSC and PSC and helping them achieving their goals throughcomputing intelligence (real‑time feedback, route computing, etc.).

Page 64: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Fire Software

The Fire Software is a software agent in the distributed system alternative. It is responsible of helping the FSC withfireman‑related responsibilities as well as guaranteeing that needed information from the police station is availableat the fire station.

Page 65: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Fire Station Coordinator

A FSC maintains control over a crisis situation by communicating with the police station coordinator (PSC) as well asfiremen

Page 66: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Fireman

A fireman acts on orders received from the FSC and reports crisis‑related information back to the FSC. Furthermore,a fireman communicates with other firemen, victims, and witnesses at the crisis location.

Page 67: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

MDT

The Mobile Data Terminal is an agent located inside police vehicles and fire trucks that allows reporting the vehicleavailability to the police and fire stations, respectively.

Page 68: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

MDT/AVLS Network

The communication infrastructure used by the AVLS and MDT agents to send/receive availability and positionnotifications with the fire and police stations.

Page 69: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Police officer

A police officer acts on orders received from the PSC and reports crisis‑related information back to the PSC.Furthermore, a police officer communicates with other policemen, victims, and witnesses at the crisis location.

Page 70: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Police Software

The Police Software is a software agent in the distributed system alternative. It is responsible of helping the PSC withpolice officer‑related responsibilities as well as guaranteeing that needed information from the fire station isavailable at the police station.

Page 71: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Police Station Coordinator

A PSC maintains control over a crisis situation by communicating with the fire station coordinator (FSC) as well aspolicemen.

Page 72: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Radio Network

The communication infrastructure between the fire and police stations on one side and police vehicle and fire truckson other side.

Page 73: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Stations Network

The communication infrastructure between the fire and police stations.

Page 74: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Videoconference Infrastructure

This agent allows the fire and police coordinators communicating effectively through video and sound betweenphysically distant fire and police stations.

Page 75: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Witness

A witness of the crisis.

Page 76: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Behaviors

This section provides a few models capuring the behavior of specific agents, mostly in the centralized alternative. We invitethe reader to observe the following inter‑model consistency rules:

Timelines correspond to agent instances (cfr. agent model).

Scenario events correspond to events and/or actions in the state machines, according to whether the event is monitored

or controlled by the software.

Event sequences correspond to admissible paths in the agent's state machines.

Page 77: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Scenarios

Page 78: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Route plan building and agreement

Comparison of the centralized and distributed alternative ways of building and agreeing on a route plan.

Page 79: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Timeout during route plan building

This scenario shows that the coordinators have to explain the reason of a timeout during the route plan building.This can be made in parallel with the agreement of the route plan (cfr. state machines) but before vehicledispatching.

Page 80: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

State machines

Page 81: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Crisis Software Information

State machine of the CrisisInfo.Status attribute, controlled by the Crisis Software agent.

Page 82: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Vehicle Availability Information

State machine of the VehicleInfo.Availability attribute controlled by the Crisis Software agent.

Page 83: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Operations

This section presents the software operations derived from requirements. We focus here on the centralized alternative only.

Page 84: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

ProposeRoutePlanDraft

Operation that captures the proposal of a route plan draft to the coordinators.

Attribute Definition

Input c: CrisisInfo, v1..vn: VehicleInfo

Output rp: RoutePlanDraft

Associated event route plan proposal

Domain precondition No route plan draft exists for resolving c

Domain postcondition rp is proposed to resolve c

Required trigger conditions For Achieve [Route Plan Draft Proposed From Known Requirements, Vehicle

Positions And Availabilities]

Definition The number of fire trucks and police vehicles needed for handling c has

just been encoded by coordinators.

Required preconditions For Maintain [Route Plan Draft Meeting Crisis Requirements] (to be defined)

Definition The are sufficient vehicles available so as to build a route plan meeting the

requirements. Note that in the ideal model, this precondition is trivially

met in accordance to our domain hypotheses.

Required postconditions For Maintain [Route Plan Draft Meeting Crisis Requirements] (to be defined)

Page 85: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Definition rp allocates at least as many fire truck and police vehicles as stated in the

fire and police requirements for crisis c, respectively.

For Avoid [Fire Truck Driver In Unfamiliar Area]

Definition rp respects all constraints stated by fire and police coordinators. In

particular, it does not allocate vehicles or use routes explicitly stated by

them as to be avoided.

For Maintain [Route Plan Remains Feasible Until Agreed]

Definition Every vehicle in rp is currently available, the time to reach the crisis

location from its current location is below X minutes and its path can be

followed easily enough (e.g. streets are large enough for fire trucks to

turn, etc.).

Page 86: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

UpdateRoutePlanDraft

Operation that captures the update of a route plan draft to stay up to date with all vehicle information, route planconstraints, and crisis requirements.

Attribute Definition

Input c: CrisisInfo, v1..vn: VehicleInfo, rp: RoutePlanDraft

Output rp: RoutePlanDraft

Associated event route plan update

Domain precondition The route plan draft rp is not up to date

Domain postcondition rp is up to date

Required trigger conditions For Maintain [Real‑Time Draft Consolidation From Provided Constraints]

Definition The crisis requirements have just been changed.

For Maintain [Real‑Time Draft Consolidation From Provided Constraints]

Definition A new route or vehicle constraint has just been added by a coordinator.

For Maintain [Real‑Time Draft Consolidation From Provided Constraints]

Definition The information about the position or availability of a vehicle has just been

modified.

Required preconditions For Maintain [Route Plan Draft Meeting Crisis Requirements] (to be defined)

Definition

Page 87: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

The are sufficient vehicles available so as to update the route plan in such

a way that it meets the requirements. Note that in the ideal model, this

precondition is trivially met in accordance to our domain hypotheses.

Required postconditions For Maintain [Route Plan Draft Meeting Crisis Requirements] (to be defined)

Definition rp allocates at least as many fire truck and police vehicles as stated in the

fire and police requirements for crisis c, respectively.

For Avoid [Fire Truck Driver In Unfamiliar Area]

Definition rp respects all constraints stated by fire and police coordinators. In

particular, it does not allocate vehicles or use routes explicitly stated by

them as to be avoided.

For Maintain [Route Plan Remains Feasible Until Agreed]

Definition Every vehicle in rp is currently available, the time to reach the crisis

location from its current location is below X minutes and its path can be

followed easily enough (e.g. streets are large enough for fire trucks to

turn, etc.).

Page 88: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

UpdateFireTruckAvailabilityInfo

Operation that captures the update of a fire truck availability as known by the software everytime a MDT message isreceived.

Attribute Definition

Input m: MDTMessage

Output vi: VehicleInfo

Associated event fire truck availability update

Domain precondition the message m has not been handled

Domain postcondition the message m has been handled

Required trigger conditions For Maintain [Accurate Fire Truck Availability Information At Fire Station From

Received MDT Messages]

Definition The message m has just been received.

Required preconditions

Required postconditions For Maintain [Accurate Fire Truck Availability Information At Fire Station From

Received MDT Messages]

Definition vi.Availability == m.Availability

Page 89: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Detailed definitions

Page 90: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Agents

Name Definition

AVLS The Automated Vehicle Location System is an agent located vehicles and fire trucks that frequently reports the

vehicle location to the police and fire stations, respectively.

Communication

Compromiser

The communication compromiser wants to achieve personal gain during the crisis.

Crisis Software The Crisis Software is the main software in the centralized system alternative. Among others, it is responsible of

maintaining effective communitation between the FSC and PSC and helping them achieving their goals through

computing intelligence (real‑time feedback, route computing, etc.).

Fire Software The Fire Software is a software agent in the distributed system alternative. It is responsible of helping the FSC

with fireman‑related responsibilities as well as guaranteeing that needed information from the police station is

available at the fire station.

Fire Station

Coordinator

A FSC maintains control over a crisis situation by communicating with the police station coordinator (PSC) as

well as firemen

Fireman A fireman acts on orders received from the FSC and reports crisis‑related information back to the FSC.

Furthermore, a fireman communicates with other firemen, victims, and witnesses at the crisis location.

MDT The Mobile Data Terminal is an agent located inside police vehicles and fire trucks that allows reporting the

vehicle availability to the police and fire stations, respectively.

MDT/AVLS

Network

The communication infrastructure used by the AVLS and MDT agents to send/receive availability and position

notifications with the fire and police stations.

Police officer A police officer acts on orders received from the PSC and reports crisis‑related information back to the PSC.

Furthermore, a police officer communicates with other policemen, victims, and witnesses at the crisis location.

Police Software The Police Software is a software agent in the distributed system alternative. It is responsible of helping the PSC

with police officer‑related responsibilities as well as guaranteeing that needed information from the fire station

is available at the police station.

Police Station

Coordinator

A PSC maintains control over a crisis situation by communicating with the fire station coordinator (FSC) as well

as policemen.

Radio Network The communication infrastructure between the fire and police stations on one side and police vehicle and fire

trucks on other side.

Stations

Network

The communication infrastructure between the fire and police stations.

Videoconference

Infrastructure

This agent allows the fire and police coordinators communicating effectively through video and sound between

physically distant fire and police stations.

Witness A witness of the crisis.

Page 91: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Goals

Name Definition

to be defined

Achieve [Accurate Fire

Truck Position Received

When Sent]

The accurate position shall be received within 5 seconds when sent.

Achieve [Accurate MDT

Message Sent When Fire

Truck Availability Change

Encoded]

Every time the availability of a fire truck is changed through encoding on its MDT, a message shall be

sent containing the vehicle ID and information about the new availability.

Achieve [Accurate MDT

Message Sent When Right

Button Pressed]

to be defined

Achieve [Alternative Route

Computed When Route

Unfeasible]

to be defined

Achieve [Backup Asked To

Other Police And Fire

Stations When Not Enough

Vehicles Available]

When not enough vehicles are available to handle the crisis with respect to the stated requirements

then backup shall be asked to other police and fire stations.

Achieve [Backup Manually

Asked To Other Stations

When Coordinators

Notified]

When coordinators are notified that not enough vehicles are available to handle the crisis with respect

to the stated requirements then they shall call for backup to other police and fire stations.

Achieve [Best Route Plan

Proposed When No Route

Plan Meeting All

Constraints Exists]

When no route plan exists that meet all stated constraints then a route plan draft is eventually

proposed that violates the minimum of stated constraints.

Achieve [Closing Agreed

When Closing Proposed By

PSC]

A crisis closing proposal shall eventually be accepted by the FSC when proposed by the PSC.

Achieve [Closing Proposed

When Route Plane

Objectives Completed]

For every crisis for which all route plan objectives have been completed a closing proposal shall be

proposed by the PSC to the FSC.

Achieve [Communication

Established At Fire Station

When Coordinators

Connected]

For every reported crisis, communication shall be established at fire station as soon as fire and police

coordinators are connected.

Achieve [Communication

Established At Police

Station When Coordinators

Connected]

For every reported crisis, communication shall be established at police station as soon as fire and

police coordinators are connected.

Achieve [Communication

Page 92: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Established When

Coordinators Connected]

For every reported crisis, communication shall be established between the police and fire

coordinators as soon as they are connected.

Achieve [Communication

Established When Crisis

Reported]

For every reported crisis, communication shall be established between the responsible police and fire

coordinators.

Achieve [Coordinators

Notified When Not Enough

Vehicles Available]

The coordinators shall be notified by the software when not enough vehicles are available to handle

the crisis with respect to the stated crisis requirements.

Achieve [Crisis Closed

When Route Plan

Objectives Completed]

Every crisis whose all objectives are complete shall eventually be closed.

Achieve [Crisis Details

Discussed As Soon As

Possible When

Communication

Established]

For every reported crisis, as soon as the communication has been established between coordinators,

they shall discuss (share and compare) relevant information about the crisis.

Achieve [Crisis Details

Encoded When Crisis

Reported]

For every crisis, all relevant information shall be independently encoded by coordinators as soon as

the crisis is reported.

Achieve [Crisis Details

Exchanged When Crisis

Reported]

For every reported crisis, all relevant information (e.g. crisis location, number of victims, etc.) shall

eventually be exchanged between coordinators.

Achieve [Crisis

Requirements Discussed

When Independently

Established]

Crisis requirements shall be discussed by both coordinators when crisis has been reported at both

station independently.

Achieve [Crisis

Requirements Encoded At

Fire Station When

Established]

Fire vehicle requirements shall be encoded at fire station when crisis is established.

Achieve [Crisis

Requirements Encoded At

Police Station When

Established]

Route and police vehicle requirements shall be encoded at police station when crisis is established.

Achieve [Crisis

Requirements Encoded

When Established]

Fire and route requirements shall be encoded when crisis has been established at both stations.

Achieve [Crisis

Requirements Exchanged

When Established]

For every crisis, when fire and police requirements have been established, they are eventually

exchanged with the other coordinator.

Achieve [Crisis

Requirements Known

When Crisis Details

Exchanged]

For every reported crisis, when the details have been exchanged between coordinators, the

requirements (e.g. the number of required vehicles) shall eventually be known by both of them.

Page 93: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Achieve [Crisis

Requirements Known

When Crisis Reported]

For every reported crisis, required resources for handling the crisis shall eventually be known by both

coordinators.

Achieve [Crisis

Requirements Weakened

When Coordinators

Notified of Vehicle

Unavailability]

When notified of the non availability of enough vehicles to handle the crisis, the coordinators shall

weaken the crisis requirements.

Achieve [Crisis Resolved

When Reported]

Every crisis shall be eventually resolved when reported.

Achieve [Crisis Resolved

When Route Plan

Agreement Reached]

For every crisis, when a route plan has been agreed by coordinators then the crisis is eventually

resolved.

Achieve [Fire Constraints

Provided When Route Plan

Draft Proposed]

When a route plan draft is proposed, the fire constraints are eventually provided to the software for

plan consolidation.

Achieve [Fire Coordinator

Connected When Crisis

Reported]

For every reported crisis, the reponsible fire coordinator shall connect to the system as soon as

possible.

Achieve [Fire Details

Encoded When Crisis

Reported]

For every crisis, all relevant information shall be encoded by the fire coordinator as soon as the crisis

is reported.

Achieve [Fire Requirements

Established Based on

Exchanged Crisis Details]

For every crisis, based on exchanged information, the number of fire trucks required shall eventually

be established by the fire coordinator.

Achieve [Fire Truck

Availability Change

Encoded on MDT]

When the availability of the fire vehicle changes, the fireman shall encode that change by pressing rhe

right button on its MDT. More specifically, the 'Available' button shall be pressed when the fire truck

completed its objectives, 'Dispatched' shall be pressed when the fire vehicle acknowledges its

participation to a route plan and 'OnScene' when the fire truck arrives on the crisis scene.

Achieve [Fire Truck

Dispatched When In Route

Plan]

Every fire truck involved in a agreed route plan shall be dispatched as soon as possible.

Achieve [Fire Truck

Objective Completed When

On Scene]

Every fire truck at the crisis location shall eventually complete its objective.

Achieve [Fire Truck On

Scene When Dispatched]

Every dispatched fire truck shall reach the crisis location as soon as possible.

Achieve [Fire Truck

Position And Availabilities

Replicated From Fire

Station To Police Station]

The position and availabilities of each fire truck shall be replicated from the database of the fire

station to the database of the police station.

Achieve [Fire Truck

Position And Availabilities

The position and availabilities of each fire truck shall be shared by the fire station coordinator with

the police station coordinators.

Page 94: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Shared By Fire Station

Coordinator]

Achieve [Fire Truck

Position and Availibility

Updates Announced At

Radio When Changed]

Fireman shall announce at radio state main changes of the fire truck position and availability updates.

Achieve [Fire Truck

Positions And Availabilities

Gathered From Fire Station

At Police Station]

For every crisis whose requirements are known, the positions and availabilities of fire trucks shall be

gathered from the fire station so as to be known at police station too.

Achieve [Fire Truck State

Updates Emitted At Fire

Station When Announced]

Fire truck, resp. police vehicle, state updates announced by radio shall be emitted at the fire station.

Achieve [Known Lost Or

Confused When Lost Or

Confused]

to be defined

Achieve [Known Lost Or

When Right MDT Message

Received]

to be defined

Achieve [Location

Information Checked By

Fire Coordinator On

Update Requests]

The crisis location shall be explicitely checked by the fire coordinator every time an update of the

location information is requested to the software.

Achieve [Location

Information Checked By

Police Coordinator On

Update Requests]

The crisis location shall be explicitely checked by the police coordinator every time an update of the

location information is requested to the software.

Achieve [Lost Button

Pressed When Lost Or

Confused]

to be defined

Achieve [MDT Message

Received When Sent]

Sent MDT messages shall be received at corresponding station.

Achieve [Other Fire Vehicle

Dispatched When Fire

Vehicle Stopped Or In

Wrong Direction]

to be defined

Achieve [Police and Fire

Constraints Provided When

Route Plan Draft Proposed]

When a route plan draft is proposed, the police and fire constraints are eventually provided to the

software for plan consolidation.

Achieve [Police Constraints

Provided When Route Plan

Draft Proposed]

When a route plan draft is proposed, the police constraints are eventually provided to the software for

plan consolidation.

Achieve [Police

Page 95: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Coordinator Connected

When Crisis Reported]

For every reported crisis, the reponsible police coordinator shall connect to the system as soon as

possible.

Achieve [Police Details

Encoded When Crisis

Reported]

For every crisis, all relevant information shall be encoded by the police coordinator as soon as the

crisis is reported.

Achieve [Police

Requirements Established

Based on Exchanged Crisis

Details]

For every crisis, based on exchanged information, the number of police vehicles required shall

eventually be established by the police coordinator.

Achieve [Police Vehicle

Dispatched For Modifying

Traffic Deviation]

to be defined

Achieve [Police Vehicle

Dispatched For Reducing

Traffic Jam]

to be defined

Achieve [Police Vehicle

Dispatched When In Route

Plan]

Every police vehicle involved in a agreed route plan shall be dispatched as soon as possible.

Achieve [Police Vehicle

Objective Completed When

On Scene]

Every police vehicle at the crisis location shall eventually complete its objective.

Achieve [Police Vehicle On

Scene When Dispatched]

Every dispatched police vehicle shall reach the crisis location as soon as possible.

Achieve [Route Constraints

Added to Route Plan Draft

To Avoid Unfamiliar Area]

to be defined

Achieve [Route Indication

Known By Driver When

Displayed]

to be defined

Achieve [Route Indications

Computed]

to be defined

Achieve [Route Indications

Displayed When

Transmitted]

to be defined

Achieve [Route Indications

Displayed]

to be defined

Achieve [Route Indications

Known By Driver]

to be defined

Achieve [Route Indications

Provided When Fire Truck

Lost]

Every truck driver lost of confused about the crisis location shall received details indications on how

to reach the crisis scene from her current location.

Achieve [Route Indications to be defined

Page 96: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Provided When Known

Lost]

Achieve [Route Indications

Transmitted]

to be defined

Achieve [Route Plan

Agreed Once Explained]

For every crisis, the route plan built by the police coordinator is eventually agreed by the fire

coordinator when it has been explained.

Achieve [Route Plan

Agreed When Displayed]

For every crisis, the route plan built by the police coordinator is eventually agreed by the fire

coordinator when displayed in the fire station.

Achieve [Route Plan

Agreement Reached When

Requirements Known]

For every crisis, based on established requirements, the police and fire coordinators shall eventually

agree on a route plan to be deployed so as to resolve the crisis.

Achieve [Route Plan Built

From Information About

Crisis And Vehicles

Available At Police Station]

The route plan shall be built from the known crisis requirements and known positions of police

vehicle and fire truck. By built, we mean that a route plan draft shall exists with a route for each

involved vehicle. The draft shall meet all requirements.

Achieve [Route Plan Built

When Crisis Requirements

Known]

For every crisis, based on established requirements, a feasible route plan is eventually built by the

police coordinator.

Achieve [Route Plan

Displayed When Received]

When received at the fire station, the route plan is eventually displayed.

Achieve [Route Plan

Displayed When Route Plan

Built]

For every crisis, the route plan built by the police coordinator is eventually displayed at the fire

station.

Achieve [Route Plan Draft

Consolidated When

Proposed]

When a route plan draft is proposed, it is eventually consolidated, meaning that necessary constraints

known by coordinators are taken into account such that the plan deployment is feasible and such that

the crisis is likely to be resolved in a timely manner. Also, for each vehicle its path (from its current

position to the crisis scene) and its ETA is computed.

Achieve [Route Plan Draft

Eventually Promoted To

Route Plan]

The consolidated route plan draft is eventually promoted as a route plan when it all necessary

constraints have been taken into account.

Achieve [Route Plan Draft

Proposed From Known

Requirements, Vehicle

Positions And

Availabilities]

When the crisis requirements as well as vehicle positions and availibilities are known a route plan

draft is eventually proposed by the software to the coordinators.

Achieve [Route Plan Draft

Proposed From Weakened

Crisis Requirements]

When the crisis requirements have been weakened by the coordinators a route plan draft is eventually

proposed by the software to the coordinators.

Achieve [Route Plan

Eventually Agreed When

Built]

For every crisis, the route plan built by the police coordinator is eventually agreed by the fire

coordinator.

Achieve [Route Plan

Page 97: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Explained When Built] For every crisis, the route plan built by the police coordinator is eventually explained to the fire

coordinator.

Achieve [Route Plan

Objectives Completed

When Agreement Reached]

For every crisis, when an agreement has been reached between coordinators on the route plan to

deploy, the objective of every vehicle allocated to the crisis is eventually completed.

Achieve [Route Plan

Proposed on Weakened

Constraints When No

Route Plan Meeting All

Constraints Exists]

When no route plan exists that meet all stated constraints then a route plan draft is eventually

proposed after constraints having been weakened by coordinators.

Achieve [Route Plan

Proposed on Weakened

Crisis Requirements When

Not Enough Vehicles

Available]

When not enough vehicles are available to handle the crisis with respect to the stated requirements

then the crisis requirements shall eventually be weakened by the coordinators

Achieve [Route Plan Sent

When Built]

For every crisis, the route plan built by the police coordinator is eventually sent at the fire station.

Achieve [Vehicle

Dispatched When In Route

Plan]

Every vehicle involved in a agreed route plan shall be dispatched as soon as possible.

Achieve [Vehicle Objective

Completed When On

Scene]

Every vehicle at the crisis location shall eventually complete its objective.

Achieve [Vehicle On Scene

When Dispatched]

Every dispatched vehicle shall reach the crisis location as soon as possible.

Achieve [Vehicle On Scene

When In Route Plan]

Every vehicle involved in a agreed route plan shall be at the crisis location as soon as possible.

Achieve [Vehicle Positions

And Availabilities Known

At Police Station When

Requirements Known]

For every crisis whose requirements are known, the positions and availabilities of police vehicles and

fire trucks shall be known at the police station (so as to allow the PSC to build a route plan).

Avoid [Coordinator

Decisions Based on

Corrupted Data]

The system shall ensure that the integrity of every data on which critical decisions are taken by

coordinators (such as crisis location, vehicle number and vehicle location) is preserved 99,99% of the

time and 95% of the time for other data.

Avoid [Coordinator

Decisions Based on

Inaccurate Data]

The system shall ensure that every critical decision taken by coordinators shall be based on accurate

data 99,99% of the time and 95% of the time for other decisions.

Avoid [Fire Truck Driver In

Unfamiliar Area]

The route chosen for every allocated fire truck shall be such that the truck driver won't have to ride in

an area unfamiliar to her.

Avoid [Malicious Message

Alterations In

Communication Between

The system shall ensure that no alteration of messages by malicious users is possible.

Page 98: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Fire and Police Station]

Avoid [Network Cable

Unplugged]

The system shall be such that unplugging network cables is as unlikely as possible at fire and police

stations.

Avoid [Unauthorized

Access to Encryption Keys]

The bcms system/organization shall ensure that encryption keys used to secure the communication

between stations cannot not be accessed by unauthorized users.

Avoid [Unecessary

Communication Between

Stations]

to be defined

Avoid [Unfeasible Route

For Fire Truck]

to be defined

Maintain [Accurate Display

Of Critical Information]

The system shall ensure the accuracy of critical information when displayed. In particular, devices

diplaying the location of the crisis and vehicles shall be refreshed in less than 3 sec. every time the

underlying information changes.

Maintain [Accurate Fire

Truck Availability

Information At Fire Station

From Received MDT

Messages]

The accurate availabilities of fire trucks shall be known at fire station based on the received MDT

messages.

Maintain [Accurate Fire

Truck Availability

Information At Fire Station]

The availabilities of fire truck shall be accurately known at fire station.

Maintain [Accurate Fire

Truck Position And

Availability Information At

Fire Station]

The position and availabilities of fire truck shall be accurately known at fire station. By accurate, we

mean that the position does not differ for more than X meters and the availability are the same within

Y seconds.

Maintain [Accurate Fire

Truck Position Information

At Fire Station From

Received AVLS

Notifications]

The accurate position of fire truck shall be known at fire station when received.

Maintain [Accurate Fire

Truck Position Information

At Fire Station]

The position of fire trucks shall be accurately known at fire station.

Maintain [Accurate Fire

Truck Position Sent

Regularly]

The accurate position of fire truck shall be sent every 30 seconds.

Maintain [Accurate

Information About Crisis

Location At Both Stations]

The system shall ensure that the information about the crisis location is accurate 99,99% of the time

as such information is used for critical decisions.

Maintain [Accurate Police

Vehicle Availability

The availabilities of police vehicle shall be accurately known at police station. The refinement of this

goal is similar to what happens for fire trucks.

Page 99: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Information At Police

Station]

Maintain [Accurate Police

Vehicle Position And

Availability Information At

Police Station]

The positions and availabilities of police vehicle shall be accurately known at police station. The

refinement of this goal is similar to what happens for fire trucks.

Maintain [Accurate Police

Vehicle Position

Information At Police

Station]

The positions of police vehicle shall be accurately known at police station. The refinement of this goal

is similar to what happens for fire trucks.

Maintain [Accurate

Replication of Critical

Information]

Every replication of critical information from one station to the other shall be accurate. In particular, if

replicated, vehicle information (position, availability) shall not differ for longer than 1 sec, 99,99% of

the time.

Maintain [Accurate Vehicle

Position And Availability

Information At The Station

It Belongs To]

The system shall ensure that the information about the positions and availibilities of police vehicles

and fire trucks used in critical decisions remains accurate 99,99% of the time at the station to which

the vehicle belongs.

Maintain [Blackboard Kept

UpToDate From Fire Truck

Notifications]

Accurate information about the position and availability of the fire trucks shall be kept up‑to‑date

and displayed on a blackboard. State shall be updated on update notification.

Maintain [Communication

Availability At Fire Station

Until Crisis Resolved]

For every crisis, when communication is established at the fire station, it shall remain established

until the crisis is resolved.

Maintain [Communication

Availability At Police

Station Until Crisis

Resolved]

For every crisis, when communication is established at the police station, it shall remain established

until the crisis is resolved.

Maintain [Communication

Availability Between

Stations Until Crisis

Resolved]

For every crisis, when communication is established between the responsible police and fire

coordinators, it shall remain established until the crisis is resolved.

Maintain [Communication

Integrity]

The system shall ensure that the integrity of every critical data transmitted to stations (such as crisis

location, vehicle number and vehicle location) is preserved 99,99% of the time and 95% of the time for

other data.

Maintain [Communication

Robust To Cable Cut]

The communication system between stations shall be sufficiently robust to support the failures/cuts

of a small number of communication lines.

Maintain [Crisis

Communication High

Quality‑of‑service Priority]

to be defined

Maintain [Crisis Location

Accurate When Initially

Reported]

The crisis location shall be accurately reported by witnesses.

Maintain [Crisis Location

Page 100: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Information Update

Rejected Unless

Confirmation From Both

Coordinators]

Every request for update of the crisis location information at stations shall be rejected unless a

confirmation has been explicitely made by both coordinators.

Maintain [Crisis

Requirements Available

When Encoded]

Crisis requirements shall be made available to both coordinators when encoded.

Maintain [Cross Check Of

Crisis Location Information

Updates During Crisis]

The system shall ensure that updates to the crisis location information at stations shall be cross

checked by both coordinators.

Maintain [Data Availability] The crisis details, route plan and information related to the identification of coordinators shall

be available with the exception of a total of 5 minutes during the time period when at least one

crisis is active.

The crisis details and route plans should be available with the exception of a total of 30 minutes

for every 48 hours when no crisis is active.

Maintain [Database

Integrity]

The system shall ensure that the integrity of data kept in software databases is preserved 99,99% of

the time.

Maintain [Display Integrity] The system shall ensure that the integrity of every critical data displayed at stations (such as crisis

location, vehicle number and vehicle location) is preserved 99,99% of the time and 95% of the time for

other data.

Maintain [Double Level

Integrity Mechanism For

Inter‑Station

Communication]

The system shall ensure a double level integrity mechanism for every message exchanged between

stations.

Maintain [Encoded Crisis

Details Available At Both

Stations When

Communication

Established]

For every reported crisis, all encoded details shall be made available both at the fire station and the

police station.

Maintain [Encoded Crisis

Details Available At Fire

Station]

The encoded details about the crisis shall be available at fire station. By available, we mean that the

information can be known by the fire coordinator (for example, displayed on a screen, printed, etc.).

Maintain [Encoded Crisis

Details Available At Police

Station]

The encoded details about the crisis shall be available at police station. By available, we mean that the

information can be known by the police coordinator (for example, displayed on a screen, printed,

etc.).

Maintain [Encoded Crisis

Details Remain Encoded]

For every reported crisis, encoded details shall remain encoded until the crisis is resolved.

Maintain [Encoded Crisis

Requirements Remain

Encoded]

When crisis requirements have been encoded in the software they shall remain encoded until the

crisis is closed.

Maintain [Encoded Fire The encoded fire details about the crisis shall be available at fire station.

Page 101: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Details Available At Fire

Station]

Maintain [Encoded Fire

Details Available At Police

Station]

The encoded fire details about the crisis shall be available at police station.

Maintain [Encoded Police

Details Available At Fire

Station]

The encoded police details about the crisis shall be available at fire station.

Maintain [Encoded Police

Details Available At Police

Station]

The encoded police details about the crisis shall be available at police station.

Maintain [Encryption of

Communication Between

Fire and Police Station]

The system shall use state‑of‑the‑art cryptography techniques to encrypt the coommunication

between stations.

Maintain [Fast Response

From Software]

The software shall respond quickly to user queries and quickly perform required tasks. What 'quickly'

precisely mean shall be further defined with stackholders.

Maintain [Fire Truck

Positions and Availabilities

Available At Police Station

When Available At Fire

Station]

The position and availabilities of each fire truck shall be available at the police station when available

at the fire station.

Maintain [Network

Integrity Mechanism For

Inter‑Station

Communication]

The integrity of all messages exchanged between fire and police station shall be ensured by the

network hardward devices and protocols.

Maintain [Real‑Time Draft

Consolidation From

Provided Constraints]

The software shall consolidate the route plan draft from the known vehicle position and constraints

provided by coordinator(s). In particular, the path (from its current position to the crisis scene) and

ETA is computed for each vehicle.

Maintain [Route Plan Draft

Meeting All Stated

Constraints]

A route plan draft shall meet all constraints stated by the coordinators.

Maintain [Route Plan

Remains Feasible Until

Agreed]

For every crisis, the route plan built by the police coordinator shall remain feasible until being agreed

by the fire coordinator.

Maintain [Software

Integrity Mechanism For

Inter‑Station

Communication]

The integrity of all messages exchanged between fire and police station shall be ensured by software

composants using state‑of‑the‑art cryptography mechanisms.

Maintain[Communication

Integrity Between Fire And

Police Station]

The system shall ensure that the integrity of every critical data transmitted between fire and police

stations (such as crisis location, vehicle number and vehicle location) is preserved 99,99% of the time

and 95% of the time for other data.

Maintain[Communication

Integrity Between Stations

The system shall ensure that the integrity of every data transmitted from vehicle to stations (e.g.

number and location) is preserved 99,99% of the time.

Page 102: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

And Vehicles]

Page 103: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Soft goals

Name Definition

Minimize [Time To Get

Resources on Crisis

Location]

Getting needed resources on the crisis location, such as police vehicles and fire trucks shall take the

shortest possitble amount of time.

Maximize [Data and

Estimates Precision and

Accuracy]

The estimation of resource needs and time of arrivals for resources shall be as accurate as possible.

More generally the accuracy and precision of any non‑critical data critical shall be maximized.

Minimize [Stress Level] The system shall help minimizing the stress level of both coordinators.

Minimize [System Cost] The system shall ensure effective response times with minimal costs.

Minimize [Response Time] The system shall respond to user requests within 5 seconds 95% of the time.

The system shall respond to user requests within 30 seconds 99,99% of the time.

Page 104: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Domain properties

Name Definition

Objective Completed

Forever When

Completed

The objective of a police vehicle or a fire truck remains completed once completed. The resurgence of an

emergency situation, such as a fire, is modeled as a new objective to which some vehicle needs to be

allocated.

Page 105: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Domain hypotheses

Name Definition

Allocated Vehicles Stay

Immobile Until Route Plan

Agreed

The location of each vehicle allocated in a route plan does not significantly change from the

moment the plan has been built until it is agreed by the fire coordinator.

No Obstacle Appearance on

Routes Choosen for

Allocated Vehicles

No significant change of route conditions (obstacles, congestion, etc.) appear between the moment

where the route has been computed for a vehicle allocated in a route plan until the vehicle actually

reaches the crisis location.

Page 106: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Obstacles

Name Definition

AVLS Network Congestion to be defined

AVLS Network Down to be defined

Blackboard Not Kept Accurately Up To

Date From Fire Truck Notifications

The blackboard is innaccurately updated from fire truck notifications.

Blackboard Not Kept Up To Date From Fire

Truck Notifications

The blackboard is not kept up to date when fire truck notifications.

Blackboard Not Updated From Fire Truck

Notifications

The blackboard is not updated from fire truck notifications.

Communication Between Stations Broken The communication between the fire and police station is completely broken.

Communication Integrity Violated Integrity of communication between fire and police station is violated either

intentionally (by malicious users) or unintentionally (by network devices or software)

Crisis Less Severe Than Expected Before

Fire Vehicle On Scene

Before the vehicle reached the crisis scene, crisis have been reported as less severe

than expected, the fire vehicle is no longer required for handling the crisis.

Crisis Reported As Fake Before Fire

Vehicle On Scene

Crisis have been reported as fake before the fire vehicle reached the crisis scene.

Crisis Resolved Before Fire Vehicle On

Scene

Before the vehicle reached the crisis scene, crisis have been reported as resolved, the

fire vehicle is therefore no longer required for handling the crisis.

Encoded Crisis Details No Longer Encoded The encoded crisis details are no longer available.

Encryption Keys Stolen to be defined

Fire Station Coordinator Busy When

Notification Received

The fire station coordinator is too busy when a notification is received.

Fire Station Coordinator Confused When

Updating Blackboard

The fire station coordinator is confused when updating the blackboard.

Fire Station Coordinator Overloaded By

Received Notifications

The fire station coordinator is overloaded by the received notifications.

Fire Truck Positions Never Received The fire truck position is never received at station.

Fire Truck Positions Not Received When

Sent

The fire truck positions are not received in time when sent.

Fire Truck Positions Received Too Late The fire truck positions are received too late.

Fire Vehicle Broken Down The fire vehicle is broken down.

Fire Vehicle In Traffic Deviation The fire vehicle is deviated from its initial route such that it will not be able to reach

the incident scene within the prescribed delay.

Page 107: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Fire Vehicle In Wrong Direction The fire vehicle toke a wrong direction such that it will not be able to reach the crisis

scene within prescribed delays.

Fire Vehicle Lost or Destination Confused The fire vehicle driver confused the destination.

Fire Vehicle Not On Scene In Time When

Dispatched

The dispatched fire vehicle is not the crisis scene within the required delays. Similar

obstacle analysis can be conducted on police vehicles.

Fire Vehicle Retracted For Resolving Crisis The fire vehicle is retracted by the fire station coordinator.

Fire Vehicle Stopped The fire vehicle stopped before arriving on the crisis scene.

Fire Vehicle Stuck In Traffic Jams The fire vehicle is stuck in traffic jams such that it will not be able to reach the crisis

scene within prescribed delays.

Flooding Attack Malicious user attemps to perform a denial‑of‑service attack by flooding the network

with a large number of fake message.

Hard Disk Failure The hard disk storing the encoded crisis details have an hardware failure.

Large Traffic Peak Large traffic peak slow down the communication between the two stations.

Malicious Communication Delay Malicious user slows down the communication between the two stations.

Malicious Interruption Malicious user drops messages sent.

Message Maliciously Modified Malicious user modified the message.

Message Modified Message has been modified, but is still intelligible for the receiver.

Message Modified By Network

Infrastructure

Message has been altered by the network infrastructure (by middlebox for example)

so that it is not the same as the one sent.

Message Received Too Late When Sent Sent message is received too late.

Message Scrambled Message is unintelligible by the receiver.

Nearer Other Fire Vehicle Available Before

Fire Vehicle On Scene

A fire vehicle nearer the crisis scene is available and sent in place of the already

dispatched fire vehicle.

Network Cable Cut Network cable joining the two station has been cut by some external event.

Network Cable Unplugged Network cable has been inadvertently unplugged at one of the station.

Network Cabling Deficiency Network cabling fails to deliver some parts of the sent message.

Network Cabling Failure Network cable fails to conduct the message from one station to the other.

Network Devices Deficiency Network devices fails to deliver some parts of the sent message.

Page 108: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Network Devices Saturated The network devices composing the network infrastructure abnormaly delays the

communication.

Network Hardware Failure Network hardware fails to conduct the message from one station to the other.

No Feasible Route Plan Meeting All

Constraints Exists

There exists no feasible route plan to handle the crisis that meets all stated route and

vehicle constraints.

Not Enough Vehicles Available To Handle

The Crisis

No sufficient vehicles are available for handling the crisis given the stated

requirements.

Power Outage Power required for the data server to run is no longer available.

Route Plan Not Proposed When

Requirements, Positions and Availibilities

Known

Despite crisis requirements being known as well as vehicle positions and availibilities,

no plan is proposed to the coordinators by the bCMS software.

Too Many Fire Truck Positions Sent to be defined

Truck Position Message Corrupted to be defined

Truck Position Message Modified By

Compromiser

to be defined

Unfeasible Route For Fire Vehicle The fire vehicle cannot reach the crisis scene due to an unpracticable route (road too

small, impassable, muddy, snowy, flooded, do not support weight, etc.)

Wrong Fire Truck Positions Received The fire truck positions received is not the same as the one sent.

Wrong Message Received When Sent Message received is not the same as the message sent.

Page 109: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

Predicates

Name Definition

CommunicationEstablished The communication between the PSC p and FSC f has been established through the

system, that is, each of them knows who is the other and they can exchange any relevant

information about the crisis c.

CrisisClosed The fire and police coordinators agreed to consider the crisis as closed.

ClosingProposed It has been proposed to close the crisis c.

Reported A crisis is reported when it has been detected and declared both at the fire station and the

police station, possibly independently.

CrisisRequirementsKnown The fire and police coordinators both know what resources are required to resolve the

crisis, in particular, the number of fire trucks and police vehicles needed.

Resolved A crisis is resolved when all route plan objectives are completed and an agreement for

closing the crisis has been reached between the fire and police station coordinators.

Accurate For every vehicle allocated in the route plan rp, the departure point of its path to the

crisis location corresponds to its real current position (with a tolerance of X meters); the

destination point corresponds to the crisis location.

Agreed The route plan rp has been explicitely agreed by the coordinators in charge of the crisis

crisis c.

RoutePlanAgreementReached The police and fire coordinators agree on a route plan to deploy for resolving the crisis.

Such route plan describes all police and fire vehicles allocated to the crisis together with the

route to be followed for each of them from its current position to the crisis location. In

addition, the route plan meets established requirements, is accurate and feasible.

Feasible Every vehicle in the route plan fleet is currently available, the time to reach the crisis

location from its current location is below Y minutes and its path can be followed easily

enough (e.g. streets are large enough for fire trucks to turn, etc.).

MeetsRequirements The route plan rp allocates at least as many fire truck and police vehicles as stated in the

fire and police requirements for crisis c, respectively.

VehicleDespatched The vehicle v is considered as despatched when the team in the vehicle has confirmed

that they will go to the crisis scene.

VehicleInRoutePlan The vehicle is involved in the route plan.

VehicleObjectiveCompleted Vehicle objectives are considered as completed when the team in the corresponding vehicle

fullfiled their respective mission, e.g. extinguish fire, moving vehicles, rescuing victims,

enforcing law, etc. Description of respective objectives to complete is outside the scope of

this document.

VehicleOnScene

The vehicle v is considered on scene when the team in the vehicle has confirmed that are,

Page 110: Modeling Car Crash Management with KAOS · Modeling Car Crash Management with KAOS ... Workshop at Requirements Engineering (RE) ... From System Goals to UML Models to Software Specifications

The vehicle v is considered on scene when the team in the vehicle has confirmed that are,

physically, on the crisis scene.

© The University of Louvain, 2013 — Antoine Cailliau, Christophe Damas, Bernard Lambeau and Axel van Lamsweerde