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
It is but not an "architecture" talk
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Ragunath Jawahar
December 01, 2018
Programming
4
270
It is but not an "architecture" talk
#105 December Meetup - BlrDroid + BlrKotlin
https://www.meetup.com/blrdroid/events/256468726/
Ragunath Jawahar
December 01, 2018
Tweet
Share
More Decks by Ragunath Jawahar
See All by Ragunath Jawahar
Single-responsibility principle meets the real world! (Dubai Edition)
ragunathjawahar
0
60
Single-responsibility principle meets the real world!
ragunathjawahar
0
160
Making sense of large Java and Kotlin classes
ragunathjawahar
1
290
Building Robust Software, Episode 3
ragunathjawahar
1
180
Building Robust Software, Episode 2
ragunathjawahar
1
140
Building Robust Software (Episode 1)
ragunathjawahar
1
380
Speed as a workplace habit
ragunathjawahar
1
330
Building Robust Apps (Swift Edition)
ragunathjawahar
0
280
Re-architecture
ragunathjawahar
0
500
Other Decks in Programming
See All in Programming
Claude Codeセッション現状確認 2026福岡 / fukuoka-aicoding-00-beacon
monochromegane
4
410
文字コードの話
qnighy
44
17k
AI時代でも変わらない技術コミュニティの力~10年続く“ゆるい”つながりが生み出す価値
n_takehata
2
710
DSPy入門 Pythonで実現する自動プロンプト最適化 〜人手によるプロンプト調整からの卒業〜
seaturt1e
1
670
grapheme_strrev関数が採択されました(あと雑感)
youkidearitai
PRO
1
210
How to stabilize UI tests using XCTest
akkeylab
0
110
S3ストレージクラスの「見える」「ある」「使える」は全部違う ─ 体験から見た、仕様の深淵を覗く
ya_ma23
0
300
CDIの誤解しがちな仕様とその対処TIPS
futokiyo
0
200
DevinとClaude Code、SREの現場で使い倒してみた件
karia
1
1k
15年目のiOSアプリを1から作り直す技術
teakun
1
620
Swift ConcurrencyでよりSwiftyに
yuukiw00w
0
250
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
4
500
Featured
See All Featured
Optimizing for Happiness
mojombo
378
71k
30 Presentation Tips
portentint
PRO
1
250
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
410
Believing is Seeing
oripsolob
1
79
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
630
What does AI have to do with Human Rights?
axbom
PRO
1
2k
Scaling GitHub
holman
464
140k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
290
Abbi's Birthday
coloredviolet
2
5.3k
So, you think you're a good person
axbom
PRO
2
1.9k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.4k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.9k
Transcript
IT IS BUT NOT AN “ARCHITECTURE” TALK @RagunathJawahar | Uncommon
TEAM SIZE • Lone wolf / she-wolf • 2 /
3 member team • 4 / 5 member team • 5 - 10 member team • Greater than 10
EMOTIONS • Joy • Indifference • Annoyance • Frustration CODE
BASE &
TWO INFAMOUS STATEMENTS (EXCUSES) 1. We don’t need an architecture.
*Not drawn to scale Objects in front of you are
closer than they appear Time Features Prototyping A/B Tests No architecture With architecture
TWO INFAMOUS STATEMENTS (EXCUSES) 1. We don’t need an architecture.
2. They don’t give us enough time for architecture.
WHAT’S REQUIRED Important Unimportant Urgent Not Urgent Structure Behavior Structure
Behavior
WHAT ENDS UP HAPPENING… Important Unimportant Urgent Not Urgent
WHAT ENDS UP HAPPENING… Important Unimportant Urgent Not Urgent Structure
Behavior Behavior
Structure Behavior
Structure Behavior
Structure Behavior
Structure Behavior
“ The goal of software architecture is to minimise the
human resources required to build and maintain the required system. -Robert C. Martin
NO TIME FOR ARCHITECTURE? @rensvandenbergh
SETTLING ON AN ARCHITECTURE
None
FACTORS • Platform • Paradigm • Language • Tools &
dev practices INFLUENTIAL
FACTORS INFLUENTIAL • Platform • Paradigm • Language • Tools
& dev practices
IMPERATIVE FUNCTIONAL • MVC • MVP • MVVM • VIPER
• MVI (One Way) • Redux *Not an exhaustive list
IMPERATIVE FUNCTIONAL • Easy to learn • Mutability • Performance
• Learning curve • Immutability • Predictability • Asynchrony *Not an exhaustive list
DESIGN THINKING Explore Understand Evaluate Make
MAKING & EVALUATING (ANDROID) ARCHITECTURES • Hello stranger • Counter
• Login • BMI Calculator • Image chooser • Quiz with timer • Magnetometer
QUALITY ATTRIBUTES
UBER
SOME COMMON QUALITY ATTRIBUTES • Testability • Adoptability • Adaptability
• Availability • Reliability • Performance • Scalability *Not an exhaustive list • Security • Manageability • Buildability • Reusability • Maintainability • Simplicity • Efficiency
WORKFLOW
VISUALIZE
VISUALIZE
ESCAPE • Boilerplate • Slow down (feels like) VELOCITY
QUESTIONS? @ragunathjawahar / GitHub / Twitter / Medium