SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Introduction to
Software Craftsmanship
Philips Healthcare, November 2010
Roy Nitert, Aron van Beurden
Philips Healthcare Best, SW Craftsmanship, November 2010 2
Content SW craftsmanship
• What is craftsmanship?
• Why are we bothered with it?
• Manifesto
• SW Craftsmanship book
• Conclusion
Philips Healthcare Best, SW Craftsmanship, November 2010 3
Strategic Direction Enablers Metrics / KPI’s Hoshins 2010
iXR, R&D Software - One Page Strategy 2010
technologies effectively
•Encourage craftsmanship., innovations and continuous
learning
•Well defined and deployed SW architecture, supporting
Approved: 24-Feb- 2010
Encourage craftsmanship,
innovations and continuous learning
Philips Healthcare Best, SW Craftsmanship, November 2010
What is craftsmanship?
A man who practices a craft with
great skill.
Skill in an occupation
or trade.
The skills to deliver high
quality work
A person who practices or
is highly skilled in a craft
Philips Healthcare Best, SW Craftsmanship, November 2010
Why are we bothered with it? (1/2)
Craftsmanship
is about YOU!
Philips Healthcare Best, SW Craftsmanship, November 2010 6
Strategic Direction Enablers Metrics / KPI’s Hoshins 2010
iXR, R&D Software - One Page Strategy 2010
Approved: 24-Feb- 2010
Strategy of Software
Reach defined targets that exceed historical performance in the
following areas:
• Product quality (reliability, maintainability)
• Product scope in terms of functionality (application, service,
operations)
• Process efficiency in terms of effort distributions (more core / less
appraisal & rework)
• Project performance in terms of schedule & budget
Cost of non quality for IT worldwide in 2015
$1.000.000.000.000
Philips Healthcare Best, SW Craftsmanship, November 2010
SW Craftsmanship manifesto
http://manifesto.softwarecraftsmanship.org/
Philips Healthcare Best, SW Craftsmanship, November 2010
Manifesto’s combined
SW engineering
Processes and
tools
Comprehensive
documentation
Contract
negotiation
Following a plan
Agile
Individuals and
interactions
Working software
Customer
collaboration
Responding to
change
SW Craftsmanship
A community of
professionals
Well-crafted software
Productive
partnerships
Steadily adding value
Philips Healthcare Best, SW Craftsmanship, November 2010
Software Craftsmanship: The New Imperative (1)
Problem of SW engineering
•Development is not a
systematic quantified process
•At best it is an empirical
process, because it involves
people
•Engineering does not address
the social aspects
Philips Healthcare Best, SW Craftsmanship, November 2010
Software Craftsmanship: The New Imperative (2)
Traditional craft
Technical knowledge
Practiced skill
Aesthetics
Philips Healthcare Best, SW Craftsmanship, November 2010
Software Craftsmanship: The New Imperative (3)
Objective
Obtain mastery over science and engineering so that we can
continually refine our craft
Raising the bar
Continually work to improve your skills
Perpetual learning
•encourage participation in conferences
•create a learning environment
Philips Healthcare Best, SW Craftsmanship, November 2010
Software Craftsmanship: The New Imperative (4)
Master craftsman
•Leads a team of journeymen and apprentices
•Infects the team with enthusiasm and passion for the craft
•Has delivered many successful, robust, high-quality applications
•Is recognized by users, customers and developers
•Is responsible for passing on the craft
•Chooses his own team
Philips Healthcare Best, SW Craftsmanship, November 2010
Software Craftsmanship: The New Imperative (5)
Journeyman
•Has worked for several years with a master
•Small teams
•Coach apprentices
•Learn from masters
•Spread knowledge between masters
•Focused on delivering applications
•Does not work without master or other journeyman
Philips Healthcare Best, SW Craftsmanship, November 2010
Software Craftsmanship: The New Imperative (6)
Apprentice
•Contribute to simple tasks
•Learn from journeyman
•Situated learning
•Review work of the master
•Progression through demonstrated progress
Philips Healthcare Best, SW Craftsmanship, November 2010
Software Craftsmanship: The New Imperative (7)
Put back pride into SW development
•Sign your work
•Take credit
•Accountability
•Reputation
No licensing/certification
•Craftsmanship is personal
•Peer recognition
•Peer recommendation
Philips Healthcare Best, SW Craftsmanship, November 2010
Software Craftsmanship: The New Imperative (8)
Management style
•No horde of average programmers
•Small team of good developers
•No detailed instructions or command and control
•Facilitating and coordinating
•Knowledge workers
•Pay them well
(3 times as much as average developers)
Philips Healthcare Best, SW Craftsmanship, November 2010
Concrete examples
• Review: Review the code of experienced developers (to other way
around)
• DRY: Don’t repeat yourself
• Boy scout rule: Leave the campground cleaner than you entered it
• Readable code: Always code as if the guy who ends up maintaining
your code will be a violent psychopath who knows where you live
• TDD: Test driven development
• Automatic build & continuous integration
• Apprenticing: find a mentor
• Learn: Read, visit conferences, join communities
• Exercise: breakable toy, Dojo, Kata, workshops
Philips Healthcare Best, SW Craftsmanship, November 2010
Conclusion
Currently software development quality/profession
is poor. And needs improvement.
Master-apprentice model will help to improve the
quality/profession.
It is your responsibility to improve
quality/profession.
Philips Healthcare Best, SW Craftsmanship, November 2010
Links
• McBreen, Pete (2001). Software Craftsmanship: The New Imperative. Addison Wesley. ISBN 0201733862.
• Martin, Robert C. (2008). Clean Code: A Handbook of Agile Software Craftsmanship. Addison Wesley. ISBN
0132350882.
• Hoover, Dave; Oshineye, Adewale. (2009) Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman.
O'Reilly. ISBN 0596518382.
• Hunt, Andrew; Thomas, Dave (1999). The Pragmatic Programmer: From Journeyman to Master. ISBN 020161622X
• Manifesto: http://manifesto.softwarecraftsmanship.org/
• Wiki: http://en.wikipedia.org/wiki/Software_Craftsmanship
• http://www.slideshare.net/urilavi/software-craftsmanship-1-meeting?src=related_normal&rel=4807795
• http://www.slideshare.net/urilavi/software-craftsmanship-2
• http://www.slideshare.net/urilavi/software-craftsmanship-3
• http://www.slideshare.net/urilavi/software-craftsmanship-4
• http://www.slideshare.net/bcoder/friday-final-test?src=related_normal&rel=4336926
• http://www.slideshare.net/bcoder/it-is-a-sunny-day?src=related_normal&rel=3550699
• http://www.slideshare.net/goeran/the-software-craftsman-2nd-edition-3550699?src=related_normal&rel=4010385
• http://www.slideshare.net/goeran/software-craftsmanship-ntnu?src=related_normal&rel=3323035
• http://www.slideshare.net/skillsmatter/coreyhaines?src=related_normal&rel=4439707
• http://www.slideshare.net/giordano/better-software-developers-3989933
• http://www.slideshare.net/CoryFoy/growing-and-fostering-software-craftsmanship
• http://www.slideshare.net/DocOnDev/training-software-professionals-just-what-the-doctor-ordered
• http://www.slideshare.net/DocOnDev/take-control-of-your-development-career
• http://www.slideshare.net/henrydjacob/craftsmanship-the-meaning-of-life
• http://www.slideshare.net/hebel/clean-code
Philips Healthcare Best, SW Craftsmanship, November 2010 20

Weitere ähnliche Inhalte

Andere mochten auch

A case for Code craftsmanship
A case for Code craftsmanship A case for Code craftsmanship
A case for Code craftsmanship Nirmalya Sengupta
 
Software Craftsmanship - 1 Meeting
Software Craftsmanship - 1 MeetingSoftware Craftsmanship - 1 Meeting
Software Craftsmanship - 1 MeetingUri Lavi
 
A developer's journey to craftsmanship
A developer's journey to craftsmanshipA developer's journey to craftsmanship
A developer's journey to craftsmanshipTekkie Consulting
 
Continuous development - Growing Pains
Continuous development - Growing PainsContinuous development - Growing Pains
Continuous development - Growing PainsJohn Stevenson
 
Software Craftsmanship: Agile Is Not Enough
Software Craftsmanship: Agile Is Not EnoughSoftware Craftsmanship: Agile Is Not Enough
Software Craftsmanship: Agile Is Not EnoughKen Auer
 
Software craftsmanshippresentation
Software craftsmanshippresentationSoftware craftsmanshippresentation
Software craftsmanshippresentationMeagan Waller
 
Craftsmanship: The Meaning of Life
Craftsmanship: The Meaning of LifeCraftsmanship: The Meaning of Life
Craftsmanship: The Meaning of LifeHenry Jacob
 
A Question of Craftsmanship
A Question of CraftsmanshipA Question of Craftsmanship
A Question of CraftsmanshipKevlin Henney
 
Software Craftsmanship - Sandro Mancuso - BCS Agile Methods SG
Software Craftsmanship - Sandro Mancuso - BCS Agile Methods SGSoftware Craftsmanship - Sandro Mancuso - BCS Agile Methods SG
Software Craftsmanship - Sandro Mancuso - BCS Agile Methods SGJose Casal-Gimenez FBCS CITP
 
소프트웨어개발참여자를위한철학 공간정보통신
소프트웨어개발참여자를위한철학 공간정보통신소프트웨어개발참여자를위한철학 공간정보통신
소프트웨어개발참여자를위한철학 공간정보통신Seokmoon Ryoo
 
Be a better developer
Be a better developerBe a better developer
Be a better developerDiego Lemos
 
The Software Craftsman
The Software CraftsmanThe Software Craftsman
The Software Craftsmangoeran
 
Clean Code III - Software Craftsmanship
Clean Code III - Software CraftsmanshipClean Code III - Software Craftsmanship
Clean Code III - Software CraftsmanshipTheo Jungeblut
 
Tdd retro agile_korea_게시용
Tdd retro agile_korea_게시용Tdd retro agile_korea_게시용
Tdd retro agile_korea_게시용Sangcheol Hwang
 
Software Craftsmanship VS Software Engineering
Software Craftsmanship VS Software EngineeringSoftware Craftsmanship VS Software Engineering
Software Craftsmanship VS Software EngineeringAndy Maleh
 
테스트 자동화와 TDD(테스트 주도 개발방법론)
테스트 자동화와 TDD(테스트 주도 개발방법론)테스트 자동화와 TDD(테스트 주도 개발방법론)
테스트 자동화와 TDD(테스트 주도 개발방법론)KH Park (박경훈)
 
Test Driven Design - GDG DevFest Istanbul 2016
Test Driven Design - GDG DevFest Istanbul 2016Test Driven Design - GDG DevFest Istanbul 2016
Test Driven Design - GDG DevFest Istanbul 2016Lemi Orhan Ergin
 

Andere mochten auch (17)

A case for Code craftsmanship
A case for Code craftsmanship A case for Code craftsmanship
A case for Code craftsmanship
 
Software Craftsmanship - 1 Meeting
Software Craftsmanship - 1 MeetingSoftware Craftsmanship - 1 Meeting
Software Craftsmanship - 1 Meeting
 
A developer's journey to craftsmanship
A developer's journey to craftsmanshipA developer's journey to craftsmanship
A developer's journey to craftsmanship
 
Continuous development - Growing Pains
Continuous development - Growing PainsContinuous development - Growing Pains
Continuous development - Growing Pains
 
Software Craftsmanship: Agile Is Not Enough
Software Craftsmanship: Agile Is Not EnoughSoftware Craftsmanship: Agile Is Not Enough
Software Craftsmanship: Agile Is Not Enough
 
Software craftsmanshippresentation
Software craftsmanshippresentationSoftware craftsmanshippresentation
Software craftsmanshippresentation
 
Craftsmanship: The Meaning of Life
Craftsmanship: The Meaning of LifeCraftsmanship: The Meaning of Life
Craftsmanship: The Meaning of Life
 
A Question of Craftsmanship
A Question of CraftsmanshipA Question of Craftsmanship
A Question of Craftsmanship
 
Software Craftsmanship - Sandro Mancuso - BCS Agile Methods SG
Software Craftsmanship - Sandro Mancuso - BCS Agile Methods SGSoftware Craftsmanship - Sandro Mancuso - BCS Agile Methods SG
Software Craftsmanship - Sandro Mancuso - BCS Agile Methods SG
 
소프트웨어개발참여자를위한철학 공간정보통신
소프트웨어개발참여자를위한철학 공간정보통신소프트웨어개발참여자를위한철학 공간정보통신
소프트웨어개발참여자를위한철학 공간정보통신
 
Be a better developer
Be a better developerBe a better developer
Be a better developer
 
The Software Craftsman
The Software CraftsmanThe Software Craftsman
The Software Craftsman
 
Clean Code III - Software Craftsmanship
Clean Code III - Software CraftsmanshipClean Code III - Software Craftsmanship
Clean Code III - Software Craftsmanship
 
Tdd retro agile_korea_게시용
Tdd retro agile_korea_게시용Tdd retro agile_korea_게시용
Tdd retro agile_korea_게시용
 
Software Craftsmanship VS Software Engineering
Software Craftsmanship VS Software EngineeringSoftware Craftsmanship VS Software Engineering
Software Craftsmanship VS Software Engineering
 
테스트 자동화와 TDD(테스트 주도 개발방법론)
테스트 자동화와 TDD(테스트 주도 개발방법론)테스트 자동화와 TDD(테스트 주도 개발방법론)
테스트 자동화와 TDD(테스트 주도 개발방법론)
 
Test Driven Design - GDG DevFest Istanbul 2016
Test Driven Design - GDG DevFest Istanbul 2016Test Driven Design - GDG DevFest Istanbul 2016
Test Driven Design - GDG DevFest Istanbul 2016
 

Ähnlich wie Intro to SW craftsmanship

DevOps Challenges and Best Practices
DevOps Challenges and Best PracticesDevOps Challenges and Best Practices
DevOps Challenges and Best PracticesBrian Chorba
 
The Three Pillars of Continuous Delivery - Boston Continuous Delivery Event
The Three Pillars of Continuous Delivery - Boston Continuous Delivery EventThe Three Pillars of Continuous Delivery - Boston Continuous Delivery Event
The Three Pillars of Continuous Delivery - Boston Continuous Delivery EventXebiaLabs
 
How to Pitch a Software Development Initiative and Ignite Culture Change
How to Pitch a Software Development Initiative and Ignite Culture ChangeHow to Pitch a Software Development Initiative and Ignite Culture Change
How to Pitch a Software Development Initiative and Ignite Culture ChangeRed Gate Software
 
The IC Who "Lived" Me, Transitioning from implementing D2L to operations
The IC Who "Lived" Me, Transitioning from implementing D2L to operationsThe IC Who "Lived" Me, Transitioning from implementing D2L to operations
The IC Who "Lived" Me, Transitioning from implementing D2L to operationsD2L Barry
 
DevOps and Agile in an ITSM world
DevOps and Agile in an ITSM worldDevOps and Agile in an ITSM world
DevOps and Agile in an ITSM worldClaire Agutter
 
Workshop Slides - HDR55 Build Evidence of Good Practice (improving the qualit...
Workshop Slides - HDR55 Build Evidence of Good Practice (improving the qualit...Workshop Slides - HDR55 Build Evidence of Good Practice (improving the qualit...
Workshop Slides - HDR55 Build Evidence of Good Practice (improving the qualit...Merilyn Childs @ Macquarie University
 
SFHDIFeb2017-How DevOps Thinking Can Improve Service and Support
SFHDIFeb2017-How DevOps Thinking Can Improve Service and SupportSFHDIFeb2017-How DevOps Thinking Can Improve Service and Support
SFHDIFeb2017-How DevOps Thinking Can Improve Service and SupportSan Francisco Bay Area
 
Expediting the Application Workshop Presentation -- 2015 SRA -- Dianne Donnel...
Expediting the Application Workshop Presentation -- 2015 SRA -- Dianne Donnel...Expediting the Application Workshop Presentation -- 2015 SRA -- Dianne Donnel...
Expediting the Application Workshop Presentation -- 2015 SRA -- Dianne Donnel...Sandy Justice
 
Transforming Digital Government Services Workshop - Tuesday 21st October
Transforming Digital Government Services Workshop - Tuesday 21st OctoberTransforming Digital Government Services Workshop - Tuesday 21st October
Transforming Digital Government Services Workshop - Tuesday 21st OctoberPrecedent
 
When You Can’t Find Tech Talent, Grow Your Own
When You Can’t Find Tech Talent, Grow Your OwnWhen You Can’t Find Tech Talent, Grow Your Own
When You Can’t Find Tech Talent, Grow Your OwnCprime
 
Challenges & Successes of Agile Implementation Webinar with BlackLine - XBOSoft
Challenges & Successes of Agile Implementation Webinar with BlackLine - XBOSoftChallenges & Successes of Agile Implementation Webinar with BlackLine - XBOSoft
Challenges & Successes of Agile Implementation Webinar with BlackLine - XBOSoftXBOSoft
 
Cleared Job Fair Handbook February 4, Mid-Atlantic Region
Cleared Job Fair Handbook February 4, Mid-Atlantic RegionCleared Job Fair Handbook February 4, Mid-Atlantic Region
Cleared Job Fair Handbook February 4, Mid-Atlantic RegionClearedJobs.Net
 
Project management.docx communiction
Project management.docx communictionProject management.docx communiction
Project management.docx communictionberhanu taye
 
Creating a Growth Mindset: Preparing for the Future of Work
Creating a Growth Mindset: Preparing for the Future of WorkCreating a Growth Mindset: Preparing for the Future of Work
Creating a Growth Mindset: Preparing for the Future of WorkUdemy for Business
 
DevOps in action - Azure DevOps
DevOps in action - Azure DevOpsDevOps in action - Azure DevOps
DevOps in action - Azure DevOpsXPDays
 
Berkeley Method of Innovation Leadership
Berkeley Method of Innovation LeadershipBerkeley Method of Innovation Leadership
Berkeley Method of Innovation LeadershipIkhlaq Sidhu
 
You don't need to be a ninja rockstar to contribute to Open Source
You don't need to be a ninja rockstar to contribute to Open SourceYou don't need to be a ninja rockstar to contribute to Open Source
You don't need to be a ninja rockstar to contribute to Open SourceMark Baker
 

Ähnlich wie Intro to SW craftsmanship (20)

DevOps Challenges and Best Practices
DevOps Challenges and Best PracticesDevOps Challenges and Best Practices
DevOps Challenges and Best Practices
 
The Three Pillars of Continuous Delivery - Boston Continuous Delivery Event
The Three Pillars of Continuous Delivery - Boston Continuous Delivery EventThe Three Pillars of Continuous Delivery - Boston Continuous Delivery Event
The Three Pillars of Continuous Delivery - Boston Continuous Delivery Event
 
How to Pitch a Software Development Initiative and Ignite Culture Change
How to Pitch a Software Development Initiative and Ignite Culture ChangeHow to Pitch a Software Development Initiative and Ignite Culture Change
How to Pitch a Software Development Initiative and Ignite Culture Change
 
The IC Who "Lived" Me, Transitioning from implementing D2L to operations
The IC Who "Lived" Me, Transitioning from implementing D2L to operationsThe IC Who "Lived" Me, Transitioning from implementing D2L to operations
The IC Who "Lived" Me, Transitioning from implementing D2L to operations
 
DevOps and Agile in an ITSM world
DevOps and Agile in an ITSM worldDevOps and Agile in an ITSM world
DevOps and Agile in an ITSM world
 
Workshop Slides - HDR55 Build Evidence of Good Practice (improving the qualit...
Workshop Slides - HDR55 Build Evidence of Good Practice (improving the qualit...Workshop Slides - HDR55 Build Evidence of Good Practice (improving the qualit...
Workshop Slides - HDR55 Build Evidence of Good Practice (improving the qualit...
 
SFHDIFeb2017-How DevOps Thinking Can Improve Service and Support
SFHDIFeb2017-How DevOps Thinking Can Improve Service and SupportSFHDIFeb2017-How DevOps Thinking Can Improve Service and Support
SFHDIFeb2017-How DevOps Thinking Can Improve Service and Support
 
Expediting the Application Workshop Presentation -- 2015 SRA -- Dianne Donnel...
Expediting the Application Workshop Presentation -- 2015 SRA -- Dianne Donnel...Expediting the Application Workshop Presentation -- 2015 SRA -- Dianne Donnel...
Expediting the Application Workshop Presentation -- 2015 SRA -- Dianne Donnel...
 
Transforming Digital Government Services Workshop - Tuesday 21st October
Transforming Digital Government Services Workshop - Tuesday 21st OctoberTransforming Digital Government Services Workshop - Tuesday 21st October
Transforming Digital Government Services Workshop - Tuesday 21st October
 
When You Can’t Find Tech Talent, Grow Your Own
When You Can’t Find Tech Talent, Grow Your OwnWhen You Can’t Find Tech Talent, Grow Your Own
When You Can’t Find Tech Talent, Grow Your Own
 
Challenges & Successes of Agile Implementation Webinar with BlackLine - XBOSoft
Challenges & Successes of Agile Implementation Webinar with BlackLine - XBOSoftChallenges & Successes of Agile Implementation Webinar with BlackLine - XBOSoft
Challenges & Successes of Agile Implementation Webinar with BlackLine - XBOSoft
 
Cleared Job Fair Handbook February 4, Mid-Atlantic Region
Cleared Job Fair Handbook February 4, Mid-Atlantic RegionCleared Job Fair Handbook February 4, Mid-Atlantic Region
Cleared Job Fair Handbook February 4, Mid-Atlantic Region
 
Project management.docx communiction
Project management.docx communictionProject management.docx communiction
Project management.docx communiction
 
Creating a Growth Mindset: Preparing for the Future of Work
Creating a Growth Mindset: Preparing for the Future of WorkCreating a Growth Mindset: Preparing for the Future of Work
Creating a Growth Mindset: Preparing for the Future of Work
 
DevOps in action - Azure DevOps
DevOps in action - Azure DevOpsDevOps in action - Azure DevOps
DevOps in action - Azure DevOps
 
Devops intro
Devops introDevops intro
Devops intro
 
Berkeley Method of Innovation Leadership
Berkeley Method of Innovation LeadershipBerkeley Method of Innovation Leadership
Berkeley Method of Innovation Leadership
 
You don't need to be a ninja rockstar to contribute to Open Source
You don't need to be a ninja rockstar to contribute to Open SourceYou don't need to be a ninja rockstar to contribute to Open Source
You don't need to be a ninja rockstar to contribute to Open Source
 
SIT - Innovation Consulting - New Product Development
SIT - Innovation Consulting - New Product DevelopmentSIT - Innovation Consulting - New Product Development
SIT - Innovation Consulting - New Product Development
 
Selection processes
Selection processesSelection processes
Selection processes
 

Kürzlich hochgeladen

A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991RKavithamani
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application ) Sakshi Ghasle
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...RKavithamani
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 

Kürzlich hochgeladen (20)

Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
 
Staff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSDStaff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSD
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application )
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 

Intro to SW craftsmanship

  • 1. Introduction to Software Craftsmanship Philips Healthcare, November 2010 Roy Nitert, Aron van Beurden
  • 2. Philips Healthcare Best, SW Craftsmanship, November 2010 2 Content SW craftsmanship • What is craftsmanship? • Why are we bothered with it? • Manifesto • SW Craftsmanship book • Conclusion
  • 3. Philips Healthcare Best, SW Craftsmanship, November 2010 3 Strategic Direction Enablers Metrics / KPI’s Hoshins 2010 iXR, R&D Software - One Page Strategy 2010 technologies effectively •Encourage craftsmanship., innovations and continuous learning •Well defined and deployed SW architecture, supporting Approved: 24-Feb- 2010 Encourage craftsmanship, innovations and continuous learning
  • 4. Philips Healthcare Best, SW Craftsmanship, November 2010 What is craftsmanship? A man who practices a craft with great skill. Skill in an occupation or trade. The skills to deliver high quality work A person who practices or is highly skilled in a craft
  • 5. Philips Healthcare Best, SW Craftsmanship, November 2010 Why are we bothered with it? (1/2) Craftsmanship is about YOU!
  • 6. Philips Healthcare Best, SW Craftsmanship, November 2010 6 Strategic Direction Enablers Metrics / KPI’s Hoshins 2010 iXR, R&D Software - One Page Strategy 2010 Approved: 24-Feb- 2010 Strategy of Software Reach defined targets that exceed historical performance in the following areas: • Product quality (reliability, maintainability) • Product scope in terms of functionality (application, service, operations) • Process efficiency in terms of effort distributions (more core / less appraisal & rework) • Project performance in terms of schedule & budget Cost of non quality for IT worldwide in 2015 $1.000.000.000.000
  • 7. Philips Healthcare Best, SW Craftsmanship, November 2010 SW Craftsmanship manifesto http://manifesto.softwarecraftsmanship.org/
  • 8. Philips Healthcare Best, SW Craftsmanship, November 2010 Manifesto’s combined SW engineering Processes and tools Comprehensive documentation Contract negotiation Following a plan Agile Individuals and interactions Working software Customer collaboration Responding to change SW Craftsmanship A community of professionals Well-crafted software Productive partnerships Steadily adding value
  • 9. Philips Healthcare Best, SW Craftsmanship, November 2010 Software Craftsmanship: The New Imperative (1) Problem of SW engineering •Development is not a systematic quantified process •At best it is an empirical process, because it involves people •Engineering does not address the social aspects
  • 10. Philips Healthcare Best, SW Craftsmanship, November 2010 Software Craftsmanship: The New Imperative (2) Traditional craft Technical knowledge Practiced skill Aesthetics
  • 11. Philips Healthcare Best, SW Craftsmanship, November 2010 Software Craftsmanship: The New Imperative (3) Objective Obtain mastery over science and engineering so that we can continually refine our craft Raising the bar Continually work to improve your skills Perpetual learning •encourage participation in conferences •create a learning environment
  • 12. Philips Healthcare Best, SW Craftsmanship, November 2010 Software Craftsmanship: The New Imperative (4) Master craftsman •Leads a team of journeymen and apprentices •Infects the team with enthusiasm and passion for the craft •Has delivered many successful, robust, high-quality applications •Is recognized by users, customers and developers •Is responsible for passing on the craft •Chooses his own team
  • 13. Philips Healthcare Best, SW Craftsmanship, November 2010 Software Craftsmanship: The New Imperative (5) Journeyman •Has worked for several years with a master •Small teams •Coach apprentices •Learn from masters •Spread knowledge between masters •Focused on delivering applications •Does not work without master or other journeyman
  • 14. Philips Healthcare Best, SW Craftsmanship, November 2010 Software Craftsmanship: The New Imperative (6) Apprentice •Contribute to simple tasks •Learn from journeyman •Situated learning •Review work of the master •Progression through demonstrated progress
  • 15. Philips Healthcare Best, SW Craftsmanship, November 2010 Software Craftsmanship: The New Imperative (7) Put back pride into SW development •Sign your work •Take credit •Accountability •Reputation No licensing/certification •Craftsmanship is personal •Peer recognition •Peer recommendation
  • 16. Philips Healthcare Best, SW Craftsmanship, November 2010 Software Craftsmanship: The New Imperative (8) Management style •No horde of average programmers •Small team of good developers •No detailed instructions or command and control •Facilitating and coordinating •Knowledge workers •Pay them well (3 times as much as average developers)
  • 17. Philips Healthcare Best, SW Craftsmanship, November 2010 Concrete examples • Review: Review the code of experienced developers (to other way around) • DRY: Don’t repeat yourself • Boy scout rule: Leave the campground cleaner than you entered it • Readable code: Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live • TDD: Test driven development • Automatic build & continuous integration • Apprenticing: find a mentor • Learn: Read, visit conferences, join communities • Exercise: breakable toy, Dojo, Kata, workshops
  • 18. Philips Healthcare Best, SW Craftsmanship, November 2010 Conclusion Currently software development quality/profession is poor. And needs improvement. Master-apprentice model will help to improve the quality/profession. It is your responsibility to improve quality/profession.
  • 19. Philips Healthcare Best, SW Craftsmanship, November 2010 Links • McBreen, Pete (2001). Software Craftsmanship: The New Imperative. Addison Wesley. ISBN 0201733862. • Martin, Robert C. (2008). Clean Code: A Handbook of Agile Software Craftsmanship. Addison Wesley. ISBN 0132350882. • Hoover, Dave; Oshineye, Adewale. (2009) Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman. O'Reilly. ISBN 0596518382. • Hunt, Andrew; Thomas, Dave (1999). The Pragmatic Programmer: From Journeyman to Master. ISBN 020161622X • Manifesto: http://manifesto.softwarecraftsmanship.org/ • Wiki: http://en.wikipedia.org/wiki/Software_Craftsmanship • http://www.slideshare.net/urilavi/software-craftsmanship-1-meeting?src=related_normal&rel=4807795 • http://www.slideshare.net/urilavi/software-craftsmanship-2 • http://www.slideshare.net/urilavi/software-craftsmanship-3 • http://www.slideshare.net/urilavi/software-craftsmanship-4 • http://www.slideshare.net/bcoder/friday-final-test?src=related_normal&rel=4336926 • http://www.slideshare.net/bcoder/it-is-a-sunny-day?src=related_normal&rel=3550699 • http://www.slideshare.net/goeran/the-software-craftsman-2nd-edition-3550699?src=related_normal&rel=4010385 • http://www.slideshare.net/goeran/software-craftsmanship-ntnu?src=related_normal&rel=3323035 • http://www.slideshare.net/skillsmatter/coreyhaines?src=related_normal&rel=4439707 • http://www.slideshare.net/giordano/better-software-developers-3989933 • http://www.slideshare.net/CoryFoy/growing-and-fostering-software-craftsmanship • http://www.slideshare.net/DocOnDev/training-software-professionals-just-what-the-doctor-ordered • http://www.slideshare.net/DocOnDev/take-control-of-your-development-career • http://www.slideshare.net/henrydjacob/craftsmanship-the-meaning-of-life • http://www.slideshare.net/hebel/clean-code
  • 20. Philips Healthcare Best, SW Craftsmanship, November 2010 20

Hinweis der Redaktion

  1. Title
  2. Title
  3. At the beginning of 2010 the new OPS was presented. While reading the OPS I saw the sentence “Encourage craftsmanship, innovations and continuous learning”. I start wondering what craftsmanship means? Why is craftsmanship so important to our management? What do they want to achieve with this by putting it on the OPS? A lot of questions and no direct answers. A lot of people have ideas about craftsmanship, however, there are a lot of different ideas…. So, lets think about craftsmanship for a while. What do you think it is about. (have group discussion)
  4. Title
  5. Why are we telling you about this? If you look at the OPS (pasted in this sheet) there are a lot of ways described how we can achieve our goals. They all affect you work, hopefully in a positive manner! (Click) However, I think craftsmanship is something about us as developers. It is really about you (Click) The others are items on process or architectural level. Not saying that these are less important… I believe craftsmanship is about you. It’s about you taking your profession seriously It’s about you improving your skills It’s about you standing for your quality It’s about you using the black instead of the yellow-green wire Why is this so important to Philips => next slide.
  6. One of our main focus points for this year (and the coming years) is to improve the product quality. I’m sure craftsmanship can help in this area. The cost of non-quality for IT worldwide is estimated at the end of 2010 to hit $500 billion. The projection is to hit $1 trillion by 2015! (click) If we say that only 10% of it is due to poor coding practice then we are looking at $100 billion. This is more that the complete year’s salary for every developer on earth! For this several initiatives have been started. However, for craftsmanship is still unclear what concrete actions we should do. After looking around on the craftsmanship subject, I found something about a software craftsmanship manifesto. Also, there is already a community of software craftsman. About this manifesto/community and their ideas Roy will tell you about. $1 Trillion by 2015 On September 10, 2010, Gartner Group published a comprehensive study of IT Debt worldwide. The debt is estimated at $500 billion at the end of 2010 with a projection to hit $1 trillion by 2015. Many discussions on software quality meander their way into a debate about the lack of need for rigor when lives are not at stake. Given worldwide IT Debt at $1 trillion, even if only 10 percent of it is from code, we are looking at $100 billion due to poor coding practices. This is somewhere in the range of $14 for each living human. This is more than a complete year's salary for every developer on earth. While we may not be able to draw a straight line from this debt to the loss of human lives, I've no doubt the connection exists. Our profession is failing to deliver. We must do something.
  7. Title
  8. Title
  9. Title
  10. Title
  11. Title
  12. Title
  13. Title
  14. Title
  15. Title
  16. Title
  17. Title
  18. Title
  19. Title
  20. Title