Showing posts with label RPL. Show all posts
Showing posts with label RPL. Show all posts

Sunday, May 27, 2012

Share cara belajar buat UAS RPL

just share aja sih atas materi yang harus dipelajari buat menghadapi UAS RPL.

  1. baca" semua slide yang di kasih bapa dosen, apalagi yang prinsip dan konsep dihafalin
  2. hafalin konsep desain dan kohesi, ada ko di blog ini penjelasanya
  3. mengerti cara buat structure chart ( yang pasti bisa buat context diagram, dfd dll materi pas mau uts)
  4. mengerti cara struktur buat testing dan hafalin macam" functional testing dan structural testing, ada ko penjelasannya di blog ini juga

ya paling itu aja sih menurut saya, CMIIW and good luck

Test Techinques

Test Techniques

• REQUIREMENTS TESTING - Assures that the system performs as specified in order to meet the needs of the
users. The specifications map back to specific requirements and those requirements represent the real and
complete user set of requirements. All policies and regulations have been adhered to. Requirements
testing looks for complete traceability of each discrete requirement statement to each detail unit of
technology implementation and documentation.
• REGRESSION TESTING - Assures that anything unchanged still performs correctly. All unchanged system
components still function as expected and all manual procedures surrounding the systems are still correct.
The potential scope of testing is theoretically largest in regression testing since the entire universe of
technology and documentation outside of a project's scope should be retested to assure no negative
unplanned impacts. In fact, risk assessment can be used to dramatically limit the scope of regression
testing to those technology and documentation components that are reasonably at risk.
• ERROR HANDLING TESTING - Assures that errors can be prevented or detected, and then corrected. A variety
of errors of different severity are intentionally introduced into the test cycles.
• MANUAL SUPPORT TESTING - Assures the people-computer combination produces the right result. All manual
procedures required to use and operate the system functions have been developed and implemented.
• INTERSYSTEMS TESTING - Assures that data is correctly passed from system to system. All intersystem
parameters have changed and foreign system documentation has been updated.
• CONTROL TESTING - Assures that controls reduce system risk to an acceptable level. All data and process
reconciliation procedures work with all appropriate manual controls in place.
• PARALLEL TESTING - Old systems and new system are run and the results are compared to detect unplanned
differences. The old and new system outputs can be reconciled within the limits imposed by new system
functions.
• STRESS TESTING - Assures that the system performs with expected high volumes. Sufficient technical
resources have been allocated so that operational capability can be maintained under maximum volume
and pressure.
• EXECUTION TESTING - Assures that the system achieves desired level of performance. All transaction
turnaround time is adequate and execution doesn't preclude other operational activities within the technical
environment.
• RECOVERY TESTING - Assures that the system can be returned to an operational status after a failure.
Backup data and recovery procedures are in place and working, including major disaster recovery planning
and rehearsal.
• OPERATIONS TESTING - Assures that the system can be executed in a normal operational status. Only
production documentation is needed in order to operate system functions.
• COMPLIANCE TESTING - Assures that the system is developed in accordance with standards and procedures.
All standards have been followed and all documentation is complete and in place.
• SECURITY TESTING - Assures that the system is protected in accordance with importance to organization.

Saturday, May 26, 2012

Level Cohesion

Haloo, mau share aja nih tentang kohesi, kohesi itu sendiri berkaitan dengan aktifitas di dalam modul yang semakin tinggi kohesi semakin baik pula..

kohesi ada 7 macam :
  1. Functional cohesion : hanya mengerjakan satu tugas dan hanya mempunyai satu tujuan
  2. Sequential cohesion : modul mengerjakan urutan tugas dan dengan memakai struktur data yg sama
  3. Communicational cohesion : modul berisi sejumlah aktifitas dengan memakai data yg sama
  4. Procedural cohesion : Modul mengerjakan urutan proses tertentu
  5. Temporal cohesion : modul berisi kelompok komponen modul dan terkelompok karena kesamaan waktu eksekusi
  6. Logical cohesion : modul berisi komponen yang mengerjakan tugas yang sama
  7. Coincidentail cohesion : modul mengerjakan beragam tugas yang tidak saling terkait

Prinsip & Konsep design

Disini saya akan share latihan untuk uas RPL besok nih , dimulai dari prinsip & konsep design.. langsung aja ke definisi design

Definisi design : Proses pendefinisian arsitektur PL, komponen, modul, antarmuka, pendekatan pengujian serta data untuk memenuhi kebutuhan yang telah ditentukan.

Model proses design
 kemudian terdapat tahap design secara umum, antara lain :
  1. Penentuan solusi
  2. Validasi solusi
  3. Memodelkan Solusi
  4. Memperbaiki dan menjabarkan solusi
Pemodelan design
  1. design data : Data design ( proses transformasi domain informasi yan dibentuk pada saat analisis menjadi struktur data yang dibutuhkan pada tahapan implementasi)
  2. design arsitektural : structure chart ( mendefinisikan relasi antar elemen" struktural yang utama dari program menjadi kerangka modular)
  3. design antarmuka : mockup / UI kasar (menjabarkan bagaimana PL dapat berkomunikasi dengan komponen lain)
  4. design prosedural : algoritma /pseudo code ( mentransformasikan elemen" struktural pada arsitektur program menjadi deskripsi prosedural dari komponen" PL )

Konsep design
  1. Abstraksi ( konsep rekayasa system pada level generalisasi tertentu)
  2. penghalusan/perbaikan ( setiap langkah design PL dilakukan refinement)
  3. modularitas (konsep yang dapat didekoposisi menjadi komponen")
  4. arsitektur perangkat lunak (mendeskripsikan PL secara keseluruhan)
  5. control hierarchy ( merepresentasikan organisasi modul")
  6. structural partitioning (struktur program harus dapat dipartisi vertikal,horizontal)
  7. data structure ( representasi dari keterhubungan logik antar elemen data)
  8. sw procedure ( penjabarak detail pemrosesan dari setiap modul)
  9. information hiding ( modul" PL harus dispesifikasikan dan didisian)
Penjabaran dari konsep design saya hanya menjabarkan dari soal ujian tahun kemarin :p , soalnya buat acuan belajar juga.. he hee

soalnya seperti ini :
berikan 3 contoh abstraksi data berikut abstraksi procedure yang dapat digunakan untuk memanipulasi data tersebut!
Jawab :
Physical level :
Memperlihatkan data & strukturnya
Conceptual level :
memperlihatkan data misalnya
data karyawan direpresentasikan
dalam beberapa file
View level :
data yang terlihat pada
hasil pengolahan dari
applikasi basis data
nah itu jawaban yang memenuhi pertanyaan di atas..
lanjut ke...

Jelaskan bagaimana keterkaitan konsep "information"hiding" (sebagai atribut dari modularitas efektif) dengan konsep "module independence". berikan contoh.
 langsung jawab bahwa :
Functional Independence, modularitas PL ditentukan
Coupling : keterkaitan antar modul dalam PL
Cohesion : keterkaitan komponen" dalam 1 modul
jadi konsep diaman informasi dalam modul tidak dapat diakses oleh modul lain yang tidak membutuhkan informasi tersebut.

Sunday, March 25, 2012

Model Proses dalam RPL

Rekayasa Perangkat Lunak - Model Proses


Waterfall model

penjelasan :
Ada lima tahap dalam model waterfall, yaitu: Requirement Analysis, System Design, Implementation, Integration & Testing, Operations & Maintenance. Sesuai dengan namanya waterfall (air terjun) maka tahapan dalam model ini disusun bertingkat, setiap tahap dalam model ini dilakukan berurutan, satu sebelum yang lainnya (lihat tanda anak panah). Selain itu dari satu tahap kita dapat kembali ke tahap sebelumnya.



Linear model

penjelasan :
model ini dilakukan secara sekuensial melakukan iterasi tidak langsung . jadi pertahap diselesaikan dalam masing" proses. Hal ini berakibat bila ada perubahan yg diragukan pd saat proyek berjalan.



Incremental model

penjelasan :
Model incremental menggabungkan elemen-elemen model sekuensial linier (diimplementasikan secara berulang) dengan filosofi prototype interatif. Model ini memakai urutan-urutan linier di dalam model yang membingungkan, seiring dengan laju waktu kalender. Setiap urutan linier menghasilkan pertambahan perangkat lunak yang kemudian dapat disampaikan kepada pengguna.




RAD model

penjelasan : Proses pembangunan PL yang incremental. RAD menekankan pada siklus pembangunan yang pendek/singkat.
Kelemahan dalam model ini:
1.tidak cocok untuk proyek skala besar
2. proyek bisa gagal karena waktu yang disepakati tidak dipenuhi
3.sistem yang tidak bisa dimodularisasi tidak cocok untuk model ini
4. resiko teknis yang tinggi juga kurang cocok untuk model ini
Tahapan-tahapan RAD :
1.Business modelling
2.Data modelling
3.Process Modelling
4.Application Generation
5.Testing and Turnover



 


Prototype model

Penjelasan: Pendekatan dalam rekayasa perangkat lunak yang secara langsung mendemonstrasikan bagaimana sebuah perangkat lunak atau komponen-komponen perangkat lunak akan bekerja dalam lingkungannya sebelum tahapan konstruksi aktual dilakukan.













Spiral model

Penjelasan: Proses software yang evolusioner yang merangkai sifat iteratif dari prototipe dengan cara kontrol dan aspek sistematis dari model sekuensial linier. pendekatan yang paling realistik untuk sistem skala besar. Metode ini menggunakan pendekatan evolusioner, sehingga pelanggan dan pengembang dapat mengerti dan bereaksi terhadap suatu resiko yang mungkin terjadi.





V-shapes model

penjelasan : proses digunakan untuk projek yang ukuran yang kecil atau medium , model nya sama seperti waterfall tetapi yang membedakan dalam setiap proses ini, dalam proses ini memiliki akomodasi yang banyak dalam perencanaan untuk menguji dan setiap tahapannya harus di uji, setiap proses harus jelas











Rational Unified Process


penjelasan :RUP menetapkan 4 phases development, sejumlah iterasi dilakukan terpisah yang harus memenuhi kriteria yang telah ditetapkan sebelum untuk melakukan tahap berikutnya


Saturday, March 24, 2012

Latihan UTS RPL

1. tuliskan kembali definisi dari perangkat lunak?
jawab 
- Instruksi (program komputer) yang bila dieksekusi dapat menjalankan fungsi tertentu 
- Struktur data yang dapat membuat program memanipulasi informasi
- Dokumen yang menjelaskan operasi dan penggunaan program (Roger Pressman).

atau
Program komputer, prosedur, aturan, dan dokumentasi yang berkaitan dengannya serta data yang berkaitan dengan operasi suatu sistem komputer.

2. Mengapa untuk membuat perangkat lunak yang berkualitas dibutuhkan rekayasa perangkat lunak?
jawab
-Perangkat lunak yang dihasilkan sesuai dengan kebutuhan yang diinginkan/dibutuhkan pemakai.
-Perangkat lunak dapat digunakan dan beroperasi dengan benar di lingkungan sebenarnya.
-Perangkat lunak memberikan manfaat bagi pemakai yang menggunakannya.
3. 
 sebagai panduan anda, lihat kamus data berikut:
Qset : query + id-query
Query : *command dari pengguna/aplikasi untuk mendapatkan/mengakses data*
ID_query : *penanda query*
Client_result : *hasil query yang akan ditampilkan ke client*
Qset_master : ['update'|'insert'|'delete'] *query yang diberikan ke server master untuk dieksekusi*
Qset_slave : ['select'] *query yang diberikan ke server slave untuk dieksekusi*
Master_result : *hasil query yang dieksekusi di server master*
Error_msg : [A-Z]{350} *pesan kesalahan yang muncul apabila query dari user salah sintaksnya*
Parse_qset : qset_id + qset
Qset_id : ['select'|'non-select']



4. Perhatikan executive summary dari suatu projek berikut 
Menginjak usia yang ke-21, yayasan pendidikan telkom (YPT) memiliki banyak jenis asset mulai dari tanah, bangunan, perangkat fisik seperti mobil dinas, komputer, meubel air, dan sebagainya.
sebagai induk organisasi yang menauingi lima institusi pendidikan (mulai dari IT Telkom, IM telkom, 
politeknik Telkom, Telkom pdc, dan stisi Telkom), dua radio(k-lite FM dan zora-FM) dan satu 
perusahaan yaitu PT.CSM, jumlah total asset yang dimiliki ypt grup bisa mencapai angka yang 
sangat fantastik baik dari segi jumlah ataupun nilai.  Mengamati hal tersebut, maka fakultas 
informatika IT telkom mengusulkan kepada YPT untuk mengembangkan asset management system 
(AMS) berbasis web yang bisa memudahkan stakholder YPT group dalam mengelola asset mulai dari 
proses pengadaan, pemesanan, penerimaan, asset dari rekanan sampai proses tracking keberadaan 
dan kondisi fisik asset. Sebagai tim anggota pembuat AMS, coba anda tuliskan di buku ujian anda 
kira requirement seperti apa yang dibutuhkan client(YPT):
a) functional Requirement (minimal 3 buah)
b) product requirement (minimal 3 buah)
c) organizational requirement (minimal 1 buah)
jawab
a) functional requirement
   - Menyimpan semua rincian data pengadaan pemesanan, penerimaan, asset dari rekanan , dan 
      kondisi fisik asset
    -Mencetak semua laporan dari asset yang berlangsung agar stakeholder dapat memantau kinerja
      dari masing" asset
    - Menyajikan informasi dari proses pengelolaan asset yang ada dan menampilkannya dalam
       bentuk laporan
b) product requirement
    -  server dan domain .com
    -  interface dengan codeigniter , jquery, dan basis data  oracle
    -  internet 
c) organizational requirement



5. Perhatikan permasalahan berikut.
deskripsi sistem :
IT Telkom akan membuat aplikasi presensi perkuliahan berbasis IT untuk menggantikan system 
pencatatan kehadiran mahasiswa dan dosen saat ini yang masih manual, sehingga seiring tidak 
terjadi ketidakakuratan data, keterlambatan pemrosesan data, manipulasi data oleh pihak pihak 
yang tidak berhak.
Aplikasi ini menggunakan teknologi RFID untuk mendapatkan pola sidik jari dosen dan mahasiswa 
sebagai data input, memporses data input dengan kecepatan tinggi, kemudian menyimpan hasilnya 
dakan database yang aman(secure). Dari database tersebut, dapat degenerate laporan yang 
bermakna dan sesua kebitihan dari pengguna laporan yaitu pimpinan IT Telkom

Fungsional utama dari aplikasi tersebut :
pembelajaran / pelatihan
proses yang dilakukan untuk menghasilkan komputer yang cerdas karena telah memiliki
 pengetahuan / knowledge
input : pola sidik jari dari semua mhs dan dosen ( @ 3 pola)
output : database pengetahuan / knowledge
pengenalan . deteksi
proses untuk mendeteksi pola jari seseorang dan mengenali itu milik siapa, berdasarkan 
pengetahuan/ knowledge yang telah dimilikisebelumnya.
input L pola sidik jari yang akan dikenali (saat presensi kuliah)
output L tampil nama dari pemilik dan menyimpan data presensi tersebut dalam database
pelaporan
proses untuk membuat laporan presensi sesuai kebutuhan dan periode tertentu
input : tanggal awal, tanggal akhir, kode MK, kode dosen (misal)
output : tampil jumlah kehadiran dosen tersebut dan jumlah kehadiran tiap mahasiswa yang berada 
dalam kelas tersebut

Tugas anda, buat model analisis dari aplikasi tersebut meliputi (tools pemodelan) : 
context diagram, data flow diagram, data dictionary, serta proses specification untuk satu proses 
atomic saja.
beberapa hal yang menjadi batasan dalam model yang anda buat:
- perhatikan ketersediaan waktu yang dimiliki
- kerunutan, validitas, dan kelengkapan model menjadi acuan utama dalam pembuatan dan 
penilaian( harus meiliputi ke empat tools pemodelan di atas)
- jumlah bubble / proses pada Dfd tidak dibatasi tiap levelnya
-jumlah level tidak dibatasi
-data input aplikasi : pola sidik jari
-data output aplikasi L tampil nama pemilik sidik jari tersbut dalam laporan kehadiran dosen dan 
mahasiswa
untuk hal- hal yang tidak tercantum dalam deskripsi sistem di atas, anda dapat mencamtumkan 
asumsi-asumsi sehingga memperjelas model yang anda buat dan membuat batasan dari sistem yang 
anda modelkan.
  

Jawab
Context diagram


Data flow diagram level 1

Data dictionary
1.       Pola sidik jari
2.       Sidik jari = @id_sidik_jari
3.       Dosen = @id_sidik_jari + nama_dosen+presensi
4.       Mahasiswa = @id_sidik_jari + nama_mahasiswa + presensi
5.       Presensi = presensi + 1
6.       Perkuliahan = @id_perkuliahan + kode_MK + nama_dosen +jumlah mahasiswa+tanggal
Proses specification
1.       Dosen memberikan sidik jari
2.       Mencari data dosen sesuai sidik jari
3.       Mahasiswa memberikan sidik jari
4.       Mencari data mahasiswa sesuai sidik jari
5.       Pemrosesan terhadap dosen dan mahahsiswa diiringi dengan data perkuliahan yang terdiri dari nama dosen, kode MK, jumlah mahasiswa dan tanggal perkuliahan
6.       Rekam data kehadiran ke basis data : update kehadiran dosen dan mahasiswa
7.       Menampilkan data mahasiswa dan dosen berupa laporan

Friday, March 23, 2012

Rekayasa Perangkat Lunak

Proses Perangkat Lunak


Bagaimana sih kita bisa mengatasi pembelajaran RPL ini?
banyak berlatih dari studi kasus dan pahamilah cara kerja dari DFD.

Mengapa untuk membuat perangkat lunak yang berkualitas dibutuhkan rekayasa perangkat lunak?

¨Perangkat lunak yang dihasilkan sesuai dengan kebutuhan yang diinginkan/dibutuhkan pemakai.
¨Perangkat lunak dapat digunakan dan beroperasi dengan benar di lingkungan sebenarnya.
¨Perangkat lunak memberikan manfaat bagi pemakai yang menggunakannya.





RPL adalah cara atau proses untuk membuat perangkat lunak yang skalanya besar dan atau kompleksitasnya tinggi dengan menggunakan kaidah atau aturan tertentu.


definisi dari perangkat lunak?
Program komputer, prosedur, aturan, dan dokumentasi yang berkaitan dengannya serta data yang berkaitan dengan operasi suatu sistem komputer


Beberapa jenis perangkat lunak

¨Data processing  :  telephone billing, pensions
¨Real time  :  air traffic control
¨Embedded systems  :  digital camera, GPS, iPod
¨Information systems  :  web sites, digital libraries
¨Sensors  :  weather data
¨System software  :  operating systems, compilers
¨Communications   :  routers, telephone switches
¨Offices   :  word processing, video conferences
¨Scientific   :  simulations, weather forecasting
¨Graphical   :  film making, design

dalam pembuatan RPL terdapat 3 fase yaitu pra development, development, pasca development.
dalam fase development terdapat :
A : analisis
P : Proses
I : implementasi
T : Testing
D : Design

Model Process Dapat diliat di : http://rezaakhmadg.blogspot.com/2012/03/model-proses-dalam-rpl_25.html

kebutuhan fungsional : Kebutuhan yang berkaitan dengan fungsi atau proses transformasi data yang harus mampu dikerjakan oleh perangkat lunak.


kebutuhuan antarmuka eksternal : Kebutuhan antarmuka yang menghubungkan perangkat lunak dengan elemen perangkat keras, perangkat lunak, atau basis data.

kebutuhan produk :  Kebutuhan yang menetapkan bahwa produk yang dikirim harus berjalan dengan cara tertentu, contoh kecepatan eksekusi, kehandalan dll

kebutuhan organisasi : Kebutuhan sebagai akibat dari kebijakan organisasi dan prosedur misalnya standar proses yang digunakan, kebutuhan implementasi dll

Diagram Aliran Data (DAD) / Data Flow Diagram(DFD)

"Diagram yang digunakan untuk menggambarkan aliran data dalam sistem, meliputi sumber dan tujuan data, proses yang mengolah data tersebut serta tempat penyimpanan datanya"

jadi maksudnya DFD ini membuat suatu diagram dari perangkat lunak yang kita buat dengan proses" dan langkah" , jadi bagaimana sih si program pertama kali dilakukan, bagaimana sih program kita tuh bisa di akses oleh user dan bagaimana interaksi user terhadap perangkat lunak yang kita buat?

dalam DFD ini terdapat 2 level yaitu: level 1 dan level 2
level 1 menjelaskan tentang general dari perangkat lunak kita bekerja, diiringi dalam prosesnya dengan 1.0 , 2.0, 3.0
level 2 menjelaskan lebih rinci lagi dari level 1 diiringi dalam prosesnya dengan 1.1,1.2,1.3,2.1,2.2

Kamus data diperoleh dari langkah" yang harus dipenuhi dari proses . untuk kamus data, anda dapat memisalkan data" yang diperlukan, tidak harus benar, jadi istilahnya anda bisa "ngarang" tapi jangan ngasal.

Untuk Penjalasan dari diagram:
















untuk contoh dari perangkat lunak info kesehatan dengan platform website :



Penjelasan untuk membuat DFD pertama anda harus memikir bagaimana secara logisnya perangkat lunak anda berjalan. proses seperti sign up, login tidak perlu dicantumkan , karena disini kita akan menjelaskan secara garis besar bagaimana proses perangkat lunak kita bekerja, jadi rasakanlah anda seakan anda ini adalah suatu perangkat lunak

langkah yang dijelaskan dalam gambar
  1. terdapat data storage yaitu INFOKES(perangkat lunak)
  2. entitas eksternal / sumber dari data dimiliki oleh Depkes dan USER(masyarakat)
  3. perangkat lunak dimiliki oleh Depkes, jadi perangkat lunak di atur oleh Depkes
Penjelasan proses langkah dari DFD lvl 1
  1. depkes mempostkan informasi kesehatan
  2. data disimpan ke infokes
  3. user melakukan searching dengan keyword yang dituju
  4. user memilih data yang akan dipilih
  5. perangkat lunak menampilkan data 
  6. user dapat melakukan comment dan comment tersebut disimpan ke perangkat lunak
  7. perangkat lunak menampung post dan comment dan admin dari depkes memfilterisasi comment yang diberikan oleh user
  8. admin depkes memilih post yang sudah diberikan comment oleh user
  9. admin depkes menanggapi comment dari user
  10. tanggapan comment dari admin disimpan di infokes
selesai untuk DFD level 1 proses perangkat lunak berlangsung.

DFD level 2





sama seperti DFD level 1, perbedaannya dalam DFD level 2 , proses lebih dijabarkan lagi, yang tadinya posting,comment dan filterisasi terdapat dalam satu proses, tetapi di DFD level 2 proses menjadi satu" .

Kamus data dari contoh diatas:

Post dan Comment


1.       Post  = @ id_post + postingan
3.       Comment = @ id_post + komen
4.       Admin = @ id_admin + username + password
5.       Cari post = $recent_post (@id_post + judul_post)
6.       View = $ recent_post
7.       Filter = if $ recent_post <> {tidak sama dengan} benar then delete

1.       Ketik keyword pada search form
2.       Keyword = nama_penyakit
3.       Hasil cari = $ search_result (nama_penyakit)
4.       Penyakit = @ id_penyakit + nama_penyakit