beside the correct answer from Rutger we have to consider some specific topics once we run discovery ( eg. UCMDB ).
HP is calling its Discovery part "UD" ( Universal discovery ). UD is now the merge from DDMi ( Inventory Discovery ) and DDMa ( Application Discovery ). It´s a UCMDB ( like RTSM eg. ( also HO and also a UCMDB ) ). In enterprise solutions we Use UD for the Discovery part and THE UCMDB to collect CMS data. UCMDB in this sense work as a Data-Provider for other Target-Systems like Business-Monitoring, Reporting etc.
RelationShips between CI´s:
here you have to consider the different methods of Discovery: Agent-Based ( ex. DDMi ) AND Agent-Less ( ex. DDMa )! ( both available IN UD )
the agent based dicovery is more or less used to collect technical data like CPU, OS, Installed SW, Memory etc.
The agent less part is used to collect data like Running SW, DB etc. It is necessary to get the information about the Intra-Communication Between the CI´s. We also call This APPLICATION-Landscape-Discovery. Instead of an agent you have to give credentials (" the more "rights" you give - The more deep results you earn!")
Combination of both Methods is possible in UD ( UCMDB )
An alternative product is:
IBM Tad4D ( agent based discovery )
IBM TADDM ( agent less discovery )