Skip to main content

Changing Software Development: Learning to Become Agile



Changing Software Development: Learning to Become Agile

Allan Kelly

ISBN: 978-0-470-72531-3 February 2008 258 Pages

Download Product Flyer

Download Product Flyer

Download Product Flyer is to download PDF in new tab. This is a dummy description. Download Product Flyer is to download PDF in new tab. This is a dummy description. Download Product Flyer is to download PDF in new tab. This is a dummy description. Download Product Flyer is to download PDF in new tab. This is a dummy description.


Changing Software Development explains why software development is an exercise in change management and organizational intelligence.  An underlying belief is that change is learning and learning creates knowledge.  By blending the theory of knowledge management, developers and managers will gain the tools to enhance learning and change to accommodate new innovative approaches such as agile and lean computing.

Changing Software Development is peppered with practical advice and case studies to explain how and why knowledge, learning and change are important in the development process.  Today, managers are pre-occupied with knowledge management, organization learning and change management; while software developers are often ignorant of the bigger issues embedded in their work.  This innovative book bridges this divide by linking the software world of technology and processes to the business world of knowledge, learning and change.



1 Introduction.

1.1 Why read this book?

1.2 Who are software developers?

1.3 Software developers are knowledge workers.

1.4 Drucker’s challenge.

1.5 Prototype of future knowledge workers.

1.6 Software: embedded knowledge.

1.7 Authority and leadership.

1.8 Practical theory.

1.9 Begin with yourself.

1.10 Book organisation.

2 Understanding Agile.

2.1 Roots of Agile thinking.

2.2 Positioning Agile.

2.3 Common practices of Agile teams.

2.4 Applicability outside of software development.

2.5 Conclusion.

3 Knowledge.

3.1 The difference between Knowledge and Information.

3.2 Knowledge into action.

3.3 Explicit and Tacit knowledge.

3.4 Sticky knowledge.

3.5 Problems with knowledge.

3.6 Where is knowledge in software development?

3.7 Knowledge creations.

3.8 Conclusion.

4 Learning.

4.1 Three knowledge domains.

4.2 Developing software is learning.

4.3 Learning benefits your business.

4.4 Learning theories.

4.5 Learning, change, innovation, problem solving.

4.6 The role of leaders.

4.7 Seed learning.

4.8 Conclusion.

5 The learning organisation.

5.1 Defining the learning organisation.

5.2 The infinite and the finite game.

5.3 Layers of the organisations.

5.4 Learning in practice: Senge’s view.

5.5 Blocks to learning.

5.6 Conclusion.

6 Information Technology – the bringer of change.

6.1 Change.

6.2 Benefits of technology change.

6.3 Change is what IT people do to other people.

6.4 Software projects fail: why are we surprised?

6.5 Change starts with business requirements.

6.6 Conclusion.

7 Understanding change.

7.1 Defining change.

7.2 Change spectrum.

7.3 Radical change.

7.4 Routine change in software development.

7.5 Continuous improvement.

7.6 Charting a course.

7.7 Internal and External forces for change.

7.8 Conclusion.

8 Change models.

8.1 Learning and Change.

8.2 Lewin’s change theory.

8.3 Satir’s theory of change.

8.4 Kotter.

8.5 Theory E and Theory O of change.

8.6 Appreciative inquiry.

8.7 Models, models, models.

8.8 Motivating change.

8.9 When not to change.

8.10 Conclusion.

9 Making change happen.

9.1 Build a case for change.

9.2 Slack in action: make time and space for learning and change.

9.3 Leading the change.

9.4 Create feedback loops.

9.5 Remove barriers.

9.6 Conclusion.

10. Individuals and empowerment.

10.1 Involve people.

10.2 Coaching.

10.3 Empowerment.

10.4 That difficult individual.

10.5 Developing the next leaders.

10.6 Time to go.

10.7 Conclusion.

11. Rehearsing tomorrow.

11.1 Future memories.

11.2 Planning.

11.3 Change events.

11.4 Outsiders.

11.5 Conclusion.

12 New beginnings.

12.1 The change problem.

12.2 Bottom-up over top-down.

12.3 Begin with yourself.

12.4 Making learning happen.

12.5 Create a vision, draw up a plan.

12.6 Three interlocking ideas.

12.7 Change never ends.

12.8 Conclusion.

Further reading.

Agile and Lean software development.



Learning and Change.

Futher Reading.