Thursday, January 27, 2011

Outsourcing reviews of Software Architecture

I was reading through couple of architectural documents for sometime now.  Each paragraphs bring a new issues, or rather an same issue repeated fresh. How do they know this is the correct way to achieve the end-goals of the product?

Giving some history to what I am doing, last couple of months I was engaged in reviewing software architecture of three vendors. All three vendors were developing software for a client who does not have enough people to do reviews. Therefore all the reviews were outsourced to us.  I am assigned to do the Architectural review.

Moment I realized there is a possibility that in-depth analysis of the project goals might not have being done, I send out a mail asking for the details. After a few mail exchanges and couple of calls, I come to realized that it may not be possible to document all the supporting facts. .


Time for a new approach!


First and foremost I set an intention, "may the reviews bring values to all the parties concerned".


The I started to have phone conversations. It was amazing the amount of information that was shared. I was marveled by the thinking that was gone in to each of the architecture that I reviewed thus far. I also happen to ask questions that would bring insights to them.


My lessons:
  1. If something does not work do something else (An NLP presupposition)
  2. Intend for the best results, you would always have them

Friday, August 13, 2010

So, what do you do?

We have started an ISO 27001 initiative. After some activities like, defining the quality policy, risk assessment methodology etc. we started identifying Information Assets. 

Finding out the information assets used by everyone sounded very simple, only issue I could foresee was unavailability of people due to work pressure. All everyone has to do is fill a form!

There were two problems of this,
  1. People forget things, specially routine work.
  2. People need a way to know they are done

A tool is needed.

Ideal tool for this situation is a MindMap. I added some questions to guide the identification process.

What are the tasks you do?/ What are your responsibilities?
What information you need  to do the task?
From where do you get this information?
What information do you create with this task?
Where do you store the information?
Is there anyone helping you with that? if so ask same question form them.


Thursday, July 8, 2010

Did you read the spec?

In my utopia everyone does what they are supposed to do...

One who is supposed to buy groceries would buy them on time
One who is supposed to pay bills would pay them on time
Specially one would review the requirement specs before start working on it.

Stakeholders not reviewing specification is a problem with very long history...
Owners, Developers, testers of the product will skim through the document, either because they don't have time or because specs are lengthy, sometime both.

How would you respond this is situation?

So far we have tried,
Walk-through
Better engagement

More on them in next posts...