# Lessons learned from one agile project

DevFeed: [Lessons learned from one agile project](<https://devfeed.tech/articles/lessons-learned-from-one-agile-project-30358.md>)

Original publisher: [Read original article](<https://www.mdubakov.com/posts/lessons-learned-from-my-first-xp-project/>)

Published: 2004-07-23T15:41:57Z

Content type: opinion

Language: en

Sources: [Blog by Michael Dubakov](<https://devfeed.tech/sources/blog-by-michael-dubakov.md>)

Topics: [Agile](<https://devfeed.tech/topics/agile.md>), [Test-driven development](<https://devfeed.tech/topics/tdd.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [Perl](<https://devfeed.tech/topics/perl.md>), [unit tests](<https://devfeed.tech/topics/unit-tests.md>), [Refactoring](<https://devfeed.tech/topics/refactoring.md>)

Tags: [agile](<https://devfeed.tech/tags/agile.md>), [perl](<https://devfeed.tech/tags/perl.md>), [project](<https://devfeed.tech/tags/project.md>), [refactoring](<https://devfeed.tech/tags/refactoring.md>), [tdd](<https://devfeed.tech/tags/tdd.md>), [testing](<https://devfeed.tech/tags/testing.md>), [unit-tests](<https://devfeed.tech/tags/unit-tests.md>)

## AI overview

A retrospective on a small Perl project that used XP-style planning, two-week iterations, customer feedback, concise communication for managers, test-driven development, and acceptance tests. The author concludes that iterative planning, client involvement, TDD, and acceptance testing were useful, while noting uncertainty about testing controllers and instability in the SAMIE tool.

## Source excerpt

I've manage one small project (3 developers - 6 months planned). Project was canceled due to some reasons (project progress was great, so the reasons are not in development :-). I briefly describe here what we've tried and what was useful for us. I think this information will be interesting. This is real example after all. The project was on Perl. XP-style Planning. Small 2 weeks iterations. Small iteration helps to track project progress and create better estimates. Planning is quite easy and can be done in Excel without sophisticated tools like MS Project. We are going to use XP-style planning in future for high-risk projects (with new technologies, new team, or whatever make project risk high). Sure, web based tool for XP-planning can help. Customer Feedback. Manage a project without client representative is a hell on the earth. You are working like in a vacuum. No response, no feedback and no attention. You can't establish rapport with client, and there is a chance that system will not satisfy client expectations. And sure it won't. Project Manager must make every effort to get a person from the client side for feedback. Info for Top Managers. All information for top managers should be in a short and clear form. Do not send 20 pages requirements docs or lengthy emails. Top managers do not have enough time to read such docs. It is better to extract most important features and ideas at a single page and attach full document to be on the safe side. Phone Calls. Phone calls are much better than emails or IMs. Sure, phone is impolite and it is hard to clear express your thoughts, but, anyway, phone is better. Many issues can be resolved faster and easier. Test-Driven Development. We wrote unit tests for all business objects in BigEye before code, and it worked great. However, we did not have tests for controllers. Controllers are very close to GUI and they changed often (during first month). Maybe we should write unit tests for controllers as well, maybe not. This is