throbber
RPX Exhibit 1109
`RPX v. AIT
`
`

`
`U.S. Patent
`
`%mDH0.,_2.m.Hm_..3o_m_mss
`J“<._.<0FH
`
`u3.m1...........W3,.s.........1-_zflmsmam
`_1E3818
`
`003.,
`
`ws_=am_s_8H,mmmoéom¢mE,__E
`
`
`

`
`U.S. Patent
`
`Jan. 20, 1993
`
`Sheet 2 of 12
`
`5,710,900
`
`_2m_.5_,m
`
`moEm5_z_s_2
`
`mo<“_mEz_
`
`mmm_z_m:m
`
`zo_Es_mou_z_
`
`nsmm
`
`sm5>mm:m
`
`2.232%22:
`
`
`
`m_oEE_.z_m<m:oo._
`
`263
`
`msooz
`
`N.UHm
`
`55%.
`
`m_._=B:om
`
`s_Em>mm:m
`
`._.m>._<z<¢m_n_J_E
`
`EommmEém
`
`zoEz_”_ma
`
`zmzwamam
`
`:,m_s_ma<z§
`
`sm_B>mm:m
`
`wz_2m_>
`
`s_m_5>mm=m
`
`E3452
`
`Hn_<
`
`8
`
`
`
`
`
`
`
`

`
`U.S. Patent
`
`Jan. 20, 1998
`
`Sheet 3 of 12
`
`5,710,900
`
`16
`
`SUBSYSTEM
`
`DSM
`
`
`
`SMART
`REPORT
`GENERATOR
`
`
`
` METADATA
`
`REQUEST
`MODULE
`
`CLIENT
`SUBSYSTEM
`
`1 3
`METADATA
`RE POSITORY
`
`
`SCHEDULER
`SUBSYSTEM
`
`METADATA
`LOAD AND UPDATE
`MODULE
`
`

`
`U.S. Patent
`
`Jan. 20, 1998
`
`Sheet 4 of 12
`
`5,710,900
`
`
`
`DAI
`SUBSYSTEM
`
`
`SOL
`GENERATOR
`
`
`
`
`
`METADATA
`QUERY
`MODULE
`
`
`
`DATA
`WAREHOUSE
`
`
`
`
`
` REPORT
`
`DAI
`SUBSYSTEM
`
`SCHEDULER
`
`

`
`m0SU.
`
`m1.m,2
`
`_.DS
`
`t
`
`21
`
`‘I5
`
`009ll01HI
`
`
`
`
`
`8fiE_o:m..mpmE.c>m_2.._=.“n§mama.3._._n_5.38:335>tag::9:sanemm52...:2;¢_n.._mmmaa.ma.2ouaoucmB«mam.._.2.5omm?
`
`
`
`
`
`
`3.5.95_mw.5aoEoEwm..__§__.a_2J2..t._a...uu3.5.?ma5.o._.§n_Em.3«mam_€2._a_._c.u.__.u.:.—race»;_U
`ma::D.5EU___.Eh.!m.EN
`
`
`mm..nB—$~3_a..._m.33:3$3:count:2...
`
`
`
`
`
`t
`
`t..%._..
`
`ann=H
`
`

`
`U.S. Patent
`
`Jan. 20, 1998
`
`Sheet 6 of 12
`
`5,710,900
`
`
`
`fig_m_!_s_§_a
`
`
`
`u....5n_m:oo8._moE_._.
`
`
`
`—.m_fi.o—.6225E_:om:aqEoo
`
`
`
`”E_._mmu_2.cuE__._n_
`
`32:3»:
`
`.mEeEmmw
`
`
`
`”mEuEmmmmama.no:25.”mEoEmmwuwczuo
`
`
`
`
`
`
`
`mmE_u_u<Sewu:wEmmm_.C.mE_..n_
`
`
`
`mmm_oou_Emsom22m
`
`mmEuu<Eofi
`
`
`
`
`
`baconc£.u_:n.on_Eem
`
`
`
`
`
`Sun.m:__ouoEu:23m
`
`
`
`n..ua.auoEnm
`
`
`
`
`
`Emam_.__..2_o22m
`
`
`
`._uo.=o..._wE_._.:om_..EEooanunuonnmmE:.wmmmm.£_._uEmomEinm_m.__._mams.2552mm
`
`
`
`
`
`
`
`.%_smHm._m:<
`
`”m_..u._u:<Euni...
`
`_oEmZ32¢
`
`h E
`
`m
`
`

`
`OS
`
`m
`
`4...
`
`m10:2m
`
`Llu_._uS
`
`,mn....
`
`21.
`
`II5
`
`0001I!0.I.__7.
`
`
`
`
`
`Dnlaazuwmco_fiE5__c_mmo_.__m:m
`
`
`
`Hmagic:2:98:
`
`
`
`n_.._w_..._mmm_u2ow_om
`
`

`
`009’0
`
`
`
`nE“Em,1n.
`
`u
`
`1.mm
`
`n"m8mS
`
`mEBBB!BBB
`
`
`
`m=._mmo—2Waaomco_~mEE_E_4mm_._o=u_mr._
`mmmcfiamHa.9m
`
`

`
`US. Patent
`
`Jan. 20, 1993
`
`Sheet 9 of 12
`
`003,017,5
`
`
`
`
`
`Em:=o=n_Eauo:_._o____._ou
`
`
`
`“sumaauoi.£.____<
`
`
`
`_._o=a_w_n_:_m._.m_.60
`
`.336850
`
`umxoflw«E0:.0$23.32
`
`
`
`>0...:o_5n__.._m_n
`
`
`
`m_._o=oEoi22m
`
`
`
`__._aoom_n_>n_n_m_o
`
`
`
`==._oom_n_E:_wan_
`
`E .
`
`
`
`..3032.39omflopt
`
`munuo..u_.__©I
`
`mumuflao
`
`U0.0F__.__O.>@260=
`
`u2_w_a._=:
`
`
`
`
`
`conaamau_n_m_ooo_.n_mwubgw
`
`
`
`mo_uw§:nE..._u
`
`mmogmzm
`
`E592.92,. naom:o_.mc.coE_
`
`N9.
`
`2Ohm
`
`
`

`
`3U
`
`e
`
`2mJ
`
`am01whS
`
`P.
`
`003,017,5
`
`
`
`wofim_U8.¢2:o..._.__m___m_anon.UWmum?_._o_=9.=_E1muonom:2...GE,2.3»:
`
`
`
`
`
`
`
`
`
`mm_a§__umH
`
`.mE.
`
`nP.a—GE
`
`

`
`..lH84|.3PamU
`
`Jan. 20, 1998
`
`Sheet 11 of 12
`
`003,017’5
`
`«mamm._EwwEmm
`
`‘~‘1--Lf./ff’!/.1/Ar//_f_I
`
`_..-_‘t‘rI.r_/tr.//I/.(/.//_/I
`
`32wa__8
`
`IW‘...
`
`
`
`Em_mc<mmEH2_oo._.am>8m_n_.cmEm»m:m__2
`
`
`
`
`
`
`
`.m.am555!.3..._5.:has
`
`
`
`
`
`
`EoflRad5En.comaUumufluuumac?n55uufiuuwum...flzouwyoumuim22w«Pamum.:u><o
`
`
`
`newuuaauaufimainunoum«Ema09:24.mmm.HBu.»3HuhmficavE.E—.mn9Hum5.3E.Em.mn
`
`Emu?m.55uoumuuwum¢magnum
`
`
`
`nan?uma..—.m>mama33.cunmumr
`
`
`
`mafiauufimufifim
`
`
`
`mmfinaaflumnano
`
`
`
`E“Savannanu:_..£uuoEu._m32wuuoumwas
`
`u..o.mufiwwEuamyfiuuavan
`
`U5095.;553».ma?523main
`
`
`
`ucaaficofixi:35uu_u.uaEu.mwfloum
`
`
`
`£398in55hawvu_uuoEuMwuuofi
`
`
`
`mfinafia=3:33uuflovofiummuuoum
`
`
`
`dmflupu55.23.»uofim29mufinm
`
`unamEcassava.nununnfinofim55$2
`
`duim33w
`
`
`
`
`
`one55._Smo«.Uuofiuofiommagnum
`
`madam9.3m«E5uafiyfiEuumuruuvBE.
`
`Hmfl..—._5D=Om2.655Uflauommm2$3?n5.5.u.au._Uum<3.§...,.you
`
`
`
`
`
`Snwuxuoum».Eo=._o535:2Euamubun
`
`mm89¢wnotofioumwe.unE:Z3umaubufl
`
`o8.:.9a8.nmEoaasm
`
`
`
`uaomwununfikm.wwrficoumuuw.unoum.wfifim.
`
`
`
`
`
`
`
`
`
`
`

`
`U.S. Patent
`
`Jan. 20, 1998
`
`Sheet 12 of 12
`
`5,710,900
`
`FIG. 13
`
`140
`
`START
`
`
`
`THE USER SPECIFIES A
`BUSINESS CONCEPT
`
`141
`
`142
`
`CLIENT SUBSYSTEM 12
`PROVIDES TI-IE usen w|TH
`THE USER SPECIFIES ONE
`A LIST OF coI_uMNs son
`oR MORE ATTFIIBUTES FOR
`THE BUSINESS CONCEPT.
`THE PURPOSE OF MAPPING
`
`BUSINESS INDICATORS
`
`
`
`
`
`
`
`
`150
`
`152
`
`154
`
`156
`
`CLIENT SUBSYSTEM 12
`
`PROVIDES THE USER WITH
`U353 SELECTS AM
`
`"AGGREGATE METHOD‘ FOR
`THE LIST OF COLUMNS OF
`TABLES IN DATA
`THE BUSINESS INDICATOR
`WAREHOUSE 24
`THAT Is MAPPED
`
`
`
`
`THE USER MAPS EVERY
`ATTFIIBUTE T0 A COLUMN
`
`THE USER SELECTS THE
`UNIT OF MEASUREMENT
`
`
`
`
`
`
`THE USER SPEGIFIES ONE
`OR MOFIE BUSINESS
`INDICATORS BY 'MAPPING"
`A BUSINESS INDICATOR TO
`A COLUMN IN A TABLE
`WITHIN DATA
`WAREHOUSE 24
`
`158
` ENTER
`ADDITIONAL
`
`BUSINESS
`
`CON(;’EPTS
`
`
`
`
`
`
`CLIENT su|3sYsTEM 12
`ENSURES THAT TABLES
`HAVING BUSINESS
`INDICATOR coI_uMNs CAN
`BE JOINED WITH TABLES
`THAT HAVE BUSINESS
`ATTFIIBUTE COLUMNS
`
`
`
`

`
`5 ,7 10,900
`
`1
`SYSTEM AND METHOD FOR GENERATING
`REPORTS FROM A COMPUTER DATABASE
`
`BACKGROUND OF THE INVENTION
`
`The present invention relates to expert systems and
`reporting systems. and more specifically to a system and
`method for generating reports from a computer database
`from a computer database.
`Storing large amounts of transaction-level data for later
`analysis (data warehousing) is becoming recognized as an
`enabler for businesses that are seeking a competitive advan-
`tage. Tightening competitive environments and global eco-
`nomic trends are forcing businesses and entire industries to
`search for a means to gain an advantage. This advantage can
`be realized through the use of strategic data relating to their
`business—al.lowing better and more timely decisions, lead-
`ing to a better understanding of their business and support
`for their customers, that ultimately leads to growth. To make
`use of data warehouses, the data must be retrieved, orga-
`nized and then presented in an undastandable format.
`Discovery tools are used to retrieve, analyze and present
`data from data warehouses. ‘These tools can range from very
`complex modeling tools to relatively simple end user query
`tools designed to do no more than mask the complexity of
`the SQL programming language from the user. Automated
`tools that search the data for trends or relationships are also
`considered discovery tools.
`The marketplace is comprised of various tool vendors
`whose products provide solutions for a portion of the entire
`knowledge discovery process. Therefore. to effectively uti-
`lize their data, the user community is forced to pick multiple.
`disjoint tools. In addition. these tools are targeted toward the
`expert user who has an in-depth knowledge of the data and
`database formats or the various analytic methods that are
`implemented in the tool. Existing products also do not let the
`business user explicitly and iteratively represent business
`knowledge. Finally, the output of existing tools consists of
`tables of numbers that users have to analyze and interpret.
`Data warehouses, and databases in general, typically have
`complex structure organized for efliciency of data retrieval,
`not ease-of-use by the end user. Users, especially business
`users, desire reports in their vocabulary, not the vocabulary
`of the database. While some tools in the marketplace allow
`a user to define new terms and map those terms to the
`database, the management of related sets of new terms is not
`supported. That is. the relationship of a new t'e11'n to existing
`terms is not automatically detected for the user.
`In addition to these diiliculties, it is common for the
`contents of a. report to cause a user to desire another, similar
`report. Saving and reusing sets of related reports (re-
`generating the reports over a new set of data) is also desired.
`The generation of related reports and the re-generation of
`reports over new data is a capability not adequately available
`in the marketplace.
`Therefore. it would be desirable to provide a system and
`method for generating reports from a computer database
`which allow a user to retrieve and analyze data with one tool
`without requiring the user to have knowledge of underlying
`data structures or of the SQL programming language, which
`allow a user to define new terms and detect and manage
`relationships between terms. which allow a user to easily
`generate related reports, and which allow a user to re-run
`sets of related reports over new data.
`SUMIMARY OF THE ]NVEN"l'ION
`In accordance with the teachings of the present invention,
`a system and method for genuatingreports from a computer
`database are provided.
`
`2
`
`5
`
`An application within the system includes a graphical user
`interface (GUI) which allows the user to select and specify
`the parameters for the report. display the report. print the
`report. and save the report Afolder management subsystem
`allows the user to create a folder object for storing the report
`within the database, store the report within the folder object,
`and retrieve the report from the folder object using the GUI.
`_A business information setup subsystem allows the user to
`create data types and create and-constrain relationships
`between the data types. An analyst definition subsystem
`allows the user to select an analyst representing a method of
`analysis to use in generating the report using the GUI.
`Finally, a viewer module displays the report.
`A database computer includes a database containing the
`data. The data includes a collection of information about an
`enterprise of the user. A server computer is coupled to the
`database computer and executes a database management
`program. A client computer is coupled to the server and
`executes an application program. The application program
`allows a user to define predetermined data types, to define
`relationships between the data types. to define parameters
`for the report, to define a method of analysis for the report,
`and to create the report. The report summarizes the data in
`terms of the data types, the data relationships, and the
`method of analysis.
`It is accordingly an object of the present invention to
`provide a system and method for generating reports Erom a
`computer database which includes a single application or
`tool.
`
`35
`
`45
`
`55
`
`It is another object of the present invention to provide a
`system and method for generating reports from a computer
`database which allow a user to define and select variables
`and relationships between variables in creating a report.
`It is another object of the present invention to provide a
`sy stem and method for automatically detecting relationships
`between new terms entered by the user, and for managing
`these relationships in a hierarchy of related terms.
`It is another object of the present invention to provide a
`system and method for generating related reports. and allow
`for the regeneration of related reports over new data.
`It is another object of the invention to provide a system
`and method for iteratively entering business knowledge.
`It is another object of the invention to provide a system
`that generates reports which combines natural language text.
`tables and graphs.
`It is another object of the invention to provide a system
`that generates reports based on a user specified schedule or
`a user defined business exception.
`It is another object of the invention to provide a system
`that is easy to use by business users who do not have
`knowledge of database formats,
`the SQL programming
`language and statistical or artificial intelligence based ana-
`lytic methods.
`It is another object of the invention to adhere to existing
`and emerging open systems standards.
`It is another object of the invention to abstract data
`analysis into generic analyses. These analyses are
`Sumrnarization, Change, Trend and Comparison.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`65
`
`Additional benefits and advantages of the present inven-
`tion will become apparent to those skilled in the art to which
`this invention relates from the subsequent description of the
`preferred embodiments and the appended claims, taken in
`conjunction with the accompanying drawings, in which:
`
`

`
`5,710,900
`
`3
`FIG. 1 is a block diagram of the system of the present
`Invention;
`
`FIG. 2 is a block diagram of a client subsystem within the
`system of FIG. 1;
`FIG. 3 is a block diagram of a data abstraction intelligence
`subsystem within the system of FIG. 1;
`FIG. 4 is a block diagram of a data and schema manipu-
`lation subsystem within the system of FIG. 1;
`FIG. 5 is a block diagram of a scheduler subsystem within
`the system of FIG. 1;
`FIGS. 6-12 are views of a tool for creating reports which
`employs a graphic user interface;
`FIG. 13 is a flow diagram illustrating how metadata is
`created.
`
`DETAILED DESCRIPTION OF THE
`PREFERRED EMIBODIMENT
`
`Referring now to FIG. 1. system 10 includes four major
`subsystems: client subsystem 12. data abstraction intelli-
`gence (DAT) subsystem 14, data and schema manipulation
`(DSM) subsystem 16, and scheduler subsystem 18.
`In connection with the description of system 10. the
`following definitions are provided:
`An Alert Condition is a user-defined condition or set of
`conditions that when satisfied returns an Alert Message.
`For instance, an Alert Condition may he defined so that
`when the inventory of brand A shins drops below 200
`units for a given week, system 10 produces an Alert
`Message.
`An Alert Message is a message that notifies the user that an
`Alert Condition has been satisfied. From an Alert Mes-
`sage the user can select any number of Smart Report
`Definitions to run. An example of an Alert Message would
`be “Alert: the inventory of brand A shirts is below 200."
`An Alert Smart Report is a type of Smart Report that
`describes an Alert Message in detail. The Alert Smart
`Report has a description of what happened. when, and
`probable reasons why it occurred.
`Business Concepts are high-level classifications within a
`certain business that are used to further describe indica-
`tors of the business’ success (e.g.. Customers. Products.
`Geography, Profitability). Each Business Concept has
`attributes that fiuther define each Business Concept (e.g.
`Brand, Manufacturer‘. Size for the Business Concept
`Product).
`Business Indicators are classifications across Business Con-
`cepts that are usually related to numerical values Sales
`Volume. Inventory. Price). Business indicators have meth-
`ods and formulae that pertain to their computation (e.g.
`Total Sales) and causal associations between Business
`Indicators (e.g. If Price increases Sales Volume should
`decrease). Wiflrin a Business Indicator, segments can be
`defined which describe a specific group of Business
`Indicators of interest (e.g. Senior Customer. Company A
`Products).
`A Change Analysis Report is a compound document describ-
`ing Business Indicators over two time periods. Within
`system 10, one can specify two periods of time and see the
`difference of a chosen Business Indicator for that paiod
`(e.g.. How did this year’s sales of textiles compare to last
`years sales?) Change Analysis Reports can report results
`for a day, week, month, quarter. year. or other defined
`period.
`Compound Business lndicators are user-defined Business
`Indicators created by combining primitive Business Indi-
`cators with arithmetic and set operations.
`
`4
`A Data Warehouse is a very large collection of data that is
`housed in one oi-more databases. These databases usually
`reside on database server computers and can be either in
`one location or distributed geographically.
`End Users are users for which system 10 is specifically
`designed. End users typically have knowledge of a busi-
`ness’ operations and for this example have used Microsoft
`Windows (Windows 3.1, Windows NT & Windows 95).
`End users typically do not have expertise in SQL code
`generation or the specific data structrnes of the databases
`they want to access.
`Enterprise Inforrnaliou Factory (EIF) is a commercial soft-
`ware package that allows typical business users to access
`their data warehouse data. The data warehouse is essen-
`tially a passive environment that usually requires the use
`of SQL code and knowledge about the structure of the
`database to access data. The EIF differs from the data.
`warehouse by providing a foundation for providing tools
`to allow users without SQL or database knowledge to get
`data out of their databases.
`Hyper’I'ext Markup Language (HTML) is an emerging stan-
`dard format for software documents that allows for the
`inclusion of hyperlinks and graphics (pictures, graphs,
`tables) in text documents. A hyperlink is a "hot" area in
`the document (usually text in a difierem color than the
`surrounding text). that when clicked on. shows another
`document that is related or linked to the original HTML
`document.
`System Administrators are those users of system 10 who
`have an intimate knowledge of the databases and data
`structures of an organization. Often the System Admin-
`istrator has the title of "database manager".
`Metadata is the collection of information about the end
`user’s particular business. After installation this informa-
`tion is stored in the end user's database and is used to
`tailor reports to the end user’s particular business needs.
`Metadata includes. but
`is not
`limited to, Business
`Concepts. Business Indicators and Segments.
`Object Linking and Embedding (OLE) is a computer format
`that allows objects (e.g.. graphs.
`tables) in computer
`documents to, when double clicked on, bring up the
`software application that created the object (graph. table.
`document).
`Primitive Business Indicators are Business Indicators that
`are directly mappable to data in the data warehouse. They
`are set up during installation of the present invention and
`are not changeable by the user.
`Segments are user-defined groups that are defined witlrin a
`Business Concept having a meaningful attribute in com-
`mon. For instance. the a segment “Senior Customers”
`might be those customers whose age is greater than 65
`years.
`Reports are compound documents that display data from a
`database in text and graphics (e.g., graphs,
`tables).
`Reports are the result of running a Smart Report Defini-
`tion. Smart Reports are in the I-l'I'MLformat and are OLE
`2.0 compliant.
`Smart Report Definitions are System Templates that have
`been customized to include particular Business Concepts,
`Business Indicators. andlor segments. Smart Report Defi-
`nitions can be immediately ‘run” to produce a “Smart
`Report", saved to he run later or saved and scheduled to
`be run later.
`
`Structured Query Language (SQL) is a structured language
`for viewing the contents of a relational database.
`Summarization Smart Report is a type of Smart Report that
`shows a roll-up or summarization of a specified Business
`
`5
`
`ID
`
`15
`
`25
`
`30
`
`35
`
`45
`
`55
`
`60
`
`65
`
`

`
`5,710,900
`
`5
`
`Indicator across one or more specified Business Concepts
`or segments. By selecting a particular Business Indicator
`in this report a Smart Report showing the “winners” and
`“losers" for the specified period can be automatically
`produced.
`templates for Smart
`System Templates are the internal
`Report Definitions that come with system 10. System 10
`provides four System Templates; Sumnaarization, Trend
`Analysis, Change Analysis, and Alert Monitoring. A Sys-
`tem Template can be ctlstomized to create a Smart Reput
`Definition by renaming it and selecting Business
`Concepts. Business Indicators and a time interval for that
`Smart Report Definition.
`A Trend Analysis Smart Report is a type of Smart Report
`that. when defined, shows the trend for a specific Business
`Indicator or indicators over a specified period of time.
`This analysis can aid in forecasting the future by identi-
`fying patterns in past activities.
`A Comparison Analysis Smart Report is a type of Smart
`Report helps a business user compare the value of two
`Business indicators across the same time period or com-
`pare the value of the same Business Indicator across two
`sibling segments across the same time period.
`Client subsystem 12 is a single application program which
`has a graphical has a graphical user interface (GUI) 40
`and which allows a user to select and specify parameters
`for Smart Reports, view Smart Reports, print Smart
`Reports, and save Smart Reports. Client subsystem 12
`also displays to a user the results of performing Alerts.
`Finally, the user can specify Business Indicators and
`Segments. specify additional Alerts, or modify the sched-
`ule of Alerts client subsystem 12.
`DAI subsystem 14 provides intelligent middleware for
`translating graphical user requests, selecting system
`templates, manipulating data views. and generating dimen-
`sional queries for retrieving data from data warehouse 24. It
`also contains rules for choosing default parameters. for
`choosing layout and display formats. and for generating text
`from data. DAI subsystem I4 is responsible for instantiating
`user selected Smart Reports and managing several kinds of
`metadata 25 used in this instantiation. This metadam 25
`represents Business Concepts and Business Indicators that
`provide a customizable “d.iinensionalization” of the rela-
`tional data in data warehouse 24. DAI subsystem 14 also
`processes updates to this metadata 25 that originate in client
`subsystem 12 and handles seve.ral other kinds of user
`updates, primmily bypassing them to DSM subsystem 16.
`DSM subsystem 16 reads schema from data warehouse
`24, creates data views. and creates a mapping between the
`two. It also uses that mapping to translate the Dimensional
`Queries received from DAI subsystem 14 into SQL and
`package and return the results.
`Scheduler subsystem 18 is responsible for launching
`Alerts and running any Smart Reports which the user
`specified to execute in batch mode at some specified time
`interval. When the requested time interval occurs.
`the
`Scheduler starts up, requests a list of Alerts and scheduled
`Smart Report Requests from DAI subsystem 14. From those
`lists. scheduler subsystem 18 determines which should be
`run dining the current time interval and sends those requests
`to DAI subsystem 14 as if they were sent by client sub-
`system 12.
`Thus. system 10 is implemented as a tln'ee-tier architec-
`ture. Client computer 30 executes client subsystem 12.
`Client computer 30 preferably executes ‘Windows 3.1, Win-
`dows NT, or Windows 95. although other operating systems
`are also envisioned by the present invention. Client sub-
`
`6
`system 12 (FIGS. 6-12) is suitable for use with these
`operating systems. Display 22 and input device 2] allow a
`user to view GUI 40 and enter choices of metadata 25 used
`in creating Smart Reports. Input device 21 may be a
`keyboard, mouse, or other pointing device. Printer 23 allows
`a user to print a Smart Report. Storage medium 26 allows a
`user to store a Smart Report.
`Server computa 32 executes DAI subsystem 14, DSM
`subsystem 16, and scheduler subsystem 18. These three
`subsystems combine to satisfy user requests from client
`subsystem 12 using information from data warehouse 24.
`Server computer 32 is preferably a multi-processor com-
`puter and executes the UNlX opuating system or Windows
`NT, although other computer and operating system configu-
`rations are also envisioned by the present invention.
`Client and server computers 30 and 32 are preferably
`coupled asynchronously for report requests; all other
`requests are satisfied synchronously. Communication
`between client and server computers 30 and 32 is preferably
`through transmission control protocollinternet protocol
`(TCPIIP), although other transmission protocols are also
`envisioned by the present invention.
`Database computer 34 includes one or more storage
`media 36 containing data warehouse 24. Database computer
`34 is preferably a massively parallel processor computer and
`executes the UNIX operating system or Windows NT,
`although other computer and operating system configura-
`tions are also envisioned by the present invention. Data
`warehouse 24 is suited to run on any computer which
`supports an Open Database Connect (ODBC) interface to
`data warehouse 24. Communication between server com-
`puter 32 and database computer 34 is preferably via ODBC,
`although other database interfaces are also envisioned by the
`present invention.
`Turning now to FIG. 2, client subsystem 12 is an appli-
`cation program which gives a user control over system 10
`and is suitable for execution on top of the Windows 3.1.
`Windows NT, or Windows 95 operating systems. Client
`subsystem 12 includes log-in module 50. folder manage-
`ment subsystem 54, business information setup subsystem
`55, analyst definition subsystem 56, Smart Report viewing
`subsystem 53, master schedule subsystem 52. and System
`Administrator interface 57.
`Log-in module 50 verifies that only one copy of the client
`subsystem 12 is running on computer 30. checks the local-
`ization of computer 30, connects to computer 32, and
`interacts with the user to log him onto client subsystem 12.
`During logon, log-in module 50 verifies a user's name and
`password and lhen retrieves any user preferences that may
`have been earlier defined. The only request from a user that
`is handled by log-in module 50 is a request to log onto client
`subsystem 12.
`Log-in module 50 issues the following requests:
`
`
`I retrieve localhtation
`
`I single pug-am running
`
`to Operating System (DOS, NT,
`Windows 95)
`t1o0peratin.gSystem(DOS,NT.
`Windows 95)
`to Clieutlsuerver module
`I connect to server
`to Clientlserver module
`I disconnect lion: server
`to Metadata API
`I authenticate user
`to Main Menu
`I run main menu
`to Sysnem Adniinistrator
`I run admin menu
`liiterface
`
`
`15
`
`30
`
`35
`
`45
`
`55
`
`65
`
`If the user is the System Administrator. log—in module 50
`displays System Administrator interface 57. If the user is a
`regular user. a Main menu and toolbar interface 51 are
`displayed.
`
`

`
`5,710,900
`
`7
`System Administrator interface 5'! is used by a System
`Administrator to perform system administration tasks. such
`as making user—define-d segments available globally and
`treating and editing Business Concepts.
`interface 62 is
`preferably only available to System Administrators dining
`system installation.
`Folder management subsystem S4 handles all functions
`related to manipulating. storing, and retrieving Folder
`hierarchies, and the Sma11.Reports andAgents that are stored
`in those Folders. It also handles querying from DAI sub-
`system 14 for newly-completed Smart Reports, both when
`client subsystem 12. starts up, and then periodically there-
`after.
`
`Folder management subsystem 54 also handles User
`requests for operations on:
`Folders (new, delete, rename)
`Agents (edit. delete. run now. print)
`Smart Reports (view. delete. print [in coopm-ation with the
`Smart Report View Window])
`Each folder is represented by one folder object. A folder
`stores a list of child folders, a list of Smart Reports. and a list
`of Agents. Folder objects are created and deleted by folder
`management subsystem 54 in response to user requests.
`Business information setup subsystem 55 provides a user
`with the ability to create new measures. update measures, or
`delete existing measures. This information is sent
`to a
`Metadata API 60 and thereafter to DAI subsystem 14 for
`updating the user’s Metadata 25.
`Business information setup subsystem 55 provides a user
`with the ability to create new Segments, update segments, or
`delete existing Segments. This infcnmation is sent to a
`Metadata API 60 and thereafter to DAI subsystem 14 for
`updating the user‘s Metadata 25.
`Finally. business information setup subsystem 55 pro-
`vides a user with an interface to modify measure relations
`and to constrain measure relations. The user selects the
`current measure and whether to evaluate that measure's
`relationships when it increases or decrease. Then the user
`can then select from a list of other measures and define their
`relationship to the current measure. These relationships are
`in the form of “decreases”, “increases”. or “is unrelated to
`the current measure“. Also, every relationship between two
`measures can be constrained. The relationship between
`measures and the constraints placed upon them are saved on
`computer 32 for use in generating Smart Reports.
`Analyst definition subsystem 56 handles all functions
`related to user selection of parameters needed to generate
`specific reports. It also allows the user to define and schedule
`Alerts for scheduled reports.
`The user may invoke an existing Analyst. delete one from
`within the folder management subsystem 54, or create a new
`Analyst. There are live types of Analysts are:
`Sumrnarization
`
`Segment Comparison
`Measure Comparison
`Change Analysis
`Trend Analysis
`‘The Surnmarization Analyst requires the following user
`selection requirements:
`Analyst name
`Primary measure, other optional measures
`Primary segment, other segments
`Time segment
`The Segment Comparison Analyst requires the following
`user selection requirements:
`Analyst name
`Primary measure
`
`10
`
`15
`
`30
`
`35
`
`45
`
`55
`
`8
`Primary segment, a comparison segment
`Time segment.
`The Measure Comparison Analyst requires the following
`user selection requirements:
`Analyst name
`Primary measure, Comparison measure
`P1‘in:Ia.ry segment. other optional segments
`base time segment, comparison time segment.
`The Change Analysis Analyst requires the following user
`selection requirements:
`Analyst name
`Primary measure
`Primary segment, Other optional segments
`base time segment, comparison lime segment
`The Trend Analysis Analyst requires the following user
`selection requirements:
`Analyst name
`Primary measure
`Primary segment, other optional segments.
`Time segment, '1irne interval.
`The user is responsible for selecting one or more
`measures, a base period, and a comparison period. The user
`then can save, submit, and schedule the analyst definition.
`The user is restricted to choosing one Segment from Within
`each Business Concept with the exception of Target
`Segment. in which case he may select only one segment and
`more than one child partition of the selected segment. The
`user may choose to schedule an Smart Report to be gener-
`ated periodically. All Analyst Definition objects are sched~
`nled. The user may modify an attached schedule.
`Used for exception monitoring. all analyst Definitions
`will have a trigger object attached to them. If a user decides
`not to have any triggers, a null trigger object will be attached
`to Analyst Definition Object.
`The Analyst definition subsystem 56 makes the following
`requests to the folder management subsystem 54:
`
`Save
`Check if the user has
`selected the appropriate
`parameters for tln selected
`analyst. Send a request to
`the folder management
`subsystem 54 to save an
`existing Analyst Definition
`Check if the user has
`selected the appropriate
`parameters for the selected
`analyst. Send a request to
`the folder management
`subsystem 54 to save an
`existing Analyst Definition
`Check if the Leer has
`selected the appropriate
`parameters for the selected
`analyst. Send a request to
`the folder manngerrrent
`subsystcnl 54 to stllnntl a
`report generation
`
`
`Save As
`
`Submit
`
`The Analyst definition subsystem also makes the following
`requests to Metadata API 60:
`
`Geta]lMeasures
`Tlnerequestwilllaemadeto
`MetadataAPI60eaei1t'n:ne
`lhereisaneedfioritatthe
`mtt1a].1z’”' ationpoimofa
`dialog
`
`

`
`5,7 10,900
`
`10
`delete a user. The communication for data warehouse
`schema is to retrieve it.
`Metadata API 60 allows a user to define new ways of
`looking at his business. A user cannot modify the segments
`that were created during installation. However. he can create
`new Business Indicators and new Segments. In a typical
`organization of users and system administrators. only sys-
`tem administrators can create or change business
`The MetaData API will handle the following requests
`from other client subsystems:
`
`
`9
`-continued
`Get allBusiness Concepts
`The request will be math to
`Metadata API 60 subsystem
`eachtimetlaercisaneedfm
`
`Get a Business Conccpfs
`Parhtions
`
`dependi.ngonauser's
`
`Get Partitions
`
`Get Seglnents
`
`
`
`Smart Report viewing subsystem 53 includes a “what-
`you-see-is-whaI—you-get" (VVYSIWYG) browser which dis-
`plays a selected Smart Report on screen. when Smart Report
`viewing subsystem 53 gets a notification from folder man-
`agement subsystem 54 to view a Smart Report. If the user
`decides to drill down from the current Smart Report. Smart
`Report viewing subsystem 53 notifies the folder manage-
`ment subsystem 54 to send a new report request.
`When the user double-clicks on an Smart Report or
`chooses “menu item-View” from the File menu in the labor:
`
`Manager, the folder management subsystem 54 notifies the
`Smart Report viewing subsystem to view the Smart Report.
`When the user clicks on a hypertext to drill down from the
`current Smart Report, the Smart Report viewing subsystem
`53 passes the drill down inforrnation to the folder manage-
`ment subsystem 5-4 to send a new report request to DAI
`subsystem 14.
`Smart Report viewing subsystem 53 includes a parser
`which parses the Smart Report, which is in an HTM1. file.
`In an HTML file. HTML tags indicate document elements,
`structure, formatting. and hypertext linkzing to other docu-
`ments or to included media. The parser then outputs all the
`information for display.
`The Smart Report viewing subsystem 53 allows a user

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket