Lisensi perangkat lunak
Di luar pemberian hak dan penerapan pembatasan penggunaan perangkat lunak, lisensi perangkat lunak biasanya mengandung ketentuan yang mengatur kewajiban dan tanggung jawab masing-masing pihak. Dalam transaksi perangkat lunak perusahaan dan komersial, syarat-syarat ini (seperti pembatasan tanggung jawab, jaminan dan penyangkalan jaminan, dan ganti rugi jika perangkat lunak melanggar hak kekayaan intelektual pihak lain) sering dinegosiasikan oleh pengacara yang memiliki spesialisasi dalam lisensi perangkat lunak. Spesialisasi praktik hukum di bidang ini telah berkembang karena keunikan masalah hukum pada lisensi perangkat lunak, dan juga keinginan perusahaan perangkat lunak untuk melindungi aset yang, jika tak dilisensikan dengan baik, dapat menghilangkan nilai mereka.
Sejarah rekayasa perangkat lunak
Pada tahun 1960-an hingga 1980-an, banyak masalah yang ditemukan para praktisi pengembangan perangkat lunak. Banyak projek yang gagal, hingga masa ini disebut sebagai krisis perangkat lunak. Kasus kegagalan pengembangan perangkat lunak terjadi mulai dari projek yang melebihi anggaran, hingga kasus yang mengakibatkan kerusakan fisik dan kematian. Salah satu kasus yang terkenal antara lain meledaknya roket Ariane akibat kegagalan perangkat lunak.