Abstract:
Embodiments relate to a method, system, and storage medium for providing database management services for a telecommunications system. The method includes extracting a first set of raw data from a legacy system relating to telecommunications transmission lines via a first routine of a network planning application. The method further includes extracting a second set of raw data from the legacy system relating to telecommunications equipment via a second routine of a network planning application. The method also includes extracting a third set of raw data from the legacy system relating to telecommunications wavelength division multiplexing data via a third routine of the network planning application. The method also includes generating a first spreadsheet file comprising data selected and combined by the first spreadsheet application macro. Utilizing a managed language application, the third set of raw data is also used by a second application macro to create a second spreadsheet application.

Description:
BACKGROUND OF THE INVENTION  
       [0001]     Embodiments of the invention relate generally to telecommunications systems, and more particularly, to methods, systems, and storage mediums for providing database management services for a telecommunications system.  
         [0002]     Managing fiber and cable networks is generally performed in a haphazard fashion using legacy system data and reports that are incompatible with newer software and technology. With large volumes of data spread across disparate systems, it is difficult if not impossible to provide efficient analysis of fiber and cable networking systems, equipment, and related operations. Much of the reporting and analyses are performed manually. As new technology continues to bring forth a wealth of advancements in communications networks and equipment, telecommunications service providers will require updated models for handling data relating to existing and future transport facilities and services in order to keep pace with these changes. Clearly, using existing manual processes for analyzing networking data and providing network services is not an optimum solution.  
         [0003]     What is needed, therefore, is a way to integrate data from legacy systems for providing efficient handling of networking data that enables analysis and reporting.  
       SUMMARY OF THE INVENTION  
       [0004]     Embodiments relate to methods, systems, and storage mediums for providing database management services for a telecommunications system. The method includes extracting a first set of raw data from a legacy system via a first routine of a network planning application. The method also includes executing a keystroke emulator on the first set of raw data operable for further extracting details relating to the telecommunications transmission lines data. The method further includes extracting a second set of raw data from the legacy system via a second routine of a network planning application. The method also includes extracting a third set of raw data from the legacy system via a third routine of the network planning application. The first set of raw data relates to telecommunications transmission lines, the second set of raw data relates to telecommunications equipment, and the third set of raw data relates to telecommunications wavelength division multiplexing data. Utilizing a managed language application, the method includes transferring raw data resulting from the execution of a keystroke emulator, the second set of raw data, and the third set of raw data to a first spreadsheet application macro, whereby the first spreadsheet application macro is operable for merging selected data. The method also includes generating a first spreadsheet file comprising data selected and combined by the first spreadsheet application macro.  
         [0005]     The system includes a server executing a legacy system program; a network planning application including a first routine, a second routine, and a third routine; and a managed language application executing on the server. The managed language program includes a first spreadsheet application macro, a second spreadsheet application macro, and a third spreadsheet application macro. The system also includes a legacy data repository in communication with the server via a communications network, whereby the legacy data repository stores legacy tables and reports. The system further includes a relational database in communication with the server via the communications network. The server extracts a first set of raw data from a legacy system via a first routine of a network planning application. A keystroke emulator is run on the first set of raw data operable for further extracting details relating to the telecommunications transmission lines data. The server further extracts a second set of raw data from the legacy system via a second routine of a network planning application. The server further extracts a third set of raw data from the legacy system via a third routine of the network planning application. The first set of raw data relates to telecommunications transmission lines, the second set of raw data relates to telecommunications equipment, and the third set of raw data relates to telecommunications wavelength division multiplexing data. Utilizing a managed language application, the server transfers raw data resulting from the execution of a keystroke emulator, the second set of raw data, and the third set of raw data to a first spreadsheet application macro, whereby the first spreadsheet application macro is operable for merging selected data. The server also generates a first spreadsheet file comprising data selected and combined by the first spreadsheet application macro.  
         [0006]     Other systems, methods, and/or computer program products according to embodiments will be or become apparent to one with skill in the art upon review of the following drawings and detailed description. It is intended that all such additional systems, methods, and/or computer program products be included within this description, be within the scope of the present invention, and be protected by the accompanying claims. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0007]     Referring now to the drawings wherein like elements are numbered alike in the several FIGURES:  
         [0008]      FIG. 1  is a block diagram of a system upon which the database management system is implemented in exemplary embodiments of the invention;  
         [0009]      FIG. 2  is a flowchart describing the process of implementing the database management system in exemplary embodiments of the invention;  
         [0010]      FIG. 3  is a sample district table that is used as an input file to the M_GETCAB macro of the database management system in exemplary embodiments of the invention;  
         [0011]      FIG. 4  is a sample WDMTABLE intermediate file derived from the execution of the M_GETCAB macro of the database management system and is used to create DETCAB files as well as WDM Summaries in exemplary embodiments of the invention;  
         [0012]      FIG. 5  is a sample SCIDTBL intermediate file derived from the execution of the M_GETCAB macro of the database management system and is used to create DETCAB files in exemplary embodiments of the invention;  
         [0013]      FIG. 6  is a sample WDMSUMMARY output file derived from the execution of the M_FORMATWDM macro of the database management system in exemplary embodiments of the invention;  
         [0014]      FIG. 7  is a sample THRESHOLD FIBER COMPARISON report produced by the database management system in exemplary embodiments of the invention;  
         [0015]      FIG. 8  is a sample state DETCAB worksheet derived from the execution of the M_GETCAB macro of the managed language application in exemplary embodiments of the invention;  
         [0016]      FIG. 9  is a sample state CABLE CROSS SECTION TOTAL worksheet derived from the execution of the M_GETCAB macro of the managed language application in exemplary embodiments of the invention;  
         [0017]      FIG. 10  is a sample state SUMMARY worksheet derived from the execution of the M_GETCAB macro of the managed language application in exemplary embodiments of the invention;  
         [0018]      FIG. 11  is a sample cable drawing derived from the execution of the M_CBLDRAWING macro of the database management system using information obtained from a DETCAB worksheet in exemplary embodiments of the invention;  
         [0019]      FIG. 12  is a sample SPARE FIBERS report produced by the database management system in exemplary embodiments of the invention; and  
         [0020]      FIG. 13  is a sample SONET SYSTEMS report produced by the database management system in exemplary embodiments of the invention. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0021]     The database management system of the invention provides a means to evaluate fiber, wavelength division multiplexing (WDM), and dense wavelength division multiplexing (DWDM) networks for determining cost efficient ways for building and maintaining a network. The database management system is flexible enough to be used by cable network enterprises in addition to fiber network enterprises. The data acquired by implementing the database management system of the invention may be used by a variety of entities that are involved with telecommunication enterprises, such as engineers, marketing, portfolio management, product management, and finance groups. Database elements are structured for quick analysis and macros utilized by the database management system merge, query, and provide reporting capabilities using the data.  
         [0022]     The database management system is executed via a system such as that depicted in  FIG. 1 .  FIG. 1  includes a host system  102  comprising a server  104 , an inter-office facilities (IOF) data repository  105 , a data repository  106 , and a computer client  108  in communication with one another via a network  110 . Server  104  may comprise a high-powered multiprocessor computer device including web server and applications server software for receiving requests from computer client  108  to run programs, access databases, and generate reports as described further herein.  
         [0023]     Server  104  executes a networking application  112 . Networking application  112  comprises a telecommunications software product for facilitating network provisioning for equipment such as carrier circuits and message trunks. Networking application  112  may also provide inventory management of networking facilities and equipment and supports a variety of transmissions technologies serviced by the enterprise of host system  102 . Networking application  112  may comprise a proprietary application or may be a commercial application such as TIRKS® by Telcordia® Technologies, Inc. of Piscataway, N.J. Server  104  further executes networking planning software  114  that assists host system  102  employees in planning, monitoring, and reporting on network facilities and equipment. Network planning software  114  may be a proprietary application or may comprise a commercial product such as Telcordia® FEPS Planning Workstation (PWS) programs. Network planning software  114  includes a routine (e.g., X02GETCABLE routine  120 ) for extracting data relating to telecommunications transmission lines from legacy files  130 , a routine (e.g., X02SCIDSYS routine  122 ) for extracting data relating to telecommunications equipment from legacy files  130 , and a routine (e.g., X02WDMTABLE routine  124 ) for extracting wavelength division multiplexor equipment (WDM) data from a legacy WDM table. The data is extracted from legacy reports produced by network planning software  114  as described further herein.  
         [0024]     Server  104  also executes a keystroke emulator application  116  that allows a user to further drill down the raw data produced a result of executing X02GETCABLE routine  120 . Keystroke emulator application  116  may be a proprietary tool or may comprise a commercial application such as TaskMate™. In addition, a managed language program  117 , such as Microsoft Visual Basic® or C++ is executing on server  104 . Managed language program  117  includes a spreadsheet component, such as Microsoft® Excel®, to produce and execute macros M_GETCAB  126 , M_FORMATWDM  128 , and M_CBLDRAWING  129  as described further herein.  
         [0025]     IOF data repository  105  is a legacy data store that houses data created and utilized by legacy applications such as networking management application  112  and network planning application  114 . Applications  112  and  114  produce legacy tables and reports  130 .  
         [0026]     Data repository  106  stores information produced by database management system  102  such as intermediate files  136 , DETCAB files  138 , and summaries/reports  140 . These and other documents are described further herein. Data repository  106  further stores district tables  132 . A portion of a sample DISTRICT table is shown generally in  FIG. 3 . The table of  FIG. 3  provides information for a telecommunications district such as geographic coding information, fiber location data, and detailed district locations. Data repository  106  is preferably utilizing a relational database configuration such as Microsoft Access® for allowing data stored therein to be organized and manipulated on various levels.  
         [0027]     Data repositories  105  and  106  may each comprise a standalone storage device or may, along with server  104 , comprise a single unit such as a mainframe computer.  
         [0028]     Information produced by networking management application  112  and network planning software  114  is processed by routines  120 - 124  and keystroke emulator  116  to produce raw data that is integrated by database management system  102  utilizing managed language application  117  and macros  126 ,  128 , and  129 .  
         [0029]     Computer client  108  is used by host system employees to execute the database management system processes described herein. Computer client  108  requests execution of applications via server  104  and generates reports. Computer client  108  may be a general-purpose computer such as a desktop, laptop, or similar device.  
         [0030]     Network  110  may comprise a local area network (LAN) or other suitable network system for facilitating communication between server  104 , data repositories  105  and  106 , and computer client  108 .  
         [0031]     Data produced from various disparate network systems and software are merged together by database management system  102  and structured in a way that allows for analyses and reporting activities to be performed as will now be described in  FIG. 2 . A user on computer client  108  executes network planning application  114  routine X02GETCABLE  120  for a selected state at  202 . This step extracts raw data from legacy tables  130  in IOF data repository  105  (e.g., HICAP/SPAN tables). HICAP refers to high-capacity cable lines such as leased lines for long distance carrier enterprises. The type of raw data extracted from legacy tables  130  includes cable data relating to fiber cables/transmission lines serviced by the enterprise executing the database management system  102 . The raw data output of this execution is then fed to keystroke emulator  116  at  204 . Keystroke emulator  116  comprises an extraction routine that performs extractions on the raw data, enabling the user to further drill down the raw data at  206 .  
         [0032]     The user then executes network planning program  114  X02SCIDSYS routine  122  at  208 . This step extracts raw data from legacy tables/reports  130  in IOF data repository  105 . The type of raw data extracted from X02SCIDSYS routine  122  includes information relating to the telecommunications equipment serviced by the enterprise system such as SONET equipment used to handle trunking.  
         [0033]     The user then executes network planning program  114  X02WDMTABLE routine  124  at  210 . This step extracts raw data from legacy tables/reports  130  in IOF data repository  105  that pertains to WDM equipment. Routine  124  may be run for one state or for an entire region. The type of raw data produced by this step includes WDM information such as WDM identifier, WDM type, CLLI codes, and WDM A and Z locations. Examples of WDM types include “OMO2” referring to a 2-channel WDM, and “OM12” and “OM13” referring to 12 and 13 channel WDM systems to name a few.  
         [0034]     The raw data extracted at steps  206 ,  208 , and  210  are imported to managed language application macro, M_GETCAB at  212 . The raw data extracted is linked by the M_GETCAB macro by relating each channel of WDM raw data with corresponding SCID data. When an OM* carrier (e.g., WDM system) is detected in the fiber data (i.e., raw data resulting from step  206 ), a lookup is used from the WDM data to insert a row into a DETCAB worksheet for each working WDM channel. DETCAB worksheets are described further herein. This linking of WDM raw data to SCID data provides a database that enables an analyst to view paths of SCIDs in a single step.  
         [0035]     Optionally, district tables  132  from IOF data repository  106  for the selected state may be accessed by the M_GETCAB macro for further filtering the raw data by district at step  214 . A portion of a sample district table is shown generally in  FIG. 3 . District tables are provided to map districts to CLLIs.  
         [0036]     At  216 , a user runs the M_GETCAB macro  126 . The M_GETCAB macro  126  is a program that processes the data extracted as a result of the execution of routines  120 - 124  described above. The M_GETCAB macro  126  is written using managed language application  117 . The M_GETCAB macro  126  merges the raw data produced in steps  206 ,  208 , and  210  and produces intermediate files  136  in spreadsheet form. Two intermediate spreadsheet files are shown in  FIGS. 4 and 5 .  
         [0037]     Using intermediate files produced from the M_GETCAB macro  126 , a DETCAB workbook comprising a DETCAB worksheet  148 , a CABLE CROSS SECTION worksheet  150 , and SUMMARY worksheet  152 , is created and stored in data repository  106  at  218 . Sample worksheets  148 - 152  are shown in  FIGS. 8-10 . The DETCAB worksheet of  FIG. 8  provides a variety of details for each working WDM channel, such as Fiber A and Z locations for a cable  902  and  904 , cable number  906 , fiber identification  908 , WDM channel number  910 , a restriction code  912 , a status now  914 , status pending  916 , the date the fiber was placed in service  918 , the SCID  920 , among other information. The restriction code  912  field provides information concerning any equipment restrictions. For example, a ‘J’ in restrictive code  912  field indicates that a restriction relates to ajumper. Other codes available for restrictive code  912  field include ‘DEF’ for defective, ‘$’ for spare, ‘W’ for work, to name a few.  
         [0038]     SUMMARY worksheets  152  provide a variety of details such as whether a cable cross section is being used for IOF, SmartRings®, Lightgates®, Asynchronous Equipment, or Specials. A sample Summary worksheet is illustrated in  FIG. 10 .  
         [0039]     CABLE CROSS SECTION worksheets  150  produced from the M_GETCAB macro  126  allow a user to view fiber growth trends, those with a threshold flag of ‘Y’, spare/available fibers, not available fibers, and cable status in order to quickly analyze potential cross sections for exhaust. A sample cable cross section worksheet is shown in  FIG. 9 . A user may further use an autofilter to quickly analyze database problems and update the database for more accurate future analysis. For example, a filter on ‘cable status=PA’ and ‘Wkg Util&gt;0’ generally means that the cable status should be changed to an ‘IE’ since there are fibers working on it. Also, ‘not available’ percents greater than 25 can be analyzed quickly on the DETCAB worksheet to determine if there are defective units that need to be fixed or if there are restrictions that may be inaccurate and may need to be removed to correctly show either working on spare fibers.  
         [0040]     DETCAB worksheet  148  is used as a database of combined information by M_GETCAB macro  126  to create SUMMARY and CABLE CROSS SECTION worksheets described above. These worksheets are used to help in fiber planning to determine how fast cross sections are filing up. The CABLE CROSS SECTION worksheet  150  has thresholds built into it to easily filter the fiber paths that may require rebuilding. SUMMARY worksheets  152  illustrate what types of SCIDs are working on the fiber cross sections.  
         [0041]     Execution of the custom and pre-built queries in the Access™ database also produces summaries and reports, a sample of which is shown in  FIG. 7 .  FIG. 7  illustrates a THRESHOLD FIBER COMPARISON report produced by the database management system  102 . A THRESHOLD FIBER COMPARISON REPORT provides information such as the threshold limits for a given fiber, whether the threshold limits have been exceeded, and a fix status for the fiber. This information is provided along with the low/high quantities for a fiber (e.g., the lowest and highest numbers in the fiber complement), as well as the number of spare fibers. These and other reports may be stored in summaries/reports database  140  in data repository  106 .  
         [0042]     The DETCAB worksheet  148  is imported to an Access™ database (or similar relational database) of data repository  106  at  220  where custom and pre-built queries may be used to analyze the data. This information can be further searched and drilled down for specific information at  222 . For example, a user may place a filter on the SCID in order to view all the cross sections inventoried in networking application  112  for a given ring. A user may also, for example, place a custom filter on the type “T?X” and a filter on the status now=“W” to view all of the Async systems still in service.  
         [0043]     Other reports generated via step  222  include SPARE FIBERS reports and SONET SYSTEMS reports as shown generally in  FIGS. 12 and 13 , respectively. SPARE FIBERS reports may be generated for a given date and provide status information on the number of ‘working’, ‘spare now’, and ‘spare pending’ fibers for a location.  
         [0044]     The data used in the DETCAB worksheet of  FIG. 8  may be further used to produce a cable drawing that plots a ring of fiber routes including electronic equipment. This is accomplished by importing the DETCAB worksheet  148  to managed language application  117  at step  224 . The macro, M_CBLDRAWING  129  is run on the worksheet data at step  226  and a cable ring drawing is generated at step  228 . A sample cable ring drawing  1000  is shown in  FIG. 11 . Drawing  1000  includes a ring of nodes  1002  and passthroughs  1004  interconnected by lines  1006 . Nodes  1002  refer to networking equipment serviced by the enterprise. Passthroughs  1004  refer to the supporting equipment that receive and transmit signals to and from nodes  1002 . These signals are transmitted via lines  1006  which refer to fiber cables. Each path used, node, and passthrough has an identifier (e.g., LSVLKYFC for node  1002   a ) as shown generally in  FIG. 11 . This graphical information may be useful in assisting engineers for future ring planning or fiber technicians when prioritizing fiber repair work when fiber cables are cut.  
         [0045]     The raw data extracted from the X02WDMTABLE procedure  124  may be input to M_FORMATWDM macro  128  at step  230  for producing a WDM Summary report  154  (steps  232 - 234 ). A sample WDM Summary report is shown in  FIG. 6 . The WDM Summary report includes a listing and quantity of working and spare channels serviced by the enterprise executing the database management system  102 . Working and spare channels are identified by descriptors such as WDM A and Z locations, WDM types, system identification numbers, and state.  
         [0046]     The database management system combines data from disparate systems, such as networking applications, network planning programs, and localized district tables, and creates a database of information to help better forecast and manage fibers, detect routing errors, and resolve issues concerning inter-office facilities data. Threshold flags are set based upon available spare and growth rate that are unique to a particular cross section. The data may be combined with nodes data for generate graphical information for nodes, passthroughs, and lines for any network ring.  
         [0047]     As described above, embodiments may be in the form of computer-implemented processes and apparatuses for practicing those processes. In exemplary embodiments, the invention is embodied in computer program code executed by one or more network elements. Embodiments include computer program code containing instructions embodied in tangible media, such as floppy diskettes, CD-ROMs, hard drives, or any other computer-readable storage medium, wherein, when the computer program code is loaded into and executed by a computer, the computer becomes an apparatus for practicing the invention. Embodiments include computer program code, for example, whether stored in a storage medium, loaded into and/or executed by a computer, or transmitted over some transmission medium, such as over electrical wiring or cabling, through fiber optics, or via electromagnetic radiation, wherein, when the computer program code is loaded into and executed by a computer, the computer becomes an apparatus for practicing the invention. When implemented on a general-purpose microprocessor, the computer program code segments configure the microprocessor to create specific logic circuits.  
         [0048]     While the invention has been described with reference to exemplary embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the invention without departing from the essential scope thereof. Therefore, it is intended that the invention not be limited to the particular embodiments disclosed for carrying out this invention, but that the invention will include all embodiments falling within the scope of the claims.