Agile Faces a Major Barrier to Entry

Every approach to software development has barriers to entry. (Nothing is ever easy, is it?) Agile approaches are no exception. Let me explain. Sometimes compromise or meeting-in-the-middle is the best solution to a problem. Other times, it takes an extreme approach to be successful. Consider the subject of software development. Here are two conceivable extreme […]

Could Your Project Withstand an Earthquake?

The earthquakes and associated catastrophes in Japan highlight the important and often ignored area of project risk management. There are some things we can’t control. It’s not just natural disasters and events like terrorist attacks. What would you do if any of the following occurred during your project? Your project loses it’s top performer / […]

You Can Be 100% Right and Totally Wrong

Yesterday’s post got me thinking. (See Estimating Is Hard But The Business Needs to Know.) Can you be 100% correct and yet be completely wrong? Regrettably, yes you can. Let’s say you and your team are waterfall experts. You are the best of the best. During project initiation, your team can precisely estimate: How long […]

Keep the Business Engaged to Avoid Premature ‘Done’

Agile teams should deliver working software after each sprint. Sounds good. What does it really mean? Ideally, the team should be delivering value to the business with each sprint. Of course, the term value is equally obscure. Ultimately, what works or has value is up to the end users to decide. Obviously, they don’t understand […]

Agile Battleground – Scrum vs. XP

Agile software development goes by many aliases… Scrum Kanban eXtreme Programming (XP) Test-Driven Development Feature-Driven Development Agile Unified Process Open Unified Process Lean Software Development I’m sure I missed a few but you get the idea. There are many flavors of agile. It’s not surprising that there is controversy among agilists resulting in strong disagreements […]

Don’t Let Your Software Project Be (Charlie) Sheen’d

Charlie Sheen’s meltdown on national TV reminds me of project team meltdowns that I’ve witnessed. Charlie has experienced major successes. His television series, Two and a Half Men, is hugely popular by any measure. He gets the lion’s share of the credit for the show’s success but there are several other terrific personalities on the […]

Your Data in the Cloud Is at Risk

Many firms are touting the benefits of “cloud computing”. It’s particularly beneficial for mobile users. If you could store everything in the cloud, your information would be accessible from anywhere using any device. That’s Nirvana! This approach would also make mobile devices cheaper. If they don’t have to store anything locally, they can do without […]

User Stories: Focus on the Problem Not the Solution

Much has been written about creating user stories. There is a good User Story introduction on WikiPedia and Mike Cohn has written a well-known book on the subject called User Stories Applied: For Agile Software Development. Despite all the literature, agile development teams often struggle with writing good stories. In this post, I’d like to […]

Self-Organizing Team or Self-Destructive Team?

Agile teams must be self-organizing. You hear it all the time. Self-organizing. What does that mean? If you’re a paranoid manager, it means that the team plans to run wild and do whatever they want, however they want. That’s not self-organized, it’s anarchy. If you’re a crazed product stakeholder, it means the team is going […]

Time for the Daily Status…er…Scrum Meeting

The daily Scrum meeting is often referred to as a status meeting. Even the Wikipedia definition includes the phrase “…a project status meeting…”. I don’t know about you, but when I get invited to a “status meeting”, I cringe. They are usually mundane and boring. Many people bring a laptop, tablet or smartphone to status […]

Calling It Agile Doesn’t Make It Agile

Here’s a common scenario. A company’s software development process isn’t working real well. The software is often late, incomplete and buggy. (I’ll bet you’ve heard that story before.) Anyway, management decides to try a new approach. ‘Agile’ is a hot buzzword so they decide to give agile software development a try. A few development folks […]

Code Standards: An Overlooked Need

Do you have code standards for your software development teams? Most companies don’t. They go to great lengths to produce all kinds of document templates yet coders are allowed to do whatever they please. Odd. The reason document templates are widely used is simply to promote standardization. For example, when you pick up a project […]

Teamwork Is Hard; Agile or Not

Teamwork is hard. To be good at any agile discipline from Scrum to XP to TDD to Kanban, etc., you need teamwork and lots of it. Many people think that if they are communicating, they are working as a team. Yet communicating is only the first step toward building a team. You can be a […]

Can Agile Teams Be Too Fast?

I worked on a project where the software development team provided rapid response to user requests. We’d meet with the business team leaders every week. Often, they would ask for a change or a new feature and it would be delivered before the next meeting. Of course, some requests were larger or in a few […]

The Mobile OS Wars Are a Good Thing

The smartphone/tablet OS wars are exciting. There are five mainstream choices and one dark horse. Apple iOS Google Android HP webOS Intel MeeGo Microsoft Windows Phone RIM QNX It’s great to have serious competition in any market. Without it, stagnation results. Just look at how far desktop Windows has come in the last decade. Compare […]

Manager’s Guide to Agile Development

Get out of the way. The End. Explanation Most middle managers at large enterprises are conditioned to command and control. They are expected to know and understand all the major details of every project they own. They have to be consulted on every “major” decision. (Of course, the definition of what constitutes a “major” decision […]