Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Contract-Driven_Development.pdf
Search
Francesco Strazzullo
September 10, 2021
Programming
0
570
Contract-Driven_Development.pdf
Francesco Strazzullo
September 10, 2021
Tweet
Share
More Decks by Francesco Strazzullo
See All by Francesco Strazzullo
Strategic Testing Decisions - Build Stuff 2021
francescostrazzullo
0
75
Domain-Driven Frontend
francescostrazzullo
0
1.3k
Strategic Testing Decisions
francescostrazzullo
0
340
A DIY Guide To Building Your Own Rendering Engine - CityJS2021
francescostrazzullo
2
79
Technical Decision-making Anti-patterns - Avanscoperta Meetup 2021
francescostrazzullo
0
400
How to Choose Your Next Technology Stack
francescostrazzullo
0
940
The Definition of Framework
francescostrazzullo
1
920
How to Choose Your Next Technology Stack
francescostrazzullo
1
250
Introduction To Alexa Custom Skills
francescostrazzullo
0
490
Other Decks in Programming
See All in Programming
パスキーのすべて ── 導入・UX設計・実装の紹介 / 20250213 パスキー開発者の集い
kuralab
3
780
Kubernetes History Inspector(KHI)を触ってみた
bells17
0
230
GoとPHPのインターフェイスの違い
shimabox
2
190
GAEログのコスト削減
mot_techtalk
0
120
第3回関東Kaggler会_AtCoderはKaggleの役に立つ
chettub
3
1k
iOSエンジニアから始める visionOS アプリ開発
nao_randd
3
130
富山発の個人開発サービスで日本中の学校の業務を改善した話
krpk1900
4
390
チームリードになって変わったこと
isaka1022
0
200
Amazon Bedrock Multi Agentsを試してきた
tm2
1
290
Pulsar2 を雰囲気で使ってみよう
anoken
0
240
苦しいTiDBへの移行を乗り越えて快適な運用を目指す
leveragestech
0
580
動作確認やテストで漏れがちな観点3選
starfish719
6
1k
Featured
See All Featured
The Language of Interfaces
destraynor
156
24k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
The Cost Of JavaScript in 2023
addyosmani
47
7.3k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
240
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
Become a Pro
speakerdeck
PRO
26
5.1k
Optimizing for Happiness
mojombo
376
70k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Transcript
Contract-Driven Development
Francesco Strazzullo (AKA Strazz) @TheStrazz86 Interested in #SoftwareDecisionMaking? Contact me!
Ego Slide
Who should listen to me? _
Every developer in a software delivery company
None
Companies that buy Software delivery
Why should you listen to me? _
“The structure of any system designed by an organization is
isomorphic to the structure of the organization.” https://en.wikipedia.org/wiki/Conway%27s_law
Clients are part of your Organization
What is a contract? —
“a binding agreement between two or more persons or parties”
https://www.merriam-webster.com/dictionary/contract
Contracts are a binding part of your Organization
None
How Contracts can affect Software Architecture _
Fixed Price/Fixed Scope —
None
Company Client Who risks more?
The Usual Path
None
Fixed Price Contracts does not permit learning
Time & Materials —
Company Client Who risks more?
None
What happens when you become more efficient?
T&M Contracts discourages Performances
None
T&M Contracts build “distrust”
None
Unconscious Decisions
None
Inverse Conway Maneuver —
“Inverse Conway Maneuver recommends evolving your team and organizational structure
to promote your desired architecture” https://www.thoughtworks.com/radar/techniques/inverse-conway-maneuver
Is there a third way? _
None
Money Back Guarantee Contract — https://github.com/flowingis/money-back-guarantee-contract
How it works? _
Start Sprint Pay Fixed Price End Ok? Enough? Continue? Yes
Yes No No No Yes
Time is not Known, Concentrate on the Value
Company Client Who risks more?
Testing? _
You Choose
Learning? _
You Choose
Architecture? _
You Choose
None
None
A perfect solution? _
Skin In The Game
Sprint Negotiation is hard
None
Practice makes perfect!
Interested? _
WE ♥ REMOTE WORKING Milan, Rome, Turin, Treviso, Bologna, Ancona,
Catania and wherever you want! We are hiring →
[email protected]
Thanks
[email protected]