Développement des logiciels
Le développement des logiciels est effectué par les employés d'éditeurs de logiciels, de sociétés de services et d'ingénierie informatique (SSII), des travailleurs indépendants (freelance) et des membres de la communauté du logiciel libre.
Un logiciel est créé petit à petit par une équipe d'ingénieurs conformément à un cahier des charges établi par un client demandeur ou une équipe interne. Le logiciel est décomposé en différents modules et un chef de projet, ou architecte, se charge de la cohérence de l'ensemble.
Différentes activités permettent de prendre connaissance des attentes de l'usager, créer un modèle théorique du logiciel, qui servira de plan de construction, puis construire le logiciel, contrôler son bon fonctionnement et son adéquation au besoin. La planification et la répartition des travaux permet d'anticiper le délai et le coût de fabrication.
Le logiciel est accompagné d'une procédure d'installation, d'une procédure de vérification de bonne installation, de documentation (parfois créé automatiquement à partir de commentaires placés à cet effet dans le code source) et d'une équipe d'assistance au déploiement et à la maintenance, désignée sous le nom de support.
Outre les travaux d'analyse, de conception, de construction et de tests, une procédure de recette - simulacre d'acquisition, permettra de déterminer si le logiciel peut être considéré comme utilisable.