software craftsmanship, why, what, how

25
Software Craftsmanship Why, What, How

Upload: tomas-malmsten

Post on 04-Aug-2015

136 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Software craftsmanship, Why, What, How

Software CraftsmanshipWhy, What, How

Page 2: Software craftsmanship, Why, What, How

@oescg

https://www.linkedin.com/groups?home=&gid=6504915

https://groups.google.com/forum/#!forum/oresund-software-craftsmanship

Øresund SoftwareCraftsmanship Group

Page 3: Software craftsmanship, Why, What, How

Software Craftsman !

Senior Consultant at !!!

Founder of !!!

@tomasmalmsten http://www.tomasmalmsten.com

Tomas Malmsten

Øresund SoftwareCraftsmanship Group

Page 4: Software craftsmanship, Why, What, How

Agenda

• History

• Manifesto

• Toolbox

Page 5: Software craftsmanship, Why, What, How

Software EngineeringFrom NATO’s first software Engineering conference

1968

Page 6: Software craftsmanship, Why, What, How

AgileBreak with waterfall like methodologies

1990’s

Page 7: Software craftsmanship, Why, What, How

A Focus on Professionalism

Page 8: Software craftsmanship, Why, What, How

Craftsmanship as a better Metaphor

Page 9: Software craftsmanship, Why, What, How

Drivers behind the Manifesto

Page 10: Software craftsmanship, Why, What, How
Page 11: Software craftsmanship, Why, What, How

Defining Customer/Client

Page 12: Software craftsmanship, Why, What, How

Not only working software,

but also well-crafted software

Working software over comprehensive documentation

Page 13: Software craftsmanship, Why, What, How

Not only responding to change,

but also steadily adding value

Responding to change over following a plan

Page 14: Software craftsmanship, Why, What, How

Not only individuals and interactions,

but also a community of professionals

Individual and interactions over process and tools

Page 15: Software craftsmanship, Why, What, How

Not only customer collaboration,

but also productive partnerships

Customer collaboration over contract negotiation

Page 16: Software craftsmanship, Why, What, How

Toolbox• Practices • Patterns • Technology • Interaction and Community • Processes

Lachlan Donald https://flic.kr/p/fkmB7T CC BY 2.0

Page 17: Software craftsmanship, Why, What, How

Practices

• TDD

• Pair Programming

• Mobbing

• BDD

• Refactoring

• Evolving software

Page 18: Software craftsmanship, Why, What, How

Mob programminghttp://mobprogramming.org

Page 19: Software craftsmanship, Why, What, How

barbostick https://flic.kr/p/8HRrDZ CC BY SA 2.0

Page 20: Software craftsmanship, Why, What, How

Norio Nakayama https://flic.kr/p/avBM2o CC BY SA 2.0

Page 21: Software craftsmanship, Why, What, How

PatternsLanguage describing a common

solution to a specific problem in a given context

Page 22: Software craftsmanship, Why, What, How

Technology

• Automation

• Continuous Integration

• Continuous Delivery

• Self testing code

Page 23: Software craftsmanship, Why, What, How

Interaction and Community

• Team

• Apprenticeship

• Customers

• Sharing Knowledge

Page 24: Software craftsmanship, Why, What, How

Further Reading

• http://manifesto.softwarecraftsmanship.org

• https://groups.google.com/forum/#!forum/software_craftsmanship

• The Software Craftsman - Sandro Mancuso

• The Pragmatic Programmer - Andrew Hunt & David Thomas

• Software Craftsmanship - Peter McBreen

• https://groups.google.com/forum/#!forum/oresund-software-craftsmanship

Page 25: Software craftsmanship, Why, What, How

@oescg https://www.linkedin.com/groups?home=&gid=6504915

https://groups.google.com/forum/#!forum/oresund-software-craftsmanship

Øresund SoftwareCraftsmanship Group