SlideShare a Scribd company logo
PERTEMUAN-13
KONSEP DAN PRINSIP DESAIN
(DESIGN CONCEPTS AND PRINCIPLES)
By : anisah 41812110004
Aliran Informasi Selama Desain
Perangkat Lunak
Desain Perangkat Lunak dan Rekayasa Perangkat Lunak
Desain Data mentransformasi model domain informasi yang dibuat selama
analisis ke dalam struktur data yang akan diperlukan untuk mengimplementasikan
perangkat lunak.
Desain Arsitektur menentukan hubungan diantara elemen-elemen struktur
utama dari program
Desain Interface menggambarkan bagaimana perangkat lunak berkomunikasi
dalam dirinya sendiri dengan system yang berinteroperasi dengannya dan dengan
manusia yang menggunakannya
Desain Prosedural mentransformasi elemen-elemen structural dari arsitektur
program ke dalam suatu deskripsi procedural dari komponen-komponen perangkat
lunak.
PRINSIP-PRINSIP RANCANGAN
ļ± The design process should not suffer from ā€˜tunnel vision.ā€™ ļƒØ harus ada pendekatan-
pendekatan alternative dan menilai masing-masing pendekatan berdasarkan
persyaratan masalah.
ļ± The design should be traceable to the analysis model.
ļ± The design should not reinvent (menciptakan kembali) the wheel. ļƒØ tidak boleh
berulang
ļ± The design should ā€œminimize the intellectual distanceā€(meminimalkan kesenjangan
intelektual) [DAV95] between the software and the problem as it exists in the real
world.
ļ± The design should exhibit uniformity (memperlihatkan kesatuan) and integration.
ļ± The design should be structured to accommodate change. (terstruktur untuk
mengakomodasi perubahan)
ļ± The design should be structured to degrade gently, even when aberrant
(menyimpang dari kebiasaan) data, events, or operating conditions are encountered.
ļ± Design is not coding, coding is not design.
ļ± The design should be assessed (diperkirakan / ditaksir) for quality as it is being
created, not after the fact.
ļ± The design should be reviewed to minimize conceptual (semantic) errors.
KONSEP YANG MENDASAR
ā€¢ Abstractionā€”data, procedure, control
ā€¢ Refinement (penyaringan) ā€”elaboration of detail for all abstractions
ā€¢ Modularityā€” atribut tunggal dari perangkat lunak yang memungkinkan sebuah
program untuk dikelola secara intelektual) compartmentalization of data and
function
ā€¢ Architectureā€”overall structure of the software
o Structural properties
o Extra-structural properties
o Styles and patterns
ā€¢ Procedureā€”the algorithms that achieve function
ā€¢ Hidingā€”controlled interfaces
GAMBARAN PROSEDURAL
LANGKAH-LANGKAH
Open
walk to the door;
reach for knob;
open the door;
walk through;
close the door.
Repeat until door open
turn knob clockwise;
if knob doesnā€™t turn,
then;
turn key out;
find correct key;
insert in lock;
endif;
pull/push door;
move out of way;
end repeat.
RANCANGAN MODULER
easier to build, easier to change, easier to fix ...
RANCANGAN MODULER
ARSITEKTUR
ļ¶ ā€œThe overall structure of the software and the ways in which that structure
provides conceptual integrity for a system.ā€ (struktur keseluruhan
perangkat lunak dan cara dimana struktur memberikan integrasi konseptual
bagi suatu system) [SHA95a]
ļ¶ Structural properties. This aspect of the architectural design representation
defines the components of a system (e.g., modules, objects, filters) and the
manner in which those components are packaged and interact with one
another. For example, objects are packaged to encapsulate both data and
the processing that manipulates the data and interact via the invocation of
methods .
ļ¶ Extra-functional properties. The architectural design description should
address how the design architecture achieves requirements for
performance, capacity, reliability, security, adaptability, and other system
characteristics.
ļ¶ Families of related systems. The architectural design should draw upon
repeatable patterns that are commonly encountered in the design of
families of similar systems. In essence, the design should have the ability to
reuse architectural building blocks (polanya dapat diulangi yang umumnya
ditentukan dalam desain dari keluarga system yang sama)
HIRARKI KONTROL
ā€¢ Represents the organization of program components & implies a
hierarchy of control (merepresentasikan organisasi komponen program
dan mengimplikasikan suatu hirarki control)
ā€¢ Tapi tidak merepresentasikan (Does not represent) :
ļƒ˜ Procedural aspect of SW such as sequence, order, repetition (aspek
prosedur dari perangkat lunak seperti urutan proses, kejadian /
urutan dari suatu keputusan dan pengulangan operasi)
ļƒ˜ Applicability to all architectural styles
CATATAN UNTUK DIAGRAM DI ATAS
o Depth and width provide an indication of the number of levels of control and
overall span of control, respectively
o Fan-out is a measure of the number of modules that are directly controlled by
another module
o Fan-in indicates how many modules directly control a given modules
o A module that control another module is said to be super-ordinate to it
o A module controlled by another is said to be subordinate to the controller
o Eg. M is super-ordinate to a, b & c
o Eg. h is subordinate to e & ultimately to M
PEMBAGIAN STRUKTUR
ļ± Pembagian secara Horizontal
ļ± Pembagian secara Vertical (factoring)
STRUKTUR DATA
ļ± A representation of the logical relationship among individual elements of
data
ā€¢ Scalar item
ā€¢ Sequential vector
ā€¢ N-dimensional space (array)
ā€¢ Linked list
ļ± Hierarchical data structure ā€“ multi linked list
ļ± Different level of abstraction, eg. Stack
MENGAPA (PERLU) INFORMATION HIDING ?
ā€¢ reduces the likelihood of ā€œside effectsā€
ā€¢ limits the global impact of local design decisions
ā€¢ emphasizes communication through controlled interfaces
ā€¢ discourages the use of global data
ā€¢ leads to encapsulationā€”an attribute of high quality design
ā€¢ results in higher quality software
DESIGN HEURISTICS
ļ± Reduce coupling, improve cohesion
ļ± Minimize fan-out, strive for fan-in
ļ± Keep the scope of effect within the scope of control
ļ± Evaluate module interface to reduce complexity and redundancy and improve
consistency
ļ± Function is predictable, but not overly restrictive
ļ± Strive for ā€œcontrolled entryā€ modules by avoiding ā€œpathological connectionā€
DOKUMENTASI RANCANGAN
ļ± Scope of design effort, yang mencakup :
ā€¢ Sasaran system
ā€¢ Persyaratan utama perangkat lunak
ā€¢ Batasan-batasan dan pembatasan desain
ļ± Data design, yang mencakup :
ā€¢ Objek data dan struktur data resultan
ā€¢ Struktur file dan database
ļƒ¼ Struktur file eksternal
a. Struktur logis
b. Deskripsi record logis
c. Metode akses
ļƒ¼ Data global
ļƒ¼ File dan referensi lintas data
ļ± Architectural design, yang mencakup :
ā€¢ Kajian data dan aliran control
ā€¢ Struktur program yang diperoleh
ļ± Interfaces, yang meliputi :
ā€¢ Spesifikasi antarmuka manusia - mesin
ā€¢ Aturan desain antarmuka manusia-mesin
ā€¢ Desain antarmuka eksternal
o Interface untuk data eksternal
o Interface untuk system atau peralatan eksternal
ļ± Components
o Narasi
o Deskripsi
o Bahasa
o Modul yang digunakan
o Struktur data internal
o Ketentuan / larangan
ļ± Cross reference
Test plan yang meliputi :
Panduan pengujian
Strategi integrasi
Pertimbangan khusus
constraints
Supplementary data

More Related Content

What's hot

Unit 3 3 architectural design
Unit 3 3 architectural designUnit 3 3 architectural design
Unit 3 3 architectural design
Hiren Selani
Ā 
Software engineering 17 architectural design
Software engineering 17 architectural designSoftware engineering 17 architectural design
Software engineering 17 architectural design
Vaibhav Khanna
Ā 
Software Architecture Recovery: The 5 Questions You Always Asked Yourself Abo...
Software Architecture Recovery: The 5 Questions You Always Asked Yourself Abo...Software Architecture Recovery: The 5 Questions You Always Asked Yourself Abo...
Software Architecture Recovery: The 5 Questions You Always Asked Yourself Abo...
mircea.lungu
Ā 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
Prabhat gangwar
Ā 
Software Engineering Important Short Question for Exams
Software Engineering Important Short Question for ExamsSoftware Engineering Important Short Question for Exams
Software Engineering Important Short Question for Exams
MuhammadTalha436
Ā 
Software archiecture lecture03
Software archiecture   lecture03Software archiecture   lecture03
Software archiecture lecture03
Luktalja
Ā 
Software System Engineering - Chapter 15
Software System Engineering - Chapter 15Software System Engineering - Chapter 15
Software System Engineering - Chapter 15
Fadhil Ismail
Ā 
Software Architecture and Design Introduction
Software Architecture and Design IntroductionSoftware Architecture and Design Introduction
Software Architecture and Design Introduction
Usman Khan
Ā 
10 architectural design (1)
10 architectural design (1)10 architectural design (1)
10 architectural design (1)
Ayesha Bhatti
Ā 
Software archiecture lecture09
Software archiecture   lecture09Software archiecture   lecture09
Software archiecture lecture09
Luktalja
Ā 
Unit v -Construction and Evaluation
Unit v -Construction and EvaluationUnit v -Construction and Evaluation
Unit v -Construction and Evaluation
Dhivyaa C.R
Ā 
Component level design
Component   level designComponent   level design
Component level design
Midhula Chandren
Ā 
Domain specific Software Architecture
Domain specific Software Architecture Domain specific Software Architecture
Domain specific Software Architecture
DIPEN SAINI
Ā 
Software archiecture lecture04
Software archiecture   lecture04Software archiecture   lecture04
Software archiecture lecture04
Luktalja
Ā 
SWE-401 - 7. Software Design Strategies
SWE-401 - 7. Software Design StrategiesSWE-401 - 7. Software Design Strategies
SWE-401 - 7. Software Design Strategies
ghayour abbas
Ā 
Lecture 2 (Software Processes)
Lecture 2 (Software Processes)Lecture 2 (Software Processes)
Lecture 2 (Software Processes)
Education Front
Ā 
Software architecture Unit 1 notes
Software architecture Unit 1 notesSoftware architecture Unit 1 notes
Software architecture Unit 1 notes
Sudarshan Dhondaley
Ā 
Software architecture
Software architectureSoftware architecture
Software architecture
nazn
Ā 
Slides chapter 9
Slides chapter 9Slides chapter 9
Slides chapter 9
Priyanka Shetty
Ā 
System requirements analysis
System requirements analysisSystem requirements analysis
System requirements analysis
Sharmila Duraipandian
Ā 

What's hot (20)

Unit 3 3 architectural design
Unit 3 3 architectural designUnit 3 3 architectural design
Unit 3 3 architectural design
Ā 
Software engineering 17 architectural design
Software engineering 17 architectural designSoftware engineering 17 architectural design
Software engineering 17 architectural design
Ā 
Software Architecture Recovery: The 5 Questions You Always Asked Yourself Abo...
Software Architecture Recovery: The 5 Questions You Always Asked Yourself Abo...Software Architecture Recovery: The 5 Questions You Always Asked Yourself Abo...
Software Architecture Recovery: The 5 Questions You Always Asked Yourself Abo...
Ā 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
Ā 
Software Engineering Important Short Question for Exams
Software Engineering Important Short Question for ExamsSoftware Engineering Important Short Question for Exams
Software Engineering Important Short Question for Exams
Ā 
Software archiecture lecture03
Software archiecture   lecture03Software archiecture   lecture03
Software archiecture lecture03
Ā 
Software System Engineering - Chapter 15
Software System Engineering - Chapter 15Software System Engineering - Chapter 15
Software System Engineering - Chapter 15
Ā 
Software Architecture and Design Introduction
Software Architecture and Design IntroductionSoftware Architecture and Design Introduction
Software Architecture and Design Introduction
Ā 
10 architectural design (1)
10 architectural design (1)10 architectural design (1)
10 architectural design (1)
Ā 
Software archiecture lecture09
Software archiecture   lecture09Software archiecture   lecture09
Software archiecture lecture09
Ā 
Unit v -Construction and Evaluation
Unit v -Construction and EvaluationUnit v -Construction and Evaluation
Unit v -Construction and Evaluation
Ā 
Component level design
Component   level designComponent   level design
Component level design
Ā 
Domain specific Software Architecture
Domain specific Software Architecture Domain specific Software Architecture
Domain specific Software Architecture
Ā 
Software archiecture lecture04
Software archiecture   lecture04Software archiecture   lecture04
Software archiecture lecture04
Ā 
SWE-401 - 7. Software Design Strategies
SWE-401 - 7. Software Design StrategiesSWE-401 - 7. Software Design Strategies
SWE-401 - 7. Software Design Strategies
Ā 
Lecture 2 (Software Processes)
Lecture 2 (Software Processes)Lecture 2 (Software Processes)
Lecture 2 (Software Processes)
Ā 
Software architecture Unit 1 notes
Software architecture Unit 1 notesSoftware architecture Unit 1 notes
Software architecture Unit 1 notes
Ā 
Software architecture
Software architectureSoftware architecture
Software architecture
Ā 
Slides chapter 9
Slides chapter 9Slides chapter 9
Slides chapter 9
Ā 
System requirements analysis
System requirements analysisSystem requirements analysis
System requirements analysis
Ā 

Viewers also liked

Pert 11 anisah 41812110004
Pert 11 anisah 41812110004Pert 11 anisah 41812110004
Pert 11 anisah 41812110004anisahprasetya
Ā 
Pertemuan 6
Pertemuan 6Pertemuan 6
Pertemuan 6
anisahprasetya
Ā 
Pert 11 anisah 41812110004
Pert 11 anisah 41812110004Pert 11 anisah 41812110004
Pert 11 anisah 41812110004
anisahprasetya
Ā 
Rpl 41812110004 anisah
Rpl 41812110004 anisahRpl 41812110004 anisah
Rpl 41812110004 anisahanisahprasetya
Ā 
Rpl 41812110004 anisah
Rpl 41812110004 anisahRpl 41812110004 anisah
Rpl 41812110004 anisah
anisahprasetya
Ā 
Rpl 41812110004 anisah
Rpl 41812110004 anisahRpl 41812110004 anisah
Rpl 41812110004 anisahanisahprasetya
Ā 
PRINSIP DAN KONSEP ANALISA (ANALYSIS CONCEPT AND PRINCIPLES)
 PRINSIP DAN KONSEP ANALISA (ANALYSIS CONCEPT AND PRINCIPLES) PRINSIP DAN KONSEP ANALISA (ANALYSIS CONCEPT AND PRINCIPLES)
PRINSIP DAN KONSEP ANALISA (ANALYSIS CONCEPT AND PRINCIPLES)
Tinkqi Qtink
Ā 
Bab iv-ketidakpastian
Bab iv-ketidakpastianBab iv-ketidakpastian
Bab iv-ketidakpastian
Wayan Supantara
Ā 
10. manajemen-resiko
10. manajemen-resiko10. manajemen-resiko
10. manajemen-resiko
I-moch Malik
Ā 

Viewers also liked (9)

Pert 11 anisah 41812110004
Pert 11 anisah 41812110004Pert 11 anisah 41812110004
Pert 11 anisah 41812110004
Ā 
Pertemuan 6
Pertemuan 6Pertemuan 6
Pertemuan 6
Ā 
Pert 11 anisah 41812110004
Pert 11 anisah 41812110004Pert 11 anisah 41812110004
Pert 11 anisah 41812110004
Ā 
Rpl 41812110004 anisah
Rpl 41812110004 anisahRpl 41812110004 anisah
Rpl 41812110004 anisah
Ā 
Rpl 41812110004 anisah
Rpl 41812110004 anisahRpl 41812110004 anisah
Rpl 41812110004 anisah
Ā 
Rpl 41812110004 anisah
Rpl 41812110004 anisahRpl 41812110004 anisah
Rpl 41812110004 anisah
Ā 
PRINSIP DAN KONSEP ANALISA (ANALYSIS CONCEPT AND PRINCIPLES)
 PRINSIP DAN KONSEP ANALISA (ANALYSIS CONCEPT AND PRINCIPLES) PRINSIP DAN KONSEP ANALISA (ANALYSIS CONCEPT AND PRINCIPLES)
PRINSIP DAN KONSEP ANALISA (ANALYSIS CONCEPT AND PRINCIPLES)
Ā 
Bab iv-ketidakpastian
Bab iv-ketidakpastianBab iv-ketidakpastian
Bab iv-ketidakpastian
Ā 
10. manajemen-resiko
10. manajemen-resiko10. manajemen-resiko
10. manajemen-resiko
Ā 

Similar to Pertemuan 13

Unit 5 design engineering ssad
Unit 5 design engineering ssadUnit 5 design engineering ssad
Unit 5 design engineering ssad
Preeti Mishra
Ā 
Chapter 08
Chapter 08Chapter 08
Chapter 08
Nazir Ahmed
Ā 
rEFUP.pdf
rEFUP.pdfrEFUP.pdf
rEFUP.pdf
RakeshPatel583282
Ā 
Design concepts in concepts of engineering design
Design concepts in concepts of engineering designDesign concepts in concepts of engineering design
Design concepts in concepts of engineering design
SureshvSuri1
Ā 
Unit_4_Software_Design.pptx
Unit_4_Software_Design.pptxUnit_4_Software_Design.pptx
Unit_4_Software_Design.pptx
taxegap762
Ā 
Design engineering
Design engineeringDesign engineering
Design engineering
Vikram Dahiya
Ā 
Design engineering
Design engineeringDesign engineering
Design engineering
Vikram Dahiya
Ā 
design-concept.ppt
design-concept.pptdesign-concept.ppt
design-concept.ppt
MangeshKetkar1
Ā 
06 fse design
06 fse design06 fse design
06 fse design
Mohesh Chandran
Ā 
Software design
Software designSoftware design
Software design
Zulqarnaintayyab
Ā 
software design: design fundamentals.pptx
software design: design fundamentals.pptxsoftware design: design fundamentals.pptx
software design: design fundamentals.pptx
Dr.Shweta
Ā 
CHAPTER12.ppt
CHAPTER12.pptCHAPTER12.ppt
CHAPTER12.ppt
CharenReposposa
Ā 
Chapter 6 design
Chapter 6 designChapter 6 design
Chapter 6 design
nikshaikh786
Ā 
CS8494 SOFTWARE ENGINEERING Unit-3
CS8494 SOFTWARE ENGINEERING Unit-3CS8494 SOFTWARE ENGINEERING Unit-3
CS8494 SOFTWARE ENGINEERING Unit-3
SIMONTHOMAS S
Ā 
Design process and concepts
Design process and conceptsDesign process and concepts
Design process and concepts
Slideshare
Ā 
Software Architecture Design for Begginers
Software Architecture Design for BegginersSoftware Architecture Design for Begginers
Software Architecture Design for Begginers
Chinh Ngo Nguyen
Ā 
Software design i (2) (1)
Software design   i (2) (1)Software design   i (2) (1)
Software design i (2) (1)
Shagufta shaheen
Ā 
Software engg. pressman_ch-9
Software engg. pressman_ch-9Software engg. pressman_ch-9
Software engg. pressman_ch-9
Dhairya Joshi
Ā 
UNIT-4design-concepts-se-pressman-ppt.PPT
UNIT-4design-concepts-se-pressman-ppt.PPTUNIT-4design-concepts-se-pressman-ppt.PPT
UNIT-4design-concepts-se-pressman-ppt.PPT
malathijanapati1
Ā 
Software engineering
Software engineeringSoftware engineering
Software engineering
Stella526835
Ā 

Similar to Pertemuan 13 (20)

Unit 5 design engineering ssad
Unit 5 design engineering ssadUnit 5 design engineering ssad
Unit 5 design engineering ssad
Ā 
Chapter 08
Chapter 08Chapter 08
Chapter 08
Ā 
rEFUP.pdf
rEFUP.pdfrEFUP.pdf
rEFUP.pdf
Ā 
Design concepts in concepts of engineering design
Design concepts in concepts of engineering designDesign concepts in concepts of engineering design
Design concepts in concepts of engineering design
Ā 
Unit_4_Software_Design.pptx
Unit_4_Software_Design.pptxUnit_4_Software_Design.pptx
Unit_4_Software_Design.pptx
Ā 
Design engineering
Design engineeringDesign engineering
Design engineering
Ā 
Design engineering
Design engineeringDesign engineering
Design engineering
Ā 
design-concept.ppt
design-concept.pptdesign-concept.ppt
design-concept.ppt
Ā 
06 fse design
06 fse design06 fse design
06 fse design
Ā 
Software design
Software designSoftware design
Software design
Ā 
software design: design fundamentals.pptx
software design: design fundamentals.pptxsoftware design: design fundamentals.pptx
software design: design fundamentals.pptx
Ā 
CHAPTER12.ppt
CHAPTER12.pptCHAPTER12.ppt
CHAPTER12.ppt
Ā 
Chapter 6 design
Chapter 6 designChapter 6 design
Chapter 6 design
Ā 
CS8494 SOFTWARE ENGINEERING Unit-3
CS8494 SOFTWARE ENGINEERING Unit-3CS8494 SOFTWARE ENGINEERING Unit-3
CS8494 SOFTWARE ENGINEERING Unit-3
Ā 
Design process and concepts
Design process and conceptsDesign process and concepts
Design process and concepts
Ā 
Software Architecture Design for Begginers
Software Architecture Design for BegginersSoftware Architecture Design for Begginers
Software Architecture Design for Begginers
Ā 
Software design i (2) (1)
Software design   i (2) (1)Software design   i (2) (1)
Software design i (2) (1)
Ā 
Software engg. pressman_ch-9
Software engg. pressman_ch-9Software engg. pressman_ch-9
Software engg. pressman_ch-9
Ā 
UNIT-4design-concepts-se-pressman-ppt.PPT
UNIT-4design-concepts-se-pressman-ppt.PPTUNIT-4design-concepts-se-pressman-ppt.PPT
UNIT-4design-concepts-se-pressman-ppt.PPT
Ā 
Software engineering
Software engineeringSoftware engineering
Software engineering
Ā 

Recently uploaded

Day 2 - Intro to UiPath Studio Fundamentals
Day 2 - Intro to UiPath Studio FundamentalsDay 2 - Intro to UiPath Studio Fundamentals
Day 2 - Intro to UiPath Studio Fundamentals
UiPathCommunity
Ā 
What is an RPA CoE? Session 2 ā€“ CoE Roles
What is an RPA CoE?  Session 2 ā€“ CoE RolesWhat is an RPA CoE?  Session 2 ā€“ CoE Roles
What is an RPA CoE? Session 2 ā€“ CoE Roles
DianaGray10
Ā 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
Miro Wengner
Ā 
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-EfficiencyFreshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
ScyllaDB
Ā 
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving
Ā 
QA or the Highway - Component Testing: Bridging the gap between frontend appl...
QA or the Highway - Component Testing: Bridging the gap between frontend appl...QA or the Highway - Component Testing: Bridging the gap between frontend appl...
QA or the Highway - Component Testing: Bridging the gap between frontend appl...
zjhamm304
Ā 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
Ivo Velitchkov
Ā 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
Ā 
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and BioinformaticiansBiomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Neo4j
Ā 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
Pablo GĆ³mez Abajo
Ā 
ScyllaDB Tablets: Rethinking Replication
ScyllaDB Tablets: Rethinking ReplicationScyllaDB Tablets: Rethinking Replication
ScyllaDB Tablets: Rethinking Replication
ScyllaDB
Ā 
Demystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through StorytellingDemystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through Storytelling
Enterprise Knowledge
Ā 
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
DanBrown980551
Ā 
Session 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdfSession 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdf
UiPathCommunity
Ā 
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid ResearchHarnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Neo4j
Ā 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
Fwdays
Ā 
"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota
Fwdays
Ā 
Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
Mydbops
Ā 
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham HillinQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
LizaNolte
Ā 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
operationspcvita
Ā 

Recently uploaded (20)

Day 2 - Intro to UiPath Studio Fundamentals
Day 2 - Intro to UiPath Studio FundamentalsDay 2 - Intro to UiPath Studio Fundamentals
Day 2 - Intro to UiPath Studio Fundamentals
Ā 
What is an RPA CoE? Session 2 ā€“ CoE Roles
What is an RPA CoE?  Session 2 ā€“ CoE RolesWhat is an RPA CoE?  Session 2 ā€“ CoE Roles
What is an RPA CoE? Session 2 ā€“ CoE Roles
Ā 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
Ā 
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-EfficiencyFreshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Ā 
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024
Ā 
QA or the Highway - Component Testing: Bridging the gap between frontend appl...
QA or the Highway - Component Testing: Bridging the gap between frontend appl...QA or the Highway - Component Testing: Bridging the gap between frontend appl...
QA or the Highway - Component Testing: Bridging the gap between frontend appl...
Ā 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
Ā 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Ā 
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and BioinformaticiansBiomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Ā 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
Ā 
ScyllaDB Tablets: Rethinking Replication
ScyllaDB Tablets: Rethinking ReplicationScyllaDB Tablets: Rethinking Replication
ScyllaDB Tablets: Rethinking Replication
Ā 
Demystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through StorytellingDemystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through Storytelling
Ā 
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
Ā 
Session 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdfSession 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdf
Ā 
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid ResearchHarnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Ā 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
Ā 
"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota
Ā 
Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
Ā 
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham HillinQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
Ā 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
Ā 

Pertemuan 13

  • 1. PERTEMUAN-13 KONSEP DAN PRINSIP DESAIN (DESIGN CONCEPTS AND PRINCIPLES) By : anisah 41812110004
  • 2. Aliran Informasi Selama Desain Perangkat Lunak
  • 3. Desain Perangkat Lunak dan Rekayasa Perangkat Lunak Desain Data mentransformasi model domain informasi yang dibuat selama analisis ke dalam struktur data yang akan diperlukan untuk mengimplementasikan perangkat lunak. Desain Arsitektur menentukan hubungan diantara elemen-elemen struktur utama dari program Desain Interface menggambarkan bagaimana perangkat lunak berkomunikasi dalam dirinya sendiri dengan system yang berinteroperasi dengannya dan dengan manusia yang menggunakannya Desain Prosedural mentransformasi elemen-elemen structural dari arsitektur program ke dalam suatu deskripsi procedural dari komponen-komponen perangkat lunak.
  • 4.
  • 5. PRINSIP-PRINSIP RANCANGAN ļ± The design process should not suffer from ā€˜tunnel vision.ā€™ ļƒØ harus ada pendekatan- pendekatan alternative dan menilai masing-masing pendekatan berdasarkan persyaratan masalah. ļ± The design should be traceable to the analysis model. ļ± The design should not reinvent (menciptakan kembali) the wheel. ļƒØ tidak boleh berulang ļ± The design should ā€œminimize the intellectual distanceā€(meminimalkan kesenjangan intelektual) [DAV95] between the software and the problem as it exists in the real world. ļ± The design should exhibit uniformity (memperlihatkan kesatuan) and integration. ļ± The design should be structured to accommodate change. (terstruktur untuk mengakomodasi perubahan) ļ± The design should be structured to degrade gently, even when aberrant (menyimpang dari kebiasaan) data, events, or operating conditions are encountered. ļ± Design is not coding, coding is not design. ļ± The design should be assessed (diperkirakan / ditaksir) for quality as it is being created, not after the fact. ļ± The design should be reviewed to minimize conceptual (semantic) errors.
  • 6. KONSEP YANG MENDASAR ā€¢ Abstractionā€”data, procedure, control ā€¢ Refinement (penyaringan) ā€”elaboration of detail for all abstractions ā€¢ Modularityā€” atribut tunggal dari perangkat lunak yang memungkinkan sebuah program untuk dikelola secara intelektual) compartmentalization of data and function ā€¢ Architectureā€”overall structure of the software o Structural properties o Extra-structural properties o Styles and patterns ā€¢ Procedureā€”the algorithms that achieve function ā€¢ Hidingā€”controlled interfaces
  • 8. LANGKAH-LANGKAH Open walk to the door; reach for knob; open the door; walk through; close the door. Repeat until door open turn knob clockwise; if knob doesnā€™t turn, then; turn key out; find correct key; insert in lock; endif; pull/push door; move out of way; end repeat.
  • 9. RANCANGAN MODULER easier to build, easier to change, easier to fix ...
  • 11. ARSITEKTUR ļ¶ ā€œThe overall structure of the software and the ways in which that structure provides conceptual integrity for a system.ā€ (struktur keseluruhan perangkat lunak dan cara dimana struktur memberikan integrasi konseptual bagi suatu system) [SHA95a] ļ¶ Structural properties. This aspect of the architectural design representation defines the components of a system (e.g., modules, objects, filters) and the manner in which those components are packaged and interact with one another. For example, objects are packaged to encapsulate both data and the processing that manipulates the data and interact via the invocation of methods . ļ¶ Extra-functional properties. The architectural design description should address how the design architecture achieves requirements for performance, capacity, reliability, security, adaptability, and other system characteristics. ļ¶ Families of related systems. The architectural design should draw upon repeatable patterns that are commonly encountered in the design of families of similar systems. In essence, the design should have the ability to reuse architectural building blocks (polanya dapat diulangi yang umumnya ditentukan dalam desain dari keluarga system yang sama)
  • 12. HIRARKI KONTROL ā€¢ Represents the organization of program components & implies a hierarchy of control (merepresentasikan organisasi komponen program dan mengimplikasikan suatu hirarki control) ā€¢ Tapi tidak merepresentasikan (Does not represent) : ļƒ˜ Procedural aspect of SW such as sequence, order, repetition (aspek prosedur dari perangkat lunak seperti urutan proses, kejadian / urutan dari suatu keputusan dan pengulangan operasi) ļƒ˜ Applicability to all architectural styles
  • 13.
  • 14. CATATAN UNTUK DIAGRAM DI ATAS o Depth and width provide an indication of the number of levels of control and overall span of control, respectively o Fan-out is a measure of the number of modules that are directly controlled by another module o Fan-in indicates how many modules directly control a given modules o A module that control another module is said to be super-ordinate to it o A module controlled by another is said to be subordinate to the controller o Eg. M is super-ordinate to a, b & c o Eg. h is subordinate to e & ultimately to M PEMBAGIAN STRUKTUR ļ± Pembagian secara Horizontal ļ± Pembagian secara Vertical (factoring)
  • 15. STRUKTUR DATA ļ± A representation of the logical relationship among individual elements of data ā€¢ Scalar item ā€¢ Sequential vector ā€¢ N-dimensional space (array) ā€¢ Linked list ļ± Hierarchical data structure ā€“ multi linked list ļ± Different level of abstraction, eg. Stack
  • 16.
  • 17. MENGAPA (PERLU) INFORMATION HIDING ? ā€¢ reduces the likelihood of ā€œside effectsā€ ā€¢ limits the global impact of local design decisions ā€¢ emphasizes communication through controlled interfaces ā€¢ discourages the use of global data ā€¢ leads to encapsulationā€”an attribute of high quality design ā€¢ results in higher quality software DESIGN HEURISTICS ļ± Reduce coupling, improve cohesion ļ± Minimize fan-out, strive for fan-in ļ± Keep the scope of effect within the scope of control ļ± Evaluate module interface to reduce complexity and redundancy and improve consistency ļ± Function is predictable, but not overly restrictive ļ± Strive for ā€œcontrolled entryā€ modules by avoiding ā€œpathological connectionā€
  • 18.
  • 19. DOKUMENTASI RANCANGAN ļ± Scope of design effort, yang mencakup : ā€¢ Sasaran system ā€¢ Persyaratan utama perangkat lunak ā€¢ Batasan-batasan dan pembatasan desain ļ± Data design, yang mencakup : ā€¢ Objek data dan struktur data resultan ā€¢ Struktur file dan database ļƒ¼ Struktur file eksternal a. Struktur logis b. Deskripsi record logis c. Metode akses ļƒ¼ Data global ļƒ¼ File dan referensi lintas data ļ± Architectural design, yang mencakup : ā€¢ Kajian data dan aliran control ā€¢ Struktur program yang diperoleh ļ± Interfaces, yang meliputi : ā€¢ Spesifikasi antarmuka manusia - mesin ā€¢ Aturan desain antarmuka manusia-mesin
  • 20. ā€¢ Desain antarmuka eksternal o Interface untuk data eksternal o Interface untuk system atau peralatan eksternal ļ± Components o Narasi o Deskripsi o Bahasa o Modul yang digunakan o Struktur data internal o Ketentuan / larangan ļ± Cross reference Test plan yang meliputi : Panduan pengujian Strategi integrasi Pertimbangan khusus constraints Supplementary data