Senin, 22 April 2019

Tugas Rekayasa Perangkat Lunak (Kelas SP4.2)

1.Tahapan Pengembangan RPL
a.Rekayasa sistem dan Analisis (Sistem Engineering and Analysis) Karena perangkat lunak adalah bagian dari sistem yang lebih besar, pekerjaan dimulai dari pembentukan kebutuhan-kebutuhan untuk seluruh elemen sistem dan kemudian memilah mana yang untuk pengembangan perangkat lunak. Hal ini penting, ketika perangkat lunak harus berkomunikasi dengan hardware, orang dan basis data.
b.Analisis kebutuhan perangkat lunak (Software Requirements Analysis)Pengumpulan kebutuhan dengan fokus pada perangkat lunak, yang meliputi: Domain informasi, fungsi yang dibutuhkan, unjuk kerja/performansi dan antarmuka. Hasilnya harus didokumentasi dan direview ke pelanggan.
c.Perancangan (Design)Ada 4 atribut untuk program yaitu : Struktur Data, Arsitektur perangkat lunak, Prosedur detil dan Karakteristik Antarmuka. Proses desain mengubah kebutuhan-kebutuhan menjadi bentuk karakteristik yang dimengerti perangkat lunak sebelum dimulai penulisan program. Desain ini harus terdokumentasi dengan baik dan menjadi bagian konfigurasi perangkat lunak.
d.Pembuatan kode (Coding) Penterjemahan perancangan ke bentuk yang dapat dimengerti oleh mesin, dengan menggunakan bahasa pemrograman.
e.Pengujian (Testing) Setelah kode program selesai testing dapat dilakukan. Testing  memfokuskan pada logika internal dari perangkat lunak, fungsi eksternal dan mencari segala kemungkinan kesalahan dan memriksa apakah sesuai dengan hasil yang diinginkan.
f.Pemeliharaan (Maintenance) Merupakan bagian paling akhir dari siklus pengembangan dan dilakukan setelah perangkat lunak dipergunakan.

2.A. ada beberapa karakteristik perangkat lunak dibandingkan dengan perangkat keras yang perlu di ketahui:
1. Perangkat lunak itu dibangun atau direkayasa, tidak dihasilkan dengan menggunakan mesin/tangan seperti perangkat keras.
2. Perangkat lunak itu tidak akan usang atau lusuh sejalan dengan waktu.
3. Perangkat lunak akan terus menerus dibuat menurut pesanan, sadangkan perangkat keras akan disusun dengan menggunakan komponen.

B.1. QUALITY FOCUS (FOKUS KUALITAS) Pada saat kita membangun sebuah aplikasi, Fokus pertama kali yang dibuat adalah Kita akan membangun kualitas yang seperti apa, siapa sasaran kita, aplikasi yang dibangun siapa pengguna dan lai-lain, Oleh karena itu FOKUS KUALITAS ini programmer akan mengetahui level sebuah aplikasi yang dibangun. Misalnya akan dibangun APLIKASI PEMUTAR MUSIC. Dengan berpatokan  pada FOKUS KUALITAS maka Programmer akan mengetahui sampai dimana aplikasi yang akan dibangun. File Music bisa beraneka ragam mulai dari MP3, MP2, AUDIO TRACK, WAV, MDI dan lain-lain. Dengan mengetahui, Aplikasi ini dibuat untuk File music apa, maka programmer akan mengetahui segala hal yang berhubungan dengan program yang dibuat. Apakah aplikasi yang dibuat akan mendukung untuk MP3, MP2, WAV, OGG, TRACK atau yang lainnya. Jika dilihat dari segi Interaksi Manusia dan Komputer, maka dengan FOKUS KUALITAS programmer akan mengetahui bentuk dari aplikasi yang akan bangun.
2. PROCESS Process atau Proses adalah merupakan lapisan kedua dalam SOFTWARE LAYER, Lapisan ini terletak setelah QUALITY FOCUS, hal ini disebabkan setelah diketahui Fokus Kualitas dari  Perangkat Lunak yang akan dibangun, maka pemrogram harus mengetahui bagaimana proses yang harus dijalani oleh pemrograman sehubungan dengan Fokus Kualitas dari Perangkat Lunak yang  diharapkan, Proses-proses ini dilakukan terurut dan tepat, agar  tidak terjadi kesalahan pada saat sebuah aplikasi di Launching. Proses-proses yang ada akan dikerjakan sesuai dengan Kunci Proses Area yang ada (KPA/Key Process Area).
3. METHODS Methods atau Metode merupakan salah satu hal yang penting dalam Pembuatan Perangkat Lunak. Dengan metode, pembuat program akan melakukan langkah-langkah dan tindakan-tindakan yang sesuai dengan metode yang ada. Metode yang digunakan harus disesuaikan dengan perangkat lunak yang dibangun, dan tujuan dari pembuatan perangkat lunak.
4. TOOLS Tools merupakan alat bantu yang dapat digunakan oleh programmer dalam menyelesaikan proyek yang ada. Mulai dari tools animasi tools multimedia, tools normalisasi dan lain-lain. Misalnya : X3D, power designer, paintshop pro, etc.

3.A.  Diagram konteks

B. Dekomposisi Diagram

C. DFD Level 0

D. DFD Level 1

Alasan :
1.Tahapan proses pengembangannya tetap (pasti), mudah diaplikasikan, dan prosesnya teratur.
2.Cocok digunakan untuk produk software/program yang sudah jelas kebutuhannya di awal, sehingga minim kesalahannya.
3.Software yang dikembangkan dengan metode ini biasanya menghasilkan kualitas yang baik.
4.Documen pengembangan sistem sangat terorganisir, karena setiap fase harus terselesaikan dengan lengkap sebelum melangkah ke fase berikutnya.

Selasa, 08 Mei 2018

MENGENAL APA ITU TREE PADA MATERI STUKTUR DATA


Kembali lagi dengan saya kita sekarang akan membahas tentang tree 
langsung saja ya..

 
Dalam materi Struktur data kita sudah belajar mengenai Lingked list seperti Stuck, Queue dimana struktur data tersebut termasuk dalam data yang bersifat linier. Sedangkan TREE adalah sebaliknya, agar lebih paham berikut penjelasaanya.

Tree merupakan salah satu bentuk struktur data tidak linear yang menggambarkan hubungan yang bersifat hirarkis (hubungan one to many) antara elemen-elemen. Tree bisa didefinisikan sebagai kumpulan simpul/node dengan satu elemen khusus yang disebut Root dan node lainnya terbagi menjadi himpunan-himpunan yang saling tak berhubungan satu sama lainnya (disebut subtree). Untuk jelasnya, di bawah akan diuraikan istilah-istilah umum dalam tree :

  => ISTILAH DALAM TREE
a) Prodecessor : node yang berada diatas node tertentu.
b) Successor : node yang berada di bawah node tertentu.
c) Ancestor : seluruh node yang terletak sebelum node tertentu dan terletak pada jalur yang sama.
d) Descendant : seluruh node yang terletak sesudah node tertentu dan terletak pada jalur yang sama.
e) Parent : predecssor satu level di atas suatu node.
f) Child : successor satu level di bawah suatu node.
g) Sibling : node-node yang memiliki parent yang sama dengan suatu node.
h) Subtree : bagian dari tree yang berupa suatu node beserta descendantnya dan memiliki semua karakteristik dari tree tersebut.
i) Size : banyaknya node dalam suatu tree.
j) Height : banyaknya tingkatan/level dalam suatu tree.
k) Root : satu-satunya node khusus dalam tree yang tak punya predecssor.
l) Leaf : node-node dalam tree yang tak memiliki seccessor.
m) Degree : banyaknya child yang dimiliki suatu node.

Beberapa jenis Tree yang memiliki sifat khusus :
Binary Tree adalah tree dengan syarat bahwa tiap node hanya boleh memiliki maksimal dua subtree dan kedua subtree tersebut harus terpisah. Sesuai dengan definisi tersebut, maka tiap node dalam binary tree hanya boleh memiliki paling banyak dua child.


Jenis-jenis Binary Tree :
a) Full Binary Tree

Binary Tree yang tiap nodenya (kuali left)memiliki dua child dan tiap subtree harud mempunyai panjang path yang sama. 

b) Complete Binary Tree

Mirip dengan Full Binary Tree, namun tiap subtree boleh memiliki panjang path yang berbeda. Node kecuali leaf memiliki 0 atau 2 child.

c) Skewed Binary Tree

 Yakni Binary Tree yang semua nodenya(kecuali leaft) hanya memiliki satu child.


Sekian terimakasih dan mohon maaf  bila ada kekurangannya ..

terimakasih..

see you next time...

Tugas Rekayasa Perangkat Lunak (Kelas SP4.2)

1.Tahapan Pengembangan RPL a.Rekayasa sistem dan Analisis (Sistem Engineering and Analysis) Karena perangkat lunak adalah bagian dari siste...