Understanding the managed resource

Before designing a Natural Access service, you must understand exactly what the managed resource is and how it operates. For example, if the managed resource is a telephony board, then you must first understand the low-level details of inter-operating with the telephony board such as how to:

You can then define a simple, intuitive Natural Access API to the managed resource. Suggested action items include:

  1. API analysis

    Create a list of managed resource interface calls and then determine if any of those calls can be combined into a smaller set of simpler, more abstract functions.

  2. Event analysis

  1. Data abstraction analysis

    When appropriate, create data structures to model the managed resource in software as follows:

There are at least two types of information that are useful during this phase:

In Natural Access parlance, a managed resource is represented and referred to as a service object. The data structure that contains information pertaining to a client of the service object is referred to as an instance of a service object.

tik service

The managed resource for the tik service is a software timer known as the tik server. The tik server operates as a software timer. It waits for a certain interval to expire then generates and sends a text message over a well-defined IPC channel to a client until a maximum number of messages is generated. The client specifies the timer interval and maximum number of messages; the text message is configured at server initialization time and is not dynamically configurable. The tik server can support, at most, 10 separate channels per client.

Commands can be sent from a client to the tik server that:

When the tik server generates all tick messages, the logical channel is left active so that another start tick request can be serviced.

If a client sends a stop request string to the server, the server aborts the generation of remaining ticks. The logical channel remains active for further start tick requests.

Using the description of the tik server, the following information summarizes the results of the suggested action items:

Analysis of interaction with tik server

Based on the list of messages to be generated by a tik server client, the abstracted set of API calls are:

Event identification and processing

The following is a list of incoming messages received from the tik server:

The tik server is multiplexed in that all messages to and from the server contain a field denoting the id of the client.

Abstract data structures

The managed resource data structure should contain:

The software timer is the only entity to be manipulated by a tik server client. Similarly, a client can only manipulate one of them at a time. Therefore, it is not necessary to define explicit entity data structures.