Thursday, June 25, 2009

Programming Environments

                   It is usable in many operating environments, for many sets of data.To become a generally usable programming product, a program must be written in ageneralized fashion. In particular the range and form of inputs must be generalized as much as the basic algorithm will reasonably allow. Then the program must be thoroughly tested, so that it can be depended upon. 

                          This means that a substantial bank of test cases, exploring the input range and probing its boundaries, must be prepared, run, and recorded. Finally, promotion of a program to a programming products.It requires its thorough documentation, so that anyone may use it, fix it, and extend it. As a rule of thumb,I estimate that a programming product costs at least three times as much as a debugged program with the same function.

                     Moving across the vertical boundary, a program becomes a component in a programming system. This is a collection of interacting programs, coordinated in function and disciplined in format.So that the assemblage constitutes an entire facility for large tasks.To become a programming system component, a program must be written so that every input and output conforms in syntax and semantics with precisely defined interfaces.

                    The program must also be designed so that it uses only a prescribed budget of  resources memory space, input output devices, computer time. Finally, the program must be tested with other system components, in all expected combinations. This testing must be extensive, for the number of cases grows combinatorially.It is time consuming, for subtle bugs arise from unexpected interactions of debugged components.

No comments:

Post a Comment