Software design (SWEBOK3 Knowledge area)
-
Upload
xhunt600 -
Category
Presentations & Public Speaking
-
view
168 -
download
0
Transcript of Software design (SWEBOK3 Knowledge area)
![Page 1: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/1.jpg)
SOFTWARE DESIGN
By
Chowdhury Mohammad Ashikur Rahman
WELCOME
TO
THE PRESENTATION ON
1
![Page 2: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/2.jpg)
OVERVIEW
SOFTWARE DESIGN
FUNDAMENTALS
KEY ISSUES IN
SOFTWARE DESIGN
SOFTWARE STRUCTURE &
ARCHITECTURE
USER INTERFACE DESIGN
SOFTWARE DESIGN QUALITY
ANALYSIS & EVALUATION
SOFTWARE DESIGN NOTATIONS
SOFTWARE DESIGN STRATEGIES
& METHODS
SOFTWARE DESIGN TOOLS
2
![Page 3: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/3.jpg)
1.SOFTWARE
DESIGN
FUNDAMENTALS
A Design can be considered
as a form of solving
problems
General Design And Concepts
of
Software Design
Software Design ProcessSoftware Design Principles
3 [swebokv3]
![Page 4: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/4.jpg)
General Design And Concepts of
Software Design
Software Design Process
Architectural design
Detailed design describes the desired
behaviour of these components
Software design principles
Goals, Constraints, Alternatives,
Representation etc.
Coupling & Cohesion;
Decomposition & modularization;
Encapsulation;
Sufficiency, completeness & primitiveness;
Separation of concerns etc.
4 [BUD03][SOM11][PAG99]
![Page 5: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/5.jpg)
2.KEY ISSUES IN
SOFTWARE
DESIGN
RELIABILITY
USABILITY
5 [SWEBOKV3]
![Page 6: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/6.jpg)
OTHER ISSUES
CONCURRENCY
Interaction,
Presentation &
Distribution of
components
Decomposing software into design,
task & deals with efficiency, Atomicity,
scheduling etc.
Concerned with how to handle long-lived data.
Structure & organize interactions with users
along with the Presentation of information.
How to prevent, tolerate, and process errors &
deals with Exceptional conditions.
6 [SOM11][BRO08][ALL08]
![Page 7: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/7.jpg)
3.SOFTWARE STRUCTURE
&
ARCHITECTUE
The set of structures needed
to reason about the system
7[CLE10]
![Page 8: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/8.jpg)
Creational patterns, Structural patterns &
Behavioural patterns.
Creative process. A number of fundamental
Decisions are required during the design.
Logical view vs. process view vs.
physical view vs. development view
General Structures;
Distributed Systems;
Interactive systems;
Adaptable Systems etc.
Reuse of software design &
Components By identifying
the commonalities8
[SOM11][CLE10][GAM94]
![Page 9: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/9.jpg)
4.USER INTERFACE
DESIGN
The user interface should be
Designed to match the skills,
Experience and expectations
Of its anticipated users.
9[SWEBOKV3]
![Page 10: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/10.jpg)
General User Interface
Design principles
User Interface Design
Issues
The design of User
Interaction Modalities
design of information
presentation
User Interface design
process
Localization &
Internationalization
Metaphors & conceptual
Models
There also belong....
10 [SOM11][NIE93]
![Page 11: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/11.jpg)
5. Software Design
Quality Analysis &
Evaluation
Quality attributes
Quality analysis &
evaluation techniques
Measures
Maintainability, Portability, Usability,
Testability etc.
Software design reviews;
Static analysis;
Simulation & prototyping.
Function based & object oriented
11 [BUD03][SOM11]
![Page 12: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/12.jpg)
6.SOFTWARE DESIGN
NOTATIONS
Software design is often
accomplished Using multiple
Notations...
12[SWEBOKV3]
![Page 13: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/13.jpg)
Few words on software design notations....
Notations represent software design artefacts. Some are used to describe
The structural organization of a design & rest others to represent the
Software behaviour. Certain notations are used mostly during architectural
Design. For instance, a email class diagram:
MAIL SYSTEM
AUDIO/
VIDEOCOMMUNICATION
13
[BUD03][SOM11][PAG99][BRO08][CLE10]
![Page 14: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/14.jpg)
7.SOFTWARE
DESIGN
STRATEGIES
&
METHODSGeneral strategies
Function oriented
structured design
Object-oriented design
Data-structured centred
design
Component based design
14 [BUD03][SOM11][BRO08]
![Page 15: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/15.jpg)
8.SOFTWARE DESIGN
TOOLS
15[cle10]
![Page 16: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/16.jpg)
Software designing tools support the part
or whole of the following activities:
To translate the requirements model
Into a design representation.
To provide support for representing
Functional components and their
Interfaces.
To implement heuristics refinement and
Partitioning.
To provide guidelines for quality
Assessment.
16[CLE10]
![Page 17: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/17.jpg)
SUMMARY
Among many software development steps software design is almost the
foremost requirement of Further software construction.
Software design does not ensure or measure the success or failure of A
software but it delivers the whole instruction set to the developers.
It provides the nifty idea of a Complete software construction.
Finally, knowledge of software design might be beneficiary during The
software development which would end up with a successful and
complete software.
17
![Page 18: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/18.jpg)
1. T. DeMarco,”The Paradox of Software Architecture and
Design”, Stevens Prize Lecture, 19902. D. Budgen, Software Design, 2nd ed., Addison-Wesley, 2003
3. I. Sommerville, Software Engineering, 9th ed., Addison-
Wesley, 2011
4. M. Page-Jones, Fundamentals of Object-Oriented Design in
UML, 1st ed., Addision-Wesley, 1990.
5. J.G. Brookshear, Computer Science: An Overview, 10th ed.,
Addison-Wesley, 2008
18
![Page 19: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/19.jpg)
6. J.H. Allen et al., Software Security Engineering: A Guide
for Project Managers, Addison-Wesley, 2008
7. P. Clements et al., Documenting Software Architectures:
Views and Beyond, 2nd ed., Pearson Education, 2010.
8. J. Nielsen, Usability Engineering, Morgon Kaufmann, 1993.
9. Email class diagram: (slide 13)
http://creately.com/diagram/example/h0qvwe791/Class+
Diagram+of+Email+System
10. luiscastellanos.files.wordpress.com/2007/03/swebokv3.pdf
19
![Page 20: Software design (SWEBOK3 Knowledge area)](https://reader036.fdocuments.us/reader036/viewer/2022081404/559e9dd51a28abd9048b46d6/html5/thumbnails/20.jpg)
THANKS
20