génie logiciel
Est appelé génie logiciel l'application des principes de l'ingénierie (traitant habituellement des systèmes physiques) à la conception, au développement, au test, au déploiement et à la gestion de logiciels.
Cette discipline applique au développement logiciel l'approche structurée et hiérarchisée de la programmation utilisée par l'ingénierie, dans le but d'améliorer la qualité, les délais et le budget, tout en assurant des tests ordonnés et la certification des ingénieurs.
Le génie logiciel est généralement réservé aux logiciels complexes de grande envergure et non aux applications ou programmes simples. Le développement n'est toutefois qu'une phase du processus. Les ingénieurs logiciels sont responsables de la conception des systèmes, alors que les programmeurs sont chargés du codage permettant leur implémentation.
Les différents champs du génie logiciel couvrent les processus liés à l'ingénierie et à la certification logicielles, à savoir : l'analyse des besoins, la conception, la construction et la maintenance des logiciels, la gestion de la configuration et de l'ingénierie logicielles, la gestion et la création du processus de développement logiciel, les modèles et les méthodes d'ingénierie logicielle, la qualité logicielle, les pratiques professionnelles d'ingénierie logicielle de même que les mathématiques et l'informatique fondamentales et les études d'ingénierie.
S'il est impossible de savoir précisément à quand remonte la première mention de ce terme, on sait toutefois que c'est en 1968 que l'OTAN a organisé la première conférence sur le sujet. L'objectif était alors de remédier à l'incohérence et à l'absence de fiabilité du développement logiciel, et d'en améliorer impérativement la qualité et la fiabilité. Les experts internationaux réunis à cette occasion ont approuvé l'application des processus systématiques de l'ingénierie du monde physique au développement logiciel, déjà développés à ces fins.
Le SEI (Software Engineering Institute) est une organisation qui collabore avec les ingénieurs, les entreprises, les organismes éducatifs et administratifs des Etats-Unis pour améliorer l'efficacité des projets et des processus liés au génie logiciel, et qui abrite le CERT (Computer Emergency Response Team), centre d'alerte et de réaction aux attaques informatiques.