Essential Skills for Agile Development by Ka Iok Tong

Essential Skills for Agile Development PDF

Essential Skills for Agile Development – This book is a comprehensive, pragmatic tutorial on Agile Development and eXtreme programming, written by a software developer for software developers.

Agile Development, in particular, eXtreme Programming (XP), has been gaining a lot of momentum because it can effectively address the problems plaguing software development such as mis-understanding customers’ requirements, missing deadlines, over-budget, conflicts between customers and developers and poor maintainability of legacy systems.

However, it is so difficult to teach the skills needed to be agile. In 2002, we, the Macau Productivity and Technology Center (CPTTM), started to hold courses on XP and Object Oriented design to teach the skills by hiring a well known software training and consulting company to do the teaching. While the instructor was very professional and instructive and the students were happy, they didn’t acquire the skills taught.

We knew that it was because the concepts involved were abstract and it needed far more exercises for the students to practice in the courses. Therefore, we decided to develop our own training materials. In particular, we selected the 20% of the skills in agile development that deliver 80% of the value, ignoring the other useful but non-essential skills. Then we explained those essential skills in terms of examples and added a lot of real world examples as exercises. After adopting this set of materials, the students really acquired the skills taught.

The book includes the following chapters: (1) Removing duplicate code. (2) Turning comments into code. (3) Removing code smells. (4) Keeping code fit. (5) Take care to inherit. (6) Handling inappropriate references. (7) Separate database, user interface and domain logic. (8) Managing software projects with user stories. (9) OO design with CRC cards. (10) Acceptance test. (11) How to acceptance test a user interface. (12) Unit test. (13) Test driven development. (14) Team development with CVS. (15) Essential skills for communications. (16) Pair programming.

Review – Essential Skills for Agile Development

Definitely a book written by a genuine programming expert for fellow programmers who want to escape from mundane programming. — Brian Iu Ion Tong, member of the Science and Technology Council of the Macao SAR Government.

I am pretty impressed of the first three chapters. I will recommend it to my students and my project members. — Rachid Buamar, Institute of Computer Science III, University of Bonn, Germany.

I’ve read some book about XP. When I read this book, I know I find the right one. — E-Surfer

It offers some very good advice to those that want to learn more about the skills necessary for agile development. — Steve Eichert

This book learns any developer how to apply the skills in Agile Development. Recommended reading for any software developer! — David Boschmans, Project Manager at Compuware

About the Authors

  • Ka Iok ‘Kent’ Tong, has a Master degree in Computer Science from the New South Wales University, Sydney, Australia. He was the winner of the Macao Programming Competition (Open Category) In 1992. He has been involved in professional software development, training and project management since 1993. Since 2002 he has been actively promoting Agile Development in Macao.


Join our Telegram channelJoin Now!!!