Problem Analysis and The Software Development Process
When problem analysis is incorporated into the software development process, the software development lifecycle starts with the problem analyst, who studies the situation and:
- creates a context diagram
- gathers a list of requirements and adds a requirements oval to the context diagram, creating a grand "all-in-one" problem diagram. (However, in many cases actually creating an all-in-one problem diagram may be impractical or unhelpful: there will be too many requirements references criss-crossing the diagram to make it very useful.)
- decomposes the all-in-one problem and problem diagram into simpler problems and simpler problem diagrams. These problems are projections, not subsets, of the all-in-one diagram.
- continues to decompose problems until each problem is simple enough that it can be seen to be an instance of a recognized problem frame. Each subproblem description includes a description of the specification interfaces for the machine to be built.
At this point, problem analysis — problem decomposition — is complete. The next step is to reverse the process and to build the desired software system though a process of solution composition.
The solution composition process is not yet well-understood, and is still very much a research topic. Extrapolating from hints in Software Requirements & Specifications, we can guess that the software development process would continue with the developers, who would:
- compose the multiple subproblem machine specifications into the specification for a single all-in-one machine: a specification for a software machine that satisfies all of the customer's requirements. This is a non-trivial activity — the composition process may very well raise composition problems that need to be solved.
- implement the all-in-one machine by going through the traditional code/test/deploy process.
Read more about this topic: Problem Frames Approach
Famous quotes containing the words problem, analysis, development and/or process:
“The disesteem into which moralists have fallen is due at bottom to their failure to see that in an age like this one the function of the moralist is not to exhort men to be good but to elucidate what the good is. The problem of sanctions is secondary.”
—Walter Lippmann (18891974)
“Ask anyone committed to Marxist analysis how many angels on the head of a pin, and you will be asked in return to never mind the angels, tell me who controls the production of pins.”
—Joan Didion (b. 1934)
“And then ... he flung open the door of my compartment, and ushered in Ma young and lovely lady! I muttered to myself with some bitterness. And this is, of course, the opening scene of Vol. I. She is the Heroine. And I am one of those subordinate characters that only turn up when needed for the development of her destiny, and whose final appearance is outside the church, waiting to greet the Happy Pair!”
—Lewis Carroll [Charles Lutwidge Dodgson] (18321898)
“We tend to be so bombarded with information, and we move so quickly, that theres a tendency to treat everything on the surface level and process things quickly. This is antithetical to the kind of openness and perception you have to have to be receptive to poetry. ... poetry seems to exist in a parallel universe outside daily life in America.”
—Rita Dove (b. 1952)