SWEBOX - Design Construction

Post on 20-Feb-2017

64 Views

Category:

Software

5 Downloads

Preview:

Click to see full reader

Transcript

SOFTWARE CONSTRUCTION

KELOMPOK 3:

AZI SUDARMADI | MARDIANA | RIVA FARIDHA

SEFTA TRI WAHYUNI

SOFTWARE CONSTRUCTION

Istilah software construction didasarkan pada rincian pengerjaannya, yang berarti software melalui kombinasi dari koding, verifikasi, unit testing, testing terintregasi dan debugging. Pengetahuan software construction terhubung dengan dengan pengetahuan yang lain, yaitu:

Software Design

Software TestingSoftware Engineering

Software Project

Software Quality

NEXTBACK

SOFTWARE CONSTRUCTION 1. SOFTWARE CONSTRUCTION

FUNDAMENTALS2. MANAGING CONSTRUCTION

3. PRACTICAL CONSIDERATIONS

5. SOFTWARE CONSTRUCTION TOOLS

4. CONSTRUCTION TECHNOLOGIES

1.1 Minimizing Complexity1.2 Anticipating Change 1.3 Constructing for Verification

1.4 Standards in Construction

1. SOFTWARE CONSTRUCTION FUNDAMENTALS

digunakan untuk mendesain

seperti juga untukConstruction.

menjabarkan konsep dan mendeskripsikanbagaimana ketiganya

digunakan dalam pembangunan.

SOFTWARE CONSTRUCTION

Faktor kendala utama menggunakan komputer

adalah kemampuan terbatas. Hal ini

mendorong pembuatan ke sebuah driver yang

paling handal dalam Software Constraction,

yaitu: mengurangi kompleksitas.

MINIMIZING COMPLEXITY

SOFTWARE CONSTRUCTION FUNDAMENTALS

Software merupakan bagian yang tidak

mungkin terhindar dari sebuah perubahan

lingkungan luar. Dan perubahan dari

lingkungan luar tersebut akan mempengaruhi

software dalam banyak hal.

ANTICIPATING CHANGE (ANTISIPASI TERHADAP PERUBAHAN)

SOFTWARE CONSTRUCTION FUNDAMENTALS

Teknik-teknik yang spesifik mendukung dalam perancangan untuk verifikasi, termasuk diantaranya yaitu :• Standar pembuatan kode untuk mendukung

referensi dari kode dan unit testing.• Pengaturan kode untuk mendukung testing secara

otomatis.• Menghindari penggunaan struktur bahasa yang

kompleks dan sulit dimengerti orang lain.

CONSTRUCTING FOR VERIFICATION

SOFTWARE CONSTRUCTION FUNDAMENTALS

Standar - standar yang mempengaruhi

perancangan, meliputi :

• Bahasa Pemrograman

• Metode Komunikasi

• Platform

• Tool

STANDARDS IN CONSTRUCTION (STANDAR DALAM PERANCANGAN)

SOFTWARE CONSTRUCTION FUNDAMENTALS

2.1 Construction Models

2.2 Construction Planning

2.3 Construction Measurement

2. MANAGING CONSTRUCTION

SOFTWARE CONSTRUCTION

Berbagai macam model yang telah dibuat

untuk membangun software, beberapa

diantaranya lebih menekankan pada

perancangan daripada (model) yang lainnya.

CONSTRUCTION MODELS

MANAGING CONSTRUCTION

Pemilihan dari metode construction adalah sebuah

aspek terpenting dalam aktivitas construction

planning.

Pendekatan construction mempengaruhi kemampuan

proyek untuk mengurangi kerumitan, mengantisipasi

perubahan, dan untuk verifikasi.

CONSTRUCTION PLANNING

MANAGING CONSTRUCTION

Banyak aktivitas construction yang dapat ditentukan

atau dipilih, termasuk pengembangan code, pengubahan

code, penggunaan kembali code, penghapusan code,

kerumitan code, statistika pemeriksaan code, dan lainnya.

Measurement berguna untuk tujuan pengontrolan

construction, menjamin kualitas selama construction

memperbaiki proses construction.

CONSTRUCTION MEASUREMENT

MANAGING CONSTRUCTION

3.1 Construction Design3.2 Construction Languages

3.3 Coding3.4 Construction Testing

3.5 ReuseSOFTWARE CONSTRUCTION

3. PRACTICAL CONSIDERATIONS

Dalam membangun struktur fisik harus

beradaptasi dengan membuat modifikasi small-scale

sebagai laporan untuk rencana pembangunan.

Pekerja construction software harus membuat

modifikasi dalam skala yang lebih besar atau skala yang

lebih kecil untuk detail desain software selama

construction.

CONSTRUCTION DESIGN

PRACTICAL CONSIDERATIONS

Linguistic notations dibedakan dalam hal penggunaan

kata atau string dari text untuk menjelaskan software

construction yang komplek, dan gabungan kata / string ke

dalam pola – pola yang mempunyai sintax kalimat.

CONSTRUCTION LANGUAGES

PRACTICAL CONSIDERATIONS

Beberapa pertimbangan yang dipergunakan pada proses penyusunan pengkodingan software :

CODING

Pembuatan source code yang dapat dipahami.

Menggunakan struktur control.Penanganan kondisi error.Pencegahan pelanggaran

sekuriti level kode (Sebagai contoh : buffer yang melebihi indek sebuah array).

Penggunaan sebuah resource melalui penggunaan mekanisme pengeluaran dan tata cara pengaksesan penggunaan resourse yang dapat dipergunakan kembali (termasuk peng-lock-an thread atau database).

Pengorganisasian source code

PRACTICAL CONSIDERATIONS

Proses penyusunan memiliki dua bentuk untuk

pengetesan, dimana sering dipergunakan oleh

software engineer yang membuat kode tersebut :

• Unit testing.

• Integration testing.

CONSTRUCTION TESTING

PRACTICAL CONSIDERATIONS

REUSE

Tugas-tugas yang terkait dalam penggunan kembali penyusunan konstruksi sebelum pengkodingan dan

pengetesan adalah:

Seleksi unit, database, atau tes data reusability,

Evaluasi kode atau tes reusability,

Laporan informasi yang dipergunakan dalam kode baru, test prosedur atau test data.

PRACTICAL CONSIDERATIONS

4.1 API Design4.2 Object-Oriented Runtime Issues

4.3 Parameterisasi dan Generik4.4. Pernyataan, Desain Kontrak, dan

Defensivepemrograman

4.5. Penanganan Kesalahan, Exception Handling, dan Toleransi kesalahan4.6 State-Based and Table-Driven

Construction Techniques4.7. Konfigurasi Runtime dan

Internasionalisasi4.8. Grammar-Based Input Processing

4. CONSTRUCTIONS TECHNOLOGIES

SOFTWARE CONSTRUCTION NEXT

4.9. Primitif Concurrency4.10 Middleware

4.11 Construction Methods for DistributedSoftware

4.12 Membangun Heterogen Sistem4.13 Analisis Kinerja

4.14 Standar Platform4.15 Test-Pertama Programming

4. CONSTRUCTIONS TECHNOLOGIES

BACK NEXT

API DESIGN

API dilaksanakan oleh aplikasi, perpustakaan dan sistem operasi untuk menentukan

bagaimana perangkat lunak lain dapat membuat panggilan ke atau layanan permintaan dari

mereka. Sebuah API menentukan kosa kata dan konvensi memanggil para pemrogram harus

mempekerjakan untuk menggunakan layanan Ini mungkin termasuk spesifikasi untuk rutinitas, struktur data, kelas objek, dan protokol yang

digunakan untuk berkomunikasi antara konsumen dan pelaksana API.

CONSTRUCTION TECHNOLOGIES

BACK NEXT

Objek oriented Bahasa mendukung serangkaian

mekanisme runtime termasuk polimorfisme dan refleksi.

Mekanisme runtime meningkatkan fleksibilitas dan

adaptasi dari objectoriented program. Polimorfisme

adalah kemampuan bahasa untuk mendukung operasi

umum tanpa mengetahui sampai runtime jenis objek

yang kongkrit yang mencangkup perangkat lunak.

OBJECT-ORIENTED RUNTIME ISSUES

CONSTRUCTION TECHNOLOGIES

BACK NEXT

riva faridha
Runtime adalah ketika sebuah program sedang berjalan (atau menjadi executable). Artinya, ketika Anda memulai program berjalan di komputer, itu adalah runtime untuk program tersebut.

PARAMETERISASI DAN GENERIK

Jenis parameter, juga dikenal sebagai generik (Eiffel)

dan template (C ++), memungkinkan definisi jenis

atau kelas tanpa menentukan semua jenis lain.

CONSTRUCTION TECHNOLOGIES

BACK NEXT

PERNYATAAN, DESAIN KONTRAK, DAN DEFENSIVEPEMROGRAMAN

Sebuah pernyataan yang tegas (assertion) adalah predikat executable yang ditempatkan dalam program-biasanya rutin atau makro-yang

memungkinkan pemeriksaan runtime program. Desain kontrak adalah pendekatan pembangunan yang prasyarat dan

postconditions disertakan untuk setiap aktifitas sehari-hari. Pemrograman defensif berarti untuk melindungi rutin dari kebobolan oleh

input yang tidak valid. pemrograman defensif berarti untuk melindungi

rutin dari kebobolan oleh input yang tidak valid.cara umum untuk menangani input tidak valid mencakup

memeriksa nilai-nilai semua parameter masukandan memutuskan bagaimana menangani input buruk.

penegasansering digunakan dalam pemrograman defensif untuk

memeriksa nilai input

CONSTRUCTION TECHNOLOGIES

BACK NEXT

PENANGANAN KESALAHAN, EXCEPTION HANDLING, DAN TOLERANSI KESALAHAN

Penanganan kesalahan mempengaruhi kemampuan

software untuk memenuhi persyaratan yang terkait

dengan kebenaran, ketahanan, dan atribut

nonfungsional lainnya. Assertion kadang-kadang

digunakan untuk memeriksa kesalahan.

CONSTRUCTION TECHNOLOGIES

BACK NEXT

Pemrograman berbasis keadaan, atau pemrograman

berbasis automata, adalah teknologi pemrograman

menggunakan mesin keadaan yang terbatas untuk

menggambarkan perilaku Program.

STATE-BASED AND TABLE-DRIVEN CONSTRUCTION TECHNIQUES

CONSTRUCTION TECHNOLOGIES

BACK NEXT

KONFIGURASI RUNTIME DAN INTERNASIONALISASI

Konfigurasi runtime adalah teknik

yang mengikat nilai-nilai variabel dan

pengaturan program saat program

sedang berjalan, biasanya dengan

memperbarui dan membaca file-file

konfigurasi dalam mode just-in-time.

CONSTRUCTION TECHNOLOGIES

BACK NEXT

Pemrosesan input berbasis tata bahasa melibatkan analisis sintaks, atau

parsing, dari input aliran tanda. Ini melibatkan penciptaan struktur data

(disebut pohon parsing atau pohon sintaks) mewakili input data

GRAMMAR-BASED INPUT PROCESSING

CONSTRUCTION TECHNOLOGIES

BACK NEXT

PRIMITIF CONCURRENCY

Sebuah sinkronisasi primitif adalah abstraksi

pemrograman yang disediakan oleh bahasa

pemrograman atau sistem operasi yang

memfasilitasi concurrency dan sinkronisasi.

CONSTRUCTION TECHNOLOGIES

BACK NEXT

Middleware adalah klasifikasi luas untuk software yang menyediakan layanan di atas lapisan sistem operasi belum di bawah lapisan program aplikasi.

lapisan perangkat lunak yang terletak di antara sistem operasi dan aplikasi pada setiap sisi jaringan komputer terdistribusi. Biasanya, mendukung kompleks, aplikasi bisnis perangkat lunak yang didistribusikan.

MIDDLEWARE

CONSTRUCTION TECHNOLOGIES

BACK NEXT

CONSTRUCTION METHODS FOR DISTRIBUTEDSOFTWARE

Sebuah sistem terdistribusi merupakan kumpulan yang

terpisah secara fisik. Pembangunan perangkat lunak yang

didistribusikan dibedakan dari konstruksi perangkat lunak

tradisional oleh isu-isu seperti paralelisme, komunikasi, dan

toleransi kesalahan.

CONSTRUCTION TECHNOLOGIES

BACK NEXT

Sistem heterogen terdiri dari berbagai unit komputasi

khusus dari berbagai jenis, seperti Digital Signal

Processor (DSP), mikrokontroler,

dan prosesor perifer. Unit-unit komputasi dikendalikan

secara independen dan berkomunikasi dengan satu

sama lain.

MEMBANGUN HETEROGEN SISTEM

CONSTRUCTION TECHNOLOGIES

BACK NEXT

ANALISIS KINERJA

Analisis kinerja adalah penyelidikan informasi

perilaku menggunakan program dikumpulkan

sebagai program dijalankan, dengan tujuan

mengidentifikasi kemungkinan hot spot dalam

program yang akan ditingkatkan.

CONSTRUCTION TECHNOLOGIES

BACK NEXT

Standar platform yang memungkinkan programmer

untuk mengembangkan aplikasi portabel yang dapat

dijalankan dalam lingkungan yang kompatibel tanpa

perubahan.

STANDAR PLATFORM

CONSTRUCTION TECHNOLOGIES

BACK NEXT

TEST-PERTAMA PROGRAMMING

Uji-pertama pemrograman (juga dikenal sebagai

Test- Driven Development-TDD) adalah gaya

pengembangan yang populer di mana uji kasus yang

ditulis sebelum menulis kode apapun.

CONSTRUCTION TECHNOLOGIES

BACK NEXT

5.1. Lingkungan Pengembangan

5.2. GUI Builders

5.3. Pengujian Unit Alat

5.4. Profiling, Analisis Kinerja, dan Mengiris Alat

5. SOFTWARE CONSTRUCTIONS TOOLS

LINGKUNGAN PENGEMBANGAN

Sebuah lingkungan pengembangan, menyediakan

fasilitas yang komprehensif untuk programmer

dalam pembangunan perangkat lunak dengan

mengintegrasikan seperangkat alat pengembangan.

SOFTWARE CONSTRUCTION TOOLS

Sebuah GUI (Graphical User Interface) builder adalah

alat pengembangan perangkat lunak yang

memungkinkan pengembang untuk menciptakan dan

memelihara GUI di WYSIWYG mode (apa yang Anda

lihat adalah apa yang Anda dapatkan).

GUI BUILDERS

SOFTWARE CONSTRUCTION TOOLS

PENGUJIAN UNIT ALAT

Unit pengujian memverifikasi fungsi modul software

di isolasi dari unsur perangkat lunak lain yang

terpisah diuji (misalnya, kelas, rutinitas, komponen).

SOFTWARE CONSTRUCTION TOOLS

Alat analisis kinerja biasanya digunakan untuk

mendukung kode tuning. Alat analisis kinerja

yang paling umum adalah profil alat.

PROFILING, ANALISIS KINERJA, DAN MENGIRIS ALAT

SOFTWARE CONSTRUCTION TOOLS

TERIMA KASIH ATAS PERHATIANNYA

top related