Complex Software Solutions example essay topic
This couldn't be further from the truth. ; The Analysis stage is the most crucial of all - because problems later on in development almost always occur from an oversight in the general planning of the way the software should be created. DESIGN: Once the problem and solution have been identified, the next step is to determine whether a software solution to this problem is actually feasible, and if so, the manner in which the actual code will be written and organized. To borrow from the E ROOS (Entity Relationship Object Oriented Specification) methodology system, the Design can be broken up into Solution Design, Software Analysis, and Software Design. The first step in the Design phase is to determine the solution's feasibility. This means that upon taking into account the extensiveness of the solution, deciding whether the solution is worth the cost in materials and manpower.
There are many factors affecting feasibility, including budget and time constraints, as well as availability of manpower skilled enough to complete the task. It is only after feasibility has been determined that we finally begin to put things into the context of actual code. Now the developers must think about such issues such as what type of interface the program is to have with the user, which protocols the program will communicate with, etc. Another very important activity in this stage is defining classes, or categories under which your objects will be organized. Classes are key in separating different types of objects by attributes and behavior, which in turn allows the programmer to save time and effort redefining object attributes. Classes also help the programmer determine the restraints of the application, or if you will, how broadly the program can attack the problem.
IMPLEMENTATION: The final step of the process is sitting down and actually writing some code. Of course, before the developer can start that, he / she must first decide which language to use. Although it all ends up 1's and 0's, the language in which a program is written has a lot to do with how effective the program is, how quickly it runs, and how easy (or difficult) it is to code. By this time there should be little guesswork left as to how to enter the code. The developer has in front of him / her all of the specifications, outlines, functions, variables, and classes to use, the whole program has been planned out. It is now simply a matter of translating that into code the computer can understand.
Therein, then, lies the real reason to why all of this preparation is necessary before writing the first line: When authors write books, they cannot simply open up a manuscript and begin typing the first page - they must already have planned out the elements of the story, plot and characters. In the same way, a programmer approaching a complex problem will find it impossible to simply sit down at a desk, and then begin hammering away at the code. Just as with any complex or involved task, the most important part is the solution, not just the actual code.