Open In App

Difference between Good Design and Bad Design in Software Engineering

Last Updated : 02 Feb, 2023
Like Article

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 meaningful 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 defined 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 in 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 only one home. Logic has to be duplicated.
Nature Simple Complex
Cost Small Very high
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.


Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads