Team Skill 1, Analyzing the Problem, introduced a set of skills your team can apply to understand the problem to be solved before application development begins . We introduced a simple, five-step problem analysis technique that can help your team gain a better understanding of the problem to be solved.
Analyzing the problem in this systematic fashion will improve your team's ability to address the challenge ahead providing a solution to the problem to be solved .
We also noted the variety of techniques that can be used in problem analysis. Specifically, we looked at business modeling, which works quite well in complex information systems that support key business infrastructures . The team can use business modeling both to understand the way in which the business evolves and to define where within the system the team can deploy applications most productively. We also recognized that the business model we defined will have parallel constructs in the software application, and we use this commonality to seed the software design phases. Later we will again use the business use cases we discovered to help define requirements for the application itself.
For the class of software applications that we classify as embedded systems, we used the systems engineering process as a problem analysis technique to help us decompose a complex system into subsystems. This process helps us understand where software applications should lie and what overall purpose they serve. In so doing, we also learned that we complicate requirements matters somewhat by defining new subsystems, for which we must, in turn , come to understand the requirements to be imposed.