Thursday, May 12, 2005
I’ve been a software developer for over eighteen years. I’ve seen a lot of success during that time, I’ve also seen failure. As many of you who follow my blog know, I have a strong belief that software quality has a positive relationship with start-up success. I have presented information to support this belief. What I also believe is that to have software quality you need strong leadership and a well articulated product vision. The whole company needs to know where the product is going and why. This allows people to work hard and with creativity, yet also know the bounds of their endeavour. They also know what is on the horizon and what the technology needs to be able to do to meet product and customer needs. Writing a technology strategy is not easy task. It takes an understanding of the future, and that’s tough. What can help with articulating the company vision is to write a rock solid business case. And their a couple of places to help get you started. First, query your government, they are always interested in encouraging innovation its good for the national economy. Check out the Government of Canada’s template for “Creating and Using a Business Case for Information Technology Projects“. Also, there are always a number of companies who put together competitions for innovation. Check out Telus’ offering in support of the technology start-up. Either way, do your homework, create a strong vision, articulate your business plan and don’t get bogged down with it, start running…
Friday, May 06, 2005
I was busy studying for one of my Masters courses and I’m having to describe a teaching scenario that I have utilized in the last few years and identify if it would be considered behaviorist, cognitivist or constructivist. All very interesting and it got me thinking about a course I taught about software development methodologies. This was a two term course where we covered Rational Unified Process, Microsoft Solutions Framework and Capability Maturity Model. And yes, a great course in my mind. I was reviewing the learning outcomes of the course and reflected upon them. I came to the conclusion that two of the most important factors in methodology for software development are; strongly defined roles and responsibilities and bidirectional traceability. The roles and responsibilities keep people motivated cause there is no question to what they have to do and the traceability forces quality. The course I taught would be considered constructivist. It build on ideas taught in the first course and forced the students to participate together in problem solving activities.
Wednesday, May 04, 2005