Featured Whitepapers
- Apples, Oranges, and Acorns - All Agile Development Tools Are Not the Same
- One's Enough for Agile Application Development Management
- Requirements Management 101 – 4 Basics Everyone Should Know
- Tips on Requirements Traceability – Learn How to Control Change and Improve Quality
- Scaling Continuous Integration to Large and Distributed Teams
|
Have you noticed how some organizations claim to be Agile … but when you peel back the layers they’re really a Waterfall shop with aspirations to become Agile? For the last three years, I have been working for a Chicago-based IT consulting firm that specializes in custom software development. As a consultant, I’ve found that we often end up using the methodology that is in place at the client site but, when given the choice, I usually chose Agile over Waterfall methods. However, the reality is that most development organizations are still Waterfall shops. So why do so many organizations aspire to become Agile yet are still only implementing a few aspects of it? Most likely, they’re not given enough time to plan the process of becoming Agile. Or, it may be because Agile is usually introduced by the development community in a bottom-up style that isn’t understood or appreciated from the top-down. Regardless, many teams end up implementing a hybrid methodology. Hybrid approaches to solving problems are not all bad. Case in point: The auto industry needs to find alternatives to high gas prices and knows that the market is ready for an electric car. However, they started with a hybrid car, known as the Toyota Prius, before introducing a full electric version like the Chevy Volt. So perhaps the reality on how we make that quantum leap to full Agile development starts with a journey that begins with a hybrid approach. I created a new term to describe Waterfall shops that either aspire to be Agile or are in the transition process. I call these shops “WetAgile”. Individual people can also be described as WetAgile. For example, perhaps you’re an aspiring Agile guru doing so many Waterfall projects that you find yourself implementing the pieces of Agile that you most understand or believe your Waterfall team can easily embrace. When I look back at some of my own most productive teams, they all had one thing in common: Each project team was using one or more aspects of Agile. Paired Programming Works Great for Both Newbies and New Technologies The traditional approach to bringing a project newbie up to speed is to ask them to read technical documentation and ask them to check back in a few hours later. Hands-on learning via paired programming and having someone available to answer questions is far more productive in the long run because most of us learn faster by doing than reading. Bite Size Chunks Go a Long Way Short sprints include regular development build and releases that continue until the business sponsor agrees that the cycle is complete. Depending on the size of the project, weekly development cycles (or in some cases bi-monthly releases) is preferable. These short sprint cycles are easy to implement and readily embraced because progress is transparent and large projects can be broken down into bite size chunks. And most importantly, if you’re fully engaging the business in the development cycle, the immediate feedback is invaluable. Continuous feedback between the business and the project team provides provide visibility into the progress of the project and is also instrumental in course correcting the team. We’ve all seen what happens when feedback doesn’t exist -- “That’s what I asked for but not what I wanted”. Getting it Done, Done, Done Development Done, QA Done and Business Done is easy to explain and something that everyone understands. Too often the developer calls a task done and progress is reported to an oversight team. The oversight team interprets this to mean that the end result is near when, in fact, there are two more levels of done to achieve. We all want to deliver the good news that we’re making progress on our tasks and the end is in sight. As a result, we often prematurely call something done when it is only partially done. So the next time a developer tells you their tasks are done, ask if QA or the business would agree. Once everyone understands done, done, done, and we’re all using the same terminology, communication is improved. This has a positive impact on the team culture and business results. Because the word “done” can have different meanings for different people, it’s important that IT and the business establish a shared common language to improve communication and foster better relationships.
The Business Value of Storyboards For example, a recent client needed to design a marketing program that included a new user interface. The project team consisted of approximately eight business users and a handful of representatives from IT. We broke the team into two groups of four and paired them up with a business analyst. The teams were then asked to use blank sheets of paper and draw screens which included pick lists, drop down values, text boxes and links to other screens. Next, they placed the screens in the order of how they envisioned them flowing. When the teams completed the exercise, we taped the screens onto a white board in the specific order with one design above the other. The two teams then reviewed both designs along with a group discussion. In just two hours, we reached agreement on a set of screens that we could hand over to the IT team to begin breaking down requirements and estimates. This seemingly simple process of storyboarding the user interface gave the IT team clarity that was needed to accurately estimate the size and effort of what they wanted. All-in-all, the storyboarding process was highly effective in reaching alignment with the business because it provided valuable insight for the overall vision. While engaging the business in face-to-face meetings to flush out design is productive, it can also get tricky. Typically, everyone embraces the idea of just-in-time design or just- in-time requirements. However, as the project progresses, the business frequently becomes less available to participate in design sessions and the methodology begins to breakdown. The trick is to keep the business engaged during the storyboarding exercise and focus on capturing the intent of what they want built. Don’t attempt to storyboard everything in one session. Rather, break the work into manageable pieces and you’ll position the team for more successful outcomes. Half-day sessions are much more effective than full day sessions because the group will either lose focus or begin to worry that they are away from their regular jobs for too long. If you can manage to keep the business engaged during the white boarding exercise you’ll find it easier to keep them engaged through the remainder of the project. Business Integration Builds Trust One way to measure whether you’ve achieved the required level of integration is to evaluate the trust that exists between IT and the business. If the necessary level of trust is not there, take the necessary steps to improve the relationship. Characteristics of a highly trusted relationship include increased levels of business productivity and a feeling as though the project team has captured the intent of the business need. Once intent is captured, the relationship will begin growing in a positive direction. Regardless of the techniques you use, the end goal should be to predictably deliver business results and avoid an IT driven solution. Too often, the business asks IT to solve a problem by a particular date. Then, they let IT design the solution only to comment later, “That’s not what I wanted!” Conclusion For example, if you decide to not implement paired programming you may need to increase the amount of testing hours. Or, if you decide to not implement code refactoring during a development cycle because the overall design is not extendable, you may need to add additional time to the end of the project or an additional phase of the project after the production release. All in all, the play list of the best of Agile includes short development sprints; paired programming; done / done/done; story boarding and integration with the business. Before beginning your next project, consider how Agile techniques can help you achieve the ability to:
Think of WetAgile as the ala-carte method of picking the components of Agile that you either understand or think you can easily implement in a Waterfall shop. Keep in mind that as you take on more projects, you’ll most likely be able introduce more and more concepts of Agile and eventually become the Agile shop that you aspire to become. Somebody once asked me “have you managed an Agile project team?” to which I responded, “I did one better, and I managed a WetAgile team.” About the Author
Steve Pieczko has more than thirteen years experience managing custom software development and implementing packaged products. With a career largely dedicated to the advancement of best practices that leverage the PM’s ability to predictably deliver business value, he has expertise in Financial Services, Telecommunications, Education, Healthcare, Transportation and Insurance. Today, Steve works with Geneca’s enterprise clients to help them achieve business/IT alignment, predictability and clarity. Steve has an MS in CS from DePaul University. Contact Steve at: Steve.Pieczko@geneca.com Trackback(0)Comments (5)
|
Agile Marketplace - Announcements and Special Offers
The Business Case for ALM Transformation
Are legacy systems holding your company back? Breakthrough these technical constraints with an open and scalable environment that meets your unique business need to transform. There is no reason to be locked into an obsolete platform. The output of a number of recent transitions from legacy systems, this is practical white paper shares lessons learned and illustrates how guidance and enablement can pave the way for change.
Download this Whitepaper


“The journey to full agile development often begins with a hybrid approach” - Steve Pieczko 

I do very much like the term WETAGILE, but let’s all be careful in saying we are "only Agile like" if we are not a purest Scrum or XP shop... With that said excellent thought provoking article!