Thursday, January 9, 2014

REKAYASA PERANGKAT LUNAK - PTI 08



What is software?
·         perintah (program komputer) yang bila dieksekusi memberikan fungsi dan unjuk kerja seperti yang
·         diinginkan
·         struktur data yang memungkinkan program memanipulasi informasi secara proporsional dan
·         dokumen yang menggambarkan operasi dan kegunaan program.
 Produk Perangkat lunak mungkin :
– Generic (Umum) - yang dikembangkan untuk dijual ke bidang pelanggan berbeda;
– Bespoke/Custom (Pesanan) - dikembangkan untuk pelanggan tunggal menurut spesifikasi mereka.
What is software engineering?
·         Software engineering adalah suatu disiplin rekayasa (rancang-bangun) yang terkait dengan semua aspek produksi perangkat lunak.
·         Engineer perangkat lunak mengadopsi pendekatan sistematis dan terorganisir untuk pekerjaan mereka dan menggunakan teknik dan tools yang disesuaikan dengan masalah yang dihadapi untuk dipecahkan, batasan pengembangan, dan sumber daya tersedia.
IEEE (IEEE = Institute of Electrical and Electronic Engineers)
Software engineering adalah:
·         Aplikasi dari sebuah pendekatan yang bersifat kuantifiabel, disiplin, dan sistematis bagi pengembangan, operasi, dan pemeliharaan perangkat lunak.
·         Studi tentang pendekatan-pendekatan seperti pada 1 Bidang Penelitian Software Engineering mengacu pada kedua hal tsb.
What is the difference between software engineering and computer science?
·         Computer science mempunyai kaitan dengan theory and fundamentals; software engineering
·         mempunyai kaitan dengan practicalities of developing and delivering useful software.
·         Computer science sekarang ini tidak cukup lengkap untuk bertindak sebagai tiang penyokong software engineering.
What is the difference between software engineering and system engineering?
·         System engineering mempunyai kaitan dengan semua aspek pengembangan sistem berbasiskomputer yang mencakup perangkat keras, perangkat lunak ,dan yang terkait dengan proses bisnis.
·         Software engineering berkonsentrasi pada komponen perangkat lunak sistem yang lebih besar.
·         System engineers mencakup spesifikasi sistem, desain arsitektur, pengintegrasian, dan penyebaran.
What is a software process?
Software process merupakan himpunan aktivitas tujuan pengembangan atau evolusi perangkat lunak.  Aktivitas umum dalam semua proses perangkat lunak adalah:
·         Specification (Spesifikasi)- hal-hal yang diperlukan oleh sistem dan batasan pengembangannya.
·         Development (Pengembangan)- produksi sistem perangkat lunak.
·         Validation (Pengesahan) - pemeriksaan perangkat lunak sesuai dengan keinginan pelanggan.
·         Evolution (Evolusi) - pengubahan perangkat lunak sesuai dengan permintaan pelanggan.
What is a software process model?
Software process model merupakan representasi sederhana suatu software process, yang diperkenalkan dari suatu perspektif spesifik. What are the costs of software engineering?
 Perkiraan kasar adalah 60% untuk biaya pengembangan, sedangkan 40% untuk biaya pengujian. Untuk custom sofware, biaya-biaya evolusi sering melebihi biaya-biaya pengembangan.
Biaya-biaya berubah-ubah tergantung pada jenis sistem yang dikembangkan dan kebutuhan atribut sistem seperti kehandalan dan reliabilitas sistem.
Distribusi biaya-biaya tergantung pada model pengembangan yang digunakan.
Software engineering methods merupakan pendekatan terstruktur dalam pengembangan perangkat lunak yang meliputi model sistem, notasi, aturan, desain advice, dan panduan proses.
·         Model Descriptions (Uraian Model) Uraian tentang model grafis yang harus diproduksi.
·         Rules (Aturan-aturan) Batasan yang berlaku pada model sistem.
·          Recommendations (Rekomendasi) Rekomendasi untuk praktik desain yang baik.
·         Process guidance (Panduan Proses)
Aktivitas yang mengikuti.
What is CASE (Computer-Aided Software Engineering)?
·         CASE adalah System software yang digunakan untuk mendukung otomatisasi aktivitas proses perangkat lunak. CASE sering digunakan untuk mendukung metode.
·         Upper-Case Tools untuk mendukung aktivitas proses awal kebutuhan dan desain.
·         Lower-Case Tools untuk mendukung aktivitas selanjutnya seperti programming, debugging, dan testing.
What are the attributes of good software?
Software perlu memiliki fungsi kebutuhan dan kemampuan yang diperlukan oleh pemakai dan harus maintainable, dependable , efficient, dan usable.
 Maintainability
Software harus dapat ditingkatkan dan diubah sesuai dengan kebutuhan.
 Dependability
Software harus dapat dipercaya (trustworthy).
 Efficiency
Software seharusnya tidak membuat penggunaan sumber daya sistem menjadi boros.
 Usability
Software harus dapat dipakai oleh para pemakai yang direncanakan. What are the key challenges
facing software engineering?
Tantangan : mengatasi sistem warisan (legacy systems), meningkatnya heterogenitas (Heterogenity) sistem, dan tuntutan permintaan percepatan penyerahan(Delivery) sistem.
 Legacy systems
Sistem warisan (sistem lama) harus dirawat dan dibaharui.
 Heterogenity
Sistem terdistribusikan dalam bentuk campuran antara perangkat keras dan lunak.
 Delivery
Adanya peningkatan tekanan untuk penyerahan perangkat lunak lebih cepat.
Professional and Ethical Responsibility
 Software engineering melibatkan tanggungjawab lebih luas dibanding hanya aplikasi kecakapan teknis.
 Software engineer harus bertindak secara etis, bertanggung jawab, dan jujur jika mereka diharapkan untuk terhormat sebagai seorang profesional.
 Perilaku etis tidak hanya sekedar menegakkan hukum saja tetapi harus lebih dari itu
Issues of professional
responsibility
 Confidentiality (Kerahasiaan)
Engineer seharusnya menghormati kerahasiaan dari klien mereka tanpa tergantung dengan ya atau tidaknya suatu persetujuan kerahasiaan formal ditandatangani.
 Competence (Kemampuan)
Engineer mestinya tidak salah menggambarkan tingkatan kemampuannya. Mereka mestinya tidak dengan sadar menerima pekerjaan yang di luar kemampuannya.
 Intellectual property rights (Hak milik intelektual)
Engineers harus sadar akan hukum lokal yang mengatur penggunaan dari properti intelektual seperti hak paten, hak cipta, dll. Mereka harus seksama untuk memastikan bahwa intelektual properti klien harus dilindungi.
 Computer misuse (Penyalahgunaan Komputer)
Software engineers mestinya tidak menggunakan kecakapan teknis mereka untuk menyalahgunakan komputer orang lain. Penyalahgunaan computer dari yang relatif sepele (misal untuk bermain game)sampai yang serius (pemberian virus).

No comments:

Post a Comment