Jurutera perisian menerapkan prinsip-prinsip kejuruteraan bagi reka bentuk, pembangunan, penyelenggaraan, pengujian, dan penilaian perisian dan sistem yang membolehkan komputer atau apa-apa peralatan yang mengandungi perisian berfungsi.
Istilah rasmi khas kejuruteraan perisian adalah:
"Aplikasi sistematik dan berdisiplin, pendekatan yang boleh diukur pada pembangunan, operasi dan penyenggaraan perisian ". [1]
"Disiplin kejuruteraan yang berkaitan dengan semua aspek penghasilan perisian"[2]
"Penubuhan dan penggunaan prinsip-prinsip kejuruteraan yang baik bagi mendapatkan perisian yang boleh dipercayai dan berfungsi dengan cekap secara ekonomi pada mesin nyata"[3]
Istilah ini telah digunakan secara kurang rasmi:
sebagai istilah kontemporari tidak formal untuk pelbagai aktiviti luas yang sebelum ini dikenali sebagai pengaturcaraan komputer dan analisis sistem; [4]
sebagai istilah yang luas bagi semua aspek amalan pengaturcaraan komputer, yang bertentangan dengan teori pengaturcaraan komputer, yang dipanggil sains komputer; [5]
sebagai istilah yang mewujudkan sokongan bagi pendekatan khusus untuk pengaturcaraan komputer, yang menggesa supaya ia dikira sebagai disiplin kejuruteraan dan bukannya seni atau kerajinan, dan menyokong penyatuan amalan yang dianjurkan.[6]
Sebelum pertengahan 1960-an, pengamal perisian mengelar diri mereka sendiri sebagai pengaturcara komputer atau pembangun perisian, tanpa mengira kerja hakiki mereka. Ramai orang lebih suka menyebut diri mereka pemaju perisian dan pengaturcara, kerana ramai yang bersetuju mengenai maknanya, sementara istilah jurutera perisian masih diperdebatkan.
Istilah pengaturcara sering digunakan sebagai istilah merendahkan untuk merujuk kepada mereka yang tidak memiliki peralatan, kemahiran, pendidikan, atau etika untuk menulis perisian yang berkualiti. Sebagai tindak balas, ramai pengamal menyebut diri mereka jurutera perisian untuk mengelakkan dari stigma yang melekat pada perkataan pengaturcara. Dalam banyak syarikat, gelaran pengaturcara dan pemaju perisian telah ditukar kepada jurutera perisian, untuk banyak kategori pengaturcaraan.
Istilah ini menyebabkan kekeliruan, karena sesetengah pihak menafikan sebarang perbezaan (dengan alasan bahawa semua orang pada dasarnya melakukan perkara yang sama dengan perisian) manakala yang lain menggunakan istilah tersebut untuk membezakan (dengan alasan istilah tersebut memiliki maksud tugasan yang berbeza sama sekali).
Sommerville, Ian (2007) [1982]. "1.1.2 What is software engineering?". Software Engineering (ed.8th). Harlow, England: Pearson Education. m/s.7. ISBN0-321-31379-8. Software engineering is an engineering discipline that is concerned with all aspects of software production from the early stages of system specification to maintaining the system after it has gone into use. In this definition, there are two key phrases:
1. Engineering discipline Engineers make things work. They apply theories, methods and tools where these are appropriate [. . .] Engineers also recognize that they must work to organizational and financial constraints. [. . .]
2. All aspects of software production Software engineering is not just concerned with the technical processes of software development but also with activities such as software project management and with the development of tools, methods and theories to support software production.line feed character in |quote= at position 260 (bantuan)
Akram I. Salah (April 5, 2002). "Engineering an Academic Program in Software Engineering"(PDF). 35th Annual Midwest Instruction and Computing Symposium. Dicapai pada September 13, 2006.: "For some, software engineering is just a glorified name for programming. If you are a programmer, you might put 'software engineer' on your business card—never 'programmer' though."
Mills, Harlan D., J. R. Newman, and C. B. Engle, Jr., "An Undergraduate Curriculum in Software Engineering," in Deimel, Lionel E. (1990). Software Engineering Education: SEI Conference 1990, Pittsburgh, Pennsylvania, USA, April 2–3,... Springer. ISBN0-387-97274-9.,p. 26: "As a practical matter, we regard software engineering as the necessary preparation for the practicing, software development and maintenance professional. The Computer Scientist is preparing for further theoretical studies..."
David Budgen, Pearl Brereton, Barbara Kitchenham, Stephen Linkman (December 14, 2004). "Realizing Evidence-based Software Engineering". Diarkibkan daripada yang asal pada 2006-12-17. Dicapai pada October 18, 2006.CS1 maint: multiple names: authors list (link): "We believe that software engineering can only advance as an engineering discipline by moving away from its current dependence upon advocacy and analysis,...."