Aussi connu sous le nom expertise en la matière, le domaine des connaissances est une information qui est pertinente pour le contenu qui est logé dans un logiciel. Ce type de connaissance est différent de connaissances en programmation, qui influe sur la façon dont le logiciel lui-même est conçu pour fonctionner. L'objectif de la connaissance du domaine fournit la base pour faire le programmeur met en place le logiciel afin que les informations que le programme est capable de logements et l'utilisation, il sera attrayant pour le marché ciblé des utilisateurs.
Une des meilleures façons de comprendre le rôle des connaissances de domaine dans le développement de produits logiciels est de considérer l'entrée de vendeurs dans le développement d'une nouvelle base de données des ventes. Les vendeurs sauront quel type d'information ils voudraient maison dans cette base de données. Par exemple, des données telles que les noms de société, noms de contact et des informations de contact général serait essentiel de mettre en place des profils de clients utilisant le logiciel. Dans le même temps, un vendeur souhaite également la possibilité de désigner le statut du contact d'une certaine manière, comme un plomb, prospect ou client. L'inclusion de sections pour capturer des notes de discussions, planifier les tâches en attente liés à un contact spécifique et même la possibilité d'exporter ou d'importer des informations à partir d'autres programmes serait également utile.
De la même manière, la connaissance du domaine des professionnels de la santé peut aller un long chemin à aider les programmeurs et les développeurs viennent avec des produits logiciels qui sont utiles dans le bureau d'un médecin, un hôpital ou un autre établissement médical. S'appuyant sur la base et l'expérience des professionnels de la santé les connaissances peuvent aider à développer des logiciels qui aident avec tout de distribuer des médicaments aux patients dans un hôpital de la tenue des dossiers complets sur chaque patient. En sachant ce que les utilisateurs finaux ont besoin d'un programme, il est possible d'inclure ces besoins dans le développement et les fonctions de programmation et de venir avec un produit qui est utile et attrayant.
Dans cette perspective, la connaissance du domaine est tout à aider les programmeurs ont une certaine idée de ce qu'est un programme doit accomplir afin de répondre aux besoins des utilisateurs potentiels. Cette forme d'ingénierie des connaissances est souvent utilisé par les développeurs comme un moyen de créer de nouveaux produits ou de raffinage de nouvelles versions de produits plus anciens d'une manière qui les rend plus utiles aux consommateurs. Dans le même temps, les programmeurs chercheront à conserver l'interface utilisateur aussi convivial que possible tout en incluant des caractéristiques et des fonctions qui sont d'intérêt pour les utilisateurs finaux. Trouver cet équilibre idéal sera généralement exigent la contribution de ces utilisateurs si le logiciel est à atteindre ses objectifs et l'attention de attractsignificant des acheteurs potentiels.