Random Acts of IT Project Management

Project Management for Information Technology

Archive for the ‘Software’ Category

What Is Agile Software Development?

Posted by iammarchhare on 2 September 2009

One of the best explanations I’ve seen yet of Agile is the article “10 Key Principles of Agile Software Development” over all All About Agile.  Not only does the author give a good summary of some key concepts, but also some of the variations, including the original DSDM.

Enjoy!

Posted in Agile, Software | Tagged: , , , | Comments Off on What Is Agile Software Development?

“We Found a Bug!” How Should Support Be Handled?

Posted by iammarchhare on 1 September 2009

Over at Agile Chronicles, Mike Cottmeyer posted “Handling Support on Agile Teams”, but as even he himself says, “This is a problem not unique to agile teams. Software organizations have been struggling with this one for years.”

Indeed, he is most correct.  How to account for time dedicated to support once the code is out in the open?  I have noticed, though, that the more seasoned the team, both as individuals and as a unit, the less defects are likely to be produced.  Yes, experience is the best teacher, but it isn’t necessarily the most efficient one.

Cottmeyer lists 3 options for dealing with defects.  Each has its strengths and weaknesses.  Personally, I think a lot on the exact method you pick is going to have a lot to do with the overall environment, the types and number of current projects and the overall effectiveness of the developers.  I use “effectiveness” as not only productivity, but experience level and ability to task switch.

That last point should not be underrated.  The ability of any individual to multitask is going to have a profound effect upon the duration and quality of their work.

However, here are some other factors to keep in mind:

  • Responsibility.  How often is Jane going to fix John’s code without resentment building up?  Is John mature enough to at least accept responsibility for his mistake and learn from it?
  • Amount and severity of defects.  Some defects can wait.  Are you getting an abnormal number of defects?  Of course, you’ll need some type of historical data to go on, but if there are an abnormal number, it might be time to do a triage or at least a special after action review.
  • Corrective to preventative measures.  It isn’t enough to just fix the immediate problem, but for the team to learn how to avoid it next time.
  • Seniority mix of the team.  I have long argued that you want to avoid all junior developers for a team.  However, you also want to avoid all senior developers on a team.  You want a mix, but no more than 50% new developers and no less than 50% experienced ones.  Why?  Because you need mentoring, coaching and the examples of the senior developers to grow the junior ones.  However, an injection of new ideas is not a bad thing, either.  Not only that, but a team of all senior developers can become an ego party.  Frankly, it is not the most efficient way to get work done, and neither is it all that entertaining.

One of the key requirements of being a manager, but especially a project manager, is flexibility.  How you deal with defects will test your skills and bend you out of shape if you allow it.

Posted in Software | Tagged: , , , , , , , | Comments Off on “We Found a Bug!” How Should Support Be Handled?

Waterfall vs Agile

Posted by iammarchhare on 21 July 2009

I frequently like to compare waterfall and Agile methodologies, or perhaps mindsets would be a better term.  Yet, I realize that my descriptions are colored a lot by my own experiences.  So, I do like to point you to other sources from time to time that take a different approach or describe the differences in other terms.  I hope that gives the reader a more well-rounded look at things.

Robert Merrill on 18 February 2009 posted “A Tale of two processes”.  He starts out describing “How to create software” by writing:

Let’s create some software value. It’s very simple.

  • You tell the programmers what you want the software to do
  • They create it
  • You verify that it does what it’s supposed to
  • You let people start using it, and out pours the value.

Sounds simple, right?  Well, in a nutshell, he has summed up how waterfall is supposed to work.

I think the contrast is interesting and a worthwhile read.  You can read his article here.

Posted in Agile, SDLC, Software, Waterfall | Tagged: , , , , | Comments Off on Waterfall vs Agile

Random Stats

Posted by iammarchhare on 30 June 2009

I was a little surprised today when I was looking at Dice.com.  It turns out that there are only 3072 results for “project manager” in the US.  Of those, 2060 are in “development”.  I really expected a higher percentage to be in infrastructure and/or networking.

If you are interested in locations, New York had the highest in “development” and “project manager” positions, coming in at 101.  It had 179 overall.  Even San Francisco only had 81 PM positions (less than half).  However, even then San Francisco was tied for 2nd place with Chicago.  Cleveland only has 23.  Jacksonville, FL comes in dead last with only 12.

I was originally looking for information on programming languages, actually.  Since it seems that roughly 2/3rds of us are dealing with developers or software engineers, I will share that with you as well.  I’m not trying to start another religious war about programming languages, but I did want to see what employers and clients are looking for.  Keep in mind, though, that languages are just a tool.  We may have our favorite tools, but they are still just tools.

Java – 8268 results

C# – 4036

C – 2355

C++ – 4103

COBOL – 481

Flash – 843

PHP – 1073

XML – 4337

HTML – 3155

SQL – 9168

I ended up throwing out the .NET number because the numbers just didn’t add up.  It seems to me that a lot of the HR/recruiters still don’t know the difference between .NET and C#.  Or, is there really a C# implementation outside of .NET (because I’m not aware of any)?

So, why do this exercise?  Well, if someone wanted to learn a new skill in this economy, would it really make sense for it to be COBOL?  Yes, it has its uses.  It might even be fascinating for some people.  However, if your aim is to improve your stance in the marketplace, I think COBOL should not be your target area skill set to upgrade to.  If you understand Java, perhaps it would be easier to be hired in as a project manager overseeing a Java development team.

What do you think?  Other than certification, what can you do to increase your value in the marketplace?

Posted in Economy, Software | Tagged: , , , , , , , , , | Comments Off on Random Stats

How To Manage Software Development

Posted by iammarchhare on 9 June 2009

Sometimes, project managers wear 2 hats.  Hopefully, you don’t wear much more than that, or you quickly become ineffective at one of the items.  I’ve done both resource and project management, so I’ve published an article on Helium on “How to manage software development”.  Below is an excerpt from the article:

Management of any team is exercising a certain amount of control over resources: Time, personnel, equipment and processes. However, an effective manager also realizes where management of their particular team is unique. Software development is no exception. While there may be environmental factors that require unique strategies in any given organization, there are general items to be aware of across the board for managing a software development team. You need to ensure that the proper tools, proper environments and proper training are in place in order to ensure successful completion of development projects.

You can read more here.

Posted in People Management, Software | Tagged: , , , , , | Comments Off on How To Manage Software Development

Future of Development

Posted by iammarchhare on 8 June 2009

This post is targeting development teams.  Justin James of TechRepublic wrote a paper “10 skills developers will need in the next five years”.  It’s a short paper, and it isn’t meant to be exhaustive.  Agile is on the list, as is .NET/Java/PHP.  No surprises there.  There are some more interesting items on the list, though, so go check it out.

Posted in Software | Tagged: , , , | Comments Off on Future of Development