|
|
Optimize with a SATA RAID Storage Solution
Range of capacities as low as $1250 per TB. Ideal if you currently rely on servers/disks/JBODs
Page 4 of 7
Building user interface prototypes
Building a user interface prototype is often a valuable activity during the design phase. Once the user interface prototype
is completed, the parties that agreed to the specification can gather together again to review the preview version. Having
a prototype gives the parties another chance to visualize and discuss the end target. By requiring everyone who agreed to
the specification to review and sign off on a user interface prototype, you help ensure that all parties have compatible expectations
for the end product. With the visual tools available today for the development of Java-based user interfaces, developing a
user interface prototype can be very fast, and the end result is a framework of Java code that you can then endow with functionality
during the implementation phase.
Note that the process of demonstrating a user interface prototype is a prime example of the iterative nature of the development process. When the interested parties (who have all agreed on a written specification) actually see user interface prototypes, they often have new ideas, or a better understanding, or a more detailed understanding -- in other words, a clearer vision -- of the end product. During the demonstration, some adjustments may be made to the specification. By this time, however, hopefully the adjustments will be minor.
Doing an object-oriented design
As you design a Java program, you must think in terms of all the programming technologies offered by the Java language, including
multithreading, garbage collection, structured error-handling, and object orientation. Yet, because the dominant architectural
characteristic of the Java programming language is object orientation, a Java program design phase is fundamentally a process
of object-oriented design.
Doing an object-oriented design involves creating inheritance hierarchies and designing the fields and methods of individual classes and interfaces. Three basic categories of classes that you will come up with in a design are:
User interface classes are those that compose the program's user interface, such as classes that represent windows and dialogs. Problem domain classes are those that represent objects that you identified in the problem domain. For example, if your problem domain involved
elevators, you might have an Elevator class in your solution domain. Data management classes are those that you create to manage objects or data. Neither user interface classes nor data management classes have corresponding
objects in the problem domain.
Implementation is coding. Writing for loops, if statements, catch clauses, variables, and comments; compiling; unit testing; bug fixing -- that's implementation: the stark act of programming.
During the integration and test phase, the members of the project team, each tasked with building a specific part of the whole, meet and try to get all the pieces of the software system to work together. During this phase the team members find out how well the interfaces between the individual system components were defined and communicated during the system partitioning phase. The coding that takes place during this phase should primarily be bug fixing.