Open navigation menu
Close suggestions
Search
Search
en
Change Language
Upload
Sign in
Sign in
Download free for days
0 ratings
0% found this document useful (0 votes)
43 views
Software Design Principles
software design principles
Uploaded by
kaniksha sharma
Copyright
© © All Rights Reserved
Available Formats
Download as PDF or read online on Scribd
Download now
Download
Save Software Design Principles For Later
Download
Save
Save Software Design Principles For Later
0%
0% found this document useful, undefined
0%
, undefined
Embed
Share
Print
Report
0 ratings
0% found this document useful (0 votes)
43 views
Software Design Principles
software design principles
Uploaded by
kaniksha sharma
Copyright
© © All Rights Reserved
Available Formats
Download as PDF or read online on Scribd
Download now
Download
Save Software Design Principles For Later
Carousel Previous
Carousel Next
Save
Save Software Design Principles For Later
0%
0% found this document useful, undefined
0%
, undefined
Embed
Share
Print
Report
Download now
Download
You are on page 1
/ 14
Search
Fullscreen
Software Design Software design is a mechanism to transform user requirements into some suitable form, which helps the programmer in software coding and implementation. It deals with representing the client's requirement, as described in SRS (Software Requirement Specification) document, into a form, i.e., easily implementable using programming language. The software design phase is the first step in SDLC (Software Design Life Cycle), which moves the concentration from the problem domain to the solution domain. In software design, we consider the system to be a set of components or modules with clearly defined behaviors & boundaries.Following are the purposes of Software design: eeu erected rita = Flexibility pr ays Maintainability Objectives of Software Design 1. Correctness:Software design should be correct as per requirement. 2. Completeness:The design should have all components like data structures, modules, and external interfaces, etc. 3. Efficiency:Resources should be used efficiently by the program. 4. Flexibility:Able to modify on changing needs. 5. Consistency:There should not be any inconsistency in the design. 6. Maintainability: The design should be so simple so that it can be easily maintainable by other designers.Interface Design: Interface design is the specification of the interaction between a system and its environment. this phase proceeds at a high level of abstraction with respect to the inner workings of the system i.e, during interface design, the internal of the systems are completely ignored and the system is treated as a black box. Attention is focussed on the dialogue between the target system and the users, devices, and other systems with which it interacts. The design problem statement produced during the problem analysis step should identify the people, other systems, and devices which are collectively called agents.Architectural Design: Architectural design is the specification of the major components of a system, their responsibilities, properties, interfaces, and the relationships and interactions between them. In architectural design, the overall structure of the system is chosen, but the internal details of major components are ignored.Detailed Design: Design is the specification of the internal elements of all major system components, their properties, relationships, processing, and often their algorithms and the data structures.Software Design Principles Software design principles are concerned with providing means to handle the complexity of the design process effectively. Effectively managing the complexity will not only reduce the effort needed for design but can also reduce the scope of introducing errors during design. Following are the principles of Software Design Software Design Principles Top Down & Modularity lee dS a ye = Problem Partitioning Problem PartitioningFor small problem, we can handle the entire problem at once but for the significant problem, divide the problems and conquer the problem it means to divide the problem into smaller pieces so that each piece can be captured separately. For software design, the goal is to divide the problem into manageable pieces.Benefits of Problem Partitioning 1. Software is easy to understand 2. Software becomes simple 3. Software is easy to test 4. Software is easy to modify 5. Software is easy to maintain 6. Software is easy to expand These pieces cannot be entirely independent of each other as they together form the system. They have to cooperate and communicate to solve the problem. This communication adds complexity.An abstraction is a tool that enables a designer to consider a component at an abstract level without bothering about the internal details of the implementation. Abstraction can be used for existing element as well as the component being designed. Here, there are two common abstraction mechanisms 1. Functional Abstraction 2. Data Abstraction Functional Abstractioni. Amodule is specified by the method it performs. ii. The details of the algorithm to accomplish the functions are not visible to the user of the function. Functional abstraction forms the basis for Function oriented design approaches. Data Abstraction Details of the data elements are not visible to the users of data. Data Abstraction forms the basis for Object Oriented design approaches. Modularity Modularity specifies to the division of software into separate modules which are differently named and addressed and are integrated later on in to obtain the completely functional software. It is the only property that allows a program to be intellectually manageable. Single large programs are difficult to understand and read due to a large number of reference variables, control paths, global variables, etc.Advantages of Modularity There are several advantages of Modularity ° ° ° ° It allows large programs to be written by several or different people It encourages the creation of commonly used routines to be placed in the library and used by other programs. It simplifies the overlay procedure of loading a large program into main storage. It provides more checkpoints to measure progress. It provides a framework for complete testing, more accessible to test It produced the well designed and more readable program.Disadvantages of Modularity There are several disadvantages of Modularity Execution time maybe, but not certainly, longer © Storage size perhaps, but is not certainly, increased © Compilation and loading time may be longer Inter-module communication problems may be increased o More linkage required, run-time may be longer, more source lines must be written, and more documentation has to be doneStrategy of Design A good system design strategy is to organize the program modules in such a method that are easy to develop and latter too, change. Structured design methods help developers to deal with the size and complexity of programs. Analysts generate instructions for the developers about how code should be composed and how pieces o' code should fit together to form a program. To design a system, there are two possible approaches: 1. Top-down Approach 2. Bottom-up Approach1. Top-down Approach: This approach starts with the identification of the main components and then decomposing them into their more detailed sub-components. 2. Bottom-up Approach: A bottom-up approach begins with the lower details and moves towards up the hierarchy, as shown in fig. This approach is suitable in case of an existing system. <—— Level <—\_!_——— Level
You might also like
Unit 4 Software Design-1
PDF
No ratings yet
Unit 4 Software Design-1
26 pages
Unit 2
PDF
No ratings yet
Unit 2
27 pages
SE Unit-3
PDF
No ratings yet
SE Unit-3
32 pages
SE Unit 3
PDF
No ratings yet
SE Unit 3
11 pages
Software Design Principles
PDF
No ratings yet
Software Design Principles
20 pages
Unit II
PDF
No ratings yet
Unit II
64 pages
Seunit 3
PDF
No ratings yet
Seunit 3
72 pages
pdf one
PDF
No ratings yet
pdf one
12 pages
Software-Design
PDF
No ratings yet
Software-Design
19 pages
SEPM Unit-3
PDF
No ratings yet
SEPM Unit-3
26 pages
Lec - 5
PDF
No ratings yet
Lec - 5
25 pages
Software Design
PDF
No ratings yet
Software Design
14 pages
Unit 2
PDF
No ratings yet
Unit 2
20 pages
Software Engineering Unit 4
PDF
No ratings yet
Software Engineering Unit 4
18 pages
Chapter 4
PDF
No ratings yet
Chapter 4
69 pages
Cycle), Which Moves The Concentration From The Problem Domain To The
PDF
No ratings yet
Cycle), Which Moves The Concentration From The Problem Domain To The
55 pages
Software Design
PDF
No ratings yet
Software Design
12 pages
Module 1
PDF
No ratings yet
Module 1
30 pages
Se 5
PDF
No ratings yet
Se 5
27 pages
RGPV Unit 2 SEM Software Design 2024
PDF
No ratings yet
RGPV Unit 2 SEM Software Design 2024
39 pages
Design Engineering - Software Design
PDF
No ratings yet
Design Engineering - Software Design
84 pages
Software Design (Unit 3)
PDF
No ratings yet
Software Design (Unit 3)
40 pages
Software Eng Unit 3
PDF
No ratings yet
Software Eng Unit 3
32 pages
Lecture On 23-09-2020
PDF
No ratings yet
Lecture On 23-09-2020
4 pages
WINSEM2024-25_SWE2004_ETH_AP2024254000504_2025-01-22_Reference-Material-I
PDF
No ratings yet
WINSEM2024-25_SWE2004_ETH_AP2024254000504_2025-01-22_Reference-Material-I
36 pages
Se 1525002254221
PDF
No ratings yet
Se 1525002254221
36 pages
Design Principles
PDF
No ratings yet
Design Principles
7 pages
Software Engineering
PDF
No ratings yet
Software Engineering
9 pages
Software Design
PDF
No ratings yet
Software Design
91 pages
Wa0010.
PDF
No ratings yet
Wa0010.
16 pages
Presentation 1
PDF
No ratings yet
Presentation 1
10 pages
Software Engineering Unit-3 - 1
PDF
No ratings yet
Software Engineering Unit-3 - 1
11 pages
(13636) Sda Assign 1....
PDF
No ratings yet
(13636) Sda Assign 1....
6 pages
FSeng Chapter 5 - Software Design and System Modeling
PDF
No ratings yet
FSeng Chapter 5 - Software Design and System Modeling
44 pages
Software Design: Unit - Iii
PDF
No ratings yet
Software Design: Unit - Iii
16 pages
Software Design Is A Process of Problem Solving and Planning For A
PDF
No ratings yet
Software Design Is A Process of Problem Solving and Planning For A
5 pages
Unit-3
PDF
No ratings yet
Unit-3
100 pages
Jjhi
PDF
No ratings yet
Jjhi
27 pages
Design Concepts 1
PDF
No ratings yet
Design Concepts 1
21 pages
OOSE UNIT-3
PDF
No ratings yet
OOSE UNIT-3
58 pages
Unit Iii
PDF
No ratings yet
Unit Iii
13 pages
Design Concept in Software Engineering
PDF
No ratings yet
Design Concept in Software Engineering
14 pages
Design Process and Design Quality - Iii Unit
PDF
0% (1)
Design Process and Design Quality - Iii Unit
9 pages
KCA302 SE Unit3 Notes
PDF
No ratings yet
KCA302 SE Unit3 Notes
27 pages
Unit-3
PDF
No ratings yet
Unit-3
29 pages
Software Design Concepts
PDF
No ratings yet
Software Design Concepts
53 pages
Design Concepts and Principles
PDF
No ratings yet
Design Concepts and Principles
14 pages
UNIT_III_Design Engineering
PDF
No ratings yet
UNIT_III_Design Engineering
124 pages
Chapetr 5
PDF
No ratings yet
Chapetr 5
23 pages
Software Engineering Notes UNIT 3 Notes Part 2
PDF
No ratings yet
Software Engineering Notes UNIT 3 Notes Part 2
8 pages
Software Engineering Unit-Iii: School of CSA
PDF
No ratings yet
Software Engineering Unit-Iii: School of CSA
109 pages
Oose II Unit Remaing
PDF
No ratings yet
Oose II Unit Remaing
17 pages
MODULE-III(CSE3005) [Autosaved] (1)
PDF
No ratings yet
MODULE-III(CSE3005) [Autosaved] (1)
32 pages
SCD CHAPTER 2 FALL 2024
PDF
No ratings yet
SCD CHAPTER 2 FALL 2024
18 pages
CB3405_Unit 3_Notes
PDF
No ratings yet
CB3405_Unit 3_Notes
43 pages
Design Concepts and Principles
PDF
No ratings yet
Design Concepts and Principles
59 pages
Unit 3
PDF
No ratings yet
Unit 3
100 pages
Lecture 5 (2)
PDF
No ratings yet
Lecture 5 (2)
27 pages
Software Product Metrics - I
PDF
No ratings yet
Software Product Metrics - I
23 pages
Information Gathering Awad 7
PDF
No ratings yet
Information Gathering Awad 7
49 pages
RDBMS3
PDF
No ratings yet
RDBMS3
13 pages
RDBMS1
PDF
No ratings yet
RDBMS1
21 pages
Role of System Analyst-Awad-5
PDF
No ratings yet
Role of System Analyst-Awad-5
25 pages
RDBMS 10
PDF
No ratings yet
RDBMS 10
11 pages
Related titles
Click to expand Related Titles
Carousel Previous
Carousel Next
Unit 4 Software Design-1
PDF
Unit 4 Software Design-1
Unit 2
PDF
Unit 2
SE Unit-3
PDF
SE Unit-3
SE Unit 3
PDF
SE Unit 3
Software Design Principles
PDF
Software Design Principles
Unit II
PDF
Unit II
Seunit 3
PDF
Seunit 3
pdf one
PDF
pdf one
Software-Design
PDF
Software-Design
SEPM Unit-3
PDF
SEPM Unit-3
Lec - 5
PDF
Lec - 5
Software Design
PDF
Software Design
Unit 2
PDF
Unit 2
Software Engineering Unit 4
PDF
Software Engineering Unit 4
Chapter 4
PDF
Chapter 4
Cycle), Which Moves The Concentration From The Problem Domain To The
PDF
Cycle), Which Moves The Concentration From The Problem Domain To The
Software Design
PDF
Software Design
Module 1
PDF
Module 1
Se 5
PDF
Se 5
RGPV Unit 2 SEM Software Design 2024
PDF
RGPV Unit 2 SEM Software Design 2024
Design Engineering - Software Design
PDF
Design Engineering - Software Design
Software Design (Unit 3)
PDF
Software Design (Unit 3)
Software Eng Unit 3
PDF
Software Eng Unit 3
Lecture On 23-09-2020
PDF
Lecture On 23-09-2020
WINSEM2024-25_SWE2004_ETH_AP2024254000504_2025-01-22_Reference-Material-I
PDF
WINSEM2024-25_SWE2004_ETH_AP2024254000504_2025-01-22_Reference-Material-I
Se 1525002254221
PDF
Se 1525002254221
Design Principles
PDF
Design Principles
Software Engineering
PDF
Software Engineering
Software Design
PDF
Software Design
Wa0010.
PDF
Wa0010.
Presentation 1
PDF
Presentation 1
Software Engineering Unit-3 - 1
PDF
Software Engineering Unit-3 - 1
(13636) Sda Assign 1....
PDF
(13636) Sda Assign 1....
FSeng Chapter 5 - Software Design and System Modeling
PDF
FSeng Chapter 5 - Software Design and System Modeling
Software Design: Unit - Iii
PDF
Software Design: Unit - Iii
Software Design Is A Process of Problem Solving and Planning For A
PDF
Software Design Is A Process of Problem Solving and Planning For A
Unit-3
PDF
Unit-3
Jjhi
PDF
Jjhi
Design Concepts 1
PDF
Design Concepts 1
OOSE UNIT-3
PDF
OOSE UNIT-3
Unit Iii
PDF
Unit Iii
Design Concept in Software Engineering
PDF
Design Concept in Software Engineering
Design Process and Design Quality - Iii Unit
PDF
Design Process and Design Quality - Iii Unit
KCA302 SE Unit3 Notes
PDF
KCA302 SE Unit3 Notes
Unit-3
PDF
Unit-3
Software Design Concepts
PDF
Software Design Concepts
Design Concepts and Principles
PDF
Design Concepts and Principles
UNIT_III_Design Engineering
PDF
UNIT_III_Design Engineering
Chapetr 5
PDF
Chapetr 5
Software Engineering Notes UNIT 3 Notes Part 2
PDF
Software Engineering Notes UNIT 3 Notes Part 2
Software Engineering Unit-Iii: School of CSA
PDF
Software Engineering Unit-Iii: School of CSA
Oose II Unit Remaing
PDF
Oose II Unit Remaing
MODULE-III(CSE3005) [Autosaved] (1)
PDF
MODULE-III(CSE3005) [Autosaved] (1)
SCD CHAPTER 2 FALL 2024
PDF
SCD CHAPTER 2 FALL 2024
CB3405_Unit 3_Notes
PDF
CB3405_Unit 3_Notes
Design Concepts and Principles
PDF
Design Concepts and Principles
Unit 3
PDF
Unit 3
Lecture 5 (2)
PDF
Lecture 5 (2)
Software Product Metrics - I
PDF
Software Product Metrics - I
Information Gathering Awad 7
PDF
Information Gathering Awad 7
RDBMS3
PDF
RDBMS3
RDBMS1
PDF
RDBMS1
Role of System Analyst-Awad-5
PDF
Role of System Analyst-Awad-5
RDBMS 10
PDF
RDBMS 10