The term design is used in two ways. While used as verb, it means – the design process and used as noun, it means- the result of design process. Design is a meanigful engineering representation of something that is to be built. The result of a design process is called as design model or the design of the system.
Design for computer software is as important as a roadmap for a home, otherwise the result will be chaos. A system design is a plan for a solution for the system. Here a system is components with clearly defind behavior that interact with each other in a predefined manner to produce certain behaviors or services for its environment.
The software design process often has two levels. One of which determines the modules for the system, their specifications and their interrelationship. This is known as elaborate design or logic design, decides the module’s internal design.
A design- methodology is a systematic method that creates a design by applying a set of techniques and guidelines. Most design practices focus on system design. Also most recently, provide a set of guidelines to help the developer, designing a system.
Differentiate of good and bad design against its key characteristics is provided in table.
|Characteristics||Good Design||Bad Design|
|Change||Change is one part of the system does not always require a change in another part of the system.||One conceptual change requires changes to many parts of the system.|
|Logic||Every piece of logic has one and one home.||Logic has to be duplicated.|
|Link||The logic link can easily be found.||The logic link cannot be remembered.|
|Extension||System can be extended with changes in only one place.||System cannot be extended so easily.|
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.
- Software Engineering | Characteristics of good Software
- Difference between Software Engineering process and Conventional Engineering Processs
- Software Engineering | Quality Characteristics of a good SRS
- Basic Principles of Good Software Engineering approach
- Difference between Forward Engineering and Reverse Engineering
- Software Engineering | Introduction to Software Engineering
- Characteristics of Good Object Oriented Design
- Software Engineering | Requirements Engineering Process
- Software Engineering | Re-engineering
- Software Engineering | Reverse Engineering
- Software Engineering | Software Design Process
- Software Engineering | Structured analysis and design with CASE tools
- Difference between Function Oriented Design and Object Oriented Design
- Difference Between Data Science and Software Engineering
- Difference between Test Scenario and Test Condition in Software Engineering
- Software Engineering | Architectural Design
- Software Engineering | User Interface Design
- Software Engineering | Function Oriented Design
- Software Engineering | System Design Strategy
- Effective Modular Design in Software Engineering
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.