United States Patent Application20030074463
Kind CodeA1
Swartz, Stephen J. ; et al.April 17, 2003

Management interface between a core telecommunication system and a local service provider
Abstract
A system, method and article of manufacture are provided for interfacing with a core telecommunication system and a local service provider. First, a core telecommunication system is interfaced for handling core telecommunication system requests and responses received from the core telecommunication system and translated to a predetermined protocol. Similarly, a local service provider is interfaced for handling local service provider requests and responses received from the local service provider. The local service provider requests and responses are also translated to the predetermined protocol. In use, the core telecommunication system requests and responses are communicated with the local service provider and the local service provider requests and responses are communicated with the core telecommunication system for management purposes.

Inventors:Swartz; Stephen J. (Maple Grove, MN), Bakshi; Anil R.  (Ridgewood, NJ), Murphy; Christopher John  (Minneapolis, MN), Baeth; Kevin Ronald  (New Hope, MN)
Correspondence Name and Address:MERCHANT & GOULD P.C. P. O. Box 2903
Natalie D. Kadievitch
Minneapolis
MN
55402-0903
US
Series Code:194346
Filed:July 12, 2002
U.S. Current Class:709/230; 709/223
U.S. Class at Publication:709/230; 709/223
Intern'l Class:G06F 015/173

Claims


What is claimed is:
1. A method for interfacing with a core telecommunication system and a local service provider, the method comprising the steps of: interfacing with a core telecommunication system for handling core telecommunication data received from the core telecommunication system; translating the core telecommunication data to a predetermined protocol; interfacing with a local service provider for handling local service provider data received from the local service provider; translating the local service provider data to the predetermined protocol; communicating the core telecommunication system data with the local service provider; communicating the local service provider data with the core telecommunication system; and automatically managing the transfer of data between at least one core telecommunication system and at least one local service provider wherein the management is accomplished using a knowledge base.

2. The method of claim 1, wherein the managing the transfer of data between the core telecommunication system and local service provider further comprises the step of logging the data upon receipt.

3. The method of claim 1, wherein the managing the transfer of data between the core telecommunication system and local service provider further comprises the step of managing system requests and responses.

4. The method of claim 3, wherein the managing system requests and responses further comprises the step of verifying the completeness of the requests and responses upon receipt.

5. The method of claim 3 further comprising the step of generating an error message upon at least one of the requests not being complete.

6. The method of claim 1 further comprising the step of managing pre-ordering duties wherein the pre-ordering duties are selected from the group of pre-ordering duties including address validation, feature verification, due-date reservation, telephone number reservation, and customer service record retrieval.

7. The method of claim 1 further comprising the step of handling errors in real-time.

8. A communications interface for interfacing with a core telecommunication system and a local service provider, comprising: a request processor for interfacing with a core telecommunication system for handling core telecommunication data received from the core telecommunication system; a first translator, connected to the request processor, for translating the core telecommunication data to a predetermined protocol; a command processor interfacing with a local service provider for handling local service provider data received from the local service provider; a second translator, connected to the command processor, translating the local service provider data to the predetermined protocol; and a controller, interconnecting the request and the command processor, for automatically managing the transfer of data between at least one core telecommunication system and at least one local service provider wherein the management is accomplished using a knowledge base.

9. The communications interface of claim 8, wherein the controller further comprises a storage medium for logging the data upon receipt.

10. The communications interface of claim 8, wherein the controller further comprises a transaction processor for managing system requests and responses.

11. The communications interface of claim 10, wherein the transaction processor further comprises a message handler for verifying the completeness of the requests and responses upon receipt.

12. The communications interface of claim 10, wherein the transaction processor further comprises a transaction controller for generating an error message upon at least one of the requests not being complete.

13. The communications interface of claim 8 wherein the controller further manages pre-ordering duties wherein the pre-ordering duties are selected from the group of pre-ordering duties including address validation, feature verification, due-date reservation, telephone number reservation, and customer service record retrieval.

14. The communications interface of claim 13 further comprising an error handler for handling errors in real-time.

15. The communications interface of claim 8 further comprising a satellite interface for transmitting and receiving satellite information.

16. The communications interface of claim 15, wherein the satellite interface provides a plurality of communication services for relaying information to fixed and mobile stations.

17. A system for interfacing with a core telecommunication system and a local service provider comprising: logic that interfaces with a core telecommunication system for handling core telecommunication system requests and responses received from the core telecommunication system; logic that translates the core telecommunication system requests and responses to a predetermined protocol; logic that interfaces with a local service provider for handling local service provider requests and responses received from the local service provider; logic that translates the local service provider requests and responses to the predetermined protocol; logic that communicates the core telecommunication system requests and responses with the local service provider; logic that communicates the local service provider requests and responses with the core telecommunication system; logic that automatically managing the transfer of data between at least one core telecommunication system and at least one local service provider wherein the management is accomplished using a knowledge base.

18. The system of claim 17, wherein the requests and responses are logged upon receipt.

19. The system of claim 17, wherein the requests and responses are verified for completeness upon receipt.

20. The system of claim 17 further comprising logic that generates an error message upon one of the requests not being complete.

21. The system of claim 17 further comprising logic that handles pre-ordering duties selected from the group of pre-ordering duties consisting of address validation, feature verification, due-date reservation, telephone number reservation, and customer service record retrieval.

22. The system of claim 17 further comprising logic that manages errors in real-time.

23. A computer program embodied on a computer readable medium for interfacing with a core telecommunication system and a local service provider comprising: a code segment that interfaces with a core telecommunication system for handling core telecommunication system requests and responses received from the core telecommunication system; a code segment that translates the core telecommunication system requests and responses to a predetermined protocol; a code segment that interfaces with a local service provider for handling local service provider requests and responses received from the local service provider; a code segment that translates the local service provider requests and responses to the predetermined protocol; a code segment that communicates the core telecommunication system requests and responses with the local service provider; and a code segment that communicates the local service provider requests and responses with the core telecommunication system. a code that automatically managing the transfer of data between at least one core telecommunication system and at least one local service provider wherein the management is accomplished using a knowledge base.

24. The computer program of claim 23, wherein the requests and responses are logged upon receipt.

25. The computer program of claim 23, wherein the requests and responses are verified for completeness upon receipt.

26. The computer program of claim 25 further comprising a code segment that generates an error message upon one of the requests not being complete.

27. The computer program of claim 23 further comprising a code segment that handles pre-ordering duties selected from the group of pre-ordering duties consisting of address validation, feature verification, due-date reservation, telephone number reservation, and customer service record retrieval.

28. The computer program of claim 23 further comprising a code segment that manages errors in real-time.

29. An article of manufacture for providing a management interface between a core telecommunication system and a local service provider, the article of manufacture comprising a computer readable medium having management interface instructions comprising: interfacing with a core telecommunication system for handling core telecommunication data received from the core telecommunication system; translating the core telecommunication data to a predetermined protocol; interfacing with a local service provider for handling local service provider data received from the local service provider; translating the local service provider data to the predetermined protocol; communicating the core telecommunication system data with the local service provider; communicating the local service provider data with the core telecommunication system; and automatically managing the transfer of data between at least one core telecommunication system and at least one local service provider wherein the management is accomplished using a knowledge base.

Description



FIELD OF THE INVENTION

[0001] The present invention relates in general to a telecommunication network and more particularly to an interface between a core telecommunication system and a local service provider for management purposes.

BACKGROUND OF THE INVENTION

[0002] Many services are offered by local service providers. Such services include, but are not limited to, telephone services, internet services, home shopping services, etc. Often, a local service provider does not offer expanded services, i.e., services outside of their service area. Thus, customers are forced to rely on larger, i.e., national and/or international, service providers for services provided outside the service area of the local service provider. For example, many local telephone service providers do not offer long distance service. Customers of the local providers rely on long distance companies for long distance telephone service. However, several problems are inherent when offering services through a secondary provider. One such problem is that the integration of services between the two providers is not streamlined, creating connection problems such as intermittent service and sometimes even total failure of the service. Other such problems include validating that a service is authorized or that it has been cancelled or revoked. Further, larger service providers often must rely on the local service providers to collect payment for the services rendered by the larger service providers.

[0003] Many of the larger service providers offer similar or the same services to customers of local service providers while simultaneously providing expanded services to the customers of the local service providers. This gives customers the option to choose alternate, and often more reliable, service. However, a larger service provider often is limited to utilizing the systems of the local service providers. For example, a large telephone company could offer localized services to customers but would have to utilize the existing wiring of the local telephone company in order to avoid the high cost of installing wiring between the customer and the large telephone company. Thus, the larger service provider is left at the mercy of the local service providers through which its services are offered, and which are often hostile to the larger service provider attempting to enter "their" market.

[0004] The end-to-end customer care workflow (order taking, local service provider (LSP) provisioning, customer billing, etc.) must be as efficient as possible. This process accounts for a large percentage of costs associated with acquiring and servicing customers. This process currently suffers from fallouts and errors caused by data integrity and process related issues. The inconsistencies associated with LSP processing further compounds this problem. Hence, the larger service provider must manage the end-to-end workflow, taking into account the inconsistencies of LSP provisioning while enabling low cost and high quality customer service.

[0005] It can be seen that there is a need for a management interface between a core telecommunication system and a local service provider to provide interconnection standards for a bi-directional flow of information.

[0006] It can also be seen that there is a need for a management interface between a core telecommunication system and a local service provider that is highly flexible and expandable to accommodate new products and services.

SUMMARY OF THE INVENTION

[0007] To overcome the limitations in the prior art described above, and to overcome other limitations that will become apparent upon reading and understanding the present specification, the present invention generally discloses a management interface between a core telecommunication system and a local service provider, and more particularly describes a highly flexible and expandable system to accommodate new products and services.

[0008] A system, method and article of manufacture are provided for interfacing with a core telecommunication system and a local service provider. First, a core telecommunication system is interfaced for handling core telecommunication system requests and responses received from the core telecommunication system and translated to a predetermined protocol. Similarly, a local service provider is interfaced for handling local service provider requests and responses received from the local service provider. The local service provider requests and responses are also translated to the predetermined protocol. In use, the core telecommunication system requests and responses are communicated with the local service provider and the local service provider requests and responses are communicated with the core telecommunication system for management purposes. Also, the system automatically manages the transfer of data between at least one core telecommunication system and at least one local service provider wherein the management is accomplished using a knowledge base.

[0009] In one aspect of the present invention, the requests and responses may be logged upon receipt. Further upon receipt of the requests and responses, a completeness of such requests and responses may be verified. Optionally, an error message may be generated upon one of the requests not being complete.

[0010] In yet another aspect of the present invention, pre-ordering duties may be performed such as address validation, feature verification, due-date reservation, telephone number reservation, and/or customer service record retrieval. Furthermore, errors in pre-ordering may be managed on-line in real time.

BRIEF DESCRIPTION OF THE DRAWINGS

[0011] The invention will be better understood when consideration is given to the following detailed description thereof. Such description makes reference to the annexed drawings wherein:

[0012] FIG. 1 is a schematic diagram of a hardware implementation of one embodiment of the present invention;

[0013] FIG. 2 is an illustration of a transaction controller in accordance with one embodiment of the present invention;

[0014] FIG. 3 is a flowchart illustrating a method for providing a management interface between a core telecommunications system and a local service provider;

[0015] FIG. 4 is a flowchart depicting a method for service request processing in a local service activation management environment;

[0016] FIG. 5 is a flowchart illustrating a method for on-line transaction control during activation of local telecommunication service;

[0017] FIG. 6 is a flowchart illustrating a method for providing a management interface between a core telecommunications system and a local service provider;

[0018] FIG. 7 is an illustration particularly depicting interfaces between the core telecommunications system and the transaction controller in accordance with one embodiment of the present invention;

[0019] FIG. 8 is an illustration of an interface in accordance with one embodiment of the present invention;

[0020] FIG. 9 is an illustration of an exemplary scenario flow for a service validation request;

[0021] FIG. 10 is a flowchart illustrating a summary of the submission and handling of a service location validation request shown in FIG. 9;

[0022] FIG. 11 is an illustration of an exemplary scenario flow for submission of a service request;

[0023] FIG. 12 is a flowchart illustrating a summary of the submission and processing of a service request shown in FIG. 11;

[0024] FIG. 13 is an illustration of the six major technical components of the LSAM Technical Architecture;

[0025] FIG. 14 is an illustration of an exemplary interface system between a core system and the transaction processor;

[0026] FIG. 15 depicts how QConnect is used to implement components of the present invention;

[0027] FIG. 16 illustrates a development architecture for constructing the present invention;

[0028] FIG. 17 illustrates an exemplary software development process in accordance with one embodiment of the present invention;

[0029] FIG. 18 illustrates an operations architecture in accordance with one embodiment of the present invention;

[0030] FIG. 19 illustrates a supporting infrastructure in accordance with one embodiment of the present invention;

[0031] FIG. 20 illustrates various tools used to perform various functions in the system of the present invention;

[0032] FIG. 21 is a flowchart illustrating summary of a method for providing an operations architecture to implement a local service activation management system, as indicated in FIGS. 18-20;

[0033] FIG. 22 is an illustration of a scalable and high-availability hardware and software environment in accordance with one embodiment of the present invention;

[0034] FIG. 23 illustrates an exemplary network designed to reduce failure of the system in accordance with one embodiment of the present invention;

[0035] FIG. 24 depicts an overview of a satellite network system in accordance with one embodiment of the present invention;

[0036] FIG. 25 is a context diagram of the satellite network system illustrating a number of entities which are required to access the satellite network system of FIG. 24 and their respective interfaces; and

[0037] FIG. 26 illustrates a number of system elements of the satellite network system of FIG. 24 and their interconnecting communications links. FIG. 27 is an exemplary hardware environment for one embodiment of the present invention.

DETAILED DESCRIPTION

[0038] In accordance with at least one preferred embodiment of the present invention, an interfacing system is provided for managing a relationship between a core telecommunication system, or larger service provider, and a local service provider. The interface may be accomplished using a hardware implementation such as is illustrated in FIG. 1. Further, various functional and user interface features of the present invention may be enabled using software programming, i.e., object-oriented programming (OOP).

[0039] Hardware Overview

[0040] A representative hardware environment of a preferred embodiment of the present invention is depicted in FIG. 1, which illustrates a typical hardware configuration of a workstation having a central processing unit 110, such as a microprocessor, and a number of other units interconnected via a system bus 112. The workstation shown in FIG. 1 includes Random Access Memory (RAM) 114, Read Only Memory (ROM) 116, an I/O adapter 118
for connecting peripheral devices such as disk storage units 120 to the bus 112, a user interface adapter 122 for connecting a keyboard 124, a mouse 126, a speaker 128, a microphone 132, and/or other user interface devices such as a touch screen (not shown) to the bus 112, communication adapter 134 for connecting the workstation to a communication network (e.g., a data processing network) and a display adapter 136 for connecting the bus 112 to a display device 138. The workstation typically has resident thereon an operating system such as the Microsoft's Windows NT, Windows/95 Operating System (OS), IBM OS/2 operating system, MACOS, or UNIX operating system.

[0041] Software Overview

[0042] Object-oriented programming (OOP) has become increasingly used to develop complex applications. As OOP moves toward the mainstream of software design and development, various software solutions require adaptation to make use of the benefits of OOP. A need exists for the principles of OOP to be applied to a messaging interface of an electronic messaging system such that a set of OOP classes and objects for the messaging interface can be provided.

[0043] OOP is a process of developing computer software using objects, including the steps of analyzing the problem, designing the system, and constructing the program. An object is a software package that contains both data and a collection of related structures and methods. Since it contains both data and a collection of structures and procedures, it can be visualized as a self-sufficient component that does not require other additional structures, methods or data to perform its specific task. OOP, therefore, views a computer program as a collection of largely autonomous components, called objects, each of which is responsible for a specific task. This concept of packaging data, structures, and methods together in one component or module is called encapsulation.

[0044] In general, OOP components are reusable software modules which present an interface that conforms to an object model and which are accessed at run-time through a component integration architecture. A component integration architecture is a set of architecture mechanisms which allow software modules in different process spaces to utilize each other's capabilities or functions. This is generally done by assuming a common component object model on which to build the architecture. It is worthwhile to differentiate between an object and a class of objects at this point. An object is a single instance of the class of objects, which is often just called a class. A class of objects can be viewed as a blueprint, from which many objects can be formed.

[0045] OOP allows the programmer to create an object that is a part of another object. For example, the object representing a piston engine is said to have a composition-relationship with the object representing a piston. In reality, a piston engine comprises a piston, valves and many other components; the fact that a piston is an element of a piston engine can be logically and semantically represented in OOP by two objects.

[0046] OOP also allows creation of an object that "depends from" another object. If there are two objects, one representing a piston engine and the other representing a piston engine made of ceramic, then the relationship between the two objects is not that of composition. A ceramic piston engine does not make up a piston engine. Rather it is merely one kind of piston engine that has one more limitation than the piston engine; its piston is made of ceramic. In this case, the object representing the ceramic piston engine is called a derived object, and it inherits all of the aspects of the object representing the piston engine and adds further limitation or detail to it. The object representing the ceramic piston engine "depends from" the object representing the piston engine. The relationship between these objects is called inheritance.

[0047] When the object or class representing the ceramic piston engine inherits all of the aspects of the objects representing the piston engine, it inherits the thermal characteristics of a standard piston defined in the piston engine class. However, the ceramic piston engine object overrides these ceramic specific thermal characteristics, which are typically different from those associated with a metal piston. It skips over the original and uses new functions related to ceramic pistons. Different kinds of piston engines have different characteristics, but may have the same underlying functions associated with them (e.g., how many pistons in the engine, ignition sequences, lubrication, etc.). To access each of these functions in any piston engine object, a programmer would call the same functions with the same names, but each type of piston engine may have different/overriding implementations of functions behind the same name. This ability to hide different implementations of a function behind the same name is called polymorphism and it greatly simplifies communication among objects.

[0048] With the concepts of composition-relationship, encapsulation, inheritance and polymorphism, an object can represent just about anything in the real world. In fact, the logical perception of the reality is the only limit on determining the kinds of things that can become objects in object-oriented software. Some typical categories are as follows:

[0049] Objects can represent physical objects, such as automobiles in a traffic-flow simulation, electrical components in a circuit-design program, countries in an economics model, or aircraft in an air-traffic-control system.

[0050] Objects can represent elements of the computer-user environment such as windows, menus or graphics objects.

[0051] An object can represent an inventory, such as a personnel file or a table of the latitudes and longitudes of cities.

[0052] An object can represent user-defined data types such as time, angles, and complex numbers, or points on the plane.

[0053] With this enormous capability of an object to represent just about any logically separable matters, OOP allows the software developer to design and implement a computer program that is a model of some aspects of reality, whether that reality is a physical entity, a process, a system, or a composition of matter. Since the object can represent anything, the software developer can create an object which can be used as a component in a larger software project in the future.

[0054] If 90% of a new OOP software program consists of proven, existing components made from preexisting reusable objects, then only the remaining 10% of the new software project has to be written and tested from scratch. Since 90% already came from an inventory of extensively tested reusable objects, the potential domain from which an error could originate is 10% of the program. As a result, OOP enables software developers to build objects out of other, previously built objects.

[0055] This process closely resembles complex machinery being built out of assemblies and subassemblies. OOP technology, therefore, makes software engineering more like hardware engineering in that software is built from existing components, which are available to the developer as objects. All this adds up to an improved quality of the software as well as an increase in the speed of its development.

[0056] Programming languages are beginning to fully support the OOP principles, such as encapsulation, inheritance, polymorphism, and composition-relationship. With the advent of the C++ language, many commercial software developers have embraced OOP. C++ is an OOP language that offers a fast, machine-executable code. Furthermore, C++ is suitable for both commercial-application and systems-programming projects. For now, C++ appears to be the most popular choice among many OOP programmers, but there is a host of other OOP languages, such as Smalltalk, Common Lisp Object System (CLOS), and Eiffel. Additionally, OOP capabilities are being added to more traditional popular computer programming languages such as Pascal. The benefits of object classes are summarized in the following paragraphs.

[0057] Objects and their corresponding classes break down complex programming problems into many smaller, simpler problems. Encapsulation enforces data abstraction through the organization of data into small, independent objects that can communicate with each other. Encapsulation protects the data in an object from accidental damage, but allows other objects to interact with that data by calling the object's member functions and structures.

[0058] Subclassing and inheritance make it possible to extend and modify objects through deriving new kinds of objects from the standard classes available in the system. Thus, new capabilities are created without having to start from scratch. Polymorphism and multiple inheritance make it possible for different programmers to mix and match characteristics of many different classes and create specialized objects that can still work with related objects in predictable ways.

[0059] Class hierarchies and containment hierarchies provide a flexible mechanism for modeling real-world objects and the relationships among them.

[0060] Libraries of reusable classes are useful in many situations, but they also have some limitations. These limitations involve complexity, flow of control and duplication of effort and are discussed in the following paragraphs.

[0061] In a complex system, the class hierarchies for related classes can become extremely confusing, with many dozens or even hundreds of classes. A program written with the aid of class libraries is still responsible for the flow of control (i.e., it must control the interactions among all the objects created from a particular library). The programmer has to decide which functions to call at what times for which kinds of objects.

[0062] Although class libraries allow programmers to use and reuse many small pieces of code, each programmer puts those pieces together in a different way. Two different programmers can use the same set of class libraries to write two programs that doexactly the same thing but whose internal structure (i.e., design) may be quite different, depending on hundreds of small decisions each programmer makes along the way. Inevitably, similar pieces of code end up doing similar things, creating a duplication of effort, in slightly different ways and do not work as well together as they should.

[0063] As programs grow more complex, more programmers are forced to reinvent basic solutions to basic problems over and over again. A relatively new extension of the class library concept is to have a framework of class libraries. This framework is more complex and consists of significant collections of collaborating classes that capture both the small scale patterns and major mechanisms that implement the common requirements and design in a specific application domain. They were first developed to free application programmers from the chores involved in displaying menus, windows, dialog boxes, and other standard user interface elements for personal computers.

[0064] Frameworks also represent a change in the way programmers think about the interaction between the code they write and code written by others. In the early days of procedural programming, the programmer called libraries provided by the operating system to perform certain tasks, but basically the program executed down the page from start to finish, and the programmer was solely responsible for the flow of control. This was appropriate for printing out paychecks, calculating a mathematical table, or solving other problems with a program that executed in just one way.

[0065] The development of graphical user interfaces began to turn this procedural programming arrangement inside out. These interfaces allow the user, rather than program logic, to drive the program and decide when certain actions should be performed. Today, most personal computer software accomplishes this by means of an event loop which monitors the mouse, keyboard, and other sources of external events and calls the appropriate parts of the programmer's code according to actions that the user performs. The programmer no longer determines the order in which events occur. Instead, a program is divided into separate pieces that are called at unpredictable times and in an unpredictable order. By relinquishing control in this way to users, the developer creates a program that is much easier to use. Nevertheless, individual pieces of the program written by the developer still call libraries provided by the operating system to accomplish certain tasks, and the programmer must still determine the flow of control within each piece after it's called by the event loop. Application code still "sits on top of" the system.

[0066] Even event loop programs require programmers to write a lot of code that should not need to be written separately for every application. The concept of an application framework carries the event loop concept further. Instead of dealing with all the nuts and bolts of constructing basic menus, windows, and dialog boxes and then making all these things work together, programmers using application frameworks start with working application code and basic user interface elements in place. Subsequently, they build from there by replacing some of the generic capabilities of the framework with the specific capabilities of the intended application.

[0067] Application frameworks reduce the total amount of code that a programmer has to write from scratch. However, because the framework is really a generic application that displays windows, supports copy and paste, and so on, the programmer can also relinquish control to a greater degree than event loop programs permit. The framework code takes care of almost all event handling and flow of control, and the programmer's code is called only when the framework needs it (e.g., to create or manipulate a proprietary data structure).

[0068] A programmer writing a framework program not only relinquishes control to the user (as is also true for event loop programs), but also relinquishes the detailed flow of control within the program to the framework. This approach allows the creation of more complex systems that work together in interesting ways, as opposed to isolated programs, having custom code, being created over and over again for similar problems.

[0069] Thus, as is explained above, a framework basically is a collection of cooperating classes that make up a reusable design solution for a given problem domain. It typically includes objects that provide default behavior (e.g., for menus and windows), and programmers use it by inheriting some of that default behavior and overriding other behavior so that the framework calls application code at the appropriate times.

[0070] There are three main differences between frameworks and class libraries such as behavior versus protocol, call versus override, and implementation versus design. Class libraries are essentially collections of behaviors that one can call when one wants those individual behaviors in a program. A framework, on the other hand, provides not only behavior but also the protocol or set of rules that govern the ways in which behaviors can be combined, including rules for what a programmer is supposed to provide versus what the framework provides.

[0071] With a class library, the programmer instantiates objects and calls their member functions. It's possible to instantiate and call objects in the same way with a framework (i.e., to treat the framework as a class library), but to take full advantage of a framework's reusable design, a programmer typically writes code that overrides existing classes and is called by the framework. The framework manages the flow of control among its objects. Writing a program involves dividing responsibilities among the various pieces of software that are called by the framework rather than specifying how the different pieces should work together.

[0072] With class libraries, programmers reuse only implementations, whereas with frameworks, they reuse design. A framework embodies the way a family of related programs or pieces of software work. It represents a generic design solution that can be adapted to a variety of specific problems in a given domain. For example, a single framework can embody the way a user interface works, even though two different user interfaces created with the same framework might solve quite different interface problems.

[0073] Thus, through the development of frameworks for solutions to various problems and programming tasks, significant reductions in the design and development effort for software can be achieved. A preferred embodiment of the invention utilizes HyperText Markup Language (HTML) to implement documents on the Internet together with a general-purpose secure communication protocol for a transport medium between the client and a company. HTTP or other protocols could be readily substituted for HTML without undue experimentation. Information on these products is available in T. Berners-Lee, D. Connoly, "RFC 1866: Hypertext Markup Language--2.0" (November 1995); and R. Fielding, H, Frystyk, T. Berners-Lee, J. Gettys and J.C. Mogul, "Hypertext Transfer Protocol--HTTP/1.1: HTTP Working Group Internet Draft" (May 2, 1996). HTML is a simple data format used to create hypertext documents that are portable from one platform to another. HTML documents are SGML documents with generic semantics that are appropriate for representing information from a wide range of domains. HTML has been in use by the World-Wide Web global information initiative since 1990. HTML is an application of ISO Standard 8879; 1986 Information Processing Text and Office Systems; Standard Generalized Markup Language (SGML).

[0074] To date, Web development tools have been limited in their ability to create dynamic Web applications which span from client to server and interoperate with existing computing resources. Until recently, HTML has been the dominant technology used in development of Web-based solutions. However, HTML has proven to be inadequate in areas such as poor performance, restricted user interface capabilities, ability to produce only static Web pages, lack of interoperability with existing applications and data, and inability to scale.

[0075] Sun Microsystem's Java language solves many of the client-side problems by improving performance on the client side, enabling the creation of dynamic real-time Web applications, and providing the ability to create a wide variety of user interface components.

[0076] With Java, developers can create robust User Interface (UI) components. Custom "widgets" (e.g., real-time stock tickers, animated icons, etc.) can be created, and client-side performance is improved. Unlike HTML, Java supports the notion of client-side validation, offloading appropriate processing onto the client for improved performance. Dynamic, real-time Web pages can be created.

[0077] Sun defines its Java language as "a simple, object-oriented, distributed, interpreted, robust, secure, architecture-neutral, portable, high-performance, multithreaded, dynamic, buzzword-compliant, general-purpose programming language. Java supports programming for the Internet in the form of platform-independent Java applets." Java applets are small, specialized applications that comply with Sun's Java Application Programming Interface (API) allowing developers to add "interactive content" to Web documents (e.g., simple animations, page adornments, basic games, etc.). Applets execute within a Java-compatible browser (e.g., Netscape Navigator) by copying code from the server to client.

[0078] Other technologies, such as those provided by Microsoft and ActiveX Technologies, give developers and Web designers wherewithal to build dynamic content for the Internet and personal computers. ActiveX includes tools for developing animation, 3-D virtual reality, video and other multimedia content. The group's building blocks are called ActiveX Controls, which are fast components that enable developers to embed parts of software in hypertext markup language (HTML) pages. ActiveX Controls work with a variety of programming languages including Microsoft's Visual C++, Borland Delphi, Microsoft Visual Basic programming system and, in the future, Microsoft's development tool for Java, code named "Jakarta."

[0079] Technical Overview of a Local Service Activation Management (LSAM) System

[0080] The Local Service Activation Management (LSAM) System is a local service provisioning capability that enables a national and/or international service provider (NSP) to quickly enter into local markets while minimizing the implementation costs and risks. More particularly, LSAM is a software program that may be used to allow a national and/or international telecommunications provider to not only provide services to local telecommunications providers more efficiently, but also to offer local services to customers as an alternative to the services provided by local service providers (LSPs). Examples of such services include telephone services, internet services, home shopping, entertainment services, or any other service offered by a local service provider.

[0081] LSAM is also designed so that functionality can be phased in to align with the NSP local service strategy while adapting to changing LSP requirements. FIG. 1 illustrates one embodiment how this is accomplished by storing LSAM on a centralized server which may be accessed over a network 135 using a hardware implementation set forth hereinabove. The hardware implementation may include a user interface 122, display adapter 136, monitor 138, microphone 132, mouse 126 and audio output device 128. The network also may contain a CPU 110, ROM 116, RAM 114, and input/output (I/O) adapter 118, and storage medium 120. Such network 100
may include a local area network, Ti connection, the Internet, a dial-up connection, a satellite connection, etc. In another embodiment, this is accomplished by storing LSAM on a server which is connected to a telephone network that is also connected to computer systems of the NSP and several LSPs.

[0082] LSAM is more than a software framework or collection of tools. Rather, it provides a filly configured application including fully implemented business rules encoded as readily modifiable tables. This is accomplished by five major activities:

[0083] (1) core product implementation, (2) configuration to the NSP's requirements, (3) custom extension to core product, again for NSP and LSP requirements, (4) standard interface development, and (5) architecture integration.

[0084] The Local Service Activation Management (LSAM) has a local service provisioning capability that embodies a number of principles. Specifically, LSAM may insulate the national and/or international service provider (NSP) core components from local service provider (LSP) specific processing and enable local service capabilities through a series of well-defined interfaces to the core systems.

[0085] Further LSAMs may be integrated within a common technical architecture and promote tight component integration and loose coupling with core systems, manage LSP-specific data and business rules, support online validation of data to support order negotiation and order completion, minimize dependency on the LSP data and processes whenever possible, and enable a multiphase development approach to support simultaneous market entries.

[0086] Solution Overview

[0087] FIG. 2 illustrates three key processing components 200: (a) a high capacity, high throughput transaction processing service request processor (SRP) 202 to interface with the NSP core, (b) a standards based command processor (CP) 204 for interfacing with the LSPs, and, (c) an on-line transaction control application 206 for managing errors and controlling the process flow. These processing components are supported by a common technical architecture (transaction controller 225) to provide a robust operating environment and a common data store for local cache as well as configuration and business rules. These components and the supporting architecture have been designed to address three key business issues an NSP will face as it enters the Local Services market. These issues (workflow, performance and simultaneous market entry) are discussed in more detail below.

[0088] According to a preferred embodiment of the present invention, Quintessent's QConnect suite of software products may be utilized to provide transaction processing capabilities, a work flow and sequence control platform, a rules engine, and baseline interconnection software objects and class libraries. Quintessent's QConnect product is integrated with a Tuxedo-based front-end transaction architecture. QConnect provides a fully functional object-oriented platform, as well as standards-based service activation and pre-order application components, and configured business rule structures. The Tuxedo-based front-end processor supports a high-degree of system availability and scalability. Thus, QConnect together with Tuxedo's transaction monitor forms a baseline software installation which provides core local service activation management capabilities. From the teachings provided herein, those skilled in the art will appreciate that the following system description sets forth one preferred embodiment of a management interface between a core telecommunication system and a local service provider, although other system combinations are possible.

[0089] Workflow

[0090] The end-to-end customer care workflow (order taking, LSP provisioning, customer billing, etc.) must be as efficient as possible. This process accounts for a large percentage of costs associated with acquiring and servicing customers and often suffer from fallouts and errors caused by data integrity and process related issues. The inconsistencies associated with LSP processing further compounds this problem. Hence, the NSP must manage the end-to-end workflow, taking into account the inconsistencies of LSP provisioning while enabling low cost and high quality customer service.

[0091] Referring again to FIG. 2, LSAM supports this objective by using the SRP (Service Request Processor) 202, which has the capability to validate service requests 215 against network related information maintained in a local cache (for example, valid and available telephone networks). The high-capacity, high-transaction processing nature of the SRP enables NSP core systems to perform key validations that will prevent potential errors in the end-to-end customer care process.

[0092] In addition, LSAM maintains detailed queue and state data for each transaction. This enables flexible error correction through on-line manipulation of individual transaction data, real-time manipulation of rules and reference data, subsequent transaction resends, and rule-based correction of multiple transactions or interface discrepancies.

[0093] Additionally, the information may be used during service migration and customer inquiries to monitor order status. LSAM provides the capability to monitor and report on transaction level service level agreements (SLA). The on-line transaction control provides the ability to manage errors and fallouts manually and provides tools to develop automatic fallout processing. A basic end-user application allows LSAM administrators to review and update specific orders and order status thereby facilitating the order workflow. The response processor (RP) 220
of the command processor (CP) 204 enables the NSP to process LSP responses and, in the case of exceptions, to take automated actions based on business rules. Depending on the business need, the NSP can create an appropriate balance between manual or automated processes for handling exceptions.

[0094] Performance and Scalability

[0095] As the NSP launches local service offerings, LSAM must be able to scale appropriately as well as perform according to the NSP's guidelines and requirements. The performance characteristics of SRP 202 and CP 204
can be tuned independently to manage the end-to-end performance. SRP 202
interacts with the NSP core systems in a synchronous manner and therefore must be built to provide fast response times, high throughput, and high availability.

[0096] The CP 204 interacts with LSPs in an asynchronous manner and should support pseudo-synchronous needs of pre-order inquiry while managing inherently unreliable long-term transactions for ordering.

[0097] The NSP is allowed to scale LSAM in several ways to meet the volume and throughput requirements. The distributed logical and physical nature of the hardware and software architecture allows individual components to be run on separate hardware servers. This enables the NSP to fine tune the performance requirements of individual components to a specific hardware server. A Tuxedo based transaction monitor provides the ability to distribute transactions to one or more instances of LSAM. This enables the NSP to add more instances of LSAM to meet additional performance needs. The different instances of LSAM can also be load balanced using the Tuxedo capabilities. The hardware architecture can be based on servers such as Sun Unix and can be scaled to provide additional performance by addition of processors, disk space and memory.

[0098] Simultaneous Market Entry

[0099] The NSP should be able to roll out its local service offering across the nation and with multiple LSPs quickly, with ease and with proportionally lower investments over time. State and local regulations and new LSPs will also require incremental custom configuration. The table driven approach to configuration minimizes the development effort needed to introduce a new market or a new LSP. Nearly all business rules are delivered through highly flexible, table driven configuration entries which minimize cost and risk. Most LSP specific information is handled within the command processor 204 and isolated beneath the LSOG (internal LSAM format) standard. This enables high re-use of complex business rules reducing maintenance and versioning issues. Additionally, the table structure for business rules and local cache allows the NSP to implement several rollout efforts in parallel, if desired. Refer to the paragraphs below discussing the "New LSP Scenario" for an example of the tasks required and the process to implement LSAM with new LSPs and markets.

[0100] Support for Business Environment

[0101] LSAM addresses the following key business needs. The service request processor 202 is implemented in an LSP independent application programming interface (API) and message processing facility that shields the NSP front-end systems such as integrated order taking (IOT) from having to deal with LSP specific complexities. For example, LSAM provides a standard messaging interface based on previously successfully implemented customer care implementations which address complex order processing and order management business rules, and accepts a single message set across state implementations, LSP jurisdictions, connectivity (provisioning) options, sale negotiation flows, and technology platforms.

[0102] The API and front-end message handling supports a real-time data retrieval mechanism enabling interactive, customer on-line service order negotiations and trouble ticketing. The system can provide efficient response times when accessing locally maintained pre-order cache tables, real-time order validations while the customer is still online, and high-priority processing enabling pseudo-synchronous access to "remote" LSP data stores.

[0103] LSAM also supports the long-lived transaction management requirements of order processing through a "high reliability" asynchronous command processor 204 which maintains and processes the variety of LSP specific rules, complex response processing issues, transaction/response matching requirements, status monitoring and proactive jeopardy identification and notifications.

[0104] Guiding Principles

[0105] The following table describes a preferred embodiment of how LSAM addresses several exemplary NSP guiding principles.

1
NSP Guiding Principles LSAM Solution LSAM is responsible for managing Local business rules and data: LSAM provides necessary Local and LSP specific The Service Request Processor (SRP) 202 and business rules to the core ordering and provisioning Command Processor (CP) 204 both utilize business applications. rules that govern the execution of service requests and reside in a single rule repository. Message status and translation data are to be Requests are logged in an LSAM Local Data store transient. similar to the reference data store 235 and remain there until the request is completed successfully by the LSPs and a response has been forwarded to the NSP core system. The LSAM data archiving function is then responsible for archiving and removing data from the LSAM data store. Customer profiles are to be sourced to and managed No customer profile data is maintained in the by core. LSAM. Refer to the LSAM local data description for more details on the data entities stored in LSAM. Network element data required to support customer No network element data is maintained in LSAM. care are to be maintained in the core customer profile. Network element data not required for customer Service Activation rules are maintained in a rules care are to be stored in LSAM. repository 240. Tables supporting Service Activation data will reside in an Oracle database supporting function like connectivity decisions. Transaction data are to be stored in LSAM in a The SRP translates the requests into an abstracted format abstracted from LSOG versions and LSP LSOG version 3 format and the request is stored in specific requirements. this format until competed. All data, including business rules, are to have one A single copy of business rules is maintained in the and only one source. LSAM rules data repository 240. LSAM exposes local processing capabilities through a set of well defined system interfaces: Interfaces are to be defined at fundamental data Interfaces are defined through message definitions levels. using TAG attribute value pairs. Interfaces are to reduce latency between Integrated The SRP engine 202
is designed for high capacity Order Taker functions and LSAM processing. This transaction processing so that IOT can request and ensures that changes are driven by the status of process information from LSAM in a real-time relevant work orders. manner. Clearly defined LSAM interfaces are to transfer The LSAM System Interface defines the structure information back and forth between core systems and the content of the dialog between the NSP core and LSP systems. systems and the LSAM. This interface describes not only the standard API for information to be sent to LSAM but also the responses from LSAM. LSAM is an integrated system with a common technical architecture: LSAM components are to be tightly integrated with The LSAM system components are tightly each other, and loosely coupled with core systems. integrated with each other via a common messaging and execution architecture. These components interface with both the NSP core applications and the LSPs in an asynchronous manner and are isolated through a technical protocol layer. Pre-order and product availability data are to be The LSAM Local Data Store maintains a local cached when possible. cache 245 of information that can be used by the NSP core applications to expedite processing. Specifically, telephone numbers (TN) and "due date" data. LSAM is to be responsible to ensure data The LSAM data store uses a sophisticated database availability to achieve desired order flow-through. management system to ensure data integrity and availability. LSAM is to interact with LSP2 as a "Friendly LSP." The first release of LSAM enables interaction with Utilize Gateway interface approach. LSP1 and LSP2. LSP2's "friendly" status enables LSP2 is to be able to re-use LSAM core sophisticated business rule development that help architecture and business rules for its optimize LSP2 interactions. The LSAM object interconnection requirements. oriented architecture promotes reuse. The LSP2
interface should conform to the appropriate OBF, TCIF, and LSOG standards. LSAM is to minimize dependencies on LSPs LSP specific processing is isolated within the whenever possible. LSAM Command Processor. Front-end/core Necessary data is to be available within LSAM to applications is shielded from LSP specific processes support transactions once they are received. and data requirements.

[0106] LSAM Functional Overview

[0107] LSAM is architected not only according to the guiding principles above but also to address the NSP's local service entry business requirements. There are several `going-in-position` requirements which LSAM must address.

[0108] The LSP maintains independence from the core system. As the NSP enters into local markets it will roll out the LSAM solution to a wider geographical area and across several local service providers. Implementation of the LSP interfaces vary across LSPs and could also differ across geographical boundaries. For example, a specific public interfaces for a first LSP (LSP 1) may vary state-by-state due to the local and state regulations. Similarly, the public interface for LSP1 and a second LSP (LSP2) will probably not be identical. Since the LSP interfaces directly impact how service is ordered, LSAM isolates the core NSP systems (the NSP core) from LSP interface variations.

[0109] The LSAM provides service activation connectivity independence. In addition to the LSP regional variations, the NSP core systems must also be isolated from the specific connectivity business rules that govern how local service is provisioned. For example, the NSP may want to leverage the LSP2 infrastructure to provide local switching in areas where it is available and only provide the loop from the LSP. In other areas, it may decide to re-sell the loop as well as switching from the LSP. Provisioning rules will vary by geographic area and may be based on a number of criteria such as `wire center` or national pricing agreement (NPA-NXX). LSAM has the flexibility to implement and tailor these other rules without affecting the NSP core systems.

[0110] The LSAM provides fallout management. LSAM must also provide the ability to process certain actions in case of error or fallout. The system must provide the flexibility to take these actions either automatically or manually. For example, if an LSP experiences technical difficulties in its gateway but is processing orders internally, it may choose to send completions either via fax or e-mail. The NSP must be able to update LSAM appropriately and trigger completion processing. Similarly, the NSP should be able to handle a situation if an order was not completed exactly as requested but the customer has been provided with service. In each of these cases, LSAM isolates the NSP core from the complexities of the LSP ordering process.

[0111] The LSAM implements a local cache. LSAM must also facilitate the ordering process by assisting the NSP core systems to accurately create a service request for transmission to the LSP. The application architecture should support the development of additional local cache capabilities as supported by LSP interface agreements. LSAM should include processes to keep the Pre-Order Local Cache current and as accurate as possible.

[0112] The LSAM provides performance monitoring. Service level agreements are a key tool to ensure that the NSP can provide local service in a reasonable time and at a reasonable cost. Since LSAM is a single logical interface to all LSP's, it monitors and reports on service levels/metrics for the LSP's and LSAM itself.

[0113] The LSAM provides proactive status monitoring. LSAM monitors transactions against transaction level service agreements. This includes times for order confirmation and completion notification. Based on the NSP defined rules, LSAM recognizes jeopardies and pending or missed due dates. The application will spawn jeopardy notifications which can be processed as transaction responses and forwarded proactively to the NSP core systems. This facility can also support status inquiry and jeopardy reporting.

[0114] FIG. 2 also shows the key functional components of an LSAM solution and how they are integrated to provide a complete solution. The following sections describe these components in more detail.

[0115] LSAM System Interface

[0116] The LSAM real-time interface 230 to core NSP systems is defined through an API. This interface describes how the NSP core systems communicate with LSAM. The interface is designed for fast, high volume processing and will define the technical protocol, message structure, and the content descriptions. The LSAM interface will normally not need to be modified even when new products and services are rolled out. The addition of new LSP's will not impact the real-time interface to the NSP core systems. In addition, this interface will define the atomic level functions that can be performed through LSAM from an NSP core system perspective. Based on the request-for-proposal (RFP) requirements, the following types of functions may be included in the LSAM solution

[0117] The pre-order function enables the core systems to perform pre-order transactions necessary to negotiate a service request, such as checking the availability of facilities or reserving a telephone number.

[0118] The service request processing function can be used to: (a) direct pre-order requests to local cache data stores, (b) validate service order and pre-order requests, (c) determine provisioning/connectivity solution for a given order, (d) translate service requests into LSOG internal formats, and (e) prepare and format transactions for LSP submission.

[0119] The request service response definitions can be used to define response functions for both pre-order and ordering transactions. The status request function can enable the NSP core systems to request the status of any request in process. Alternatively, LSAM may "notify" the NSP core systems of status or as a jeopardy situation approaches.

[0120] This interface enables effective isolation of the NSP core systems from the business rules that define how a service is being provisioned, e.g., unbundled network element-loop (UNE-L) and unbundled network element -platform (UNE-P) as well as the LSP interface variations.

[0121] Some NSP systems may wish to integrate with LSAM through a custom LSAM interface wrapper so that they can transmit requests and receive responses from the standard LSAM interface. A wrapper allows NSP systems to communicate on a non-standard basis with LSAM.

[0122] Service Request Processor

[0123] The service request processor (SRP) 202 is a transaction processing engine with custom software components that receive, manage and process requests from the NSP core systems in the LSAM real-time interface format. This engine is designed for high performance in order to support online inquiry and ordering processes and systems. The SRP performs several functions as described below:

[0124] Request Receipt and Validation

[0125] The SRP 202 receives requests, logs them and validates them to ensure the completeness and accuracy of the message structure. It then validates the completeness of the request content. The request content is also validated to understand the request type and the request destination. If either of these validations fail, an error is sent back to the sending systems, otherwise an acknowledgement of a successful receipt is sent. At this time, the request is assumed to be valid and is ready to be acted upon.

[0126] Request Processing

[0127] If the request can be satisfied locally (i.e., by the local pre-order cache), SRP 202 will perform the needed action and return the response to the sending system (for example, if an NSP core system needs to find out the status of an order and if the order is in process and not yet complete, SRP 202 can respond to the status request based on the information available in LSAM).

[0128] Depending on the type of request, SRP 202 will apply the necessary business rules to further refine the request. For example, depending on the numbering plan assignment NPA-NXX (or wire center or a specific criteria), a different type of LSP order may need to be generated (i.e., UNE-P or UNE-L). If the request results in a UNE-L type of order, the SRP will create multiple sub-orders, including one to request the loop and the other to request the switch port.

[0129] FIG. 3 illustrates an overall manner of interfacing a core telecommunication system with a local service provider, as implemented by the components of FIG. 2. In operation 300, an interface with a core telecommunication system is provided to handle core telecommunication system requests and responses received from the core telecommunication system. The core telecommunication system requests and responses are then translated to a predetermined protocol in operation 302. Also provided is an interface with a local service provider for handling local service provider requests and responses received from the local service provider. See operation 304. In operation 306, the requests and responses from the local service provider are translated to the predetermined protocol. The core telecommunication system requests and responses are communicated to the local service provider in operation 308. Requests and responses of the local service provider are communicated to the core telecommunication system in operation 310.

[0130] As an option, the requests and responses may be logged upon receipt, such as by storing them on some type of storage medium, e.g., disc, magnetic tape, etc., as shown in FIG. 1. Also optionally, the completeness of the requests and responses may be verified upon receipt. In such case, an error message may be generated upon one of the requests not being complete. Pre-ordering duties selected from the group consisting of address validation, feature verification, due-date reservation, telephone number reservation, and customer service record retrieval may be handled. Also, errors may be managed in real time.

[0131] Translator

[0132] The requests that need to be sent to the LSP are then converted to the internal LSAM (LSOG) format. The rules for this translation are maintained in a table driven configuration provided by a product such as QConnect. This function is supported by QConnect's translation process.

[0133] Response Processing

[0134] Responses received from LSPs (via the LSAM response processor) are logged and reviewed for specific detail necessary to understand the response status, e.g., Completed OK, Partially Complete, Error etc. Depending on the business rules associated with the response type, the response can be forwarded to either the receiving NSP core system or to the fallout/error management application, located in the on-line transaction controller 206, or to both. Responses sent to the NSP core systems are in the LSAM real-time system interface format.

[0135] FIG. 4 is a flow chart of the service request processing in a local service management environment that is performed by the service request processor 202 (FIG. 2). In operation 400, core telecommunication system requests generated by a core telecommunication system are received by the LSAM. The core telecommunication system requests generated by the core telecommunication system are logged in operation 402. The core telecommunication system requests generated by the core telecommunication system are validated in operation 404. The core telecommunication system requests are processed in operation 406 if the processing can be done locally. The core telecommunication system requests are translated to a predetermined protocol if the processing can not be done locally in operation 408. In operation 410, the core telecommunication system requests are sent to a local service provider for generation of responses to the requests. In operation 412, local service provider responses to the core telecommunication system requests are received.

[0136] As an option, an error message may be generated upon failure of the validation of the core telecommunication system requests generated by the core telecommunication system. Preferably, a content of the core telecommunication system requests generated by the core telecommunication system are validated. More preferably, an error message is generated upon one of the core telecommunication system requests not being complete. Also, a status of the local service provider responses may be determined. Further, the local service provider responses may be sent to either the core telecommunication system or a fault management application based on the status.

[0137] Fallout/Error Management

[0138] The fallout/error management component 206 (FIG. 2) allows system administrators to monitor and fix simple errors in the LSAM processing. This includes validation errors and requests that may fall out of the normal process flow due to any reason. In the normal processing model, errors should be fixed at the source and the request resent to the component which caused the failure. Hence this component does not provide a sophisticated editing facility but allows the request to be put back into the process flow via simple field updates performed by the system administrators.

[0139] This component can also be used to facilitate processing of orders in case of errors in the LSP responses. For example, mass edit and resend.

[0140] Performance Management and Reporting

[0141] The LSAM components collect specific performance level metrics (to be finalized during a feasibility analysis phase) and log them into the LSAM Reference Data Store. This components above provides a basic viewing and reporting capability using an off-the-shelf third party reporting package. A limited number (10-15) of standard reports may be provided that allows the LSAM system administrators to monitor Service Level related information.

[0142] FIG. 5 is a flow chart depicting a method of validating service requests. First, network information is provided in operation 500. Then, service requests are received in operation 502 as part of processing a transaction. Data relating to the transaction is compared with the network information in operation 504. In operation 506, the data is manipulated upon detection of a discrepancy relative to the network information. Preferably, the network information is stored in a local cache. The manipulation of the data may be carried out on-line or in real-time. The data is sent out upon manipulation. Preferably, the data includes at least one of rules, references, and individual transaction data.

[0143] Command Processor

[0144] The command processor 204 (FIG. 2) provides the interconnection between LSAM and the LSPs. It mediates between the industry standards models implemented by the standard interconnection applications such as QConnect and the specific mechanisms utilized by each LSP. The command processor exchanges messages with the service request processor 202, which are governed by the relevant industry standard. The command processor exchanges messages with LSPs in a protocol and format prescribed by a joint implementation agreements (JIA). The joint implementation agreement is an agreement between the LSP and the LSAM to provide specific protocols and formats.

[0145] In fulfilling its role of translator between the SRP and the LSP, the command processor must perform duties such as receive, log, translate and validate messages from the SRP LSPs, as well as connect, authenticate, and communicate with LSPs. The CP 204 will also launch new business transactions based on configurable business events, associate messages with running business transactions, detect, report, respond, and manage exception events and communication interface events.

[0146] LSAM requires interconnection applications such as pre-ordering and local ordering. Industry standards specified by the "Alliance for Telecommunications Industry Solutions" (ATIS) which determine the business models implemented by the command processor's interconnection applications require pre-ordering, ordering and billing forum (OBF) (Local Service Ordering Guidelines version 3) and local ordering, ordering and billing forum (OBF) (Local Service Ordering Guidelines, version 3).

[0147] The LSAM may provide LSP interfaces such as LSP1 (North), pre-ordering electronic data interchange (EDI), common object request broker architecture (CORBA), ordering--EDI, LSP2, pre-ordering, and ordering.

[0148] Pre-Ordering is a business function which allows competitive local exchange carriers (CLECs) to gain the information required to place an accurate order to an incumbent local exchange carrier (ILEC). Pre-ordering functions include address validation, feature verification, due-date reservation, telephone number reservation, and customer service record (CSR) retrieval.

[0149] The ordering interface is used to allow carriers to order services or unbundled network elements (UNEs) from other carriers, and includes new features such as local number portability. Typically, CLECs order telecommunication service request (TSR) services or UNEs from ILECs. Services ordered include Plain Old Telephone Services (POTS) and designed services (Centrex, DS1s, etc.). UNEs ordered include unbundled loops, switch ports, and trunking facilities. Another facet of ordering is provisioning. Specifically, provisioning functions include order jeopardy notification, order status, firm order confirmation (FOC), order completion notification, and order rejection notices. These functions are considered important for providing the CLEC with current information on the status of their end customers' orders, and are typically contained as part of the ordering interface.

[0150] FIG. 6 is a flow chart of the operation of the command processor 204 set forth hereinabove. In use, the command processor 204 interfaces with a local service provider for management purposes. In operation 600, requests generated by a local service provider are received, which are logged in operation 602 and validated in operation 604. Pre-ordering duties selected from the group of pre-ordering duties consisting of address validation, feature verification, due-date reservation, telephone number reservation, and customer service record retrieval are handled in operation 606. The local service provider requests are sent to the core telecommunications system in operation 608. In operation 610, the core telecommunication system responses to the local service provider requests are received.

[0151] Preferably, an identity of the local service provider is authenticated before processing of the request. Also preferably, local service provider requests generated by a plurality of local service providers are received, logged, and validated. Optionally, business transactions may be launched based on business events that are detected. Messages may be associated with the business transactions. Ideally, the local service provider interprets responses for event handling purposes.

[0152] LSAM Data Architecture

[0153] The LSAM data store consists of the following entities: TN (Valid, In Use and Available), Request Log (Status, Due Dates/Time, Origin, Destination), Performance Management Data (Summary of Service Levels Missed, Service Levels Exceeded etc.) LSP (Detail info on each LSP, contacts, service-level agreements (SLAs)--interface commitments, due date commitment etc.), Business Rules (Validation rules, exception rules), CSP and CP data stores.

[0154] Data Load and Archive

[0155] General load and archiving functions can be executed as a periodic batch job, such as nightly or weekly. Telephone number (TN) and a street address guide (SAG) request may be generated in a batch mode and a transaction file that contains these requests can be sent to the LSP using a file transfer mechanism (e.g., "Connect: Direct" or network data mover (NDM).

[0156] Subsequently, the LSP generates the requested data (TN and SAG) into a file which is sent to the network service provider (NSP) LSAM in a batch mode using a file transfer mechanism. These files when received from the LSP are validated and loaded into LSAM databases. A script that manages the data load may be scheduled and controlled by a batch scheduler (e.g., Control-M or Autosys).

[0157] Data archiving can also be done in batch mode. The data archiving batch job may be scheduled in accordance with the business requirements that can be confirmed in the general design phase. Data that is archived moves to the NSP 's standard storage media.

[0158] Description of Interfaces

[0159] FIG. 7 illustrates one implementation of the present invention with an interface 700 between a core telecommunications system 702 and the transaction controller 704. In particular, a wrapper 706 is used to translate messages and responses to LSAM standard format, which will be described in detail hereinafter.

[0160] FIG. 8 illustrates an exemplary embodiment of the interface shown in FIG. 7 of the present invention. The transaction controller preferably includes a computer of a type known in the art. Each of the interfaces includes a network interface card (NIC) 800 which is connected to a CPU 802 of the computer via link 808. Each NIC 800 has a power terminal 804
for receiving electrical power from a source that is independent of the power supplied by the power conversion unit in the computer, and also independent of the source providing power to the computer's power conversion unit, as shown in FIG. 8. This external source may, by way of illustrative example, comprise a separate, plug-in power supply for attachment to a standard duplex receptacle, an on-board rechargeable battery, or the -48V DC power supply typically employed in a public or private telephone system. The power selection and conversion unit 806
receives power from either or both of link 806 and terminal 804, and distributes the required power to the components of the NIC 800. Preferably, the interfaces support high priority synchronous and reliable asynchronous data transfer.

[0161] For the following discussion, the NIC 800 that interfaces the transaction controller 704 (FIG. 7) and the LSPs will be set forth. It should be kept in mind that the interface with the core telecommunications system operates in a similar or the same way. With continuing reference to FIG. 8, a detailed block diagram of the processing system 810 incorporated in the NIC 800 is there shown. The processing system 810 includes a translation unit 812 which communicates with the LSPs by exchanging information through a terminal device data interface 816. The translator unit 812 converts or re-formats the LSP data to the protocol required by the transaction controller, and also converts in the reverse direction, i.e. from the transaction controller protocol to the LSP protocol. The signaling information and the telephonic data are separated by the interface unit 816, and translated respectively by the signal translator 818 and the data translator 820. The interface unit 816 exchanges signaling information with the signal translator 818 via bus 814a, and it exchanges data (also known in the art as bearer) with the data translator 820 via bus 814b.

[0162] The signaling information and the telephonic data must be sent to destination addresses that are consistent with the design of the data network. With continued reference to FIG. 8, the processing system 810
must contain an initial data network address of the LSP, or some similar entity connected to the network, in order to establish communications with it. Accordingly, the processing system 810 contains an initial address of the controller. This address may be programmed into a non-volatile memory 822 at the time of manufacture of the NIC 800, or at the time the NIC 800 is installed. Subsequently, each time power is applied to the NIC 800, the processing system 810 can use the initial address stored in the non-volatile memory 822 to automatically establish communications without any reliance upon information contained in the computer attached at port 840. After the NIC 800 establishes communication with the transaction controller, the NIC 800 may receive further information from the controller instructing as to the destination addresses of the signaling information and the telephonic data that it is to transmit. Accordingly, an address unit 824 is provided which receives the translated data from the translation unit 812 via an internal bus 826. The address unit 824 adds the destination addresses of the destination or receiving devices via a signaling address unit 828 and a telephonic data address unit 830.

[0163] Once the LSP data is translated and the addresses of the destination devices have been determined, the data is provided to a multiplexer--demultiplexer (MUX) unit 832, which may be software or hardware driven, for combining the reformatted LSP data with outgoing data generated by a CPU. The combined data is then output for transmission to the processors. In other words, as the formats for the CPU data and LSP data have now been made consistent with each other and with the format required by the data network, the separate data signals can be multiplexed by MUX 832, in a manner well-known to those having ordinary skill in the art, for output via NIC output port 834 to downstream CPUs (i.e., the processors 202,204). In a preferred embodiment, a buffer 838 is included between the NIC output port 834 and the MUX 832 for receiving the multiplexed data from line 836 and for regulating the bit flow rate of data to and from the data network.

[0164] As explained above, the NIC 800 functions in a bi-directional manner. Thus, it is not only capable of outputting multiplexed data for transmission to the data network, but is also capable of receiving multiplexed data and forwarding the received data to either or both the CPU 802 and the LSPs. Such incoming data is processed in a reverse order relative to that described above. For example, and with continued reference to FIG. 8, incoming data is first received by buffer 838 and is then provided to MUX 832 for processing and separation. MUX 832 will separate the CPU destination data from the LSP destination data. The CPU destination data will be output via port 840 to data bus line (link) 808
for receipt by CPU 802. The LSP data will be converted from the data network format to the format required by the transaction controller via translation unit 812 and output from the LSP downstream port 841 for reception by the intended LSP.

[0165] The interface unit 816 which, as explained above, interfaces or connects the LSPs with the translation unit 812, also functions to convert the data generated and/or received by the LSPs to a format required by the translation unit 812. For example, telephonic data may be converted to a proper line format such as integrated services digital network (ISDN) wherein the data is divided into a signaling channel and bearer channel. In addition to the reformatting and separation functions described above, interface unit 816 may also perform analog to digital conversion functions for use, for example, if analog LSPs are connected.

[0166] The interface connected to the core telecommunications system should function in a manner the same as or very similar to the interface with the LSPs as set forth above.

[0167] In general, one embodiment may be to provide the basic pre-order capabilities of LSAM. In this embodiment, the LSAM supports TN selection, reservation and cancellation, service location validation, and due date negotiations. This embodiment could require the NSP platforms to submit service requests and to process the FOCs, CN, rejects, and failures through existing platforms. Pre-Order transactions could be routed to LSAM.

[0168] In another embodiment, the LSAM handles both pre-order and order functionality. The NSP customer care systems may then use LSAM to submit service requests and to process FOCs, CN, rejects, and failure responses. This embodiment would also support product availability and status inquiry functions. The LSAM would have the capability to support the end-to-end customer care functions required to add, change, and delete services. LSAM insulates the NSP customer care systems from the complexities of interfacing with LSPs.

[0169] The LSAM can support pre-order functionality. The three pre-order functions supported are TN administration, service location validation, and negotiation of due date/time. The TN administration functions allow the NSP to retrieve the list of available TNs at a certain service location, validate a customer requested TN (personalized or vanity TN), and support the reservation/cancellation of the selected TN. For new orders the service location will be the key identifier used by LSP1 to search for TN. For Change orders, the current TN will be the identifier sent to LSP1.

[0170] The service location validation functions validate the service location address with LSP1. The service location address is a key data entity for inquiring into available TNs from LSP1 as well as for ensuring that a successful interconnection will be supported between the LSP2
switch and the LSP1 loop.

[0171] The due date functions allow the NSP customer service representative to negotiate the provisioning date with the customer. LSAM stores standard provisioning intervals which can be used when computing the due date. The standard provisioning intervals can be updated by scheduled data uploads or by table maintenance.

[0172] An exemplary list of transactions may include:

2
Business Event Description .about.PRE-ORDER.about. TN--Selection List--remote Request a list of some number (e.g. 5) of alternate TNs to support the Personalized TN TN selection step of service negotiation. The TN, structure data Vanity TN transfer SDT-TN, switch identifier, or service location sent with the request will be utilized to designate which switches the TNs are to be supplied from. The SDT-TN (or TN of the service location's former customer) is supplied for new connects or the "to" portion of moves. The current TN is supplied for TN change scenarios and add lines scenarios. The supplied TN specifies the serving switch. Request alternate TNs from the LSP. A request to specify a specific TN that the customer desires. In this case, LSAM will check if the specific TN is available. If the specific TN is available, it will be placed under "soft" reserve; otherwise, the state of the specific TN will be returned. TN--Reservation--remote Reserve the TN(s) selected by the customer and release the other TNs on the list of TNs, so they can become available. More than 1 TN may be reserved or no TNs may be reserved. The TN will be reserved against the LSP during the first three releases. TN--Cancellation--remote Request cancellation of TN reservation. The previously reserved TN will be sent in this request. The cancellation of the service request will automatically cancel the TN reservation (i.e., a cancel TN reservation message will not be required when a service request is cancelled) Cancel TN reservation with the LSP Due Date--request due date Request the due date and appointment based on the content of the and appointment--local service request (e.g., requesting inside wire and jack work) and other required attributes (state of service location). Due date refers to due date and time. When an appointment is required, the appointment end date and appointment interval will also be supplied. Appointment end date refers to appointment end date and time. Due date and appointment will be required for service requests and trouble tickets. Due date and appointment intervals will be queried utilizing the product, LSP, NPA-NXX combination as the unique key. Request due date and appointment utilizing default due date processing within LSAM. Validate Service Location-- Request validation of the customer provided service address. This remote request is used when the service address the customer provides must be validated. The request results in an address validation and return of the validated address, in the case of one match. Multiple matching will be supported in Release 1 and results in a list of candidate addresses being returned. Validate the service location against the LSP

[0173] The following scenario further illustrate how LSAM may function in this embodiment. A customer decides to migrate from LSP1 to NSP local (UNE-L; LSP2). The NSP needs to perform certain pre-order validation steps. The NSP may need to validate the service location with LSP1 via LSAM. The validated service location address is sent to LSP1 when the migrate order is generated. LSP1 can use the service location to interconnect the LSP2 switch to their loop system. The service location identifies the correct LSP2 switch to LSP 1. The service location address should also be validated with LSP2 to ensure that the a LSP2 has the capability to provide service for that address.

[0174] The customer's CSR data will not be retrieved via LSAM in this embodiment. For example, all NSP LSP2 customers could receive an offer for an identical product configuration. This business plan simplifies the processing requirements for local ordering system (LOS). For all migrate orders, LOS could send a transaction request to LSP1 to disconnect the customer from their switch (LOS could send the list of TNs to disconnect) and to perform the interconnect logic to LSP2 (service location would be utilized to identify network id). LOS would also initiate a message to the LSP2 provisioning system to provision the switch.

[0175] LSAM would also be utilized to derive the due date and time for the order. LSAM could store standard provisioning times for each product combination which can be used to compute the due date. For a migrate as-specified order, TN selection and reservation for new and change order logic should not be required. TN selection and reservation logic could be performed via LSAM.

[0176] FIG. 9 illustrates an exemplary scenario flow for a service validation request 900. The LOS 902 will submit the service location address request 901 to the wrapper 925. The wrapper 925 will perform standard transaction monitoring functions as well as perform simple validation. The wrapper will perform any required formatting and translation before forwarding the request 902 to the LSAM system 990. The LSAM system interface 930 will translate the request, utilizing a first translator 931, from the wrapper 925 or in IOT into standard LSAM terminology 992 and format. Once the request has successfully been translated and reformatted the request is forwarded 903 to the service request processor (SRP) 940. The SRP 940 will log the request and validate the completeness and accuracy of the message. The request type, destination, and content is also validated. For a service location validation request, SRP 940 will perform such logic as validating the state and zip code values. Requests that must be sent to a LSP are then converted to telecommunications industry forum (TCIF) format. Finally, the request is forwarded 904 to the command processor 945.

[0177] The message adapter component, such as Qconnect, within the command processor 945 will transmit the request to an LSP 905. Preferably, there will be one QConnect message adapter per LSP whose sole purpose will be to facilitate communication with a particular LSP. The request will be sent to LSP1 950. The QConnect message adapter component within the command process 945 may transmit 906 the request to another LSP. The request is then sent to LSP2 955.

[0178] The LSPI 950 will perform the service location validation and return the address if a single match is found, else a list of matches is returned. Assume a single match. The results of the request are sent back to the QConnect message adapter in TCIF format 907. The LSP2 955 will perform the service location validation and return the address if a single match is found, else a list of matches is returned. Assume a single match. The results of the request are sent back to the QConnect message adapter in TCIF format 908.

[0179] The command processor 945 will translate the LSP response, utilizing a second translator 946, into LSAM format 994, validate content, format, and completeness. The response 909 is then sent to the service request processor 940, which will log the response and determine the response status (e.g., OK, incomplete, error, etc.). The status of the response will determine whether the message is routed to the NSP or a Fall-Out manager. The successful service location validation response 910
is sent to the LSAM system interface 930. The LSAM system interface 930
will translate and reformat the response for transmission to the wrapper 925. The wrapper 925 will do any necessary translation and route the response to LOS 920.

[0180] Once the service location and due date have been determined via transaction with LSAM 990, LOS 920 will submit the migrate order to LSP1
950. LSPI 950 will discontinue the customer from their switch and ensure that the identified LSP2 955 switch will have interconnection to the LSP1
950 loop. LOS 920 will also submit an order to the LSP2 955 provisioning system to activate services for the new NSP customer.

[0181] In summary of the previous exemplary scenario flow for a service validation request shown in FIG. 9, FIG. 10 illustrates a process for submitting a service location validation request. In operation 1000, the transaction controller interfaces with a core telecommunication system to receive a service location validation request from the core telecommunication system. Data of the service location validation request is validated in operation 1002 and translated into a predetermined protocol in operation 1004. The service location validation request is sent in operation 1006 to a local service provider. An address from the local service provider is received upon a match being found in operation 1008.

[0182] As indicated hereinabove, the data may include either a zip code and/or state identifiers. Optionally, a plurality of addresses is received from the local service provider upon a plurality of matches being found. Also optionally, service for the address may be discontinued. Further, the address may be translated and/or logged after the receipt thereof.

[0183] Yet another embodiment of the LSAM builds upon the pre-order foundation previously described to support the end-to-end lifecycle for customer care. LSAM provides product availability functionality, empowering the NSP customer care system to perform product validation to minimize service request fallout. LSAM may also support the creation, inquiry, and completion of service requests.

[0184] Product availability functions can provide the NSP customer care systems with input data for its service negotiation process. The request service location configuration (CSR) function may provide a detailed view of the current active product configuration for a customer. The product availability function can provide a view of the network capabilities at a specific service location. The current product configuration and product availability view of a service location may be the primary inputs when validating a new service request.

[0185] Once the pre-order and product availability functions have been performed, a new service request can be created. LSAM supports the following service request types: new, migrate as specified, change, and disconnect. All migration type orders can be supported by the "Migrate As Specified" message. LSAM also supports the lifecycle maintenance and inquiry of pending service requests. The submitted service request can trigger a firm order confirmation, failure, reject, jeopardy, and completion notification. LSAM logs the various details of each message before sending the transaction to the NSP (e.g., status update, delivery time, etc.). LSAM also supports the inquiry function for a pending service request, enabling the customer service representative to communicate the latest status of the order to the customer. Finally, LSAM may allow the cancellation of pending service orders. Modification to the pending service requests will be supported by LSAM by use of a cancel/create strategy. The cancel/create logic will be transparent to the customer care system. The cancel/create strategy significantly simplifies process logic and work effort.

[0186] This embodiment may provide access to LSAM's fallout manager. Service request experts would utilize the system to perform "force cancel" and "force complete" status changes.

[0187] Various reports to summarize the performance of the system can also be included (e.g., volume of transactions, volume of errors, errors by LSP, errors by type, time required to handle request, etc.).

[0188] An exemplary list of transactions includes:

3
Business Event Description .about.PRE-ORDER.about. Request Service Location Process the CSR request and retrieve the CSR from the LSP. Configuration (CSR) Product Availability Based upon the TN or service location this message will return the service location configuration. This information includes details around active (provisioned) ports at the service location as well as inactive ports wired to the service location. Additional information (e.g., switch type, equipment type) can be utilized by the customer care system to determine the product(s) (e.g., standard vs. deluxe voicemail) that can be supported at a particular service location. The information for this transaction will be returned from the LSP. LD Availability Based upon the TN or service location, this message will return the list of long distance carriers that support a particular service location. The long distance availability data will be utilized by the customer care system for PIC selection. The information for this transaction will be returned from the LSP. .about.ORDERING.about. Create--New This message is used to activate service for a new customer who currently does not have local service. The appropriate service requests will be sent to the LSP(s). Create--As specified This message is used to migrate a customer who currently has local service provided by a LSP. This message will be utilized for customers who want to change their service profile during the migration as well as for customers who will be transferring without any service changes (Migrate As Is). The use of the As Specified message for both scenarios will simplify/reduce processing logic while fully supporting the migration requirements. The migration request will be sent to the LSP. Create--Change This message is used to change an existing NSP customer profile. The changes can include record and product modifications. The various changes will be sent to the LSP. Create--Disconnect The disconnect message is used to discontinue all related services for a TN for an existing customer Reject Notification The LSP sends notification that the transaction has been rejected and must be re-submitted after being corrected. This message is sent to LOS for correction and resubmission to LSAM. Failure The LSP sends notification when a service request has failed during the provisioning process. This message is sent to LOS for correction of the service request and resubmission to LSAM. FOC--no reverse translation, only Receive the firm order confirmation notice from the LSP and update the TN/DD status on the tracking DB. Update the due date as required. Send the details of the firm order confirmation to the retail customer care system. JEP LSP sends jeopardy notification that a service request may not be completed by the agreed upon due date. This message is sent to LOS. Completion Receive the completion notification from each LSP, update status on tracking DB, determine completion status of the entire order and send notification to retail customer care system. Completions will be transmitted as components when the service requests are completed. Status of Pending Request the details and status on a service order by decomposing the status requests and communication with each individual LSP. Cancel Pending A pending service request may be canceled by utilizing the cancel pending service request message. Any reserved TNs associated to the pending service request will be released. A pending service request may be canceled if and only if no work activity has been started on the service request. Route the cancel command to all LSPs that currently possess pending work for the specified service request.

[0189] As an example, a situation where a customer that has just moved to a region has selected the NSP as his/her local service provider. The NSP customer care system will establish the customer and billing account before performing the pre-order and service request submission functions.

[0190] The NSP customer care system will perform the following pre-order functions via LSAM: service location validation, TN selection, and due date/appointment. The service location validation logic would be identical to the logic featured in the previous discussion. Additional interfaces will be added as an NSP expands its market coverage. The TN selection logic would allow the customer to choose a specific TN from a list provided by a LSP. Once the customer has chosen the TN, the reservation would be sent to the LSP. The customer will also have the option of creating a personalized TN. The personalized TN would also be validated with the LSP.

[0191] Once the customer has decided on his product configuration, the NSP will submit the service request to LSAM. LSAM will perform its standard translation, logging, and routing logic. In addition LSAM will perform a decomposition function to break-up the service request into its provisioning components. Each component will then be routed to the appropriate LSP. For example, provisioning a new access line might require provisioning activity by both LSP1 and LSP2 (LSP2 programs the switch, LSP1 provides loop connectivity). Status will be tracked and maintained at the component and master order level.

[0192] LSAM would also process status inquiries from the NSP. The type of status inquiry will determine whether LSAM will need to communicate with a LSP or simply query its internal status database.

[0193] FIG. 11 illustrates an exemplary scenario flow for submission of a service request 1100. IOT 1120 may submit the service request 1101 to the wrapper 1125. The wrapper 1125 will perform standard transaction monitoring functions as well as performing simple validation. The wrapper 1125 will perform any required formatting and translation before forwarding the request 1102 to the LSAM system 1190. The LSAM system interface 1130 will translate the request from the wrapper 1125 or IOT 1120 into standard LSAM terminology and format. Once the request has successfully been translated and reformatted the request 1192 is forwarded 1103 to the service request processor (SRP) 1140. The SRP 1140
will log the request and validate the completeness and accuracy of the message. The request type, destination, and content is also validated. For a service request, SRP 1140 will perform such logic as validating that all custom calling features are associated to a TN. Requests that must be sent to a LSP are then converted to LSOG format. Finally the request is forwarded 4 to the command processor (CP) 1145.

[0194] A message adapter component, such as Qconnect, within the command processor will translate/format the transaction into telecommunication industry forum (TCIF) electronic data interchange (EDI) format before sending 1105 the transaction to an LSP1 1150. There will be one QConnect message adapter per LSP whose purpose will be to facilitate communication with that LSP. The request will be sent to LSP1 1150 to perform the loop/LSP2 switch connectivity.

[0195] The QConnect message adapter component within the Command Process will translate/format the transaction into telecommunication industry forum (TCIF) electronic data interchange (EDI format) before sending the transaction to an LSP2 1155. The request will then be sent to LSP2 1155
to activate the appropriate services.

[0196] The LSP1 1150 will process the service request. The LSP1 1150 will first send back the FOC after validating the service request 1107. After completion of the provisioning activity, the completion notification (CN) message will sent. Both the FOC and CN are sent to the QConnect message adapter in TCIF format.

[0197] The LSP2 will process the service request. The LSP2 will first send back the FOC after validating the service request 1108. After completion of the provisioning activity, the completion notification message will be sent. Both the FOC and CN are sent to the QConnect message adapter in TCIF format.

[0198] The CP 1145 will translate the LSP's responses into LSAM format 1194, validate content, format, and its completeness. The response is then sent 1109 to the SRP 1140. SRP 1140 will log the response and determine the response status (e.g., OK, incomplete, error, etc.). The status of the response will determine whether the message is routed to the NSP or the Fall-Out manager. The FOC and CN response are sent 10 to the LSAM system interface 1130. The LSAM system interface 1130 will translate and reformat the response for transmission 1111 to the wrapper 1125. The wrapper 1125 will do any necessary translation and route 1112
the response to the NSP.

[0199] In summary of the above scenario flow for submission of a service request shown in FIG. 11, FIG. 12 illustrates a process for submitting a service request. In operation 1200, the transaction controller interfaces with a core telecommunication system for receiving a core-telecommunication system request from the core telecommunication system. The core telecommunication system request is translated in operation 1202 to a predetermined protocol. In operation 1204, the core telecommunication system request is sent to a local service provider. A firm order confirmation is received upon validation of the core telecommunication system request by the local service provider in operation 1206. Finally, in operation 1208, a completion notification is received upon completion of a partitioning of the core lo telecommunication system request in a plurality of duties assigned to different local service providers.

[0200] Preferably, the firm order confirmation and the completion notification are translated upon receipt. Also preferably, the firm order confirmation and the completion notification are logged upon receipt. As an option, a customer account may be established prior to interfacing with the core telecommunication system. Further, telephone network selection may be allowed.

[0201] Service location validation may also be allowed. In such case, the transaction controller interfaces with a core telecommunication system to receive a service location validation request from the core telecommunication system. Data of the service location validation request is validated and translated into a predetermined protocol. The service location validation request is sent to a local service provider. An address from the local service provider is received upon a match being found.

[0202] Still another embodiment illustrates th