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
Getting Feature Focused
Search
Ryan Cromwell
October 30, 2012
Programming
2
310
Getting Feature Focused
Experiences build an application organized by feature rather than architecture.
Ryan Cromwell
October 30, 2012
Tweet
Share
More Decks by Ryan Cromwell
See All by Ryan Cromwell
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Letting Users Get On With Their Lives
cromwellryan
2
440
Collaborative APIs
cromwellryan
4
480
Sweet Elixir - Short
cromwellryan
6
600
Growing Great Teams - Codemash 2014 Lightning Talk
cromwellryan
0
430
Professional Scrum with Visual Studio 2012
cromwellryan
0
460
Avoiding Scrummerfall
cromwellryan
3
1.2k
Selenium + Specflow: ATDD for .Net
cromwellryan
2
780
Other Decks in Programming
See All in Programming
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
2
670
Software Architecture
hschwentner
6
2.3k
Catch Up: Go Style Guide Update
andpad
0
240
釣り地図SNSにおける有料機能の実装
nokonoko1203
0
200
あなたとKaigi on Rails / Kaigi on Rails + You
shimoju
0
180
Claude CodeによるAI駆動開発の実践 〜そこから見えてきたこれからのプログラミング〜
iriikeita
0
320
Webサーバーサイド言語としてのRustについて
kouyuume
1
4.3k
Google Opalで使える37のライブラリ
mickey_kubo
3
130
When Dependencies Fail: Building Antifragile Applications in a Fragile World
selcukusta
0
110
「ちょっと古いから」って避けてた技術書、今だからこそ読もう
mottyzzz
12
7.1k
ALL CODE BASE ARE BELONG TO STUDY
uzulla
27
6.6k
iOSでSVG画像を扱う
kishikawakatsumi
0
160
Featured
See All Featured
Designing Experiences People Love
moore
142
24k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Designing for humans not robots
tammielis
254
26k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
A better future with KSS
kneath
239
18k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
10
880
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
How to Think Like a Performance Engineer
csswizardry
27
2.1k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
115
20k
Transcript
Feature Focused A Be.er Applica2on Structure
• Coder • Agile Coach • Scrum.org Trainer
Who am I? Ryan Cromwell
travel + twins = crazy person
where would you go to… update the search algorithm?
add favorite products? one click checkout only show in-‐stock products?
I don’t even like my mouse. My mouse was
crying… omg!
architecture rant bit.ly/unclebobarch bit.ly/screamarch
• Release Reuse • Common Closure • Common
Reuse • Acyclic Dependencies • Stable Dependencies • Stable Abstrac2ons Forgo%en SOLID principals What you hear about • Single Responsibility • Open/Closed • Liskov Subs2tu2on • Interface Segrega2on • Dependency Inversion
common closure Classes that change together are packaged together.
h.p://bit.ly/PrincOOD
• Tasking • Chat (XMPP) Feature Themes walk the
walk Context • Air Force • Old: Thick Client • New: Single Page App • HTML5(ish) + Javascript • Java
Why call them modules? S2ll a lot of noise
spot the feature?
Focus Drill into chat feature Focus
other effects • Conven2ons Within Features • Responsibility Viola2ons
Obvious • Ramp up • Small, Simple Interfeature Collabora2on “Ah consistency, the path to simplicity and the bane of innova6on. Choose wisely” ~ me, on twi<er
what‘s next? • Server + Client side-‐by-‐side (i.e. Controllers)
• CSS/images • Requirejs + unit tes2ng = painful • Frameworks/Tooling
thanks! @cromwellryan h.p://cromwellhaus.com
[email protected]