This post originated from an RSS feed registered with Java Buzz
by Fred Grott.
Original Post: Agile Assembled Assholes
Feed Title: ShareMe Technologies LLC-The Mobile Future
Feed URL: http://www.jroller.com/shareme/feed/entries/rss
Feed Description: A Weblog about Java programming and digital convergence on mobile devices in such areas as P2P and collaborative technology.
Fair warning, this is a rant about the Agile Process and thus I will be using somewhat not nice words. First, the 2 core processes of Agile are feedback and rapid change. It really does not matter what processes yo decide to combine of the set of Agile processes as long as the whole group of processes you choose enable those two features.
In other words daily Scrum does you absolutely no good if feedback and rapid change is not allowed through the changing development process and up the corporate ladder. If you choose to avoid unit testing because you do not like TDD entirely, that is do not even do unit testing after the fact, than you have just killed one-half of the agile process in your development team and etc.
If you by default turn off all ticket feedback integration with IDEs that a normal developer uses than you are also killing one-half of the Agile process, the feedback loop. Why would anybody set-up the default as not enabled if they were supporting Agile?
While not everyone is thrilled by unit testing, it is not necessary to use TDD to enact the feedback process. You could do unit test writing after-the-fact as long as you had some degree of code test coverage. The unit test feedback assures that certain assumptions are tested and that a thinking process is brought to bear on assumptions. Of course, more value is gained if that thought process of writing the unit tests is put in code comments. The value of TDD is documenting the design and assumption thought process.
Some signs of Agile Process is broken:
-No unit testing
-Backlogged Tickets are 3-to-1 when compared to current live milestone tickets that are open.
-Every milestone is late
-Consulting org is afraid to let new potential team members have input
-Feedback from potential new team members is blocked from reaching project management team.
-Functional testing is missing from the web application
Scrum != Agile! If the processes you come up with for your team promote feedback and rapid change than you have a set of processes that are Agile no matter what labels you put on those working processes. And that combination of Agile processes can be different for each different team and project.
Why Agile Assembled Assholes? Mainly, to protect the guilty and it is a play on words.
Think about it what do you get with Agile Assembled Assholes? Sh*t! if you really want to protect yourselves do not use the Agile term and just concentrate on rapid change and rapid feedback and everything will be fine.