Month: October 2011

No Excuses: Be Ready to Deliver What You Promised

Being without electrical power for half the weekend, got me thinking about project teams that run into unexpected obstacles. For example: Third party software components that don’t function as expected Software tools that prove to be insufficient for the tasks. Code modules that cannot perform intended functions as currently implemented. Servers or networks that cannot […]

Don’t Just Respond to Change, Enable It

Being agile is not about responding to change. It’s about enabling change. I know; it sounds like a semantic debate. What’s the difference and why should you care? There’s a world of difference between responding and enabling. When you enable someone you give them the means or the power to do something. When you simply […]

Scrum Works With Virtual Teams Too

One frequently stated “rule” of Scrum that I don’t accept is co-location — having the entire software development team in one place. The arguments are that co-location facilitates communication, speeds interaction, spurs impromptu discussion, and builds camaraderie. I suppose all of those things are true to some degree but it’s not as simple as having […]

Fix One Thing – Just One

Projects often suffer from the same old issues time after time. Fix one thing. Easy to say. Hard to do. I see project after project encounter the same old problems. Do you? Something on the following list perhaps? Lengthy requirements documents that few people read. Functional specifications that simply repeat the requirements. User stories that […]

Overcoming the Top 5 Objections to Open-Source Adoption

There are significant objections to overcome before open-source software can be broadly adopted across an enterprise. These issues aren’t insurmountable, but they need to be adequately addressed before open-source can go head to head with proprietary software. Let’s explore the major objections: Support Availability Functional Limitations Software License Terms Rapid Software Release Cycles Package Roadmaps […]

Software Project Teams Always Face Budget Pressures

Software development teams are constantly under budget pressure regardless of their approach to building software systems. Saving money in areas that don’t impact project outcomes will free up funds that can be used on what really matters. Despite all the attention to reducing costs in recent years, there are hidden budget busters in every technology […]

To Deliver Quality Software, Do These Two Things

If your agile development team wants to deliver high-quality software applications, there are two things the team must do: Automate the regression testing effort Get real users involved in acceptance testing early (Okay, there are lots of other things as well, but let’s focus on these two.) Automate the regression testing effort Face it — […]

10 Reasons to Not Define Requirements Up Front

Requirements — we spend more time on requirements than any other single area of application development. (Note: Some poorly-managed projects spend the most time in software quality assurance. I hope yours don’t.) Why do we spend so much time on requirements? Simply because if we don’t get the requirements right, the project is doomed. The […]

6 Lessons I Learned from Steve Jobs

I followed Steve Jobs’ career since he and Steve Wozniak founded Apple in 1976. I owned an Apple II computer back then and I own an iPhone 4 today. Steve Jobs was not the world’s greatest designer but there are some things he did better than anyone. Here are six lessons I learned by watching […]

7 Ideas to Help Your Organization Be More Agile

So you work in a traditional software development shop — waterfall development with massive business requirements documents, BDUF (Big Design Up Front), SQA testing at the end, and change requests (lots of change requests) — been there, done that. Your team wants to try an agile approach like Scrum, XP, Lean or Kanban. You realize […]

12 Ways to Break Up the Daily Software Routine

Face it — every job gets boring, routine, mundane or monotonous from time to time. Software development is not immune. The job may be intellectually stimulating much of the time but not all the time. On agile development projects, velocity receives a lot of attention. Velocity measures how many story points a team can complete […]