Kamis, 19 September 2013

Pengembangan Perangkat Lunak

Tags

Pengembangan perangkat lunak

Dari Wikipedia, ensiklopedia bebas
Langsung ke: navigasi , cari
Proses pengembangan perangkat lunak
Coding Shots Rencana Tahunan tinggi res-5.jpg
Seorang pengembang perangkat lunak di tempat kerja
Aktivitas dan langkah-langkah
Metodologi
Mendukung disiplin
Alat
Pengembangan perangkat lunak (juga dikenal sebagai pengembangan aplikasi, desain perangkat lunak, perancangan perangkat lunak, pengembangan aplikasi perangkat lunak, pengembangan aplikasi enterprise, atau platform pengembangan) [1] adalah pengembangan perangkat lunak produk. Istilah "pengembangan perangkat lunak" dapat digunakan untuk merujuk pada aktivitas pemrograman komputer , yang merupakan proses menulis dan memelihara kode sumber , tetapi dalam arti yang lebih luas dari istilah itu mencakup semua yang terlibat antara konsepsi yang diinginkan software melalui manifestasi akhir dari perangkat lunak, idealnya dalam proses terencana dan terstruktur. [2] Oleh karena itu, pengembangan perangkat lunak dapat mencakup penelitian, pengembangan baru, prototyping, modifikasi, menggunakan kembali, re-engineering, pemeliharaan, atau kegiatan lain yang hasil dalam produk perangkat lunak. [3]
Software dapat dikembangkan untuk berbagai tujuan, tiga yang paling umum adalah untuk memenuhi kebutuhan spesifik dari klien / bisnis yang spesifik (kasus dengan perangkat lunak kustom ), untuk memenuhi kebutuhan yang dirasakan dari beberapa set potensi pengguna (kasus dengan komersial dan perangkat lunak open source ), atau untuk penggunaan pribadi (misalnya seorang ilmuwan dapat menulis perangkat lunak untuk mengotomatisasi tugas biasa) pengembangan perangkat lunak tertanam., yaitu, pengembangan perangkat lunak tertanam seperti yang digunakan untuk mengendalikan produk konsumen, membutuhkan proses pembangunan untuk diintegrasikan dengan pengembangan produk fisik dikendalikan.
Kebutuhan yang lebih baik kontrol kualitas dari proses pengembangan perangkat lunak telah melahirkan disiplin rekayasa perangkat lunak , yang bertujuan untuk menerapkan pendekatan sistematis dicontohkan dalam rekayasa paradigma dengan proses pengembangan perangkat lunak.

Isi

  • 1 Ikhtisar
    • 1.1 Konsistensi dalam Software
  • 2 Software topik pembangunan
    • 2.1 Pemasaran
    • 2.2 Software metodologi pengembangan
  • 3 Lihat juga
  • 4 Referensi
  • 5 Bacaan lebih lanjut

Sekilas

Ada beberapa pendekatan yang berbeda untuk pengembangan perangkat lunak, seperti berbagai pandangan partai politik terhadap pemerintahan suatu negara. Beberapa mengambil lebih terstruktur, pendekatan rekayasa berbasis solusi bisnis berkembang, sedangkan yang lain mungkin mengambil pendekatan yang lebih bertahap, di mana perangkat lunak berkembang seperti yang dikembangkan sepotong demi sepotong. Kebanyakan metodologi berbagi beberapa kombinasi dari tahap berikut pengembangan perangkat lunak:
  • Menganalisis masalah
  • Penelitian Pasar
  • Mengumpulkan persyaratan untuk solusi bisnis yang diusulkan
  • Merancang rencana atau desain untuk solusi berbasis software
  • Implementasi (coding) perangkat lunak
  • Pengujian perangkat lunak
  • Penyebaran
  • Pemeliharaan dan memperbaiki bug
Tahap ini sering disebut secara kolektif sebagai siklus hidup pengembangan perangkat lunak, atau SDLC. Pendekatan yang berbeda untuk pengembangan perangkat lunak dapat melakukan tahap ini dalam urutan yang berbeda, atau mencurahkan lebih atau kurang waktu untuk tahapan yang berbeda. Tingkat detail dari dokumentasi yang diproduksi pada setiap tahap pengembangan perangkat lunak juga dapat bervariasi. Tahap ini juga dapat dilakukan pada gilirannya (a "air terjun" pendekatan berbasis), atau mereka dapat diulang atas berbagai siklus atau iterasi (yang lebih "ekstrim" pendekatan). Pendekatan yang lebih ekstrim biasanya melibatkan sedikit waktu yang dihabiskan pada perencanaan dan dokumentasi, dan lebih banyak waktu yang dihabiskan untuk coding dan pengembangan tes otomatis. Lebih "ekstrim" pendekatan juga mempromosikan pengujian terus menerus di seluruh siklus hidup pengembangan, serta memiliki (atau bug-free) produk yang bekerja setiap saat. "Air terjun" pendekatan berbasis lebih terstruktur atau mencoba untuk menilai mayoritas risiko dan mengembangkan rencana rinci untuk perangkat lunak sebelum implementasi (coding) dimulai, dan menghindari perubahan desain yang signifikan dan re-coding di tahap akhir pengembangan perencanaan siklus hidup perangkat lunak.
Ada keuntungan yang signifikan dan kerugian untuk berbagai metodologi, dan pendekatan terbaik untuk memecahkan masalah dengan menggunakan perangkat lunak akan sering bergantung pada jenis masalah. Jika masalah ini dipahami dengan baik dan solusi dapat secara efektif direncanakan sebelumnya, semakin "air terjun" pendekatan berbasis dapat bekerja yang terbaik. Jika, di sisi lain, masalahnya adalah unik (setidaknya tim pengembangan) dan struktur dari solusi perangkat lunak tidak dapat dengan mudah dibayangkan, maka lebih "ekstrim" pendekatan inkremental dapat bekerja terbaik. Sebuah proses pengembangan perangkat lunak adalah struktur dikenakan pada pengembangan produk perangkat lunak. Sinonim termasuk siklus hidup perangkat lunak dan proses perangkat lunak. Ada beberapa model untuk proses tersebut, masing-masing menggambarkan pendekatan untuk berbagai tugas atau kegiatan yang berlangsung selama proses tersebut.

Konsistensi dalam Software

Dalam rangka untuk memastikan perangkat lunak yang dapat berkembang dengan cara yang mempertahankan melekat multi-dimensi, kita harus memastikan bahwa dimensi yang berbeda berkembang bersama-sama secara konsisten. Software memiliki terlalu banyak dimensi untuk menggabungkan dalam kerangka tunggal. Sebuah mekanisme yang baik seharusnya tidak ditujukan untuk suatu masalah tertentu seperti memastikan konsistensi Unified Modeling Language (UML) diagram kelas dengan kode sumber. Sebaliknya harus cukup fleksibel untuk menangani berbagai dimensi yang benar-benar terlibat dalam pengembangan perangkat lunak. [4]

Software topik pengembangan

Marketing

Sumber ide untuk produk perangkat lunak sangat banyak. [5] Ide-ide ini dapat berasal dari riset pasar termasuk demografi pelanggan potensial baru, pelanggan yang sudah ada, prospek penjualan yang menolak produk, staf pengembangan perangkat lunak internal lainnya, atau pihak ketiga kreatif. Gagasan untuk produk perangkat lunak biasanya pertama dievaluasi oleh pemasaran personil untuk kelayakan ekonomi, untuk sesuai dengan saluran distribusi yang ada, untuk kemungkinan efek pada garis yang ada produk, diperlukan fitur , dan sesuai dengan tujuan pemasaran perusahaan. Dalam tahap evaluasi pemasaran, asumsi biaya dan waktu menjadi dievaluasi. Keputusan tercapai di awal tahap pertama, apakah, berdasarkan informasi yang lebih rinci yang dihasilkan oleh staf pemasaran dan pengembangan, proyek harus dikejar lebih jauh. [5]
Dalam buku "Great Software Debat", Alan M. Davis menyatakan dalam bab "Persyaratan", sub-bab "The Sepotong Hilang Pengembangan Perangkat Lunak"
" Mahasiswa teknik belajar teknik dan jarang terkena keuangan atau pemasaran. Siswa belajar pemasaran pemasaran dan jarang terkena keuangan atau rekayasa. Sebagian besar dari kita menjadi spesialis di satu wilayah. Untuk memperumit masalah, hanya sedikit dari kita bertemu orang interdisipliner dalam angkatan kerja, sehingga ada beberapa peran untuk meniru. Namun, perencanaan produk perangkat lunak sangat penting bagi keberhasilan pembangunan dan benar-benar membutuhkan pengetahuan tentang berbagai disiplin ilmu. [6] "
Karena pengembangan perangkat lunak mungkin melibatkan kompromi atau melampaui apa yang dibutuhkan oleh klien, sebuah proyek pengembangan perangkat lunak mungkin nyasar ke masalah kurang teknis seperti sumber daya manusia , manajemen risiko , kekayaan intelektual , penganggaran , manajemen krisis , dll Proses ini juga dapat menyebabkan peran pengembangan bisnis tumpang tindih dengan pengembangan perangkat lunak.

Metodologi pengembangan perangkat lunak

Sebuah metodologi pengembangan perangkat lunak adalah suatu kerangka kerja yang digunakan untuk menyusun , merencanakan , dan mengontrol proses pengembangan sistem informasi . Berbagai kerangka tersebut telah berevolusi selama bertahun-tahun, masing-masing dengan kekuatan sendiri diakui dan kelemahan. Salah satu metodologi pengembangan sistem belum tentu cocok untuk digunakan oleh semua proyek. Setiap metodologi yang tersedia yang paling cocok untuk jenis proyek tertentu, berdasarkan berbagai teknis, proyek organisasi, dan pertimbangan tim.

1 komentar so far


EmoticonEmoticon