Rappler has a good piece about the whole Jollibee #ChickenSad fiasco. I know a little about what happened but let me say it upfront that I am no in way involved in the project. Some of my friends jokingly asked me if we were the reason why the stores are out of chicken. I would be mortified if we were.
I cannot tell what I know (I’m under NDA) but I agree to most of the points that the author made (I distinctly remember suggesting some of these to them). You would think that these are Project Management 101 but you’d be surprise how often and rampant project managers, business process owners and system integrators etc. overlook these things.
I would add one more:
5. Focus on understanding the business and not too much in the technology. Technology alone will never solve a problem at this scale. The more you understand the business, the better you know what the problems are, who are the people you need to solve the problems and what are the ways in can be solved. Technology should not be viewed as universal panacea:
Knowing what the problems are — by knowing the business, problem identifications come naturally. When you know the problem, mapping software features to solve them would be less difficult. Our strategy typically involves immersing our BAs (business analysts) with their existing manual process. It’s a gruelling task but a very important one. Once we are confident enough that we understand their existing process, that’s the only time we move on to the next phase.
Knowing the people you need — domain knowledge engineers are very critical in the success or failure of the project. These are the people who know the business to the guts. They know the pain points. They have ideas on how to solve them (always take them with a grain of salt) and they are the ones who will actually use the solution so involve them as much as possible, as often as possible.
Knowing ways to solve the problems — pure automation is often too complex. Most people just want to do their job and be done with it. Often, this can be achieved by applying what works from an existing process to the new one, even manual process. Case in point, we were asked to add a feature to a certain project where the system would allow them to compose email and send the reports generated by the application. I told them, “Why not just copy the link of the report and send them as a regular email”? After a few convincing, they realised what I suggested makes sense.