Don’t you wish that headline was true? It’s not. There is no easy button for enterprise software development. Building software applications is a dichotomy (or worse) when it comes to the time required. Building a small standalone software application with a narrow scope is easy. Many of us have done it — often in a […]
Month: July 2012
Stop Managing. Start Leading. Be Agile.
Managers: Want your company to be more agile? Learn to let go! Managers are trained to maintain control. Their annual reviews reinforce the need to make good decisions and stay in control. And then along comes agile software development. There’s an immediate and harsh conflict. Agile teams need to take control. They can’t be agile […]
Undo Is a Software Feature That Agile Teams Should Embrace
Most software applications include an “undo” feature. It’s great, isn’t it? You can change something and if you don’t like the result, simply undo it. How cool is that! Wouldn’t it be equally cool if software development teams could implement changes to software applications and if the users don’t like them, undo? This would be […]
User Stories and Security Stories Are Not the Same
The folks over at the non-profit group, Software Assurance Forum for Excellence in Code (SAFECode) have published a great document called “Practical Security Stories and Security Tasks for Agile Development Environments”. Here is the direct link to the PDF file. It’s a 34-page document that undoubtedly required a lot of work by a number of […]
Follow a Recipe to Succeed With Agile Software Development
When top consultants engage new clients, they offer ideas and suggestions to get started. A phrase that the consultants listen for from the client is something like “we tried that once before” or “we already did that”. It’s a comment that begs for probing questions. “What exactly did you try?” “What results did you observe?” […]
Fail to Fail and You’ll Fail to Improve
There are two critically important elements to agile software development that are often either overlooked or ignored. Continuous Improvement A Willingness to Fail Any team committed to being agile will seek continuous improvement through regular retrospectives. There’s always room for improvement. Who among us believes that he is the best he can be — there’s […]
Are You a Software Development Extremist?
Some of us tend toward extremism. It manifests itself in many ways in both our personal and professional lives. It could appear in the clothes we buy, the cars we drive, the way we work, or the way we look. In many situations, we’re not even aware that we’re extremists. In software development, there are […]
The Advantages of Distributed Software Development Are Enticing
Distributed software development teams are becoming more common. There are some good reasons for it. Here are a few: Access to potentially lower cost talent Ability to attract highly-specialized and hard-to-find talent Outreach to a larger and more diverse labor pool Advantages of an extended work day via time differences The potential benefits are enticing […]
User Stories Need To Be Viewed From Multiple Perspectives
What the stakeholders and end users don’t want is just as important as what they do want. This is especially true of upgrades or enhancements to existing systems. It’s common to get caught in the flow of the existing design and to just keep doing more of the same. Here’s an example. Let’s say your […]
Avoid the Extremes of Software Development; They’re Not Agile
Large enterprises have lots of rules — do this, don’t do that, ad nauseum. Thus, it’s no surprise that software development teams in large enterprises are forced to follow lots of rules — document this, approve that, wait for something else. Then, along come the agilists promising a better way. You can build software systems […]
Incomplete Software Iterations Put Everything At Risk
Project iterations or sprints are not an excuse to cobble together some software and toss it over the wall to the end users and stakeholders. This happens because the team knows the software isn’t done yet. If it doesn’t work properly or isn’t what the users want, the team will fix it in future iterations. […]
In Agile Software Development, Context Really Matters
Mark Mansour over at Agile Bench published a blog post titled “10 Agile Bloggers You Should Know About, But Don’t”. It’s worth reading. (Please note: In the interest of full disclosure, this BrainsLink blog appears in the post.) A phrase in Mark’s post got my thinking. There are several lists of top agile bloggers around, […]
Software Teams Have to Manage Scarcity to Be Successful
Scarcity is fact of life. There’s never enough time or money to complete a software project — and that’s only the beginning. Every project runs out of something it critically needs. Here are a few things you might not have enough of: Time Money People Computers Storage Space Network Bandwidth Software Licenses Office Space Chairs […]