24
Anti-Patterns BURAK SELİM ŞENYURT ING BANK - KIDEMLİ YAZILIM DANIŞMANI WWW.BURAKSENYURT.COM

Anti-Patterns

Embed Size (px)

DESCRIPTION

Y.T.Ü. Kalite ve Verimlilik Kulübü tarafından 2013 yılında düzenlenen Finans ve Yazılım Günlerine ait Anti-Patterns konulu sunumdur.

Citation preview

Page 1: Anti-Patterns

Anti-PatternsBURAK SELİM ŞENYURT

ING BANK - KIDEMLİ YAZILIM DANIŞMANI

WWW.BURAKSENYURT.COM

Page 2: Anti-Patterns

Bir Süre Önce, Projenin Bir Yerinde…

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 3: Anti-Patterns

Anti-Patterns• İlk bakıldığında ideal gibi görünen ama

zaman içerisinde geliştirilmekte olan ürüne olumsuz etkilerde bulunan, farklı kategorilerden disiplin ve yaklaşımların oluşturduğu çözümler bütünüdür.

GKM (Günü Kurtarma Modeli)

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 4: Anti-Patterns

Örnekler

Page 5: Anti-Patterns

Golden Hammer - Methodological

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 6: Anti-Patterns

Reinventing the Square Wheel - Methodological

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 7: Anti-Patterns

Copy-Paste Programming - Methodological

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 8: Anti-Patterns

Lava Flow - Programming

Page 9: Anti-Patterns

Boat Anchor - Programming

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 10: Anti-Patterns

Cargo Cult Programming - Programming

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 11: Anti-Patterns

Spaghetti Code - Programming

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 12: Anti-Patterns

Error Hiding - Programming

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 13: Anti-Patterns

Analysis Paralysis - Organizational

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 14: Anti-Patterns

Vendor Lock-In - Organizational

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 15: Anti-Patterns

Dead End – Software Development

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 16: Anti-Patterns

God Object – Object Oriented Design

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 17: Anti-Patterns

Magic PushButton – Software Design

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 18: Anti-Patterns

OverEngineering – Project Management

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 19: Anti-Patterns

Gerçek Tablo

Page 20: Anti-Patterns

Software Design Object-Oriented Design Programming

Software Engineering

Methodogical Configuration Management

Abstraction inversionAmbigous viewpointBig ball of mudDatabase-as-IPCGold plantingInner-platform effectInput kludgeInterface bloat

Magic pushbuttonRace HazardStovepipe System

Anemic domain modelBaseBeanCall superCircle-ellipse problemCircular DependencyConstant interface

God ObjectObject cesspoolObject orgyPolergeistsSequential couplingYo-yo problem

Accidential complexityAction at a distanceBlind Faith

Boat anchorBusy waitingCaching failure

Cargo cult programmingCoding by exception

Error hidingHard code

Lava flowLoop-switch sequenceMagic numbersMagic stringsRepeating yourselfShotgun surgerySoft code

Spaghetti codeLasagna Code

Copy and past ProgrammingGolden HammerImporability factorNot invented hereInvented herePremature OptimizationProgramming by Permutation

Reinventing the square wheelSilver bulletTester driven development

Dependency hellDLL hellExtension conflictJAR Hell

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 21: Anti-Patterns

Organizational Project Management Analysis

Social and Business Operations

Analysis ParalysisCash cow

Design by commitment

Escalation of commitment

Management by perkele

Management by objectives

Moral hazard

Mushroom management

Stovepipe or Silos

Vendor lock-in

Avalanche

Death march

Groupthink

OverengineeringSmoke and mirrors

Software bloat

Bystander apathy

Anti-Patterns | burak selim şenyurt | www.buraksenyurt.com

Page 22: Anti-Patterns

Neden Önemli? Bir ürünü geliştirirken, gelecekte

eklenecek yeni özellikler ve kabiliyetler için de yatırım yaptığımızı unutmamalıyız.

Page 23: Anti-Patterns

Kaynaklar

AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis

William J. Brown, Raphael C. Malveau, Hays W. "Skip" McCormick, Thomas J. Mowbray

Anti-Patterns | burak selim şenyurt | about.me/buraksenyurt

Page 24: Anti-Patterns

Teşekkürler

Burak Selim Şenyurt ING Bank – Kıdemli Yazılım Danışmanı www.buraksenyurt.com