Skip to content

Commit

Permalink
CM v6.12 + Same Day Delivery example
Browse files Browse the repository at this point in the history
  • Loading branch information
stefan-ka committed Aug 30, 2024
1 parent adf1112 commit 22a53ca
Show file tree
Hide file tree
Showing 7 changed files with 41 additions and 81 deletions.
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# dependency versions
cmlVersion=6.11.0
cmlVersion=6.12.0
junitVersion=5.5.2
xtendLibVersion=2.19.0
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,7 @@ BoundedContext StructuredServiceDecomposition {

ValueObject CriterionPriority {
String criterion
- SolverPriority priority
- SolverPriority ^priority
}

enum SolverPriority {
Expand Down
2 changes: 1 addition & 1 deletion src/main/cml/lakeside-mutual/LakesideMutual.cml
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ BoundedContext ClaimsManagement implements ClaimsManagement {
aggregateRoot
long claimId
- CustomerId customer
String description
String ^description
Blob requestDocument
boolean isComplete
boolean isAssessed
Expand Down
4 changes: 2 additions & 2 deletions src/main/cml/ooad-sample-claims/claims-use-case.cml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ BoundedContext ClaimsManagement implements ClaimsManagement {
Entity Claim {
Date date
Double amountClaimed
String description
String ^description
ClaimID claimId
- Agent agent
}
Expand Down Expand Up @@ -64,7 +64,7 @@ Domain Insurance_Application {
Entity Claim {
Date date
Double amountClaimed
String description
String ^description
- Agent agent
}
Entity Policy {
Expand Down
108 changes: 34 additions & 74 deletions src/main/cml/same-day-delivery-shop/stakeholders-and-values.cml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

BoundedContext SameDayDelivery


Stakeholders of SameDayDelivery {
StakeholderGroup Online_Shopping_Company {
Stakeholder Development_Team {
Expand All @@ -17,125 +18,84 @@ Stakeholders of SameDayDelivery {
interest MEDIUM
}
}

StakeholderGroup Product_Suppliers {
Stakeholder Managers
Stakeholder Logistics_Warehouse_Staff_of_Suppliers
Stakeholder Delivery_Staff_of_Suppliers
}

StakeholderGroup Delivery_Partners {
Stakeholder Route_Planners
Stakeholder Drivers
}

StakeholderGroup Competing_Companies

StakeholderGroup Logistics_Team {
Stakeholder Logistics_Manager
Stakeholder Warehouse_Staff
}


Stakeholder Government

StakeholderGroup Customers_and_Shoppers {
Stakeholder Shoppers_in_Emergency_Situations
Stakeholder Others
}
}

ValueRegister SD_Values for SameDayDelivery {

// just values without using "cluster"

Value WorkLifeBalance {
core
demonstrator "Drivers value a healthy work-life-balance"
Stakeholder Drivers {
priority HIGH
impact HIGH
consequences
bad "SDD will harm work-life-balance of drivers"
action "hire more drivers" ACT
}
}

Value Revenue {
demonstrator "Online shopping company needs revenue"
Stakeholder Online_Shopping_Company {
priority HIGH
impact MEDIUM
consequences
good "increased number of customers"
}
}

// using cluster

ValueCluster Autonomy {
core AUTONOMY
demonstrator "customer values potentially increased freedom"
demonstrator "delivery staff's freedom might suffer because of work-life-balance"

Value Freedom {
Stakeholder Customers_and_Shoppers {
priority HIGH
impact MEDIUM
consequences
good "increased freedom"
}

Stakeholder Delivery_Staff_of_Suppliers {
priority HIGH
impact HIGH
}
Value Quality_of_Life {
Stakeholder Customers_and_Shoppers {
consequences
bad "work-life-balance"
good "less stress in emergendy situations"
}
}

Value Sustainability {
Stakeholder Shoppers_in_Emergency_Situations {
Stakeholder Customers_and_Shoppers {
priority HIGH
impact LOW
consequences
bad "fostering unsustainable behavior (always ordering last minute)"
action "Limit Availability of Feature" ACT
}
}
Value Ability_to_be_patient {
Stakeholder Customers_and_Shoppers {
priority MEDIUM
impact HIGH
consequences
bad "patience of customer will further increase"
action "Only allow feature for emergency (don't make it the default)" ACT
}
}
}

// using ESE formats:

ValueEpic IncreasedFreedom {
As a Customers_and_Shoppers I value "Freedom" as demonstrated in
realization of "being able to order quickly in an emergency situation"
reduction of "Sustainability"
}

ValueNarrative IncreasedFreedom2 {
When the SOI executes "Same Day Delivery", stakeholders expect it to promote, protect or create "Freedom", possibly degrading or prohibiting "Sustainability"
with the following externally observable and/or internally auditable behavior: "preAndPostConditions"
Value WorkLifeBalance {
isCore
demonstrator "Drivers value a healthy work-life-balance"
Stakeholder Drivers {
priority HIGH
impact HIGH
consequences
bad "SDD will harm work-life-balance of drivers"
action "hire more drivers, adjust availability to workload" ACT
}
}

ValueWeigthing IncreasedFreedom3 {
In the context of the SOI, stakeholder Customers_and_Shoppers values "Freedom" more than "Sustainability"
expecting benefits such as "less stress in emergency situation" running the risk of harms such as "more rides of drivers harm environmental sustainability"
Value Revenue {
demonstrator "Online shopping company needs revenue"
Stakeholder Online_Shopping_Company {
priority HIGH
impact MEDIUM
consequences
good "increased number of customers"
}
}
}

// user story extensions

UserStory SameDayDelivery_1 {
As a "Shopper" I want to "instantly receive" an "Order" so that "I am efficient"
and that "MyQualityOfLife" is promoted
accepting that "WorkLifeBalanceOfDeliveryStaff" is reduced
}

UserStory SameDayDelivery_2 {
As a "Shopper" I want to "instantly receive" an "Order" so that "I am efficient"
and that "MyQualityOfLife", "Autonomy" are promoted
accepting that "WorkLifeBalanceOfDeliveryStaff", "Transparency" are harmed
}



Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ BoundedContext ClaimsManagement {
aggregateRoot
long claimId
CustomerId customer
String description
String ^description
Blob requestDocument
boolean isComplete
boolean isAssessed
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ BoundedContext ClaimsManagement {
aggregateRoot
long claimId
CustomerId customer
String description
String ^description
Blob requestDocument
boolean isComplete
boolean isAssessed
Expand Down

0 comments on commit 22a53ca

Please sign in to comment.