Let me first start off by saying that we at Princeton Blue love agile. We practice it daily across our entire portfolio of projects and believe in its benefits. Yet, nothing is perfect. The dirty secret of Agile is that it has many pitfalls. Pitfalls that if not avoided, can create a chaotic, short-sighted mess of your platform.
Maybe you heard that Agile is flexible, nimble, and adapts to the ever changing needs of the business. It’s software development with catlike reflexes. It can continuously improve your application with updates scheduled into infinity with a vision that is always evergreen. OK Stop. Before all the Kool-Aid is gone let’s take a step back and uncover what might be missing and focus on how fixing it.
The Focus on Minutia
Agile is, to its credit, a business driven design process. It relies on end users to communicate their wishes to the development team, who then iterate building those items over time. The primary risk of this approach is that it can be easy to lose sight of the vision and master plan for the project. By placing emphasis on atomizing each individual functional element it is easy to let design integrity sprawl and create a fractured technical foundation.
Only a Quick Win
Rapid development has motivated us towards an imperfect balance. One that weights a desire for increased functionality over a need for platforms that are scalable and easy to maintain. Overtime, it is easy for technical debt to build up. As more features get built, backlogs fill up with these forgotten technical tasks. Items that are under prioritized against their functionality counterparts. This kick-the-can approach to application design may deliver a lot of flash and wow upfront. Yet, it mails a large maintenance headache into the future.
Championing Speed
Although Agile is often applied over the long term. It is by nature a short-sighted process. Teams are often locked into a Sisyphean task of delivering user stories on a tight sprint deadline. Team members are asked to continuously jump between many disparate functional items. Spinning completed items out to project teams that are misled into ranking story points over quality. When it’s always crunch time it’s easy to let requirements and build get sloppy, allowing the immediate pressure of the next sprint demo brush aside aspirations for craftsmanship.
Bringing Common Sense Back to Agile
We are as guilty as anyone of falling prey to the lure of an exciting ideal or buzzword, but here at Princeton Blue we work to actively train our focus on what drives us. Establishing durable and long lasting partnership with our clients by delivering quality solutions that exceed expectations. In part, that means putting a little common sense back into the agile process that we love.
We wanted to retain all the elements that makes Agile great; the collaboration, flexibility, continuous improvement, and transparency. But, apply a simple set guardrails that add a support framework we feel reduces risk and helps deliver a more consistent quality solution.
- Share a Vision: Understanding and embracing your vision for the application. We want to work to understand why you need this application, not just what you want it to do. We strive to reach an understanding of your process and goals so that as we are building the solution we can see it as you would. We aim to set ourselves apart by not being just technology experts to also being your team’s partners as well. Combining our skillsets we intend to collaborate closely with your team to ensure that we can add as much substance and expertise to your requirements as possible to ensure the final product is better than you expected
- Treasure and Protect the Planning Phase: It’s not unheard of to schedule time at the beginning of a project to plan and establish high level goals and understanding, but we see this time as perhaps the most valuable and productive phases of a project that needs to be vehemently protected and embraced. We will help you translate your goals into a crisp outline of your application that we will revisit at the beginning of each sprint to measure both our progress toward our milestones and ensure that we are maintaining the intended course. Throughout the project we will set aside time to come back to this application design and ensure that the foundational structure that is being constructed is done so with an eye towards the future and not just getting lost in the detail of each sprint.
- Learn to Love Quality Control: We won’t sacrifice quality for speed. We instill a rigorous set of technical best practices for our teams that we will ensure are followed, giving you confidence that, even after we leave, you can be sure the application will continue to function and scale as needed. Throughout the project we will schedule routine time to assess, judge, peer review, and create an action plan for remediation, for any quality issues that might impact user experience, scalability, performance, or the ability to maintain the application. In fact we are so devoted to this idea of quality that as we are building your solution we will identify and build out any reusable components or modules and contain them so that you can leverage them freely in future.
Valuable BPM-specific information like this should be shared, no? Share this with your friends and peers. Follow Princeton Blue on Facebook, LinkedIn, Twitter & Google+ to get focused BPM-specific updates.