Una vez tenemos un candidato a servicio, debemos realizar el proceso de modelado. Para esta tarea, existen tres técnicas que son de utilidad: generalización, decomposición y agregación. Veamos brevemente cada una de ellas:
Mediante generalización analizamos un servicio para determinar qué representa conceptualmente. Es una técnica similar a la que utilizamos en Programación Orientada a Objetos para determinar relaciones de tipo es un. Por ejemplo, un cliente es una persona, y un empleado también es una persona, y a la hora de modelar nuestro servicio tenemos que encontrar el nivel adecuado de generalización.
Mediante decomposición analizamos un servicio para determinar si este está compuesto de múltiples elementos, y si estos estarían mejor definidos como servicios en si mismos. Cuanto más granulado sea un servicio, más posibilidades tendrá de ser reusado.
Mediante agregación analizamos un servicio para determinar otros servicios que puedan ser parte del primero. Es una técnica similar a la que utilizamos en Programación Orientada a Objetos para determinar relaciones de tipo tiene un. Esta técnica es útil para descubrir servicios componibles.