Solve Problems One Step At A Time

Given a problem, we can think about solutions. There are levels of complexities that may require the use of tools and jotting down notes and drawing diagrams and what have you. Our brains can only handle so much. When you reach a point when things get chaotic anyway, it would greatly help to instead stop and negotiate breaking down what needs to be done, one step at a time.

Breaking down complex solutions makes more sense than trying to figure everything out before developing anything. This is the essence of agile methods, where each requirement is broken down in to manageable and easily deliverable items instead of spending an entire phase of analyzing everything before anything starts, by which time the requirements and priorities may've already changed.

To be holistic in designing solutions is a waterfall method's dream. To be a delivery machine is an agile team's goal. Thus, given a complex requirement with complex rules and complex goals, it is always smartest to analyze them first with the goal of breaking down the tasks at hand. This is the fastest way to get something started immediately. Delivering a minimum viable product (MVP) works. Visualizing the solution works better for most people than asking them to imagine it. In fact, letting them experience parts of the solution can trigger new ideas, new requirements and new priorities. All these can only be successful with being agile.

Given a project, be ready to break it down into smaller tasks. Experience will teach you which tasks would need to be prioritized that can lead to an MVP sooner. Depending on the composition of the team, skills and talents can be channeled and focused initially on very specific goals that would deliver the essential parts of the whole. It can be all about the backend. It can be the initial look and feel of the UI. It can even be R&D towards building a wireframe or a prototype, that's enough to start or keep the conversation going.

Comments