Une des tâches de l'analyste d'affaires est de spécifier les exigences fonctionnelles d'un logiciel d'application à développer. Les exigences fonctionnelles décrivent, d'un point de vue conceptuel, la structure d'informations d'un domaine d'application et le traitement de celles-ci. Afin que ces spécifications soient comprises par les personnes responsables de son développement, il est nécessaire qu'elles soient présentées dans une forme pouvant être comprise par ces derniers. Ainsi, même si initialement le langage UML a été créé dans le but de servir les concepteurs de logiciels, celui-ci a été adopté depuis quelques années par les analystes d'affaires.