SlideShare una empresa de Scribd logo
1 de 17
Descargar para leer sin conexión
Mike Dunn 2013.04.17
Software Craftsmanship:
An Often Ignored Focus
Mike Dunn 2013.04.17
Status Quo
We are deluged with information about how to
improve software product creation and delivery
by using different development methodologies
for:
● Teams and/or
● Organizations and/or
● Companies
Mike Dunn 2013.04.17
Status Quo
● Different software creation methodologies are
supported by a plethora of training programs.
● There are training programs that focus at different
levels:
 Organization
 Team or Project
● There are also a considerable number of role
focused training programs.
Mike Dunn 2013.04.17
Status Quo
● So what is missing??
●
How about Software Craftsman1
training??
● How about Software Craftsman1
emphasis??
● Yes, we have role level training.
● Yes, Watts Humphrey's PSP does exist.
● But, how many software developers really
understand the software development craft??
1
To those members of the political correctness brigade, I prefer the traditional gender neutral usage of
the word craftsman. Just because a word ends in 'man' does not make it a male reference – like the
word woman.
Mike Dunn 2013.04.17
Status Quo
● Do software developers consider themselves to be
craftsmen??
● My limited anecdotal analysis says most do not.
● The majority of software developers desire to
produce high quality work products.
● The majority of software developers are capable
of delivering higher quality work products.
Let us explore.
Mike Dunn 2013.04.17
Status Quo
● First, let us review one of the key elements of any
system with variable inputs and actions –
feedback.
● If one looks at any successful quality system, it is
obvious that it is a closed loop system making
feedback the critical factor.
● To be effective, feedback should be captured and
recorded in a timely manner and then analyzed.
Mike Dunn 2013.04.17
Status Quo
● Now let us take a look at an example sequence:
 Developer analyzes some requirements and
creates an estimate.
 Developer writes tests [in some cases],
implements the requirements, tests the
implementation and delivers the work products.
 Developer performs instant self assessment –
“I got close”, “oops, I missed it”, etc.
● And what gets captured, recorded, and analyzed??
Mike Dunn 2013.04.17
Status Quo
● Most developers operate in near open loop mode,
focusing primarily on inputs and outputs and
occasionally using recent coarse feedback with
minimal analysis.
● The primary feedback used by most software
developers is compiler errors and test failures.
● If one were to identify most developer's corrective
methodology as a personal quality system, it
would be classified somewhere between ad hoc
and reactive.
Why is this the case??
Mike Dunn 2013.04.17
Status Quo
● The initial cause is education and training.
● Students aspiring to become software developers
are not taught that their ideal skill set is a craft that
can become predictable and be continuously
improved.
● Software developer interns and new hires are not
shown or taught that their ideal skill set is a craft
that can become predictable and be continuously
improved.
How are they to learn??
Mike Dunn 2013.04.17
Status Quo
While there are some star software developers and
some pockets of a craftsman culture, where is the
encouragement and momentum for software
developers to take a craftsman approach to software
development by using a closed loop personal
quality system??
Mike Dunn 2013.04.17
Post Status Quo
If we look at the activities of a software developer
and apply the same processes that a modern software
development team would use, each developer would
have a precise set of metrics that could be used for
continuous improvement of their craft.
The ideal solution is a formal process similar to Watts Humphrey's Personal
Software Process (PSP).
Mike Dunn 2013.04.17
Post Status Quo
It is time for folks to step up and proactively
promote the concept of a Software Craftsman.
Software Craftsmen use a closed loop personal
quality system that uses historical data analysis,
metrics, and personal performance data to
continuously improve their work products.
This will bolster the foundation of software
development teams.
Mike Dunn 2013.04.17
A Possible Software Craftsman Path
● The journey to becoming a Craftsman begins by
becoming an Apprentice, working under the close
supervision of a Craftsman or Master Craftsman.
● The next stop along the way is to become a
Journeyman, working under the loose supervision
of a Craftsman or Master Craftsman.
● Next step is to become a Craftsman under the
guidance of a Master Craftsman.
● Software Master Craftsman are the experts.
Mike Dunn 2013.04.17
Software Craftsman Journey
● Apprentice level concepts should be included
early in any software developer education.
● Concepts like personal discipline to plan and
assess one's own activities.
● The beginning could be as simple as keeping a
personal journal with specific logic points of data
entry and review.
Mike Dunn 2013.04.17
Software Craftsman Journey
● Software development education should deliver a
Journeyman capable of:
● Delivering work products with supervision.
● Using internalized processes for planning,
assessing, developing, testing, evaluating,and
improving their personal work products.
● The internalized processes are based on
principles that are adaptable to different
methodologies.
Mike Dunn 2013.04.17
Commentary
● The purpose here is not to propose a specific
methodology, but to raise awareness for the need.
● The reference concept of Craftsman may be lost
on today's generation – we can call it IGCSWWP2
or whatever.
● We just need to increase the emphasis and inertia
of solid individual development principles.
2
– InterGalactic Creator of SoftWare Work Products.
Mike Dunn 2013.04.17
Status Quo No More??
● Yes, some developers function as Software
Craftsmen.
● Yes, there are software groups that promote,
encourage, and train Software Craftsmen.
● But the momentum for individual Software
Craftsmanship pales in comparison to all of the
hype and hoopla for various team and project
methodologies that are being promoted.
● Can some of the momentum be redirected??

Más contenido relacionado

La actualidad más candente

Building awesome sample apps that actually provide value
Building awesome sample apps that actually provide valueBuilding awesome sample apps that actually provide value
Building awesome sample apps that actually provide valueLauren Hayward Schaefer
 
Aleksey Shebanov: Workshop with a client: hints & tips
Aleksey Shebanov: Workshop with a client: hints & tipsAleksey Shebanov: Workshop with a client: hints & tips
Aleksey Shebanov: Workshop with a client: hints & tipsLviv Startup Club
 
Episode One - Business
Episode One - BusinessEpisode One - Business
Episode One - BusinessCsaba Kincses
 
Agile Simplified
Agile SimplifiedAgile Simplified
Agile SimplifiedWalaa Atef
 
Extreme & pair programming Slides ppt
Extreme & pair programming Slides pptExtreme & pair programming Slides ppt
Extreme & pair programming Slides pptMr SMAK
 
Agile development, software engineering
Agile development, software engineeringAgile development, software engineering
Agile development, software engineeringRupesh Vaishnav
 
Transitioning to Product Manager
Transitioning to Product ManagerTransitioning to Product Manager
Transitioning to Product ManagerToufiq Mahmud
 
Automation Maturity Heuristic
Automation Maturity HeuristicAutomation Maturity Heuristic
Automation Maturity HeuristicBrendan Connolly
 
Architecting A Testing Strategy
Architecting A Testing StrategyArchitecting A Testing Strategy
Architecting A Testing StrategyBrendan Connolly
 
What is Agile Methodology | Edureka
What is Agile Methodology | EdurekaWhat is Agile Methodology | Edureka
What is Agile Methodology | EdurekaEdureka!
 
Clean application development tutorial
Clean application development tutorialClean application development tutorial
Clean application development tutorialAdam Culp
 
Agile Development and Implementing Scrum
Agile Development and Implementing ScrumAgile Development and Implementing Scrum
Agile Development and Implementing ScrumEmre ŞAHİN
 
ANI | Agile Mindset Day @Gurugram | Agile Planning: Effective Practices and C...
ANI | Agile Mindset Day @Gurugram | Agile Planning: Effective Practices and C...ANI | Agile Mindset Day @Gurugram | Agile Planning: Effective Practices and C...
ANI | Agile Mindset Day @Gurugram | Agile Planning: Effective Practices and C...AgileNetwork
 
Introduction to computer programming
Introduction to computer programmingIntroduction to computer programming
Introduction to computer programmingMa Ella Masilungan
 
Ana milutinovic quality awareness when practicing agile testing
Ana milutinovic   quality awareness when practicing agile testingAna milutinovic   quality awareness when practicing agile testing
Ana milutinovic quality awareness when practicing agile testingCodecamp Romania
 
What is agile model?Working of agile model
What is agile model?Working of agile modelWhat is agile model?Working of agile model
What is agile model?Working of agile modelzoomers
 

La actualidad más candente (20)

Building awesome sample apps that actually provide value
Building awesome sample apps that actually provide valueBuilding awesome sample apps that actually provide value
Building awesome sample apps that actually provide value
 
Aleksey Shebanov: Workshop with a client: hints & tips
Aleksey Shebanov: Workshop with a client: hints & tipsAleksey Shebanov: Workshop with a client: hints & tips
Aleksey Shebanov: Workshop with a client: hints & tips
 
Episode One - Business
Episode One - BusinessEpisode One - Business
Episode One - Business
 
Methodology: IT test
Methodology: IT testMethodology: IT test
Methodology: IT test
 
Agile Simplified
Agile SimplifiedAgile Simplified
Agile Simplified
 
Extreme & pair programming Slides ppt
Extreme & pair programming Slides pptExtreme & pair programming Slides ppt
Extreme & pair programming Slides ppt
 
Agile development, software engineering
Agile development, software engineeringAgile development, software engineering
Agile development, software engineering
 
Transitioning to Product Manager
Transitioning to Product ManagerTransitioning to Product Manager
Transitioning to Product Manager
 
Automation Maturity Heuristic
Automation Maturity HeuristicAutomation Maturity Heuristic
Automation Maturity Heuristic
 
Architecting A Testing Strategy
Architecting A Testing StrategyArchitecting A Testing Strategy
Architecting A Testing Strategy
 
What is Agile Methodology | Edureka
What is Agile Methodology | EdurekaWhat is Agile Methodology | Edureka
What is Agile Methodology | Edureka
 
Clean application development tutorial
Clean application development tutorialClean application development tutorial
Clean application development tutorial
 
Xtreme Programming
Xtreme ProgrammingXtreme Programming
Xtreme Programming
 
Agile Development and Implementing Scrum
Agile Development and Implementing ScrumAgile Development and Implementing Scrum
Agile Development and Implementing Scrum
 
03. Agile Development
03. Agile Development03. Agile Development
03. Agile Development
 
What is agile model
What is agile modelWhat is agile model
What is agile model
 
ANI | Agile Mindset Day @Gurugram | Agile Planning: Effective Practices and C...
ANI | Agile Mindset Day @Gurugram | Agile Planning: Effective Practices and C...ANI | Agile Mindset Day @Gurugram | Agile Planning: Effective Practices and C...
ANI | Agile Mindset Day @Gurugram | Agile Planning: Effective Practices and C...
 
Introduction to computer programming
Introduction to computer programmingIntroduction to computer programming
Introduction to computer programming
 
Ana milutinovic quality awareness when practicing agile testing
Ana milutinovic   quality awareness when practicing agile testingAna milutinovic   quality awareness when practicing agile testing
Ana milutinovic quality awareness when practicing agile testing
 
What is agile model?Working of agile model
What is agile model?Working of agile modelWhat is agile model?Working of agile model
What is agile model?Working of agile model
 

Destacado

미사교 0917 google_drive
미사교 0917 google_drive미사교 0917 google_drive
미사교 0917 google_driveSeok Lee
 
Edible Nutmeg: Salad Spinners
Edible Nutmeg: Salad SpinnersEdible Nutmeg: Salad Spinners
Edible Nutmeg: Salad SpinnersTony Vengrove
 
Preliminary posters
Preliminary postersPreliminary posters
Preliminary postersmarwasaroya
 
Ref cover flat plans
Ref   cover flat plansRef   cover flat plans
Ref cover flat planspaigecasterx
 
Back Safety in the Workplace
Back Safety in the WorkplaceBack Safety in the Workplace
Back Safety in the WorkplaceBest care Lab
 
Work it Richmond Interview w/Tony Vengrove
Work it Richmond Interview w/Tony VengroveWork it Richmond Interview w/Tony Vengrove
Work it Richmond Interview w/Tony VengroveTony Vengrove
 
Forms & conventions for documentary jodie
Forms & conventions for documentary jodieForms & conventions for documentary jodie
Forms & conventions for documentary jodiejodiefoster96
 
Run this town essay
Run this town essayRun this town essay
Run this town essayshan1walton
 
Assignment 8 : Narrative theory
 Assignment 8 : Narrative theory Assignment 8 : Narrative theory
Assignment 8 : Narrative theoryjodiefoster96
 
APHA Approaches School Completion Deficits as a Public Health Issue
APHA Approaches School Completion Deficits as a Public Health Issue APHA Approaches School Completion Deficits as a Public Health Issue
APHA Approaches School Completion Deficits as a Public Health Issue Philip H. Levy
 
Snifferforthemobilephones 120304120929-phpapp02
Snifferforthemobilephones 120304120929-phpapp02Snifferforthemobilephones 120304120929-phpapp02
Snifferforthemobilephones 120304120929-phpapp02Anjali Verma
 
Water movement through a Plant
Water movement through a PlantWater movement through a Plant
Water movement through a PlantBrandon Chan
 
Assignment 8:Narrative theory
Assignment 8:Narrative theoryAssignment 8:Narrative theory
Assignment 8:Narrative theoryjodiefoster96
 

Destacado (20)

Cuatri iii 2013
Cuatri iii 2013Cuatri iii 2013
Cuatri iii 2013
 
Serena fasolo es. 4
Serena fasolo es. 4Serena fasolo es. 4
Serena fasolo es. 4
 
미사교 0917 google_drive
미사교 0917 google_drive미사교 0917 google_drive
미사교 0917 google_drive
 
Edible Nutmeg: Salad Spinners
Edible Nutmeg: Salad SpinnersEdible Nutmeg: Salad Spinners
Edible Nutmeg: Salad Spinners
 
Preliminary posters
Preliminary postersPreliminary posters
Preliminary posters
 
Ref cover flat plans
Ref   cover flat plansRef   cover flat plans
Ref cover flat plans
 
Blood borne pathogens
Blood borne pathogensBlood borne pathogens
Blood borne pathogens
 
Back Safety in the Workplace
Back Safety in the WorkplaceBack Safety in the Workplace
Back Safety in the Workplace
 
Work it Richmond Interview w/Tony Vengrove
Work it Richmond Interview w/Tony VengroveWork it Richmond Interview w/Tony Vengrove
Work it Richmond Interview w/Tony Vengrove
 
MICRO-RECEPTIONIST
MICRO-RECEPTIONISTMICRO-RECEPTIONIST
MICRO-RECEPTIONIST
 
Churncraft
ChurncraftChurncraft
Churncraft
 
Forms & conventions for documentary jodie
Forms & conventions for documentary jodieForms & conventions for documentary jodie
Forms & conventions for documentary jodie
 
Run this town essay
Run this town essayRun this town essay
Run this town essay
 
Cms made simple
Cms made simpleCms made simple
Cms made simple
 
Assignment 8 : Narrative theory
 Assignment 8 : Narrative theory Assignment 8 : Narrative theory
Assignment 8 : Narrative theory
 
APHA Approaches School Completion Deficits as a Public Health Issue
APHA Approaches School Completion Deficits as a Public Health Issue APHA Approaches School Completion Deficits as a Public Health Issue
APHA Approaches School Completion Deficits as a Public Health Issue
 
Snifferforthemobilephones 120304120929-phpapp02
Snifferforthemobilephones 120304120929-phpapp02Snifferforthemobilephones 120304120929-phpapp02
Snifferforthemobilephones 120304120929-phpapp02
 
Water movement through a Plant
Water movement through a PlantWater movement through a Plant
Water movement through a Plant
 
gene test
gene testgene test
gene test
 
Assignment 8:Narrative theory
Assignment 8:Narrative theoryAssignment 8:Narrative theory
Assignment 8:Narrative theory
 

Similar a Software Development Craftsmanship

Presentation by namit
Presentation by namitPresentation by namit
Presentation by namitPMI_IREP_TP
 
Scrum Presentation by Amir Rabinkhah.pptx
Scrum Presentation by Amir Rabinkhah.pptxScrum Presentation by Amir Rabinkhah.pptx
Scrum Presentation by Amir Rabinkhah.pptxAmirRabinkhah1
 
Software Release Management: A Quick & Friendly Guide
Software Release Management: A Quick & Friendly GuideSoftware Release Management: A Quick & Friendly Guide
Software Release Management: A Quick & Friendly GuideEnov8
 
application development analyst roles and responsibilities.pdf
application development analyst roles and responsibilities.pdfapplication development analyst roles and responsibilities.pdf
application development analyst roles and responsibilities.pdfSocialMediaCyberDolp
 
Improving software quality for the future of connected vehicles
Improving software quality for the future of connected vehiclesImproving software quality for the future of connected vehicles
Improving software quality for the future of connected vehiclesDevon Bleibtrey
 
Agile Data Governance Tutorial
Agile Data Governance TutorialAgile Data Governance Tutorial
Agile Data Governance TutorialTami Flowers
 
Introduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentIntroduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentThanh Nguyen
 
Software Development Process, How to Make it Successful.pdf
Software Development Process, How to Make it Successful.pdfSoftware Development Process, How to Make it Successful.pdf
Software Development Process, How to Make it Successful.pdfIntegrated IT Solutions
 
How to Manage Growth of Tech Team
How to Manage Growth of Tech TeamHow to Manage Growth of Tech Team
How to Manage Growth of Tech TeamValentine201794
 
What Is Data-Driven Product Development by Aaptiv Senior PM
What Is Data-Driven Product Development by Aaptiv Senior PMWhat Is Data-Driven Product Development by Aaptiv Senior PM
What Is Data-Driven Product Development by Aaptiv Senior PMProduct School
 
best-practices-to-develop-software-applications-for-startups- cuneiform.pdf
best-practices-to-develop-software-applications-for-startups- cuneiform.pdfbest-practices-to-develop-software-applications-for-startups- cuneiform.pdf
best-practices-to-develop-software-applications-for-startups- cuneiform.pdfCuneiform Consulting Pvt Ltd.
 
Scrum master basics
Scrum master basics Scrum master basics
Scrum master basics Elad Sofer
 
Microsoft + Agile (light)
Microsoft + Agile (light)Microsoft + Agile (light)
Microsoft + Agile (light)Andrea Tino
 

Similar a Software Development Craftsmanship (20)

Agile Project Management
Agile Project ManagementAgile Project Management
Agile Project Management
 
Inspired
InspiredInspired
Inspired
 
Module 1 - SE.pptx
Module 1 - SE.pptxModule 1 - SE.pptx
Module 1 - SE.pptx
 
Presentation by namit
Presentation by namitPresentation by namit
Presentation by namit
 
Scrum Presentation by Amir Rabinkhah.pptx
Scrum Presentation by Amir Rabinkhah.pptxScrum Presentation by Amir Rabinkhah.pptx
Scrum Presentation by Amir Rabinkhah.pptx
 
Software Release Management: A Quick & Friendly Guide
Software Release Management: A Quick & Friendly GuideSoftware Release Management: A Quick & Friendly Guide
Software Release Management: A Quick & Friendly Guide
 
application development analyst roles and responsibilities.pdf
application development analyst roles and responsibilities.pdfapplication development analyst roles and responsibilities.pdf
application development analyst roles and responsibilities.pdf
 
Improving software quality for the future of connected vehicles
Improving software quality for the future of connected vehiclesImproving software quality for the future of connected vehicles
Improving software quality for the future of connected vehicles
 
Agile Data Governance Tutorial
Agile Data Governance TutorialAgile Data Governance Tutorial
Agile Data Governance Tutorial
 
Introduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentIntroduction to Agile and Lean Software Development
Introduction to Agile and Lean Software Development
 
Introduction to Agile
Introduction to AgileIntroduction to Agile
Introduction to Agile
 
Software Development Process, How to Make it Successful.pdf
Software Development Process, How to Make it Successful.pdfSoftware Development Process, How to Make it Successful.pdf
Software Development Process, How to Make it Successful.pdf
 
How to Manage Growth of Tech Team
How to Manage Growth of Tech TeamHow to Manage Growth of Tech Team
How to Manage Growth of Tech Team
 
Design Sprint Methods
Design Sprint MethodsDesign Sprint Methods
Design Sprint Methods
 
What Is Data-Driven Product Development by Aaptiv Senior PM
What Is Data-Driven Product Development by Aaptiv Senior PMWhat Is Data-Driven Product Development by Aaptiv Senior PM
What Is Data-Driven Product Development by Aaptiv Senior PM
 
best-practices-to-develop-software-applications-for-startups- cuneiform.pdf
best-practices-to-develop-software-applications-for-startups- cuneiform.pdfbest-practices-to-develop-software-applications-for-startups- cuneiform.pdf
best-practices-to-develop-software-applications-for-startups- cuneiform.pdf
 
Software Development Process.pdf
Software Development Process.pdfSoftware Development Process.pdf
Software Development Process.pdf
 
Ben Mkt 347 Week 4
Ben Mkt 347 Week 4Ben Mkt 347 Week 4
Ben Mkt 347 Week 4
 
Scrum master basics
Scrum master basics Scrum master basics
Scrum master basics
 
Microsoft + Agile (light)
Microsoft + Agile (light)Microsoft + Agile (light)
Microsoft + Agile (light)
 

Software Development Craftsmanship

  • 1. Mike Dunn 2013.04.17 Software Craftsmanship: An Often Ignored Focus
  • 2. Mike Dunn 2013.04.17 Status Quo We are deluged with information about how to improve software product creation and delivery by using different development methodologies for: ● Teams and/or ● Organizations and/or ● Companies
  • 3. Mike Dunn 2013.04.17 Status Quo ● Different software creation methodologies are supported by a plethora of training programs. ● There are training programs that focus at different levels:  Organization  Team or Project ● There are also a considerable number of role focused training programs.
  • 4. Mike Dunn 2013.04.17 Status Quo ● So what is missing?? ● How about Software Craftsman1 training?? ● How about Software Craftsman1 emphasis?? ● Yes, we have role level training. ● Yes, Watts Humphrey's PSP does exist. ● But, how many software developers really understand the software development craft?? 1 To those members of the political correctness brigade, I prefer the traditional gender neutral usage of the word craftsman. Just because a word ends in 'man' does not make it a male reference – like the word woman.
  • 5. Mike Dunn 2013.04.17 Status Quo ● Do software developers consider themselves to be craftsmen?? ● My limited anecdotal analysis says most do not. ● The majority of software developers desire to produce high quality work products. ● The majority of software developers are capable of delivering higher quality work products. Let us explore.
  • 6. Mike Dunn 2013.04.17 Status Quo ● First, let us review one of the key elements of any system with variable inputs and actions – feedback. ● If one looks at any successful quality system, it is obvious that it is a closed loop system making feedback the critical factor. ● To be effective, feedback should be captured and recorded in a timely manner and then analyzed.
  • 7. Mike Dunn 2013.04.17 Status Quo ● Now let us take a look at an example sequence:  Developer analyzes some requirements and creates an estimate.  Developer writes tests [in some cases], implements the requirements, tests the implementation and delivers the work products.  Developer performs instant self assessment – “I got close”, “oops, I missed it”, etc. ● And what gets captured, recorded, and analyzed??
  • 8. Mike Dunn 2013.04.17 Status Quo ● Most developers operate in near open loop mode, focusing primarily on inputs and outputs and occasionally using recent coarse feedback with minimal analysis. ● The primary feedback used by most software developers is compiler errors and test failures. ● If one were to identify most developer's corrective methodology as a personal quality system, it would be classified somewhere between ad hoc and reactive. Why is this the case??
  • 9. Mike Dunn 2013.04.17 Status Quo ● The initial cause is education and training. ● Students aspiring to become software developers are not taught that their ideal skill set is a craft that can become predictable and be continuously improved. ● Software developer interns and new hires are not shown or taught that their ideal skill set is a craft that can become predictable and be continuously improved. How are they to learn??
  • 10. Mike Dunn 2013.04.17 Status Quo While there are some star software developers and some pockets of a craftsman culture, where is the encouragement and momentum for software developers to take a craftsman approach to software development by using a closed loop personal quality system??
  • 11. Mike Dunn 2013.04.17 Post Status Quo If we look at the activities of a software developer and apply the same processes that a modern software development team would use, each developer would have a precise set of metrics that could be used for continuous improvement of their craft. The ideal solution is a formal process similar to Watts Humphrey's Personal Software Process (PSP).
  • 12. Mike Dunn 2013.04.17 Post Status Quo It is time for folks to step up and proactively promote the concept of a Software Craftsman. Software Craftsmen use a closed loop personal quality system that uses historical data analysis, metrics, and personal performance data to continuously improve their work products. This will bolster the foundation of software development teams.
  • 13. Mike Dunn 2013.04.17 A Possible Software Craftsman Path ● The journey to becoming a Craftsman begins by becoming an Apprentice, working under the close supervision of a Craftsman or Master Craftsman. ● The next stop along the way is to become a Journeyman, working under the loose supervision of a Craftsman or Master Craftsman. ● Next step is to become a Craftsman under the guidance of a Master Craftsman. ● Software Master Craftsman are the experts.
  • 14. Mike Dunn 2013.04.17 Software Craftsman Journey ● Apprentice level concepts should be included early in any software developer education. ● Concepts like personal discipline to plan and assess one's own activities. ● The beginning could be as simple as keeping a personal journal with specific logic points of data entry and review.
  • 15. Mike Dunn 2013.04.17 Software Craftsman Journey ● Software development education should deliver a Journeyman capable of: ● Delivering work products with supervision. ● Using internalized processes for planning, assessing, developing, testing, evaluating,and improving their personal work products. ● The internalized processes are based on principles that are adaptable to different methodologies.
  • 16. Mike Dunn 2013.04.17 Commentary ● The purpose here is not to propose a specific methodology, but to raise awareness for the need. ● The reference concept of Craftsman may be lost on today's generation – we can call it IGCSWWP2 or whatever. ● We just need to increase the emphasis and inertia of solid individual development principles. 2 – InterGalactic Creator of SoftWare Work Products.
  • 17. Mike Dunn 2013.04.17 Status Quo No More?? ● Yes, some developers function as Software Craftsmen. ● Yes, there are software groups that promote, encourage, and train Software Craftsmen. ● But the momentum for individual Software Craftsmanship pales in comparison to all of the hype and hoopla for various team and project methodologies that are being promoted. ● Can some of the momentum be redirected??