Bayangkanlah seorang karyasiswa yang tertarik untuk mempelajari pusaran air laut. Dengan bantuan komputer dia mulai melakukan pelacakan literatur memanfaatkan fasilitas basis data di perpustakaan universitas dengan mengandalkan kata?kata kunci tentang pusaran air laut. Untuk jasa ini, permasalahannya adalah masalah biaya yang akan sebanding dengan waktu penggunaan komputer. Cara perburuan semacam ini jauh lebih singkat dan menghemat tenaga.
Setelah memperoleh bahan?bahan yang diperlukan, sang siswa lalu mendiskusikannya dengan pembimbing dalam pemilihan suatu topik baru dan belum pernah diteliti orang lain. Akhirnya pilihannya jatuh pada studi medan alir pusaran air laut. Untuk maksud tersebut, sang siswa perlu menghitung beberapa parameter yang menyusun suatu medan alir. Hal ini berarti perlunya informasi tentang metoda penghitungan parameter tersebut.
Katakanlah, dia berhasil menemukan makalah yang membahas tentang metoda penghitungan parameter yang diusulkan oleh seorang ilmuwan. Dengan menggunakan teknik aljabar komputer MACSYMA [1] atau MAPLE [2], solusi metoda tersebut diujinya. Jika solusi tersebut bisa dibuktikan kebenarannya secara matematis, persoalan lain telah menunggu yakni pengujian beberapa kasus fisis sederhana yang solusi teoritisnya sudah diketahui. Pemilihan suatu kasus sederhana dan umum dari berbagai kemungkinan kasus fisis yang ada merupakan seni tersendiri dan amat ditentukan oleh indera keilmuan sang siswa.
Setelah menetapkan pilihan pada suatu kasus tertentu, Kembali lagi komputer berperan dalam proses simulasi yakni membuat data buatan kasus fisis tersebut untuk dihitung parameter?parameter medan alirnya menggunakan metoda di atas. Hasil simulasi ini yang kemudian dicocokkan dengan perhitungan teoritis.
Dalam tahap pemrosesan data buatan inilah, timbul beberapa permasalahan diantaranya bising (noise). Bising ini bisa disebabkan oleh proses penghitungan misalnya penggunaan rumus turunan/differensial secara numeris atau bising yang sengaja dicampurkan ke dalam data buatan. Bising buatan ini merupakan antisipasi awal dalam menangani persoalan yang ditemui dalam pengukuran di laut yakni ketidaktepatan penentuan salah satu besaran fisis tertentu. Untuk mengatasi pengaruh kedua jenis bising ini, salah satu teknik yang memodifikasi teknik Transformasi Fourier Cepat dapat diajukan sebagai alat pembuat berbagai jenis filter.
Setelah melalui beberapa tahap di atas, sang siswa memperoleh informasi tentang kemampuan dan keterbatasan suatu metoda. Dengan mengetahui kemampuan metoda itu berarti ia atau pemakai lainnya menjadi yakin akan temuan yang diperoleh. Sedangkan menyadari akan keterbatasannya berarti alternatif pemecahan menjadi terbuka lebar melalui upaya penyempurnaan metoda yang sudah ada, pengembangan metoda lainnya atau pun pendayagunaan beberapa teknik pengolahan data yang ada, misalnya teknik penjendelaan [3] dan teknik perata?rataan [4].
Contoh diatas merupakan proses belajar yang umum dialami oleh para karyasiswa Indonesia yang sedang belajar di luar negeri. Tampak berbagai disiplin ilmu dan komputer bergabung membantu proses belajar. Karena proses ini merupakan salah satu komponen pendidikan, kami menyimpulkan bahwa komputer akan memegang peranan penting sebagai alat bantu dalam pendidikan di Indonesia.
Penggunaan komputer dalam pendidikan di AS antara lain disebabkan oleh adanya kebutuhan AS utk mengajar murid yang jumlahnya besar dalam waktu yang singkat. Komputer pertama kali dipakai sebagai media pendidikan di pabrik-pabrik, bukan disekolah. Seperti diketahui AS juga pernah secara gencar menggunakan media TV utk mengajar, tetapi hasilnya ternyata tidak seperti yang diinginkan.
Mula-mula program belajar dengan komputer (courseware) tampil dalam bentuk latihan soal, tutorial, dan simulasi hukum-hukum alam. Dengan makin berkembangnya kemampuan komputer (misalnya dalam menampilkan gambar), perangkat lunak latihan soal dirasakan tidak memanfaatkan kemampuan sesungguhnya yang ada pada komputer. Keadaan bertambah runcing dengan perkembangan pengetahuan di bidang kognitif, seperti munculnya teori-teori tentang human information processing. Akibatnya para ahli dibidang komputer dan kognitif melihat bahwa komputer untuk pendidikan dapat berfungsi lebih dari sekedar alat mempresentasikan materi pelajaran. Komputer harus dapat meningkatkan cara berfikir seseorang. Hal ini dapat dicapai misalnya dengan bantuan bidang AI (artificial intelligence).
"peningkatan cara berfikir" ini dirasakan penting karena perkembangan teknologi yang sangat pesat mengharuskan seseorang untuk mempunyai ketrampilan belajar (cara berfikir) yang tinggi. Dengan kata lain, proses belajar merupakan proses pembentukan pengetahuan bukan proses menhafal pengetahuan. Jadi kita dapat menggunakan pengetahuan yang telah kita miliki untuk membangun pengetahuan yang baru.
Dibandingkan dengan media pendidikan yang lain, seperti overhead, tv, dan film, komputer itu lebih memungkinkan utk membuat sang murid menjadi "aktif" bermain-main dengan informasi. Perangkat lunak dapat dibuat agar interaktif. Hal ini sukar dicapai oleh media lainnya. Hal lain yang menarik, perangkat lunak untuk pendidikan dapat di sesuaikan dengan kemampuan dan kebutuhan masing-masing murid. Hal ini memungkinkan murid-murid untuk berkembang sesuai dengan keadaan dan latar belakang kemampuan yang dimiliki. Murid yang memang mampu belajar dengan kecepatan tinggi tidak perlu menunggu rekan lainnya yang memerlukan waktu lebih dalam memahami materi pelajaran.
Senin, 22 November 2010
2.Diketahui : F1 = 200 lb dengan sudut 30 0
F2 = 300 lb dengan sudut 45 0
F3 = 155 lb dengan sudut 53 0
Ditanyakan FR = ?
Jawab :
Gaya ( F ) Sudut ( Q ) Cos Fx (N) Sin Fy
200 30 173,21 100
300 45 212,132 212,132
155 53 93,28 123,788
Total (FR) 478,622 435,92
R= ( Rx 2 + Ry 2 ) ½
= ((478,622) 2 + (435,92) 2 ) ½ (N)
= 21,877 + 20,878
= 6,5 N
3.Diketahui : F1 = 100 lb dengan sudut 60 0
F2 = 80 lb dengan sudut 30 0
Ditanyakan : FR ?
Jawab :
No Gaya Sudut Cos Sin
1 100 60 50 86,6
2 80 30 69,28 40
total 119,28 126,6
FR =( (119,28)2 + (126,6)2) ½
= 14227,72 + 16027,56
= √ 30255,28
= 173,94 N
Salah Kaprah Dalam Istilah Rekayasa Perangkat Lunak
Salah Kaprah Dalam Istilah Rekayasa Perangkat Lunak
Rekayasa Perangkat Lunak (Software Engineering), sedikit mengalami pergeseran makna di realita dunia industri, bisnis, pendidikan maupun kurikulum Teknologi Informasi (TI) di tanah air. Di industri, para tester, debugger dan programmer sering salah kaprah menyandang gelar Software Engineer. SMK di Indonesia juga latah dengan membuka jurusan Rekayasa Perangkat Lunak, meskipun secara kurikulum hanya mengajari bahasa C atau Pascal (mungkin lebih pas disebut jurusan pemrograman komputer) ;) Tulisan ini berusaha meluruskan salah kaprah yang terjadi tentang Rekayasa Perangkat Lunak (Software Engineering) berdasarkan kesepakatan, acuan, dan standard yang ada di dunia internasional.
Sejarah munculnya Rekayasa Perangkat Lunak sebenarnya dilatarbelakangi oleh adanya krisis perangkat lunak (software crisis) di era tahun 1960-an. Krisis perangkat lunak merupakan akibat langsung dari lahirnya komputer generasi ke 3 yang canggih, ditandai dengan penggunaan Integrated Circuit (IC) untuk komputer. Performansi hardware yang meningkat, membuat adanya kebutuhan untuk memproduksi perangkat lunak yang lebih baik. Akibatnya perangkat lunak yang dihasilkan menjadi menjadi beberapa kali lebih besar dan kompleks. Pendekatan informal yang digunakan pada waktu itu dalam pengembangan perangkat lunak, menjadi tidak cukup efektif (secara cost, waktu dan kualitas). Biaya hardware mulai jatuh dan biaya perangkat lunak menjadi naik cepat. Karena itulah muncul pemikiran untuk menggunakan pendekatan engineering yang lebih pasti, efektif, standard dan terukur dalam pengembangan perangkat lunak.
Dari berbagai literatur, kita dapat menyimpulkan bahwa Rekayasa Perangkat Lunak adalah:
Suatu disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal requirement capturing (analisa kebutuhan pengguna), specification (menentukan spesifikasi dari kebutuhan pengguna), desain, coding, testing sampai pemeliharaan sistem setelah digunakan.
Kalimat "seluruh aspek produksi perangkat lunak" membawa implikasi bahwa bahwa Rekayasa Perangkat Lunak tidak hanya berhubungan dengan masalah teknis pengembangan perangkat lunak tetapi juga kegiatan strategis seperti manajemen proyek perangkat lunak, penentuan metode dan proses pengembangan, serta aspek teoritis, yang kesemuanya untuk mendukung terjadinya produksi perangkat lunak.
Kemudian tidak boleh dilupakan bahwa secara definisi perangkat lunak tidak hanya untuk program komputer, tetapi juga termasuk dokumentasi dan konfigurasi data yang berhubungan yang diperlukan untuk membuat program beroperasi dengan benar. Dengan definisi ini otomatis keluaran (output) produksi perangkat lunak disamping program komputer juga dokumentasi lengkap berhubungan dengannya. Ini yang kadang kurang dipahami oleh pengembang, sehingga menganggap cukup memberikan program yang jalan (running program) ke pengguna (customer).
Rekayasa Perangkat Lunak bukan merupakan cabang ilmu Computer Science yang mempelajari tentang technical coding. Ini yang sering salah kaprah dipahami, sehingga pelajar, mahasiswa atau bahkan calon dosen ;) shock ketika dihadapkan dengan buku-buku textbook Rekayasa Perangkat Lunak yang selalu tebal dengan penjelasan sangat luas tentang bagaimana perangkat lunak diproduksi, dari aspek requirement capturing, desain, arsitektur, testing, kualitas software, sampai people/cost management. Dan ini adalah suatu kesepakatan yang sudah diterima umum tentang Rekayasa Perangkat Lunak, sejak jaman Roger S Pressman menulis buku “Software Engineering: A Practitioner’s Approach”, sampai Ian Sommerville yang kemudian datang dengan buku “Software Engineering” yang sudah sampai edisi ke 7, maupun pendatang baru semacam Hans Van Vliet, Shari Lawrence Pfleeger maupun James F Peters.
Terus bagaimana kalau kita ingin memperdalam masalah technical coding dan programming? Ada dua cabang ilmu lain yang membahas lebih dalam masalah ini, yaitu: Algoritma dan Struktur Data, dan Bahasa Pemrograman.
Kok bisa begitu, dasarnya darimana? Jadi pada hakekatnya, sebagai sebuah disiplin ilmu, Computer Science itu juga memiliki definisi, ruang lingkup, klasifikasi dan kategorisasinya. Klasifikasi yang paling terkenal dikeluarkan Task Force yang dibentuk oleh IEEE (Institute of Electrical and Electronics Engineers) dan ACM (Association for Computing Machinary (http://acm.org) yang dipimpin oleh Peter J Denning, yang kemudian terkenal dengan sebutan Matriks Denning. Sangat jelas bahwa Matriks Denning memisahkan antara cabang ilmu Software Engineering dengan Algoritma dan Struktur Data, serta Bahasa Pemrograman. Itulah di paragraf awal saya sebut bahwa lebih tepat SMK, akademi atau universitas menggunakan nama jurusan (atau mata kuliah): Pemrograman Komputer, Algoritma dan Struktur Data, atau Bahasa Pemrograman, kalau memang materinya hanya mempelajari masalah bahasa pemrograman secara teknis.
Nah terus pertanyaan kembali muncul, jadi sebenarnya apa yang menjadi ruang lingkup ilmu Software Engineering itu apa? Pertanyaan ini merupakan pertanyaan banyak orang, semakin banyak peneliti dan praktisi menulis maka semakin bervariasi pemahaman yang muncul, semakin banyak buku yang terbit semakin membingungkan pelajar dan mahasiswa dalam memahami secara komprehensif apa itu Rekayasa Perangkat Lunak.
Kegelisahan ini dijawab tuntas oleh IEEE Computer Society (http://computer.org) dengan membentuk tim di tahun 1998 dimana tim tersebut mulai menyusun pemahaman standard (body of knowledge) tentang bidang ilmu Software Engineering, yang kemudian terkenal dengan sebutan SWEBOK (Software Engineering Body of Knowledge). Sudah ada dua versi SWEBOK ini, yaitu yang diterbitkan tahun 1999 dan terakhir tahun 2004.
Tiada gading yang tak retak kata orang bijak, project IEEE Computer Society tentang SWEBOK ini sebenarnya juga banyak dikritik oleh pakar yang lain. Paling tidak dua tokoh besar dunia Software Engineering yaitu Cem Kaner and Grady Booch tidak terlalu setuju dengan materi yang ada di dalam SWEBOK, bahkan menyebutnya sebagai sebuah guide yang misguided ;) Terlepas dari hal itu, boleh dikatakan SWEBOK cukup bisa diterima banyak pihak.
Selain SWEBOK, sebenarnya ada project lain yang mirip dalam usaha menyusun pemahaman standard dalam bidang Software Engineering, yaitu CCSE (Computing Curriculum Software Engineering). Project ini juga disponsori oleh IEEE Computer Society dan ACM , hanya orientasinya sedikit berbeda, yaitu untuk membentuk kurikulum standard berhubungan dengan bidang ilmu Software Engineering. Hal ini berbeda dengan orientasi SWEBOK yang lebih umum melingkupi dunia akademisi dan praktisi.
Rekayasa Perangkat Lunak (Software Engineering), sedikit mengalami pergeseran makna di realita dunia industri, bisnis, pendidikan maupun kurikulum Teknologi Informasi (TI) di tanah air. Di industri, para tester, debugger dan programmer sering salah kaprah menyandang gelar Software Engineer. SMK di Indonesia juga latah dengan membuka jurusan Rekayasa Perangkat Lunak, meskipun secara kurikulum hanya mengajari bahasa C atau Pascal (mungkin lebih pas disebut jurusan pemrograman komputer) ;) Tulisan ini berusaha meluruskan salah kaprah yang terjadi tentang Rekayasa Perangkat Lunak (Software Engineering) berdasarkan kesepakatan, acuan, dan standard yang ada di dunia internasional.
Sejarah munculnya Rekayasa Perangkat Lunak sebenarnya dilatarbelakangi oleh adanya krisis perangkat lunak (software crisis) di era tahun 1960-an. Krisis perangkat lunak merupakan akibat langsung dari lahirnya komputer generasi ke 3 yang canggih, ditandai dengan penggunaan Integrated Circuit (IC) untuk komputer. Performansi hardware yang meningkat, membuat adanya kebutuhan untuk memproduksi perangkat lunak yang lebih baik. Akibatnya perangkat lunak yang dihasilkan menjadi menjadi beberapa kali lebih besar dan kompleks. Pendekatan informal yang digunakan pada waktu itu dalam pengembangan perangkat lunak, menjadi tidak cukup efektif (secara cost, waktu dan kualitas). Biaya hardware mulai jatuh dan biaya perangkat lunak menjadi naik cepat. Karena itulah muncul pemikiran untuk menggunakan pendekatan engineering yang lebih pasti, efektif, standard dan terukur dalam pengembangan perangkat lunak.
Dari berbagai literatur, kita dapat menyimpulkan bahwa Rekayasa Perangkat Lunak adalah:
Suatu disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal requirement capturing (analisa kebutuhan pengguna), specification (menentukan spesifikasi dari kebutuhan pengguna), desain, coding, testing sampai pemeliharaan sistem setelah digunakan.
Kalimat "seluruh aspek produksi perangkat lunak" membawa implikasi bahwa bahwa Rekayasa Perangkat Lunak tidak hanya berhubungan dengan masalah teknis pengembangan perangkat lunak tetapi juga kegiatan strategis seperti manajemen proyek perangkat lunak, penentuan metode dan proses pengembangan, serta aspek teoritis, yang kesemuanya untuk mendukung terjadinya produksi perangkat lunak.
Kemudian tidak boleh dilupakan bahwa secara definisi perangkat lunak tidak hanya untuk program komputer, tetapi juga termasuk dokumentasi dan konfigurasi data yang berhubungan yang diperlukan untuk membuat program beroperasi dengan benar. Dengan definisi ini otomatis keluaran (output) produksi perangkat lunak disamping program komputer juga dokumentasi lengkap berhubungan dengannya. Ini yang kadang kurang dipahami oleh pengembang, sehingga menganggap cukup memberikan program yang jalan (running program) ke pengguna (customer).
Rekayasa Perangkat Lunak bukan merupakan cabang ilmu Computer Science yang mempelajari tentang technical coding. Ini yang sering salah kaprah dipahami, sehingga pelajar, mahasiswa atau bahkan calon dosen ;) shock ketika dihadapkan dengan buku-buku textbook Rekayasa Perangkat Lunak yang selalu tebal dengan penjelasan sangat luas tentang bagaimana perangkat lunak diproduksi, dari aspek requirement capturing, desain, arsitektur, testing, kualitas software, sampai people/cost management. Dan ini adalah suatu kesepakatan yang sudah diterima umum tentang Rekayasa Perangkat Lunak, sejak jaman Roger S Pressman menulis buku “Software Engineering: A Practitioner’s Approach”, sampai Ian Sommerville yang kemudian datang dengan buku “Software Engineering” yang sudah sampai edisi ke 7, maupun pendatang baru semacam Hans Van Vliet, Shari Lawrence Pfleeger maupun James F Peters.
Terus bagaimana kalau kita ingin memperdalam masalah technical coding dan programming? Ada dua cabang ilmu lain yang membahas lebih dalam masalah ini, yaitu: Algoritma dan Struktur Data, dan Bahasa Pemrograman.
Kok bisa begitu, dasarnya darimana? Jadi pada hakekatnya, sebagai sebuah disiplin ilmu, Computer Science itu juga memiliki definisi, ruang lingkup, klasifikasi dan kategorisasinya. Klasifikasi yang paling terkenal dikeluarkan Task Force yang dibentuk oleh IEEE (Institute of Electrical and Electronics Engineers) dan ACM (Association for Computing Machinary (http://acm.org) yang dipimpin oleh Peter J Denning, yang kemudian terkenal dengan sebutan Matriks Denning. Sangat jelas bahwa Matriks Denning memisahkan antara cabang ilmu Software Engineering dengan Algoritma dan Struktur Data, serta Bahasa Pemrograman. Itulah di paragraf awal saya sebut bahwa lebih tepat SMK, akademi atau universitas menggunakan nama jurusan (atau mata kuliah): Pemrograman Komputer, Algoritma dan Struktur Data, atau Bahasa Pemrograman, kalau memang materinya hanya mempelajari masalah bahasa pemrograman secara teknis.
Nah terus pertanyaan kembali muncul, jadi sebenarnya apa yang menjadi ruang lingkup ilmu Software Engineering itu apa? Pertanyaan ini merupakan pertanyaan banyak orang, semakin banyak peneliti dan praktisi menulis maka semakin bervariasi pemahaman yang muncul, semakin banyak buku yang terbit semakin membingungkan pelajar dan mahasiswa dalam memahami secara komprehensif apa itu Rekayasa Perangkat Lunak.
Kegelisahan ini dijawab tuntas oleh IEEE Computer Society (http://computer.org) dengan membentuk tim di tahun 1998 dimana tim tersebut mulai menyusun pemahaman standard (body of knowledge) tentang bidang ilmu Software Engineering, yang kemudian terkenal dengan sebutan SWEBOK (Software Engineering Body of Knowledge). Sudah ada dua versi SWEBOK ini, yaitu yang diterbitkan tahun 1999 dan terakhir tahun 2004.
Tiada gading yang tak retak kata orang bijak, project IEEE Computer Society tentang SWEBOK ini sebenarnya juga banyak dikritik oleh pakar yang lain. Paling tidak dua tokoh besar dunia Software Engineering yaitu Cem Kaner and Grady Booch tidak terlalu setuju dengan materi yang ada di dalam SWEBOK, bahkan menyebutnya sebagai sebuah guide yang misguided ;) Terlepas dari hal itu, boleh dikatakan SWEBOK cukup bisa diterima banyak pihak.
Selain SWEBOK, sebenarnya ada project lain yang mirip dalam usaha menyusun pemahaman standard dalam bidang Software Engineering, yaitu CCSE (Computing Curriculum Software Engineering). Project ini juga disponsori oleh IEEE Computer Society dan ACM , hanya orientasinya sedikit berbeda, yaitu untuk membentuk kurikulum standard berhubungan dengan bidang ilmu Software Engineering. Hal ini berbeda dengan orientasi SWEBOK yang lebih umum melingkupi dunia akademisi dan praktisi.
Minggu, 21 November 2010
"PERANGKAT LUNAK "
Perangkat Lunak adalah istilah umum untuk data yang diformat dan disimpan secara digital, termasuk program komputer, dokumentasinya, dan berbagai informasi yang bisa dibaca dan ditulis oleh komputer. Dengan kata lain, bagian sistem komputer yang tidak berwujud. Istilah ini menonjolkan perbedaan dengan perangkat keras komputer.
Langganan:
Postingan (Atom)