NextGen Consulting

IT Consulting CRM BSS OSS

AIF Overview

Amdocs Integration Framework provides a common, uniform and standards-based integration foundation for implementing integrations between Amdocs applications, and integrations between Amdocs applications and non Amdocs applications. 

AIF Characteristics

  • Portable across application servers (WAS & WLS)
  • Integrate / interoperate with Enterprise Service Bus (ESB)s/EAIs
  • Provide protocol – neutral service invocation API
  • Service definition customization and upgrade
  • Leverages standards and pervasive technologies
  • Uses existing integration foundations as much as possible
  • Allows gradual adoption by Amdocs products


AIF Architecture

AIF is a cross portfolio foundation platform – there is no UI. It is tightly integrated with other cross portfolio foundations:

  • APM  (Amdocs Process Manager) for composite operations
  • ASC   (Amdocs System Configuration) for system configuration
  • ASM  (Amdocs Security Manager) for security to enable cross portfolio single-sign-on



AIF Integration with 3rd Party

AIF provides an abstraction layer that enables application code to execute functionality provided by external components or systems in a protocol-independent manner. It supports the following protocols

  • Local Java (POJO)
  • Local & remote EJB (statefull and stateless)
  • SOAP over HTTP (Web services)
  • Tuxedo
  • Asynchronous one way (JMS)

Services are defined in a central Service Repository and are managed via a service management UI

AIF provides data mapping, logging, auditing and monitoring infrastructure independent of the application code. A simulator is provided to facilitate client unit testing. It is monitored by JMX.



AIF Components

AIF infrastructure components include:

  • Service Repository UI – 
    A central tool for defining, maintaining and storing Amdocs service definitions
  • Service Repository
    Holds detailed technical descriptions of services. Service definitions are stored on disk files and deployed to the database for access by the consumer API infrastructure
  • Service Consumer
    A protocol-neutral API for invocation of services
  • Service Provider
    Code generation tool for exposing services via standard protocols: EJB, JMS, SOAP over HTTP, SOAP over JMS, POJO
  • AIF can export its service definitions to any UDDI registry using the published UDDI API. However, it does not provide a UDDI compliant registry




Service Repository UI Components

A business operation is a discreet function that performs a single task. Operations are passed input parameters, and may optionally return output parameters, and faults. An operation corresponds to a Java method

These are the input, output and faults parameters which are defined for an operation. The signature refers to the names and types of these items, but not to any specific order (parameter ordering is typically required only for RMI protocols).

A logical grouping of operations. An interface corresponds to a Java class or interface.

Published functionality provided either by an Amdocs application or an external system. A service is an implementation of an interface provided by some service providers. It is a  physical implementation of an interface (e.g. EJB service)


A physical attribute for an operation of a service;. e.g. EJB bindings define the method name and parameter order


The Service Consumer

Consumer application code uses the service consumer API to invoke a service operation. The consumer is unaware of who provides the service, where they are located, or how the service is invoked.

The Consumer supports the following protocols: POJO, EJB, JMS, Web Services and Tuxedo. Logging, auditing and monitoring is performed by the infrastructure. Details about the service are read from the service repository. Physical details (server URL etc) are taken from runtime configuration

The Service Repository

The Service repository defines operations, interfaces and services

Service definitions are defined in XML files, and deployed to a database for access by the service consumer API infrastructure (in CRM, the database table is aif_operation)

Service Definitions are edited using an eclipse plug-in. They can be created manually, by importing EJB interfaces or by importing WSDL.

The Service data model is based on WSDL2.0.

The services repository is fully compatible with 3rd party service repositories or registries via WSDL import/export and Java code (EJB interface)

Service Definition

A Service is physical implementation of an Interface. The Service name is unique within an Interface. Each Interface may have several Services, each representing a physical implementation of the Interface

Binding represents physical attributes of an operation within a Service. Each Operation within the Interface has a corresponding Binding within each Service.

Services are defined in two parts:

  1. Static design-time definition which define the contract, implementation and protocols.
  2. Dynamic run-time deployment configuration, defined in the AIF repository.

The AIF repository stores information such as JNDI names. These names are defined in the central configuration repository (Amdocs System Configurator – ASC)

The run-time configuration data can be changed independently of the AIF repository, giving operational flexibility.


AIF Configuration

AIF uses ASC to define its configuration items. AIF configuration includes AIF internal configuration, such as the JDBC connection it requires to access the deployed services, and definition of resources used by services defined in the repository

AIF is typically configured in some common node, and then inherited by the applications that use it:

/crm/baseConfig/Aif (inherits /amdocsCommon/Aif)



The AIF Service Lab

The AIF plug-in for Eclipse provides a full blown UI for creating, testing and deploying AIF services.


02/03/2011 - Posted by | Amdocs, Backend, CRM, General, Technology


  1. Hi,

    Good one!!!!!!!!!!!!!!!!!!

    Comment by M.Umasankari | 02/03/2011 | Reply

  2. Hi,

    How about if I want to make FTP functionality from client to server ? Can I use AIF ?


    Comment by imamprakoso | 10/03/2011 | Reply

    • The communication between the client and the server is managed by a controller Servlet (located at the protocol layer on the smart client server).

      The controller Servlet can use several protocols (http, RMI, InProc). The out of the box smart client implementation use the http protocol.

      AIF allows applications to share (provide or consume) functionality (services), but not for file for transfer.

      FTP is a file transfer protocol which is used to connect between server and a client. Use FTP server (probably implemented as a Servlet on Weblogic) and a small FTP client for file transfer.

      Comment by Yuval R. | 10/03/2011 | Reply

  3. Hi Yuval

    Is there other way to execute Web Service from smart client, without going through AIF layer?


    Comment by Sergey | 15/04/2011 | Reply

  4. Hi Sergey

    Amdocs Web Services Framework allows Web Services. It is based on the AXIS (Apache eXtensible Interaction System). AXIS is an Apache SOAP project – a Java/C++ based open source implementation of SOAP.

    AWSF (Amdocs Web Services Framework) expands AXIS by adding many new features and options for Web services developers and applications. It provides better support for Amdocs application-specific needs and requirements.

    Amdocs Web Services Framework is deployed on an application server (Weblogic / Websphere) and interacts directly with any backend application (CRM, OMS) which is used by Smart Client.

    For more information, see Amdocs Web Services Framework installation Guide and Amdocs Web Services Programmer Guide.


    Comment by Yuval R. | 17/04/2011 | Reply

  5. Hi Yuval

    I stumbled upon this nice article while struggling with Amdocs Self Service Framework (… as well as with the vendor). Do the concepts that you expose here apply to a specific version of the Amdocs solution stack? With regards to the Amdocs Web Services Framework (AWSF) does this exist also for Amdocs 7.5?


    Comment by Sergio da Silva | 22/02/2014 | Reply

    • HI Sergio

      The concepts described here apply to all Amdocs versions. It is certainly exists for version 7.5.
      In fact, the article is based on Amdocs version 7.5.


      Comment by Yuval R. | 22/02/2014 | Reply

      • Hi Yuval

        Many thanks for your prompt response.

        In the meantime I checked the documentation that has been handed over and have found that we were provided with the Amdocs Web Services Framework documentation (sometimes being referred to by Amdocs Web Services Infrastructure as well).

        Just a question: do you by any chance provide training and/or consulting into these matters?

        We may discuss these matters offline and you can find more information about myself here:


        Comment by Sergio da Silva | 23/02/2014

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: