Your SlideShare is downloading. ×
Knowledge - Key to effective software development
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Knowledge - Key to effective software development

705
views

Published on

Software development is all about acquiring knowledge. Most companies however lack an understanding of how knowledge creation happens, and focus only (if at all) on the sharing of explicit …

Software development is all about acquiring knowledge. Most companies however lack an understanding of how knowledge creation happens, and focus only (if at all) on the sharing of explicit knowledge.

In this presentation I describe a model for understanding how knowledge creation happens, and give examples of activities and principles we can follow that helps us improve our efforts in all aspects of knowledge creation.

Published in: Business, Education

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
705
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
13
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • \n
  • Ground breaking article, started Knowledge Management field. Nonaka, with Takeuchi, wrote The New New Product Development Game in 1986, which led to Scrum.\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • How can anybody claim that building software is about writing code?\n
  • Phil Armour. The hard part in building software is not building it (coding), it is knowing what to do and how to do it. Coding is simply the mechanism used to capture knowledge.\n
  • What is the constraint in software development?\n
  • \n
  • \n
  • (Shared) knowledge prevents bugs, removes bottlenecks, improves effectiveness\n
  • \n
  • How can we improve knowledge-acquiring? It happens by itself to an extent, but not enough.\n
  • Knowledge sharing takes time away from grinding at the keyboard. Courses and books cost money. If it becomes a question of budget you have lost.\n
  • Budgets only focus on sharing explicit knowledge. We forget the continuous sharing of tacit knowledge.\n
  • With knowledge creation happening continuously and holistically there is nothing stopping us!\n
  • To understand where we need to improve our efforts we need a model of how knowledge creation happens.\n
  • In The Five Orders of Ignorance Phillip Armour talks about ignorance as the flip-side of knowledge. Acquiring knowledge is the same as reducing ignorance. 0OI is lack of ignorance, 1OI is lack of answer, 2OI is lack of question, 3OI is lack of process, 4OI is meta ignorance. 3OI is where methodologies, processes and models come in.\n
  • In The Five Orders of Ignorance Phillip Armour talks about ignorance as the flip-side of knowledge. Acquiring knowledge is the same as reducing ignorance. 0OI is lack of ignorance, 1OI is lack of answer, 2OI is lack of question, 3OI is lack of process, 4OI is meta ignorance. 3OI is where methodologies, processes and models come in.\n
  • We value databases of information. Make it searchable, findable, attainable. Have policies about codifying knowledge, and sharing it.\n
  • Work with the people, as bearers of knowledge. Focus on personal relations, networks and meeting places for tacit knowledge to manifest.\nBoth perspectives are important, but it is easy to focus only on codifying knowledge with movement of employees etc. This is a fallacy though, lots of knowledge does not lend itself to codifying.\n
  • Masters essay in informatics, Maria Håkansson and Frida Wedefelt, Göteborgs Universitet, 2003\nA: Easy, competence efforts.\nB: Medium, though most people like to share. Work continuously.\nC: Easy, focused efforts.\nD: Very difficult. People must want to learn. Cultural. Work continuously.\nE: Easy if you want it. Give space & time.\n
  • Masters essay in informatics, Maria Håkansson and Frida Wedefelt, Göteborgs Universitet, 2003\nA: Easy, competence efforts.\nB: Medium, though most people like to share. Work continuously.\nC: Easy, focused efforts.\nD: Very difficult. People must want to learn. Cultural. Work continuously.\nE: Easy if you want it. Give space & time.\n
  • Masters essay in informatics, Maria Håkansson and Frida Wedefelt, Göteborgs Universitet, 2003\nA: Easy, competence efforts.\nB: Medium, though most people like to share. Work continuously.\nC: Easy, focused efforts.\nD: Very difficult. People must want to learn. Cultural. Work continuously.\nE: Easy if you want it. Give space & time.\n
  • Masters essay in informatics, Maria Håkansson and Frida Wedefelt, Göteborgs Universitet, 2003\nA: Easy, competence efforts.\nB: Medium, though most people like to share. Work continuously.\nC: Easy, focused efforts.\nD: Very difficult. People must want to learn. Cultural. Work continuously.\nE: Easy if you want it. Give space & time.\n
  • Masters essay in informatics, Maria Håkansson and Frida Wedefelt, Göteborgs Universitet, 2003\nA: Easy, competence efforts.\nB: Medium, though most people like to share. Work continuously.\nC: Easy, focused efforts.\nD: Very difficult. People must want to learn. Cultural. Work continuously.\nE: Easy if you want it. Give space & time.\n
  • Masters essay in informatics, Maria Håkansson and Frida Wedefelt, Göteborgs Universitet, 2003\nA: Easy, competence efforts.\nB: Medium, though most people like to share. Work continuously.\nC: Easy, focused efforts.\nD: Very difficult. People must want to learn. Cultural. Work continuously.\nE: Easy if you want it. Give space & time.\n
  • Masters essay in informatics, Maria Håkansson and Frida Wedefelt, Göteborgs Universitet, 2003\nA: Easy, competence efforts.\nB: Medium, though most people like to share. Work continuously.\nC: Easy, focused efforts.\nD: Very difficult. People must want to learn. Cultural. Work continuously.\nE: Easy if you want it. Give space & time.\n
  • Masters essay in informatics, Maria Håkansson and Frida Wedefelt, Göteborgs Universitet, 2003\nA: Easy, competence efforts.\nB: Medium, though most people like to share. Work continuously.\nC: Easy, focused efforts.\nD: Very difficult. People must want to learn. Cultural. Work continuously.\nE: Easy if you want it. Give space & time.\n
  • Masters essay in informatics, Maria Håkansson and Frida Wedefelt, Göteborgs Universitet, 2003\nA: Easy, competence efforts.\nB: Medium, though most people like to share. Work continuously.\nC: Easy, focused efforts.\nD: Very difficult. People must want to learn. Cultural. Work continuously.\nE: Easy if you want it. Give space & time.\n
  • Masters essay in informatics, Maria Håkansson and Frida Wedefelt, Göteborgs Universitet, 2003\nA: Easy, competence efforts.\nB: Medium, though most people like to share. Work continuously.\nC: Easy, focused efforts.\nD: Very difficult. People must want to learn. Cultural. Work continuously.\nE: Easy if you want it. Give space & time.\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • You cannot control knowledge creation, especially the tacit knowledge. Incentives only hurt. Create an environment where knowledge creation can thrive, and it will.\n
  • The Japanese word ba, meaning “place”, is used when talking about the environment work happens in. It has physical, virtual and cultural aspects. Work on all!\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Transcript

    • 1. KnowledgeThe key to effective software development Chris Hedgate @chrishedgate chris@hedgate.net http://www.hedgate.net/
    • 2. In an economy where the only certainty is uncertainty, the onesure source of lasting competitive advantage is knowledge. Ikujiro Nonaka The Knowledge-Creating Company Harvard Business Review, 1991
    • 3. Write code
    • 4. “Fake” example Google it Copy-paste Try yourself similar Ask an expert What code? Get time Write code from expert... New technology?
    • 5. Policies? Avoid performance issues“Fake” example Follow policies Write Google it “correct code” Copy-paste Try yourself similar Which solution? Ask an expert What code? Get time Write code from expert... New technology?
    • 6. Ask the architect Read docs Policies? Understand design Avoid performance issues“Fake” example Follow policies Find the right place Understand existing code Write Google it “correct code” Where in code base? Copy-paste Try yourself similar Which solution? Ask an expert What code? Get time Write code from expert... New technology?
    • 7. Ask the architect Read docs Policies? Understand design Avoid performance issues“Fake” example Follow policies Find the right place Understand Am I allowed? existing code Write Do I have Google it “correct code” necessary rights? Where in code base? Modify Copy-paste Try yourself existing code similar Which solution? Ask an expert What code? Get time Write code from expert... New technology?
    • 8. Ask the architect Read docs Policies? Understand design Avoid performance issues“Fake” example Follow policies Find the right place Understand Am I allowed? existing code Write Do I have Google it “correct code” necessary rights? Where in code base? Modify Copy-paste Try yourself existing code Talk to similar Which solution? customer Which customer? Ask an expert What code? Which problem? Get time Write code Specs? from expert... New Understand specs technology?
    • 9. Integrate?!?
    • 10. | Software development is a knowledge-acquiring activity Photo from benchilada’s Flickr stream http://www.flickr.com/photos/benchilada/2467805788/
    • 11. | Improve effectiveness by removing constraints
    • 12. Hypothetically One team works for 12 months on a product
    • 13. Hypothetically One team works for 12 months on a productStart over! Same team, same product and same technology
    • 14. Hypothetically One team works for 12 months on a productStart over! Same team, same product and same technology How long?
    • 15. | Learning is the #1 constraint in software development
    • 16. | Learn early! Photo from Wayan Vota’s Flickr stream http://www.flickr.com/photos/dcmetroblogger/3297731157/
    • 17. | Challenge - Our knowledge-acquiring efforts lacks a plan
    • 18. | Knowledge sharing costs time and money
    • 19. | Mostly focused on sharing explicit knowledge Photo from margolove’s Flickr stream http://www.flickr.com/photos/margolove/1252522330/
    • 20. | Goal - Continuous and holistic knowledge creation
    • 21. | A complete model for knowledge creation
    • 22. Phillip G. Armour The Five Orders of IgnoranceCommunications of the ACM, October 2000
    • 23. “The way we learn is to discover what we don’t know we don’t know,make it something we (just) don’t know, then make it something we know.” Phillip G. Armour The Five Orders of Ignorance Communications of the ACM, October 2000
    • 24. “The way we learn is to discover what we don’t know we don’t know,make it something we (just) don’t know, then make it something we know.” “Without a method for discovering what we don’t know we don’t know, it’s a problem we’ll never solve.” Phillip G. Armour The Five Orders of Ignorance Communications of the ACM, October 2000
    • 25. | Knowledge-as-objects is a codifying perspective
    • 26. | Knowledge-as-relations is a personalizing perspective
    • 27. | Effective knowledge transfer
    • 28. | Effective knowledge transfer A Value of sender’s knowledge base
    • 29. | Effective knowledge transfer Motivation of sender to share A B Value of sender’s knowledge base
    • 30. | Effective knowledge transfer Motivation of sender to share A B C Value of sender’s Availability of knowledge base transmission channels
    • 31. | Effective knowledge transfer Motivation of Motivation of sender to share receiver to receive A B C D Value of sender’s Availability of knowledge base transmission channels
    • 32. | Effective knowledge transfer Motivation of Motivation of sender to share receiver to receive A B C D E Value of sender’s Availability of Absorbation capacity knowledge base transmission channels at receiver
    • 33. | Value activities and roles that builds knowledge
    • 34. V (D) = LIS(D)
    • 35. The SECI model of knowledge creation
    • 36. Socialization I I
    • 37. Socialization Externalization I I I I I G I I I
    • 38. Socialization Externalization I I I I I G I I I Combination G G O G G
    • 39. Socialization Externalization I I I I I G I I IInternalization Combination G O G G O G I G
    • 40. Tacit TacitTacit Socialization Externalization ExplicitTacit Internalization Combination Explicit Explicit Explicit
    • 41. | Create an environment for knowledge creation
    • 42. | The ba - a physical, virtual and cultural place
    • 43. Socialization Conversation Pairing Morning meetings Water cooler Sit together Music
    • 44. CodificationRetrospectives ExternalizationCode reviewsWhiteboardsInformation radiatorsDocumentationPresentationsBrownbag lunchesCode labs
    • 45. ReuseScrum-of-scrumsWikisCoding guidelinesPlanning meetingsDemos and reviewsPatterns Combination
    • 46. Learning Mentorship Pairing Information radiators Study groupsInternalization
    • 47. What do your ba look like?• What activitities/things do all of you do?• Which is the most innovative example?• What would you like to do?
    • 48. | Make knowledge creation your main focus
    • 49. Q: What if I train staff and they leave? A: What if you don’t, and they stay? Twitter (attribution unknown)

    ×