Un concepteur de logiciels est responsable de la conception et de la mise en ?uvre de la bonne utilisation des syst?mes et programmes logiciels pour les ordinateurs et les syst?mes informatis?s. Fondamentalement, un concepteur de logiciels doit comprendre le besoin d’un programme, d?velopper une solution et utiliser la m?thodologie d’une mani?re accessible et pr?te ? l’emploi. Pour que la conception du logiciel soit un succ?s, l’architecte logiciel doit utiliser des concepts de d?veloppement informatique ? la fois rudimentaires et avanc?s, ce qui n?cessite g?n?ralement que l’ing?nieur logiciel connaisse bien la programmation informatique g?n?rale. Ces syst?mes construits par le concepteur peuvent ?tre soit des programmes compl?mentaires pour des logiciels existants, soit des outils utilisateur enti?rement nouveaux pour un type de solution.
L’id?e g?n?rale du travail quotidien d’un concepteur de logiciels implique tout, du traitement de composants de bas niveau ? l’analyse d’algorithmes ? grande ?chelle. Fondamentalement, le travail peut aller de l?g?res modifications aux programmes existants, comme le simple ajout d’un nouveau champ de donn?es ? un contenu ?tabli, ou n?cessiter des recherches avanc?es sur des secteurs entiers, comme d?terminer une nouvelle fa?on de suivre chaque avion dans le ciel ? un moment donn?. . En tant que tel, un ing?nieur logiciel est l’un des ajouts les plus essentiels ? toute ?quipe informatique.
Les concepts g?n?raux utilis?s par les concepteurs de logiciels n?cessitent de nombreuses th?ories sophistiqu?es de fonctionnement et de technique. Un concepteur de logiciel doit trouver des moyens de r?duire la quantit? d’informations n?cessaires ? chaque ?tape de l’interaction humaine ou informatique en cr?ant une certaine forme de hi?rarchie. Essentiellement, cela se traduit par une s?rie d’?tapes utilis?es tout au long du processus. En termes techniques, on parle d’abstraction et de raffinement.
La structure de l’architecture logicielle est plac?e dans une structure de donn?es sophistiqu?e pour permettre le meilleur ?change d’informations possible. Les composants individuels du logiciel sont divis?s en parties appel?es modules. Ces modules sont ensuite plac?s dans des partitions distinctes, s’ex?cutant dans une hi?rarchie qui donne aux programmes une structure globale pr?te pour l’utilisateur.
Les ?l?ments qu’un concepteur de logiciels doit prendre en compte lors du d?veloppement d’un programme ou d’un utilitaire comprennent la compatibilit?, la maintenance, la fiabilit?, la s?curit? et la r?utilisation. Le logiciel doit ?tre capable d’interagir avec les composants disponibles pour l’utilisateur et ?galement fonctionner comme un programme pouvant ?tre corrig? lorsque des probl?mes surviennent. Il doit ?galement fonctionner en permanence avec des probl?mes limit?s, y compris un manque de moyens r?alisables pour que des activit?s n?fastes endommagent sa fonctionnalit?. La plupart des entreprises qui embauchent des concepteurs de logiciels sont ?galement tr?s pr?occup?es par la dur?e d’utilisation des programmes. ?videmment, plus la dur?e de vie d’un programme est longue, meilleure est la solution.