Pengembangan perangkat lunak (juga dikenal sebagai pengembangan aplikasi, desain perangkat lunak, perancangan perangkat lunak, pengembangan aplikasi perangkat lunak, aplikasi pengembangan usaha, atau pengembangan platform ) adalah pengembanganperangkat lunak produk. Istilah "perangkat lunak" pembangunan dapat digunakan untuk merujuk pada aktivitas pemrograman komputer , yang merupakan proses menulis dan memelihara kode sumber, tapi dalam arti lebih luas dari istilah itu mencakup semua yang terlibat antara konsepsi yang diinginkan perangkat lunak melalui manifestasi akhir dari perangkat lunak, idealnya dalam proses terencana dan terstruktur. Oleh karena itu, pengembangan perangkat lunak mungkin mencakup penelitian, pengembangan baru, prototipe, modifikasi, menggunakan kembali, re-engineering, pemeliharaan, atau kegiatan lain yang menghasilkan dalam produk perangkat lunak.
Perangkat lunak dapat dikembangkan untuk berbagai tujuan, tiga yang paling umum adalah untuk memenuhi kebutuhan spesifik dari klien tertentu / bisnis (kasus dengan perangkat lunak kustom ), untuk memenuhi kebutuhan yang dirasakan dari beberapa set pengguna potensial (kasus dengankomersial dan perangkat lunak open source ), atau untuk penggunaan pribadi (misalnya seorang ilmuwan dapat menulis software untuk mengotomatisasi tugas biasa), perangkat lunak Embedded. pembangunan yang adalah, pengembangan perangkat lunak tertanam seperti yang digunakan untuk mengendalikan produk konsumen, memerlukan proses pembangunan untuk diintegrasikan dengan perkembangan produk fisik dikendalikan.
Kebutuhan untuk lebih baik pengendalian kualitas dari proses pengembangan perangkat lunak telah melahirkan pada disiplin rekayasa perangkat lunak , yang bertujuan untuk menerapkan pendekatan sistematis dicontohkan dalam rekayasa paradigma dengan proses pengembangan software.