UNIVERSITY INSTITUTE OF COMPUTING
UNIT-3
Bachelor of Computer Applications
Software Engineering
(21CAT-312/21SCT-312/22CAT-213/22SCT-213)
DISCOVER . LEARN . EMPOWER
Topics to be Covered
• Principles of Software Design
Introduction of Software Design
• Software Design is also a process to plan or convert the software requirements
into a step that are needed to be carried out to develop a software system. There
are several principles that are used to organize and arrange the structural
components of Software design.
• Software Designs in which these principles are applied affect the content and the
working process of the software from the beginning.
Principles of Software Design
Principles of Software Design
• Should not suffer from “Tunnel Vision” : While designing the process, it should
not suffer from “tunnel vision” which means that is should not only focus on
completing or achieving the aim but on other effects also.
• Traceable to analysis model :The design process should be traceable to the
analysis model which means it should satisfy all the requirements that software
requires to develop a high-quality product.
• Should not “Reinvent The Wheel” : The design process should not reinvent the
wheel that means it should not waste time or effort in creating things that already
exist. Due to this, the overall development will get increased.
• Minimize Intellectual distance : The design process should reduce the gap
between real-world problems and software solutions for that problem meaning it
should simply minimize intellectual distance.
Principles of Software Design
• Exhibit uniformity and integration :The design should display uniformity
which means it should be uniform throughout the process without any change.
Integration means it should mix or combine all parts of software i.e. subsystems
into one system.
• Accommodate change :The software should be designed in such a way that it
accommodates the change implying that the software should adjust to the change
that is required to be done as per the user’s need.
• Degrade gently :The software should be designed in such a way that it degrades
gracefully which means it should work properly even if an error occurs during the
execution.
Principles of Software Design
• Assessed or quality :The design should be assessed or evaluated for the quality
meaning that during the evaluation, the quality of the design needs to be checked
and focused on.
• Review to discover errors :The design should be reviewed which means that the
overall evaluation should be done to check if there is any error present or if it can
be minimized.
• Design is not coding and coding is not design :Design means describing the
logic of the program to solve any problem and coding is a type of language that is
used for the implementation of a design.