Date post: | 26-Jul-2015 |
Category: |
Software |
Upload: | matthias-bohlen |
View: | 52 times |
Download: | 0 times |
Anforderungen, Architektur und Projektvertrag – ein Trio von Freunden(?)!
Vortrag auf der OOP 2010Matthias Bohlen <[email protected]>Unabhängiger Coach und Berater
3
The Ship: A Model for Requirements
Online Store
Advertise Order Invoice
Identify promotion Register user
Setup promotion Monitor promotion Place order Create invoice
Business Goals
User Goals
Alistair Cockburn
Overall project
Functions Identify product Identify customer
5
A story template
<Story title><Role> can <do what>so that <why>
How to demo:
1. System does this…
2. User does that…
3. System reacts like this…
Business value
Effort estimate
Issue#
6
Example Story
Review submissionReviewer can review a submissionso that the chairman will knowhow good it is.
How to demo:
1. System lists submissions assigned to this reviewer
2. Reviewer selects submission for download
3. System serves document file
4. Reviewer assigns rating: A (strong) to D (poor)
300
3857
5
12
User
ConferenceController
user/register.gsp
…
Conference Submission
Submission
View
Controller
Service ConferenceService
DomainTag
Example: splendicon.net powered by
13
From Story to Architecture
noun concept controller name
verb action controller method name
noun concept entity name
noun attribute name
14
From Story to Architecture
Review submissionReviewer can…
How to demo:1. System lists submissions assigned to this reviewer2. Reviewer selects submission for download3. System serves document file4. Reviewer assigns rating A (strong) to D (poor)5. Reviewer comments on his rating6. System assigns rating and comment to submission
300
3857
5
concept / entityaction
attribute
action
15
Result: Model elements
SubmissionSubmissionControllerSubmissionController.listSubmissions()
ReviewReview.ratingReview.comment
SubmissionController.assignReview()
17
Contracts are a matter of trust
Customer asks:Will they develop what I need?Do they understand me?Do they charge me for every change?Do I have to know everything in advance so that changes are minimal?Do they keep their promised delivery date?
Developers ask:Will they pay us?Do they clearly say what they need?Fixed-price project: How about all those changes they want? Fixed-time project: How do we keep the release date facing all those changes?
Usual reaction: Customer installs rich, heavy-weight change management process !
19
Product Backlog: Sprint #1
Story 1 Goal:Deliver
business valuein shortest
possible time
500 3
Story 2 300 5
Story 3 200 8
1000 16
20
Scrum: Changes for free
CancelGift wrap
Return
Sprint2-4 weeks
Return
Sprint goal
Sprint backlog
Potentially shippableproduct increment
Productbacklog
CouponsGift wrapCoupons
Cancel
24 hours
21
Scrum Change Management
Product Backlog:Sorted by
descendingbusiness valueStories
New storywith high bizvalue
Story withlowest bizvalueEffort estimate for added story must be
less or equal to sum of removed stories.
22
Money for nothingBusiness
valueRise in business value is non-linear
100%
Terminate here! Original plan
€€€ saved
80% to customer
20% to developers Time
80%