jump to navigation

Ruminations on Software Development Life Cycle (aka, SDLC) July 18, 2013

Posted by Edwin Ritter in Trends.
Tags: , , , , , , , , , , , ,
4 comments

In my last post, I covered my recent efforts at software programming after a self-imposed hiatus. As a follow up, I wanted to talk about the development cycle. More specifically, the software development lifecycle. The most traditional development method is the Waterfall method. As it’s name implies, the lifecycle flows across phases with the result being a finished product that is tested to satisfy design requirements.

sdlc_lifecycleDeployment methods I have used include Waterfall and Agile among others and hybrids of these. As shown in the image, there is a feedback loop with testing that can introduce new/revised requirements. That starts the cycle over again, from the beginning. From my experience, there are two phases that seem to get short shrift. One or both of these typically get compressed due to project constraints and are sacrificed in order to stay on schedule. Those phases include Design and Test. What I have also found is that if you accelerate either of those, the project will reap a short term benefit. But, ultimately the project will not stay on track. Instead,  the project will re-visit one or both phases, which causes waste, and any gains in time expected are then not delivered.

As a programmer, I admit I have squeezed several phases. My advice – whatever process you employ, don’t cheat it. Having a solid design ensures requirements are addressed and adequate testing provides confidence for success at launch. Whatever method you use, adhere to the diligence in each phase and then keep progressing forward. Each phase should be  sized according to the project goal. Changes to existing code base can be minimal and have little design impact. Great! Testing should then focus on regression impact to ensure everything is working with new changes integrated cleanly.

Does your mileage match mine? Comments invited!

Project Roadmap and Holidays December 14, 2009

Posted by Edwin Ritter in career, Project Management.
Tags: , , , ,
add a comment

One of the benefits of being an experienced professional is being able to define an annual roadmap. The roadmap in this context is a list of project level commitments defined in a schedule. Crafting a roadmap visually is a great way to communicate with your team, clients and sponsors. Through experience and some lessons learned, I found that using holidays for project milestones has many benefits.

  1. Using the holiday schedule enables creativity and great team discussions.
  2. Holidays are easy to remember. They are highly visible to everyone.
  3. It keep the team focused on key dates.

I found that using Thanksgiving as the roadmap end date was useful also. That left time (a.k.a. slack) if any project slipped but more importantly, it left time for the 11th hour rush of requests from internal clients. Typically, the month of December is when my team would need to deliver on many unplanned updates. By having our roadmap finished, there was enough time to accomodate those requests. Client happy, staff happy, boss happy. A good place to be. 😉

Everyone is familiar with the holiday schedule. As project milestones, holidays are great motivators also. Everyone wants to complete a major effort before a 3-day weekend, right?

As a manager, you need to envision how to position your team for success. Keeping things simple is always a good mantra. Using common tools and techniques is a powerful thing for you and your staff. Communicating in a clear and consistent way is a key enabler also.  By knowing the team roadmap, my staff planned their individual vacations accordingly.

It has taken some lessons learned over time for me to appreciate this as a routine planning process. Having that experience, I can have rational conversations at any level about the merits in this approach. I realize it may not work for everyone. Many times, project dates are assigned for you. Been there, done that.

Remember, the magic quadrant is a reasonable level of insanity. The least preferred quadrant is unreasonable level of insanity.

Hope your roadmap is in good shape and you are able to manage the time left to complete it in time for the New Year. Happy Holidays!