tags:

views:

267

answers:

1

I am trying to figure out the difference between taking a process-centric approach in software development as opposed to data-centric. What are the pros and cons of the two approaches and etc.?

I've Googled around but I haven't found a definite answer on why process-centric is better or not better.

A: 

My understanding would be that it is a question of focus in the development:

  • Process-centric would center around using a specific form of process as the core of the methodology. For example, there may be some place that loves Waterfall and that is what they use regardless of other factors.

  • Data-centric would center around the data and may involve different methodologies for different sets of data. So, a reporting group may use a data-centric approach as most of what they do revolves around data and using it. In contrast, a group customizing a CMS may choose something more Agile to handle changing requirements which may happen as a company starts to use a CMS.

As for which is better there are a few factors to consider here:

  1. People - Do they seem to have a preference for which they like to have in control? Some people may prefer a process-centric approach so that everything is done the same way and methodology is upheld no matter what while in other cases some may say it just depends on the data.

  2. Precedence - Is this going to be something a team will use over and over again? If so, then the process-centric may have better results as the process can get refined over time in contrast to the data-centric where one may change methodologies regularly.

  3. Final product - If the projects are consulting engagements then it may be better to focus on the process rather than the data unless the consulting is in something data-intensive like data warehouse or business intelligence.

  4. Executive buy-in - Either approach can be useless if the people controlling the money don't understand why one style is better than the other for a specific situation.

JB King