The invention relates to data management and communications, and particularly to providing access to secure data and communication management tools for an enterprise to a plurality of customers over the Internet which is an insecure communications network. The enterprise described is a telecommunications network, and the tools include management and reporting tools to enable the customers of the telecommunication network to manage and obtain reports and data pertaining to their business on the network.
Computer user interfaces have undergone dramatic changes over the past forty years, evolving from the simple, line-oriented, prompt-response systems of teletypes, to the forms-based interfaces of dumb terminals, to today's graphics-based, windowing interfaces like Windows 95. The genesis of the modern GUI paradigm in fact dates back some thirty years to work done at the Xerox Palo Alto Research Center which pioneered the usage of the WIMP (Windows, Icons, Menus, and Pointing Devices) interface. The introduction of Apple's Macintosh computer in 1984 brought the WIMP interface to a growing population of personal computer users. The WIMP's evolution from research project to universal standard culminated in 1990 with Microsoft's release of the 3.0 version of Windows. In the many years since its introduction at Xerox PARC, the WIMP interface has been enhanced and refined by decades of human factors engineering, and today's computer users enjoy the benefits of an interface paradigm that has been highly optimized in terms of efficiency, ease-of-use, and intuitive operation.
In 1992, CERN's Tim Berners-Lee conceived of combining a hypertext browser that interpreted a page description language retrieved from document servers accessible by name over a simple network protocol, and so created the framework for the Worldwide Web. Shortly afterward, Mark Andreeson (who would later found Netscape) created a GUI-based HTTP browser called Mosaic that set the current standard for browser interface design. Prior to Berners-Lee's innovation, data resident on the Internet was accessible only via arcane utilities such as FTP, Gopher, and WAIS, making it inaccessible to most people. Hypertext proved to be the perfect medium for navigating, the disparate disclosures of the Internet, and for the first time made Internet-based data accessible to casual computer users.
While this particular application of hypertext was new, hypertext itself had been around for quite some time. The Mosaic interface was in fact quite similar to interfaces commonly used by on-line help systems and computer-based training (CBT) software. The explosion of websites and Internet users however brought hypertext-based information access to a massively greater audience than ever before, and the web browsing paradigm has proven so usable by novice computer users that many aspects of today's browser-based interfaces are being incorporated into the design of transaction processing and decision support systems.
User Interfaces and the Web
Browsers have been developed using the standard interface elements of current GUI environments, but have specialized the ways in which those elements are combined to navigate and view hypertext documents. Browsers provide an environment that tightly and seamlessly integrates multiple unrelated applications and have eliminated many key aspects of the standard GUI desktop metaphor.
The current MCI ServiceView (MSV) product line provides MCI Business Market customers with Windows based client-server applications for customer network management and call usage analysis. These applications include: Perspective, TrafficView, 800 Network Manager, Outbound Network Manager, Fault Manager, Direct Dispatch, Call Window, and System Administration and were built and deployed between 1994 and 1997.
Although the MCI ServiceView PC applications reside on a common platform and use objects to promote common look and feel, there is little cross application interoperability and data sharing. The customer must use the separate applications to gain access to their data. There are additional customer network management applications (e.g.—HyperScope, Call Manager, Portfolio) which are not MSV based and therefore do not share the same PC configuration and communications as the MSV ones.
The Next Generation product suite, also referred to herein as Starbucks, a consolidated Web based network management product to the customer. There are many reasons for providing a web-based solution for these requirements:
The main point is that web-based applications allow developers to focus their development on the specific products and services, without wasting development, test, and support energy on other aspects of software delivery.
Internet Gateway Security Standards
All external MCI Web sites must obey the Internet Gateway Security Standards enforced by MCI Network Computing Services (NCS, the owners of Infolink which is the network that all our computer systems use). Placing a web site on the Internet and then allowing our customers to use it to access sensitive MCI account information is a very serious proposition. To do this a certain server architecture must be obeyed to ensure systems security.
Below is a summary of the basic architecture that all MSV and other web sites that communicate with customers must obey. In a nutshell, no customer may directly connect from their PC to a web site or web page link running on a midrange, DBMS or warehouse server connected to the MCI Intranet. Every web site link including presentation pages will run on web servers in the demilitarized zone (DMZ), and at the same time these web servers will have no connectivity to any midrange or host server on the MCI Intranet, except for special proxies and/or relays that use sophisticated and somewhat cumbersome security measures to make specific secure connections to application hosts on the intranet. This architecture model separates all server processing, data storage and legacy connectivity from any web system that directly interacts with a customer in order to insure MCI systems integrity and security.
The Starbucks architecture provides the infrastructure by defining and building common components in the following areas:
Referring to
DMZ 120 includes firewall 122, web server 124, back-end services 126 and firewall 128. Firewalls 122 and 128 provide security for DMZ 120. Web server 124 and back-end services 126 receives customers' requests and processes these requests by forwarding them to the appropriate systems in back-end 130.
Back-end 130 includes back-end business logic 132, adapter framework 134 and legacy adapter 136. Back-end 130 may provide new applications and services for use by customers. Back-end 130 may also provide connections to existing applications and services via legacy adapter 136. These legacy or existing applications may be executed by legacy host 150. Legacy host 150 may include legacy system 152 and legacy data 154 that function to provide services to customers.
Software Architecture
Overview
Multi-Tier Architecture
Complex, distributed client-server systems are typically deployed using a tiered (also called “layered”) architecture. The software re-architecture is typically focused on the presentation, application, and data base layers of this model and it is thus often referred to from a software standpoint as a “three-tier” architecture.
Component Architecture
To facilitate the rapid development of the Next Generation platform and standardize key architectural aspects of their design, implementation and user interface, The NextGen Vertical Team has defined a comprehensive set of core service components with broad application across the required applications. Examples of services provided by such a framework include
The software strategy will focus at the client/presentation level, producing a new, browser-based, consistent user interface. Server-side (application-tier) interfaces will be maintained wherever possible.
In this scenario, objects are designed and implemented in the user interface parts of the system, allowing for reuse of a common GUI abstraction and problem-domain abstractions (e.g., billed phone call records). Application-specific classes would be derived which would support the functionality and server interfaces for each application.
Some of the functionality delivered through the system will be cross-product (e.g., Reporting); other functionality will be product-specific (e.g., 800NM, Call Manager, HyperScope). The system needs to be able to be delivered to customers with the functionality appropriate to their product mix.
The client tier software will be organized into a component architecture, with each component providing one of the areas of functionality described above. These components will be called “applications” in the following discussion, although they may not technically be independent executables.
The Next Generation applications are:
The client-tier software will be created using the Java programming language and distributed as a set of Java applets and classes. The use of Java technology provides an industrial-strength object-oriented development environment over the internet; a browser-based interface; platform independence; automated software distribution; and significant benefits in the development life cycle.
This option achieves the following goals of the Next Generation product:
The impact on existing MCI systems varies. Applications which are already architected in a client/server model (e.g., Traffic View) will require relatively little re-engineering on the server side, since they will continue to use their existing interfaces and protocols. Applications which depend on extensive client-side processing (e.g., Perspective) will require a new server backend.
This approach provides only rudimentary reuse of problem-domain abstractions across applications, and therefore it does not unify the content (as opposed to the look-and-feel) of the applications. A generalized reporting viewer (see below) can make a Traffic View report look a lot like a Perspective report, but without more extensive server-side re-engineering, priced and unpriced calls cannot appear in one report; nor can a particular unpriced CDR be reliably tied to its priced counterpart.
The approach provides some benefits in the time-to-market for future products. The “Write Once, Run Anywhere” cross-platform support of Java technology allows a single version to run on all platforms, OS versions, and browsers. Consolidating the architecture of all the applications and building on a common services layer (see below) will result in more reliable software in a shorter time frame. Developers will be able to move between applications with more ease. Java technology provides several other development and time-to-market advantages over C or C++, the traditional development languages for the MSV platform. See “Use of Java Technology,” below.
Inbox/Email Paradigm
A major part of the functionality is centered around reporting. The interface paradigm will be asynchronous; that is, the customer will request a report, and can continue using the system (or other applications on the workstation) while the report is processed at the server. When the report is completed, a notification will appear in an “inbox.” At any point thereafter, at the customer's convenience, the report can be downloaded and viewed, saved, etc. This paradigm preserves the responsiveness of the platform and emphasizes the customer's control of the system.
The inbox will be used as a general conduit for messages to the customer; news of available upgrades, problems with the servers, problems with report requests, promotional announcements, product offerings, etc. Messages will remain in the user's inbox until they are deleted by the user, or expired after a certain (relatively long) period.
The paradigm is very much like email, and the implementation will share many email-like characteristics. The architecture for reporting and message delivery is essentially “store-and-forward”; this is the essence of email systems as well. The actions which a customer will perform with respect to the contents of the inbox are the same ones which would be available in an email situation (read this message, delete this message, get the attachment for this message (e.g., a report)).
It is tempting to use an actual mail server as the back-end repository for the stored messages and reports. However, the Next Generation platform will require somewhat more functionality than a standard mail server would provide (e.g., multithreaded server/client for high priority messages, guaranteed delivery, recoverable downloads). Still, the system will use standard mail messaging protocols to interact with the inbox.
The similarity to an email system provides an opportunity to leverage parts of an existing mail server implementation. It is anticipated that royalty-free source code license will be obtained for a mail server which implements the desired protocols, and that the source code will be adapted and enhanced to fit the requirements of the Next Generation platform.
Tier/Interface Structure
The tier/interface structure will involve a re-write of the user interface and communications layer for the component applications. The discussion below focuses on a high-level description of the decomposition of the system into client, web-server, dispatch, and middle-tier services, and the message interfaces between them.
The message protocols from the client to the server fall into a few distinct categories:
The messages from the server to the client also fall into a few distinct categories:
All communications in both directions will be channeled through the DMZ Web servers. All communications between the DMZ Web servers and the client workstation will be encrypted using SSL. Requests from the client to the servers will be “wrapped” by the common communications service (see below) with session, authentication, and application-id information (prior to encryption).
For incoming (client-to-server) communications, the DMZ Web servers will decrypt the request, authenticate and verify the session information. The communication will then be forwarded through the firewall over an encrypted socket connection to a pair of decode/dispatch servers located within the MCI Intranet. These servers will decrypt the request, authenticate the user's access to the desire middle-tier service. Communications with each middle-tier service will be handled by proxy processes, which will manage the messages and communications with the actual middle-tier server.
Outgoing (server-to-client) communications will follow the reverse route. The proxies will feed responses to the decode/dispatch server, which will encrypt the client-bound messages and ship them to the DMZ Web servers over the socket connection. The Web servers will forward the information to the client using SSL.
Client-Tier Software Architecture
The client tier of the Next Generation Network Manager will be primarily responsible for presentation services.
The client tier software will be organized into a component architecture, with each component providing one of the areas of functionality described above. These components will be called “applications” in the following discussion, although they may not technically be independent executables.
The applications will be integrated using a “backplane” which provides a set of services to the applications and manages their launch. This is similar to the MSV platform in relation to the MSV applications.
Use of Java Technology
Java is described as a simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-performance, multithreaded, and dynamic language according to the Java Language white paper.
The language was originally created because C++ proved inadequate for certain tasks. Since the designers were not burdened with compatibility with existing languages, they were able to learn from the experience and mistakes of previous object-oriented languages.
Even more importantly, Java was designed from the ground up to allow for secure execution of code across a network, even when the source of that code was untrusted and possibly malicious. This required the elimination of more features of C and C++.
Furthermore, Java was designed to be cross-platform in source and compiled form. Java applications are “Write Once, Run Anywhere”: there is no need for separate versions for different operating systems, or different versions of a give operations system. Java applets download classes dynamically from the internet host, and thus are self-updating and self-distributing.
Customer Access Mechanism
The customer will use one of the supported access mechanisms to connect to the MCI premises web servers which are located in the DMZ. Referring to
Intranet Access
Three types of direct MSV web server access will be offered by Starbucks and a monthly, flat nominal billing fee will be assessed for each access account.
Direct modem and/or ISDN access may be requested when the customer or Order Entry (OE) hub registers a new Starbucks user. The customer may use the ISDN and modem account interchangeably, since the remote access servers which authenticate the connection will share the same user authorization database. When the Starbucks direct modem or ISDN dialup connection is connected to the Starbucks web servers the customer may not simultaneously browse the public Internet through this same connection. If the customer has an operating system that supports multiple physical interfaces such as Windows 95, then the customer may configure static routes so that the user may still browse their own private intranet or the public Internet while directly connected to the MSV web servers. If the customer wants a dialup account that can also browse the Internet, then they should use iMCI instead of direct MSV web server access.
The third type of direct access supported by Starbucks is direct Frame Relay access which will connect a customer's Ethernet or similar LAN to the MSV web servers using a 1.54 Mbit/second Frame Relay Permanent Virtual Circuit (PVC) and an MCI specified Network Address Translator (NAT)/Router. Since Frame Relay supports multiple PVSs the customer may also use their Frame Relay NAT/Router to simultaneously connect to the public Internet over a separate PVC as negotiated with their ISP which is preferably MCI.
In one implementation, the customer account representative will order the Frame Relay service by selecting the “Hyperstream Frame Relay” MCI product from the MCI Product Library. After securing HyperStream service the account rep. will then contact MSV 1st level support for PVC assignment and NAT translation specification, etc. MSV 4th level support will actually configure and issue address assignments, etc. for 1st level support to give to customers. A nominal, flat, monthly billing fee will be charged to Starbucks Frame Relay customers. This charge will be separate and possibly different from the dialup modem and ISDN charge.
Access from internetMCI via dial-up modem banks (e.g., 5 meganodes) may also be used. In this case, separate userid/password/challenge password for physical access vs. Starbucks userid/password may be used.
Web servers will track userid/password/apps being authorized/date-time, which will expire after some inactivity timeout.
Public Internet Access
Public internet access may also be provided. The customer will need to make arrangements for public Internet access from an Independent Service Provider (ISP), and the type and speed of public Internet access are virtually unlimited. Note that internetMCI (iMCI) is the preferred ISP but not required for Internet access.
Demilitarized Zone (DMZ) Web Servers
The DMZ 220 is a special secure network area set aside on MCI premises exclusively for potentially hostile customer access. All MCI internal systems are located on the MCI Intranet 230 which is the MCI internal network. All DMZ equipment is physically isolated and firewalled from the MCI Intranet. Likewise the DMZ equipment is firewalled and thus obscured from hostile attacks from the public Internet, except for limited web browser access to the MSV web servers which are located in the DMZ. The customers web browser connects to an MSV web server in the DMZ which in turn acts as a proxy to extract select information from midrange MSV servers locate in the MCI Intranet. Thus a customer never directly connects to servers in the MCI Intranet in order to ensure internal systems security and integrity.
The DMZ double firewalls the public Internet from the MCI Intranet. Web servers located in the DMZ never store or compute actual customer sensitive data. The web servers only put the data into a form suitable for display by the customers web browser. The web servers in the DMZ are securely implemented in all manners, but there is always the chance of a MCI computer operator lapse or inside security breach. In the event of an inadvertent DMZ to public Internet security breach, only the web servers in the DMZ could be attacked and not an internal MCI system on the MCI Intranet. Since the DMZ web servers do not store computer data, there is a much smaller chance of any customer information being jeopardized, and the greatest risk of a DMZ intrusion is mostly just system downtime and other inconveniences.
DMZ Network Connection
All MSV web servers located in the DMZ will be interconnected by a 100 Mbit/second Fast Ethernet. Direct Starbucks customer access to MSV web servers will involve the customer directly connecting to an MSV Modem, ISDN or Frame Relay remote access server. The remote access servers will be connected to the existing MCI BGP network, which has redundant connectivity to the SCMAR3 and ZNRAR3 backbone routers, which in turn have redundant connectivity through the IR routers to the MSV web servers 100 megabit LAN. All NGNM direct connectivity will be immediately firewalled such that can only access the MSV web servers in the DMZ.
Public Internet access will come through the SCMAR3 and ZNRAR3 MCI premises Internet Points of Presence (POPs) which have redundant 45 Mbit/second Internet connectivity and are currently only about 4% utilized. This access will share the redundant access that the Starbucks direct access customers use to get to 100 Mbit/second MSV web server Fast Intranet LAN. The Internet POP routers will be configured to allow new Internet traffic to the Starbucks MSV web server, besides the other public Internet traffic that already terminates on other web servers in the DMZ such as “MCI.COM”.
Once the public Internet or direct access traffic has terminated at a DMZ web server, the MSV web server will treat the two types of traffic equally. Both types of traffic will require logon to an initial MSV web server home page, and all communications will be conducted using Secure Sockets Layers (SSL) and/or other types of similar security. All traffic from a web server to a customer PC will be treated as highly sensitive, secure data, regardless of the content. When the web server proxies an MCI Intranet server the traffic will ride the same redundant physical network up to the ZNRAR3 and SCMAR 3 routers which will securely route the traffic back down through the BGP network and IR routers and into the MCI Intranet Infolink network. This routing action will constitute another virtual firewall which will only allow a very strict set of MSV web server traffic back and forth to a specific set of MSV midrange application servers located in the MCI Intranet. The traffic between the servers will also be limited in the types of connections that can be established between the servers. As a further security measure the web servers will still be required to log on to the midrange Intranet servers and vice versa. This lessens the threat of an inside job or security lapse or firewall configuration error.
Web Server Scaleability
There are 2 ways we can deal with the scaling, within a single machine (vertical) and distributed across multiple machines (horizontal). From an operational view, a single machine model is superior, however, limitations are then incurred due to the single machine architecture. These machines must be large and availability is provided through traditional HA, i.e. redundant machines. Once a machine is out of vertical headroom (CPU, disk, network I/O, etc.) architecture must scale horizontally:
Horizontally scaling a Web server has three basic requirements:
For 1, a pool of addresses is usually implemented using round robin DNS. This has the advantage in that it is simple, but the main disadvantage is that it requires most users of PCs to restart their browsers when a server goes down. This is because the browsers hold on the IP address as long as they are running. Using a virtual IP address solves this problem because the address is translated to an actual valid address from the pool of servers.
A further advantage of using a virtual address and a pool of servers is that of horizontal scaling and elimination of the need for HA redundancy in the server pool. The main purpose of HA here is to provide IP failover. Applications will in any case have to be smart about reconnection if a machine goes down.
Using a pool of smaller machines (2) allows a lower entry point to Web based service as long as the machines can handle some excess capacity. The number of servers should be such that there is sufficient over capacity to handle planned down time for maintenance or possible failure.
Local Disk
For Starbucks, all content will be placed on each server. This improves local performance and isolates Web servers from each other. A number of issues are presented:
Synchronization
Ideally all Web servers will be updated at once with any changes to Web content. With multiple machines this is possible through a number of schemes. Unix provides rdist, CPIO, FTP and others, which can update content on local disk. A possible scenario might be:
Another scenario might be:
A variation on this would be to temporarily take a machine off line while files are updated.
Management of Web Servers
As the number of Web servers grow and the amount of content increases, each Web server will have to be a mirror of every other. Maintaining multiple servers with more than basic configurations is quite troublesome, but it can be done.
Security
If a Web server is compromised the content on that server is at risk. With proper management of a machines configuration this should not be a problem.
Reliability and Availability
Using non Raid disks is less reliable than using Raid. In the event of disk failure or a machine crash, there is no recovery mechanism.
Summary for Disk
Local disk has an advantage of performance over NFS network available disk. Issues regarding distribution of content, state of users, and security can all be ameliorated by creating processes to address these individual problems. More effort is required and administration costs are greater.
With regards to reliability, moving to an HA NFS system offers better reliability. For example with an array subsystems using 0+1 RAID and hot standby disks, the disk subsystem can tolerate one or several disk failures with no loss of service. Array subsystems also generally allow for higher speed interconnects. The main disadvantage to this type of system is cost and with NFS some performance.
Intranet Midrange Servers and Legacy Mainframe Systems.
The existing MSV Web servers are currently interconnected on the ZNR Call Processing Ethernet backbone network which is part of the MCI Intranet. A separate initiative from Starbucks is adding MSV midrange server connectivity to the Intranet Infolink data network in order to support the increased TVW and P4W client/server traffic. Where possible Starbucks will exploit and recycle the existing MSV midrange server resource already on the MCI Intranet. New servers will be added to the Intranet as required by Starbucks. Most of the existing MSV midrange servers already use Infolink Token Ring connectivity to connect SNA sessions to the legacy host, mainframe systems in operation today.
The following identifies some requirements for the applications supported in implementations consistent with the present invention, also referred to herein as StarOE applications. The requirements include but are not limited to technical specifications, system interfaces, and StarOE functionality. The applications supported by StarOE include, for example, 1) 800 Network Manager, 2) StarWRS (Starbucks Reporting System), this includes Priced and Unpriced Reporting, 3) StarOE, and 4) Hyperscore. Fulfillment data will not be sent from the StarOE server for each of these applications, directly to Hibbert.
Java Implementation
The StarOE application must be constructed using a Java based, internet architecture, which will be accessed from the main Starbucks HTML home page.
Order Entry
StarOE will provide the functionality to order users (create user ids, passwords, etc.) and applications (setup security) for the Starbucks suite of applications. StarOE will store all required security data for each application.
Users
All Starbucks users will be ordered through StarOE similarly to the MSV SA, but there is no concept of a Workstation (a user will not be associated with a workstation). All user ids and passwords for Starbucks applications will be stored in the StarOE database. External users will be associated with one enterprise id, but the system should be designed for allowing an external StarOE user to be associated with multiple enterprises. All users, when added, will have a default enterprise id associated with the user id.
The following information will be collected and stored for a Starbucks user:
The server will store the order date each user and each application. The StarOE server will also store the fulfillment status (fulfilled, unfulfilled, refulfilled).
User Types
A user may be an administrator for one application, and just a user for another application. Each user will need to be classified into one of the following categories. The main division among users is a User versus an Administrator (admins). Admins will have access to StarOE, whereas Users will not.
Changing Passwords
The user will be required to change the password at the first login of a new user and every 90 days. The new password must be different from the previous password only.
Applications
The Applications that are available may include 800 network manager, Hyperscope, StarOE, and StarWRS (Priced Reporting—what is now Perspective, Unpriced Reporting—what is now Traffic View).
StarOE will provide an option to order a hard copy of the documentation for an application during the order process.
800 NMGR Security
StarOE will provide the same functionality as the current MSV System Administration. A user's 800 nm security profile will contain multiple (Tollfree) Corp Ids, with each Corp Id having an associated RACF Id. The RACF ids will be manually entered for each corp id. A default corp id must be chosen for each user.
Communication from the 800 nm server and/or the 800 nm client to the StarOE server will be via TCP/IP, using the messages defined in the StarOE server interface document (in progress). We may need to send a message to the 800 nm server when a user logs in to Starbucks, and the user has access to the 800 nm application.
Communication between the StarOE server and NETCAP will be via registry, using messages defined by NETCAP.
There will be no invoice recipient or setting of the 800 PCCM flags in CORE.
The following functionality may also be provided:
Functional level security.
Automated access ids similar to OTNM.
Storing of internal NETCAP user ids.
StarWRS
The StarWRS (Starbucks Web Reporting System) application is the reporting mechanism for the Starbucks platform. The application setup is divided into three categories based on products, 1) VNET, 2) VISION, and 3) Toll Free.
Vnet/CVNS
The Local Level Billing (LLB) Hierarchy can be composed of a nine level deep tree structure where each node on the tree represents a entity within a Company (e.g. Enterprise Id, corp id, Organization, or Service Location).
Downloading the hierarchy may be done a single level at a time. This will be done by downloading only a parent node with its immediate child nodes. Since the hierarchy is infinitely wide, we may need a way to download only pieces of each level.
StarOE will display the VNET LLB hierarchy for security setup when VNET reporting is ordered. The user will be associated with a node from the hierarchy. The report options that will be available at any node are:
Priced Reporting
Priced Call Detail
Invoices/MIRs
Non Metered
CVNS
Vision
StarOE will display the VISION hierarchy for security setup when VISION reporting is ordered. The hierarchy contains corp ids for a enterprise, and service locations for each corp id. The user will be associated with either a corp id node or a service location node. The report options that will be available for this product at the corp or service location level are:
Priced Reporting
Priced Call Detail
Invoices/MIRs
Non Metered
TollFree
StarOE will display the Tollfree hierarchy for security setup when Tollfree reporting is ordered. The hierarchy contains a list of corp ids, with each corp id having a list of tollfree numbers under it. Reporting options at the Corp id level are:
Priced Reports
Priced Call Detail
Invoices/MIRs
Non Metered
Reporting options at the tollfree level are:
RTM
Unpriced Reports
Alarming
Unpriced Call Detail
Integrated Messaging
StarOE will store information in support of Integrated Messaging (IM). The follow fields will be optional for IM customers only, and entered during the order user process.
Paging system and pin—the paging system will be from a selection, and the pin will be freeform text
Email Id
Notification priority (1, 2, or 3)
Content of message that will be sent on Notification
Refresh User List
The StarOE client will provide a refresh option, which will call the StarOE server to update the current list displayed.
Provide a Demo Version
StarOE will need to develop software which will allow the StarOE application to run in “Demo” mode, which does not communicate with the back end servers. The StarOE group assumes that the common communication module will decide if the starbucks application as a whole is in “Demo” mode, therefore, messages will be sent to a StarOE provided demo stub rather than passing across them through the network.
Any StarOE requests sent by the client browser will be received by a StarOE stub program, that is called by the common objects communication module. The demo stub will determine which StarOE message has been received, and call the appropriate routine to return the answer set. All update requests will return a successful response, but the requested update will not be stored and screens will NOT show the updates. Each request for data (i.e. get user list) will have a hard coded answer set that will be returned each time the request is sent.
The content of the data will coordinate with the other applications. For example, a user name in a StarOE will be the same user name in Priced Reporting, the user access (security) will also match. Also, a user's security (i.e. report access) will match what the other applications display.
Groups that StarOE will need to coordinate the data with are 1) 800NM, 2) Hyperscope, and 3) StarWRS (priced/unpriced). Further identification of the teams that will be involved will of course be found during the overall analysis and design of StarOE.
Fulfillment
Fulfillment consists of a Welcome letter only. The welcome letter contains the customer's name/address, user id, password, enterprise ID, application ordered, access type, and access number. Any letters sent after the first fulfillment should have text that states that the application is an add-on to their existing applications. Users will not be able to order any specific documentation to be sent through fulfillment. Hibbert will be sent a the fulfillment file on a weekly basis. The StarOE server will FTP a file in a specific format to a Hibbert designated IP address.
The fields in the interface to Hibbert should:
The StarOE server will store the fulfillment status of each user/application. Additionally, their must be sufficient audit processes and reports in place to ensure that:
The above information will be displayed in the StarOE client, similarly to the current MSV Sys Admin application. There should be minimal manual intervention and processing.
User Conversion
A function will be provided for converting current MSV users to the Starbucks platform. Only the user id (attempted), user name, password?, and all fields pertaining to the address will be converted. No security will be converted since the security architecture is different. When a user is being converted, they will be prompted to order an application for the user.
OE Proxy
A proxy process running on the Dispatch Server will need accept TCP/IP connections from the Dispatcher process, translate and forward the received message(s) to the StarOE Server. The analysis/design phase of the StarOE will define in detail the messages that the StarOE server will accept.
Provide a Mechanism to Switch Host Regions
The StarOE server will point to the TM and AM mainframe regions only. The server will not be able to dynamically point to other host regions. It will be possible to point to other host regions by manually changing the pointers.
The StarOE server (and client) must provide a way to switch which host region (TM, AM, TD, AD, TE, AE) the server will communicate with. The design needs to accommodate any Starbucks application that communicates with a host region. For instance, if the 800 nm application is pointing to an AD region, when that application comes to StarOE for a user's security, we need to return that user's profile which corresponds to the same AD region.
Store Common Data
The StarOE server is required to store data that may be common to all applications. For phase I, the common data will be 1) U.S. States, 2), NPAs, and 3) Country Codes. The server must provide a message for retrieving these lists.
StarOE Server Interfaces
The StarOE server will communicate with other back end systems for retrieving and sending application information. The diagrams below are an attempt to show the systems that will interface with the StarOE server. The interfaces are represented in three diagrams, based on functionality.
For the 800 number application, a user's Toll free reporting security profile will contain at least one toll free number with at least one reporting option associated.
Field Descriptions
Corp Id/Toll Free List—This list will display all toll free corp ids and toll free numbers and under a corp id for a given enterprise. If a toll free number is part of the user's profile, the report options for that number will be displayed with the toll free number in the tree
Check Boxes—These depict what report options a user will have access to for certain toll free numbers. When checked or unchecked, the corresponding toll free numbers that are selected will reflect the changes.
Select All—When pressed, all toll free numbers for a corp will be selected.
Deselect All—When pressed, any selected toll free numbers will be deselected.
Submit, Button—When pressed, any last edits performed (make sure the racf is entered for the corp id selected last), control will return to the creating object,
Cancel button—When pressed, control will return to the creating object, and changes will not be saved.
For the 800 number application executed by 800NM server, a user/customer may perform a number of actions associated with managing his/her particular 800 number plan. Such actions may include, for example, selecting a routing plan number. Exemplary actions associated with the routing plan number selection are described in more detail below.
Routing Plan Number Selection
Actors:
User
Intent:
Allow a user to select or enter a Routing Plan Number.
Assumptions:
Valid Logon has occurred.
Valid Corp Id selected.
Valid Set selected if Routing Plan Number is part of a set.
Limitations:
None.
Uses/Extends:
Corp Selection.
Set Selection (if required).
Routing Plan Number—Keyed: Successful Validation
Variation:
Routing Plan Number—Keyed: Failed Validation
This use is covered in the variation above.
Routing Plan Number—Picked: Secondary
Routing Plan Id—Keyed
Variations:
Routing Plan Id—Keyed—Validation Failed
Variations:
Routing Plan Id—Picked: Secondary
Routing Plan—View
Tree View Primary
Spreadsheet View Secondary
Other actions that may be performed by the user associated with the 800 number service include, for example: adding/deleting one or more terminations to the currently implemented routing plan, changing the percentage allocation of the currently implemented plan (temporarily or permanently), implementing a super routing plan for a toll free number that is in working status (temporarily or permanently), implementing a universal plan for a toll free number that is in working status, changing the plan that a working number of set of working numbers is routed to, allowing the user to be notified and query order information so that the user can purge or zap an order, querying for lists of orders that satisfy filtering criteria so that any order in the resulting list can then be displayed in detailed form, viewing and updating their user preferences, and other functions.
The scope of the invention is defined by the claims and their equivalents.
This application is a Continuation of commonly assigned, co-pending U.S. patent application Ser. No. 09/160,725 entitled “INTEGREATED CUSTOMER INTERFACE SYSTEM FOR COMMUNICATIONS NETWORK MANAGEMENT”, filed Sep. 25, 1998, now U.S. Pat. No. 6,763,376, the disclosure of which is hereby incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
4160129 | Peyser et al. | Jul 1979 | A |
4345315 | Cadotte et al. | Aug 1982 | A |
4817050 | Komatsu et al. | Mar 1989 | A |
4823373 | Takahashi et al. | Apr 1989 | A |
4893248 | Pitts et al. | Jan 1990 | A |
4972504 | Daniel, Jr. et al. | Nov 1990 | A |
5041972 | Frost | Aug 1991 | A |
5075771 | Hashimoto | Dec 1991 | A |
5088052 | Spielman et al. | Feb 1992 | A |
5131020 | Liebesny et al. | Jul 1992 | A |
5136707 | Block et al. | Aug 1992 | A |
5208908 | Harrison et al. | May 1993 | A |
5223699 | Flynn et al. | Jun 1993 | A |
5228076 | Hopner et al. | Jul 1993 | A |
5245533 | Marshall | Sep 1993 | A |
5262760 | Iwamura et al. | Nov 1993 | A |
5285494 | Sprecher et al. | Feb 1994 | A |
5287270 | Hardy et al. | Feb 1994 | A |
5313598 | Yamakawa | May 1994 | A |
5315093 | Stewart | May 1994 | A |
5325290 | Cauffman et al. | Jun 1994 | A |
5327486 | Wolff et al. | Jul 1994 | A |
5361259 | Hunt et al. | Nov 1994 | A |
5369571 | Metts | Nov 1994 | A |
5452446 | Johnson | Sep 1995 | A |
5475836 | Harris et al. | Dec 1995 | A |
5481542 | Logston et al. | Jan 1996 | A |
5483596 | Rosenow et al. | Jan 1996 | A |
5490060 | Malec et al. | Feb 1996 | A |
5491779 | Bezjian | Feb 1996 | A |
5491796 | Wanderer et al. | Feb 1996 | A |
5506893 | Buscher et al. | Apr 1996 | A |
5526257 | Lerner | Jun 1996 | A |
5530744 | Charalambous et al. | Jun 1996 | A |
5533108 | Harris et al. | Jul 1996 | A |
5537611 | Rajagopal et al. | Jul 1996 | A |
5539734 | Burwell et al. | Jul 1996 | A |
5548726 | Pettus | Aug 1996 | A |
5551025 | O'Reilly et al. | Aug 1996 | A |
5555290 | McLeod et al. | Sep 1996 | A |
5557668 | Brady | Sep 1996 | A |
5563805 | Arbuckle et al. | Oct 1996 | A |
5566351 | Crittenden et al. | Oct 1996 | A |
5586260 | Hu | Dec 1996 | A |
5602918 | Chen et al. | Feb 1997 | A |
5610915 | Elliott et al. | Mar 1997 | A |
5621727 | Vaudreuil | Apr 1997 | A |
5623601 | Vu | Apr 1997 | A |
5630066 | Gosling | May 1997 | A |
5649182 | Reitz | Jul 1997 | A |
5650994 | Daley | Jul 1997 | A |
5659601 | Cheslog | Aug 1997 | A |
5666481 | Lewis | Sep 1997 | A |
5671354 | Ito et al. | Sep 1997 | A |
5689645 | Schettler et al. | Nov 1997 | A |
5692030 | Teglovic et al. | Nov 1997 | A |
5692181 | Anand et al. | Nov 1997 | A |
5694546 | Reisman | Dec 1997 | A |
5696906 | Peters et al. | Dec 1997 | A |
5699403 | Ronnen | Dec 1997 | A |
5699528 | Hogan | Dec 1997 | A |
5706502 | Foley et al. | Jan 1998 | A |
5708780 | Levergood et al. | Jan 1998 | A |
5710882 | Svennevik et al. | Jan 1998 | A |
5721908 | Lagarde et al. | Feb 1998 | A |
5721913 | Ackroff et al. | Feb 1998 | A |
5727129 | Barrett et al. | Mar 1998 | A |
5734709 | DeWitt et al. | Mar 1998 | A |
5734831 | Sanders | Mar 1998 | A |
5742762 | Scholl et al. | Apr 1998 | A |
5742763 | Jones | Apr 1998 | A |
5742768 | Gennaro et al. | Apr 1998 | A |
5742905 | Pepe et al. | Apr 1998 | A |
5745754 | Lagarde et al. | Apr 1998 | A |
5754830 | Butts et al. | May 1998 | A |
5757900 | Nagel et al. | May 1998 | A |
5764756 | Onweller | Jun 1998 | A |
5768501 | Lewis | Jun 1998 | A |
5774660 | Brendel et al. | Jun 1998 | A |
5774670 | Montulli | Jun 1998 | A |
5778178 | Arunachalam | Jul 1998 | A |
5778377 | Marlin et al. | Jul 1998 | A |
5781550 | Templin et al. | Jul 1998 | A |
5781632 | Odom | Jul 1998 | A |
5787160 | Chaney et al. | Jul 1998 | A |
5787412 | Bosch et al. | Jul 1998 | A |
5790780 | Brichta et al. | Aug 1998 | A |
5790789 | Suarez | Aug 1998 | A |
5790797 | Shimada et al. | Aug 1998 | A |
5790809 | Holmes | Aug 1998 | A |
5793762 | Penners et al. | Aug 1998 | A |
5793964 | Rogers et al. | Aug 1998 | A |
5796393 | MacNaughton et al. | Aug 1998 | A |
5799154 | Kuriyan | Aug 1998 | A |
5802320 | Baehr et al. | Sep 1998 | A |
5805803 | Birrell et al. | Sep 1998 | A |
5812533 | Cox et al. | Sep 1998 | A |
5812654 | Anderson et al. | Sep 1998 | A |
5812750 | Dev et al. | Sep 1998 | A |
5815080 | Taguchi | Sep 1998 | A |
5815665 | Teper et al. | Sep 1998 | A |
5819225 | Eastwood et al. | Oct 1998 | A |
5819271 | Mahoney et al. | Oct 1998 | A |
5825769 | O'Reilly et al. | Oct 1998 | A |
5825890 | Elgamal et al. | Oct 1998 | A |
5826029 | Gore, Jr. et al. | Oct 1998 | A |
5826269 | Hussey | Oct 1998 | A |
5832519 | Bowen et al. | Nov 1998 | A |
5835084 | Bailey et al. | Nov 1998 | A |
5844896 | Marks et al. | Dec 1998 | A |
5845067 | Porter et al. | Dec 1998 | A |
5845267 | Ronen | Dec 1998 | A |
5848233 | Radia et al. | Dec 1998 | A |
5848396 | Gerace | Dec 1998 | A |
5848399 | Burke | Dec 1998 | A |
5850517 | Verkler et al. | Dec 1998 | A |
5852810 | Sotiroff et al. | Dec 1998 | A |
5852812 | Reeder | Dec 1998 | A |
5862325 | Reed et al. | Jan 1999 | A |
5867495 | Elliott et al. | Feb 1999 | A |
5870558 | Branton, Jr. et al. | Feb 1999 | A |
5875236 | Jankowitz et al. | Feb 1999 | A |
5875296 | Shi et al. | Feb 1999 | A |
5877759 | Bauer | Mar 1999 | A |
5881237 | Schwaller et al. | Mar 1999 | A |
5883948 | Dunn | Mar 1999 | A |
5884032 | Bateman et al. | Mar 1999 | A |
5884312 | Dustan et al. | Mar 1999 | A |
5892900 | Ginter et al. | Apr 1999 | A |
5905719 | Arnold et al. | May 1999 | A |
5907681 | Bates et al. | May 1999 | A |
5909679 | Hall | Jun 1999 | A |
5909682 | Cowan et al. | Jun 1999 | A |
5915001 | Uppaluru | Jun 1999 | A |
5920542 | Henderson | Jul 1999 | A |
5923016 | Fredregill et al. | Jul 1999 | A |
5923756 | Shambroom | Jul 1999 | A |
5930764 | Melchione et al. | Jul 1999 | A |
5930804 | Yu et al. | Jul 1999 | A |
5933142 | LaStrange et al. | Aug 1999 | A |
5937165 | Schwaller et al. | Aug 1999 | A |
5938729 | Cote et al. | Aug 1999 | A |
5949976 | Chappelle | Sep 1999 | A |
5953389 | Pruett et al. | Sep 1999 | A |
5956714 | Condon | Sep 1999 | A |
5958016 | Chang et al. | Sep 1999 | A |
5960411 | Hartman et al. | Sep 1999 | A |
5961602 | Thompson et al. | Oct 1999 | A |
5963925 | Kolling et al. | Oct 1999 | A |
5966695 | Melchione et al. | Oct 1999 | A |
5970467 | Alavi | Oct 1999 | A |
5974396 | Anderson et al. | Oct 1999 | A |
5974441 | Rogers et al. | Oct 1999 | A |
5982864 | Jagadish et al. | Nov 1999 | A |
5982891 | Ginter et al. | Nov 1999 | A |
5983350 | Minear et al. | Nov 1999 | A |
5987134 | Shin et al. | Nov 1999 | A |
5987523 | Hind et al. | Nov 1999 | A |
5991733 | Aleia et al. | Nov 1999 | A |
5991746 | Wang | Nov 1999 | A |
5991806 | McHann, Jr. | Nov 1999 | A |
5995948 | Whitford et al. | Nov 1999 | A |
5999525 | Krishnaswamy et al. | Dec 1999 | A |
5999965 | Kelly | Dec 1999 | A |
5999972 | Gish | Dec 1999 | A |
5999973 | Glitho et al. | Dec 1999 | A |
6003079 | Friedrich et al. | Dec 1999 | A |
6006265 | Rangan et al. | Dec 1999 | A |
6011844 | Uppaluru et al. | Jan 2000 | A |
6012090 | Chung et al. | Jan 2000 | A |
6014647 | Nizzari et al. | Jan 2000 | A |
6014702 | King et al. | Jan 2000 | A |
6018768 | Ullman et al. | Jan 2000 | A |
6021409 | Burrows | Feb 2000 | A |
6023762 | Dean et al. | Feb 2000 | A |
6029182 | Nehab et al. | Feb 2000 | A |
6031904 | An et al. | Feb 2000 | A |
6032132 | Nelson | Feb 2000 | A |
6032184 | Cogger et al. | Feb 2000 | A |
6041325 | Shah et al. | Mar 2000 | A |
6041357 | Kunzelman et al. | Mar 2000 | A |
6044144 | Becker et al. | Mar 2000 | A |
6044362 | Neely | Mar 2000 | A |
6049602 | Foladare et al. | Apr 2000 | A |
6049786 | Smorodinsky | Apr 2000 | A |
6052450 | Allison et al. | Apr 2000 | A |
6058170 | Jagadish et al. | May 2000 | A |
6058381 | Nelson | May 2000 | A |
6064667 | Gisby et al. | May 2000 | A |
6065002 | Knotts et al. | May 2000 | A |
6065059 | Shieh et al. | May 2000 | A |
6065116 | Isaacson et al. | May 2000 | A |
6072493 | Driskell et al. | Jun 2000 | A |
6073105 | Sutoliffe et al. | Jun 2000 | A |
6073122 | Wool | Jun 2000 | A |
6073241 | Rosenberg et al. | Jun 2000 | A |
6078891 | Riordan et al. | Jun 2000 | A |
6078924 | Ainsbury et al. | Jun 2000 | A |
6084953 | Bardenheuer et al. | Jul 2000 | A |
6085171 | Leonard | Jul 2000 | A |
6085190 | Sakata | Jul 2000 | A |
6088451 | He et al. | Jul 2000 | A |
6088796 | Cianfrocca et al. | Jul 2000 | A |
6091808 | Wood et al. | Jul 2000 | A |
6094655 | Rogers et al. | Jul 2000 | A |
6104704 | Buhler et al. | Aug 2000 | A |
6104716 | Crichton et al. | Aug 2000 | A |
6105131 | Carroll | Aug 2000 | A |
6108700 | Maccobee et al. | Aug 2000 | A |
6108782 | Fletcher et al. | Aug 2000 | A |
6112238 | Boyd et al. | Aug 2000 | A |
6112242 | Jois et al. | Aug 2000 | A |
6115040 | Bladow et al. | Sep 2000 | A |
6115458 | Taskett | Sep 2000 | A |
6115693 | McDonough et al. | Sep 2000 | A |
6115737 | Ely et al. | Sep 2000 | A |
6118780 | Dunn et al. | Sep 2000 | A |
6119109 | Muratani et al. | Sep 2000 | A |
6122258 | Brown | Sep 2000 | A |
6128624 | Papierniak et al. | Oct 2000 | A |
6130933 | Miloslavsky | Oct 2000 | A |
6131095 | Low et al. | Oct 2000 | A |
6131116 | Riggins et al. | Oct 2000 | A |
6134584 | Chang et al. | Oct 2000 | A |
6137869 | Voit et al. | Oct 2000 | A |
6144727 | Mashinsky | Nov 2000 | A |
6145001 | Scholl et al. | Nov 2000 | A |
6154744 | Kenner et al. | Nov 2000 | A |
6161102 | Yanagihara et al. | Dec 2000 | A |
6161126 | Wies et al. | Dec 2000 | A |
6161128 | Smyk | Dec 2000 | A |
6163597 | Voit | Dec 2000 | A |
6173311 | Hassett et al. | Jan 2001 | B1 |
6182113 | Narayanaswami | Jan 2001 | B1 |
6205456 | Nakao | Mar 2001 | B1 |
6212506 | Shah et al. | Apr 2001 | B1 |
6212546 | Starkovich et al. | Apr 2001 | B1 |
6212558 | Antur et al. | Apr 2001 | B1 |
6240450 | Sharples et al. | May 2001 | B1 |
6253239 | Shklar et al. | Jun 2001 | B1 |
6275490 | Mattaway et al. | Aug 2001 | B1 |
6282281 | Low | Aug 2001 | B1 |
6286050 | Pullen et al. | Sep 2001 | B1 |
6292481 | Voit et al. | Sep 2001 | B1 |
6295551 | Roberts et al. | Sep 2001 | B1 |
6337858 | Petty et al. | Jan 2002 | B1 |
6377993 | Brandt et al. | Apr 2002 | B1 |
6587836 | Ahlberg et al. | Jul 2003 | B1 |
6587867 | Miller et al. | Jul 2003 | B1 |
6597685 | Miloslavsky et al. | Jul 2003 | B2 |
6598167 | Devine et al. | Jul 2003 | B2 |
6606708 | Devine et al. | Aug 2003 | B1 |
6615258 | Barry et al. | Sep 2003 | B1 |
6631402 | Devine et al. | Oct 2003 | B1 |
6683870 | Archer | Jan 2004 | B1 |
6715080 | Starkovich et al. | Mar 2004 | B1 |
6760844 | McCarthy et al. | Jul 2004 | B1 |
6763376 | Devine et al. | Jul 2004 | B1 |
6782425 | Germscheid et al. | Aug 2004 | B1 |
6968571 | Devine et al. | Nov 2005 | B2 |
7114083 | Devine et al. | Sep 2006 | B2 |
20010001014 | Akins, III et al. | May 2001 | A1 |
20010003828 | Peterson et al. | Jun 2001 | A1 |
20040139178 | Mendez et al. | Jul 2004 | A1 |
Number | Date | Country |
---|---|---|
0 747 841 | Dec 1996 | EP |
0 809 387 | May 1997 | EP |
09-064870 | Mar 1997 | JP |
9711443 | Mar 1997 | WO |
9716911 | May 1997 | WO |
9718515 | May 1997 | WO |
9723988 | Jul 1997 | WO |
9819472 | May 1998 | WO |
9901826 | Jan 1999 | WO |
WO 0011573 | Mar 2000 | WO |
Number | Date | Country | |
---|---|---|---|
20050172018 A1 | Aug 2005 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 09160725 | Sep 1998 | US |
Child | 10835326 | US |