Agile Engineering and Software Craftsmanship

Post on 12-May-2015

482 views 3 download

Tags:

description

Agile Engineering and Software Craftsmanship was presented at the 2012 DC Agile Engineering Conference on 12/7/2012 by Excella Agile Xpert Fadi Stephan (@FadiStephan).

Transcript of Agile Engineering and Software Craftsmanship

Software Craftsmanship By Fadi Stephan

Agile Engineering

Fadi Stephan • 15+ years of experience in software

development

• Consultant with Excella Consulting

• Focused on Agile since 2006

– Agile readiness & maturity assessments

– Agile coaching & mentoring

– Agile principles & software engineering training

• Founder of the DC Software Craftsmanship User Group

• Organizer of the DC Scrum User Group

History OOPSLA 1991

Towards a Software Architecture Handbook

History OOPSLA 1998

Software as a Studio Discipline

Craftsman

• =

History

Individuals and interactions over processes and tools

Working software over comprehensive documentation

Customer collaboration over contract negotiation

Responding to change over following a plan

• Most software development teams execute, but they don’t take care

• We value execution, but we value craftsmanship more

History

Craftsmanship over execution Software craftsmanship over CRAP!

Manifesto of Software Craftsmanship

Not only working software,

but also well crafted software

Not only responding to change,

but also steadily adding value

Not only individuals and interactions,

but also a community of professionals

Not only customer collaboration,

but also productive partnerships

SCRUM

CRAP(m) = comp(m)^2 (1 - cov(m)/100)^3 + comp(m)

Change Risk Analyzer and Predictor

Test Driven Development

I pity the fool who doesn’t write test cases!

Continuous Integration

I pity the fool who breaks the build!

Pair Programming

I pity the fool who doesn’t collaborate

t

Pride QA Should Find Nothing

http://www.meetup.com/DC-Scrum/