Please enable JavaScript.
Coggle requires JavaScript to display documents.
Software design - Coggle Diagram
Software design
The Design Process
-
FREEZING THE DESIGN
-
The tricky problem for the developers is to truncate this learning process at just the right point so that a suitable product can be delivered in a reasonable time and at an affordable cost.
THE CONCEPTUAL DESIGN
You must avoid getting lost in a mass of detail. It is generally wisest to follow an iterative process, as follows
- Focus on the high-level issues until you know enough to produce the overall conceptual design
- Complete and document the conceptual design.
-
4.Once you have the conceptual design, your data gathering process changes. An immediate objective is to test the conceptual design
5.Once you have satisfied yourself that the conceptual design is solid, you can begin to focus on details.
-
Design Quality
The software design should contain a sufficiently complete, accurate, and precise solution to a problem in order to ensure its quality implementation.
DESIGN COMPLETENESS
This includes defining the classes and objects and their relationships, identifying the interactions among them, defining the required data and state transformations, and specifying the system inputs and outputs.
-
-
-
-
-
Design Templates
The templates ensure the required data are clearly defined and concisely represented. If you do not use object-oriented methods, you can use these templates by replacing the words object, class, and method with either of the words function or procedure.
TEMPLATE DIMENSIONS
Here, the elements of the object's design can be divided into the following four categories:
Internal-static: contains a static picture of the object, such as its logical design
Internal-dynamic: the object's dynamic characteristics concerning its behaviorThe dynamic behavior of an object can often be described by treating itas a state machine. Other important dynamic characteristics are response times and interrupt behavior.
External-static: the static relationship of this object to other objects. An example would be the inheritance hierarchy.
-
Design Notation
A principal objective of a software design is to produce a concise and precise statement of exactly what the program is to do and how it is to do it.
DESIGN FLUENCY
As you are determining which design methods and representations to use, consider the following:
-
Measure your design work on a number of projects. Gather enough data to identify how many design defects you inject and the defect types that cause you the most trouble.
Measure your performance with the new design method. Recognize that your productivity and quality will initially decline, so measure several projects.
-