First of all, I’m gonna write about how the project I’m working was conducted until I've started to learn and use some agile practices, and what had changed since then.
The purpose of the project I'm working on is to develop a framework to spread forecast data through Web Services, in a easy way to provide answers for the frequent asked questions made by the people interested (TV channels, universities etc.). My project started on January 2010, as usual, with lots of work. In the beginning we had to set all the development environment, like the application server, IDE, DBMS to be used and so on. None of our tasks were organized, prioritized as they should be. We had lots of work, but not an established deadline, defined responsibilities or some point that gives us a right way to follow, a sequence to do the tasks. Additionally, the code we wrote was full of bugs (mainly because the design and lack of tests TDD) had lots of bugs and the classes had lots of useless methods. I had just a little experience with software development that time, and a basic knowledge with programming; that’s the reason why I didn’t get start since then to use good practices to make my project better.
I have worked with some senior developers which give more value to the quantity of work than the quality of it…So, in these situations, the product is a code non tested with lots of defects (until now it’s been hard to make their minds to use a test suite in order to reduce the bugs and improve the quality), non established goals (like a unknown amount of work for a long term) and a non continuous integration environment (which results in troubles and unnecessary work on the time to deploy).
By using some of the agile best practices, like making a list of deliverables, setting deadlines, priorities, working in pair and using the WIP (Work in Progress) limit (from Kanban template for software development), we had some improvements that make our work more organized and productive, besides it has helped us to have more focus in our activities.
My goals for the next year are to set up the continuous integration environment and our test suite to do some user acceptance tests (UAT), now to improve the quality of our final product.
Congratulations for the initiative
ReplyDelete