Not applicable.
1. The Field of the Invention
The present invention relates to business modeling and, more particularly, to associating and visualizing schematized business networks.
2. The Relevant Technology
Businesses have complex operations. An understanding of these operations is important to a business in order to, for example, prepare for change, account for costs, etc. Accordingly, various mechanisms have been developed to model and represent businesses. Some mechanisms include manual generation of diagrams that represent business processes that describe how work is done. For example, trained individuals can analyze all aspects of a business to identify business capabilities and interrelationships and interdependencies between the business processes. Based on the analysis, the trained individuals can generate the representative diagrams. However, accurate analysis of a business from a business process point-of-view can take an extended period of time. Further, once representative diagrams are generated such diagrams are not easily modified.
Unfortunately, since many business processes are dynamic (i.e., can change over time), a manually generated representation of business processes may be outdated before it is even completed. Further, even if a manually generated representation of business processes were accurate at the time it was completed, any change in business processes after the business representation is generated would cause the business representation to be incorrect. Thus, manually generated representations provide limited, if any, ability for a business to determine how simulated and/or hypothetical changes to various business capabilities would affect the business.
At least in part as a result of the deficiencies in manually generated business representations, some computerized mechanisms have been developed to generate business representations. These computerized mechanisms use various techniques to represent business and the required business functions mostly focused on modeling business processes and detailed procedures that support those processes. For example, some computerized mechanisms present a graphical view of business processes at a user-interface. To some limited extent, these graphical views can be altered to simulate the effect of different business capabilities on a business.
However, most of these computerized mechanisms focus on “how” the business is executed, conflating (or combining) various different layers (or types) of input data, such as, for example, organizational structures, procedures, process flows, and supporting technology. The stability of the input data (i.e., the half life of the information represented) potentially varies dramatically between the different input layers (or types), rendering the useful life time of a generated view only as valid as the least stable input. Conflating (or combining) interrelated, yet non-dependent, input data together can also result in obscured views of how a business functions and lead to unnecessary and costly improvement efforts of the modeled business, without the ability to determine the effect of changes in each individual layer.
Further, computerized mechanisms often include hard-coded data types and hard-coded representations for business modeling input data. These hard-coded data types and representations can be difficult to alter without access to source code. Thus, the flexibility and extensibility of modeling businesses and generating corresponding views is limited. For example, it may difficult to alter pre-defined data formats such that a business capability can be represented in a different way or such that a previously undefined business capability can be added.
All of the above for mentioned difficulties associated with modeling businesses limit the usefulness of visual presentations of such models. For example, most visual presentations of business models, such as, for example, business maps, center on data representations in the context of specific isolated tasks or activities. Visualizing and navigating to adjunct, potentially useful business data, organizations structure, partners, or relevant business process flows, is cumbersome and often impossible. For example, there is typically no mechanism to visually navigate from data in one business layer, such as, for example, a business process flow layer, to data in another business layer, such as, for example, a organizational structure layer indicating personnel that implement/manage a business process flow.
Additionally, there is typically no mechanism to visually navigate to from data in a business layer to data in other relevant non-business layers, such as, for example, a geographic layer. For example, there may be no way to navigate from a business flow map to a geographic map that indicates where the business process flow occurs.
Further, there is typically no mechanism to visually represent varied levels of detail of networked business elements. That is, typical business visualization techniques lack mechanisms to focus (or “zoom in”) and abstract (or “zoom out”) levels of detail as specified by a user. Thus, a user may be forced to use a business map having either to much or to little detail for a specific task. As a result, on one hand, a user may get bogged down in unnecessary details that make performing the task inefficient. On the other hand, a user may lack sufficient details for completing the task at all.
Accordingly, what would be advantageous are systems, methods, computer program products, and data structures for associating and visualizing schematized business networks.
The foregoing problems with the prior state of the art are overcome by the principles of the present invention, which are directed towards methods, systems, computer program products, and data structures for associating and visualizing schematized business networks. In some embodiments, a computer system generates a visual representation of a business architecture. The computer system accesses a structured business model of the business architecture. The structured business model includes business attributes and business attribute relationships that are formatted in accordance with data formats defined in a structured data model.
The computer system generates a renderable attribute object for each business attribute. The computer system generates a renderable relationship object for each business attribute relationship. The computer system visually renders the attribute objects and the graphical relationship objects as a navigable business architecture map that reflects the configuration of the business architecture.
In other embodiments, a computer system navigates a map of a business architecture. The computer system visually renders a portion of a navigable business architecture map. The portion of the navigable business architecture map includes visually rendered graphical attribute objects and visually rendered graphical relationship objects arranged to reflect the configuration of a corresponding portion of a business architecture. The computer system selects a first of the graphical objects as the point of focus within the portion of the navigable business architecture map. The remaining unselected graphical objects provide context to the functionality of a business attribute or a business attribute relationship represented by the selected graphical object.
The computer system navigates to a second graphical object within the navigable business architecture map. The computer system selects the second graphical object as the point of focus. The computer system visually renders second unselected graphical attribute objects and unselected graphical relationship objects around the selected second graphical object to provide context to the functionality of a second business attribute or a second business attribute relationship represented by the selected second graphical object. The visually rendered second unselected graphical attribute objects and visually rendered second unselected graphical relationship objects are arranged to reflect the configuration of a corresponding second portion of the business architecture.
In additional embodiments, a computer system alters the level of detail in a map of a business model. The computer system receives an indication that a business architecture map having an initial level of detail is to be rendered. The computer system visually renders graphical attribute objects and graphical attribute relationship objects as a navigable business architecture map having the initial level of detail. The navigable business architecture map reflects the configuration of corresponding business architecture at the initial level of detail. The graphical attribute objects and graphical relationship objects representing structured business attributes and structured business attribute relationships respectively of the business architecture.
The computer system receives an indication that the initial level of detail is to be changed to an updated level of detail. The computer system visually renders at least part of the graphical attribute objects and graphical attribute relationship objects as at least a portion of the navigable business architecture map having the updated level of detail. The portion of the navigable business architecture map reflects the configuration of a portion of the corresponding business architecture at the updated level of detail.
These and other features of the present invention will become more fully apparent from the following description and appended claims, or may be learned by the practice of the invention as set forth hereinafter.
To further clarify the above and other advantages and features of the present invention, a more particular description of the invention will be rendered by reference to specific embodiments thereof which are illustrated in the appended drawings. It is appreciated that these drawings depict only typical embodiments of the invention and are therefore not to be considered limiting of its scope. The invention will be described and explained with additional specificity and detail through the use of the accompanying drawings in which:
The principles of the present invention provide for associating and visualizing schematized business networks. In some embodiments, a computer system generates a visual representation of a business architecture. The computer system accesses a structured business model of the business architecture. The structured business model includes business attributes and business attribute relationships that are formatted in accordance with data formats defined in a structured data model.
The computer system generates a renderable attribute object for each business attribute. The computer system generates a renderable relationship object for each business attribute relationship. The computer system visually renders the attribute objects and the graphical relationship objects as a navigable business architecture map that reflects the configuration of the business architecture.
In other embodiments, a computer system navigates a map of a business architecture. The computer system visually renders a portion of a navigable business architecture map. The portion of the navigable business architecture map includes visually rendered graphical attribute objects and visually rendered graphical relationship objects arranged to reflect the configuration of a corresponding portion of a business architecture. The computer system selects a first of the graphical objects as the point of focus within the portion of the navigable business architecture map. The remaining unselected graphical objects provide context to the functionality of a business attribute or a business attribute relationship represented by the selected graphical object.
The computer system navigates to a second graphical object within the navigable business architecture map. The computer system selects the second graphical object as the point of focus. The computer system visually renders second unselected graphical attribute objects and unselected graphical relationship objects around the selected second graphical object to provide context to the functionality of a second business attribute or a second business attribute relationship represented by the selected second graphical object. The visually rendered second unselected graphical attribute objects and visually rendered second unselected graphical relationship objects are arranged to reflect the configuration of a corresponding second portion of the business architecture.
In additional embodiments, a computer system alters the level of detail in a map of a business model. The computer system receives an indication that a business architecture map having an initial level of detail is to be rendered. The computer system visually renders graphical attribute objects and graphical attribute relationship objects as a navigable business architecture map having the initial level of detail. The navigable business architecture map reflects the configuration of corresponding business architecture at the initial level of detail. The graphical attribute objects and graphical relationship objects representing structured business attributes and structured business attribute relationships respectively of the business architecture.
Them computer system receives an indication that the initial level of detail is to be changed to an updated level of detail. The computer system visually renders at least part of the graphical attribute objects and graphical attribute relationship objects as at least a portion of the navigable business architecture map having the updated level of detail. The at least a portion of the navigable business architecture map reflects the configuration of a portion of the corresponding business architecture at the updated level of detail.
Embodiments within the scope of the present invention include computer-readable media for carrying or having computer-executable instructions or data structures stored thereon. Such computer-readable media may be any available media, which is accessible by a general-purpose or special-purpose computer system. By way of example, and not limitation, such computer-readable media can comprise physical storage media such as RAM, ROM, EPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other media which can be used to carry or store desired program code means in the form of computer-executable instructions, computer-readable instructions, or data structures and which may be accessed by a general-purpose or special-purpose computer system.
In this description and in the following claims, a “computer network” is defined as one or more data links that enable the transport of electronic data between computer systems and/or modules. When information is transferred or provided over a computer network or another communications connection (either hardwired, wireless, or a combination of hardwired or wireless) to a computer system, the connection is properly viewed as a computer-readable medium. Thus, any such connection is properly termed a computer-readable medium. Combinations of the above should also be included within the scope of computer-readable media. Computer-executable instructions comprise, for example, instructions and data which cause a general-purpose computer system or special-purpose computer system to perform a certain function or group of functions. The computer executable instructions may be, for example, binaries, intermediate format instructions such as assembly language, or even source code.
In this description and in the following claims, a “computer system” is defined as one or more software modules, one or more hardware modules, or combinations thereof, that work together to perform operations on electronic data. For example, the definition of computer system includes the hardware components of a personal computer, as well as software modules, such as the operating system of the personal computer. The physical layout of the modules is not important. A computer system may include one or more computers coupled via a computer network. Likewise, a computer system may include a single physical device (such as a mobile phone or Personal Digital Assistant “PDA”) where internal modules (such as a memory and processor) work together to perform operations on electronic data.
In this description and the following claims, a “business layer” is defined as a view of specified characteristics of a business. For example, a business can be viewed based on its organizational structure, its business capabilities, it business processes, its service network, its geographic location, etc. Thus, a business can include a corresponding organizational layer, capability layer, process flow layer, service network layer, geographical layer, etc.
In this description and the following claims “business architecture” is defined as the overall design of at least a portion of a business. A business architecture for a company or one or more portions of a company can include one or more business layers that span various boundaries inside and/or outside of the company. For example, a company's business architecture can span externally physical boundaries (e.g., walls, buildings, etc.), internally physical boundaries (e.g., divisions, departments, etc.), and logical boundaries (e.g., a fiscal year end, a perceived service boundary, security etc.). Thus, an outsourced business capability can be viewed as part of the business architecture for a company even though the outsourced business capability is not performed by the company. Business architectures can be past, current (as-is), or future (to-be) architectures of an entire business or one or more portions of a business. A portion of a business can include e a specific sub-network or set of sub-networks of business capabilities.
Generally, the stability (or volatility) of different types of business models corresponding to different business layers can vary. That is, one type of business model can be more or less stable relative to other types of business models. For example, a business procedure model modeling business procedures may be more stable than a business organizational model modeling business organizational structure. On the other hand, business procedure modeling business procedures may be less stable than a business capability model modeling business capabilities.
In this description and in the following claims, a “business attribute” is defined as any attribute that can be used to model a business or part of a business. Different business modeling attributes can correspond to modeling different aspects (or different layers) of a business architecture. Thus, business modeling attributes can generally be divided into subsets of different types of business modeling attributes, such as, for example, business organizational attributes, business procedure attributes, business process flow attributes, business capability attributes, geographic attributes, etc. Accordingly, each different type of business attributes can be used to model business components of a corresponding business aspect (or business layer). For example, business organizational attributes can be used to model business organizational structures, business procedure attributes can be used to model business procedures, business process flow attributes can be used to model business process flows, business capability attributes can be used to model business capabilities, geographic attributes can be used to model geography, etc.
Thus, in this description and in the following claims, a “business component” is defined as a collective representation of the appropriate modeling result, such as, for example, business organizational structures, business procedures, business process flows, business capabilities, geography, etc., with respect to a particular business layer. Further, it would be apparent to one skilled in the art, after having reviewed this description, that other subsets of business modeling attributes, in additional to those expressly described, can be used to model other corresponding business aspects (or business layers).
In this description and in the following claims, a “business attribute relationship” is defined as an attribute that can be used to model a relationship between a first business attribute (of a first business component) and a second different business attribute (of a second business component). A relationship can be, for example, a dependency, a connection, or a boundary. A dependency can indicate what has to occur modeled business component to start, external events that that occur for a business component to stop, or other business components that depend on the business component. A connection indicates how one business component relates to other business components. A boundary indicates if influences on a business component are internal (e.g., people, process, technology inside a company) or external (e.g., regulations, customers, partners) to the business component. A business attribute relationship can be used to model a relationship between business components in the same business layer or between business components in different business layers.
In this description and in the following claims, a “schema” is defined as an expression of a shared vocabulary between a plurality of computer systems or modules that allows the plurality of computer systems or modules to process data according the expressed shared vocabulary. A schema can define and describe classes of data using constructs (e.g., name/value pairs) of a schema language. The schema constructs can be used to constrain and document the meaning, usage, and relationships of data types, elements and their content, attributes and their values, entities and their contents, and notations, as used in a specified application, such as, for example, a business capability model. Thus, any computer system or module that can access a schema can process data in accordance with the schema. Further, any computer system or module that can access a schema can compose or modify data for use by other computer systems and/or modules that can also access the schema.
A schema can be utilized to define virtually any data type including logical, binary, octal, decimal, hexadecimal, integer, floating-point, character, character string, user-defined data types, and combinations of these data types used to defined data structures. Some examples of user-defined data types are business capability properties, business capability inputs and outputs, business capability processes, business capability connections, and business capability service level expectations. A data type can also be defined to reference of link to other data types in a schema hierarchy.
An eXtensible Markup Language (“XML”) schema is one example of a type of schema. An XML schema can define and describe a class of XML documents using schema constructs (e.g., name/value pairs) of an XML schema language. These schema constructs can be used to constrain and document the meaning, usage, and relationships of data types, elements and their content, attributes and their values, entities and their contents, and notations, as used in XML documents. Thus, schema is also defined to include Document Type Definitions (“DTD”), such as, for example, DTD files ending with a “.dtd” extension and World Wide Web Consortium (“W3C”) XML Schemas, such as, for example, XML Schema files ending with a “.xsd” extension. However, the actually file extension for a particular DTD or XML schema is not important.
In this description and the following claims, a “business architecture” is defined as the overall design of at least a portion of a business. A business architecture for a company or one or more portions of a company can include business layers that span various boundaries inside and/or outside of the company. For example, a company's business architecture can span externally physical boundaries (e.g., walls, buildings, etc.), internally physical boundaries (e.g., divisions, departments, etc.), and logical boundaries (e.g., a fiscal year end, a perceived service boundary, security etc.). Thus, an outsourced business capability can be viewed as part of the business architecture for a company even though the outsourced business capability is not performed by the company. Business architectures can be past, current (as-is), or future (to-be) architectures of an entire business or one or more portions of a business. A portion of a business can be a specific sub-network or set of sub-networks of business capabilities.
Those skilled in the art will appreciate that the invention may be practiced in computer network environments with many types of computer system configurations, including, personal computers, laptop computers, hand-held devices, multi-processor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, mobile telephones, PDAs, pagers, and the like. The invention may also be practiced in distributed system environments where local and remote computer systems, which are linked (either by hardwired data links, wireless data links, or by a combination of hardwired and wireless data links) through a computer network, both perform tasks. In a distributed system environment, program modules may be located in both local and remote memory storage devices.
Generally, mapping module 103 can include modules configured to rendering visual representations of business models. For example as depicted in computer architecture 100, mapping module 103 includes rendering module 108, mapping schema 109, level of detail module 104, navigation module 106, and layer selection module 107.
Rendering module 108 is configured to utilize mapping schema 109 to transform schematized business attributes and business attribute relationships into visually renderable (graphically) objects. Mapping schema 109 can provide a translation between schematized business attributes and business attribute relationships (of varios different business layers) and corresponding graphical objects. Rendering module 108 can render graphical objects for a plurality of different business layers within the same business map. Rendering module 108 can visually render maps of different business layers side-by-side or overlaid on top of one another.
Level of detail module 104 is configured to control levels of detail within a visual representation of a business model. For example, level of detail module 104 can hide or provide details with a visual representation in response to user-input. Thus, level of detail module 104 can cause less than all the data in business attribute and business attribute relationship graphical objects to be rendered.
Level of detail module 104 can also alter a level of detail such that a current level of detail is increased or decreased. For example, level of detail module 104 can focus (or “zoom-in”) on levels of detail as requested by a user (e.g., to drill down on a specified part of a business map). On the other hand, level of detail module 104 can also abstract (or “zoom-out”) levels of detail as requested by a user (e.g., to provide an overview of part of a business map). Level of detail module 104 can also display different portions of a business map with different levels of detail. Thus, a user can visual greater detail on specified portions of a business map and visual lesser detail on other portions of a business map. Using varied levels of detail can facilitate drilling down into a specified portion of a business map in increased detail and yet still providing context (i.e., reduced detail surrounding components) for the increased detail portions.
Navigation module 106 is configured to facilitate navigation from a first business component to a second business component via a relationship between the first and second business components. Navigation module 106 can facilitate navigation between business components in the same or in different business layers.
Layer selection module 107 is configured to determine what business layers are to be visually rendered. Layer selection module 107 can filter business attributes and business attribute relationships for layers that are not to be rendered such that rendering module 108 does not receive business attributes and business attribute relationships for filtered layers. In response to user-input, filtered and non-filtered layers can be changed. Thus, additional business layers can be overlaid or placed side-by-side to rendered layers after the rendered layers are rendered.
Generally, computer system 101 is configured to receive business models generated in accordance with appropriate data models, unstructured business models, and/or unstructured business data. In response to receiving unstructured business models and/or unstructured business data, computer system 101 can refer to the appropriate data models to generate business models in accordance with the data models.
A business layer within a business architecture can be modeled using a single data model. For example, it may be that a single business capability data model is used to model a business capability layer of a business architecture. However, a business layer can also be modeled using any of a plurality different data models. For example, it may be that any of a plurality of different business capability data models is used to model a business capability layer of a business architecture.
Further, the same business layer within different business architectures can be modeled using the same data model or similar data models. For example, it may be that the same data model is used to model a business capability layer of a first business architecture is also used to model a corresponding business capability layer of a second business architecture. In this description and in the following claims, a “similarly typed business models” are defined as models based on the same data model or similar data model.
However, different data models can be used to model the same business layer within different business architectures. For example, it may be that a first business capability data model is used to a model a business capability layer of a first business architecture and a second business capability data model is used to model a business capability layer of a second business architecture. Additionally, different data models can be used to model different business layers of the same business architecture. For example, it may be that a business capability data model is used to model a business capability layer of a business architecture and a service network data model is used to model a service network layer of the business architecture.
Thus, computer system 101 can access business models corresponding to different business layers (e.g., business capability layer 121, service network layer 131, business process flow layer 141, business organizational layer 151, geographic layer 161, etc.). For example, computer system 101 can access one or more of capability model 122, service model 132, process flow model 142, and organizational model 152, and geographic model 162. A vertical series of two consecutive periods (a vertical ellipsis) before, between, and after the expressly depicted layers represents that computer architecture 100 can include other additional layers. A horizontal series of two consecutive periods (an ellipsis) before, between, and after the expressly depicted models in each layer represents that each layer can include other additional models. Collectively, the models 122, 132, 142, 152, and 162 represent business architecture
Mapping module 103 can perform one or more mapping operations (e.g. transforming and rendering business attributes and business attribute relationships) on accessed models (potentially in response to user entered commands) and can generate corresponding business architecture maps. Generated maps can be output at user-interface 102, sent to other processing modules for further processing, and/or can be sent via electronic messages to other computer systems.
As previously described, various different data models can be used to model different business layers. Thus in some embodiments, data models can include at least one business capability modeling schema for modeling a business capability layer, at least one business organizational schema for modeling a business organizational layer, at least one business process flow modeling schema for modeling a business process flow layer, at least one service network layer business modeling schema for modeling a service network layer, etc.
In some embodiments, business models and data format definitions can be generally described as indicated in Table 1.
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
Depicted in
It should be understood that schema 100 is merely one example of a business capability modeling schema. Further, modeling business capabilities does not require that capability attributes for all the data formats in schema 200 be accessible. For example, a capability and connecter can be used to model a business capability based on capability data format 214 and connector data format 223, without accessing capability attributes correspond to other data formats. Thus, schema 200 defines data formats for business capability attributes that are accessed, but does not require that all data formats be populated to generate a business capability model.
It would be apparent to one skilled in the art, after having reviewed this description, that embodiments of the present invention can be used with a wide variety of other business capability modeling schemas, in addition to schema 200. It would also be apparent to one skilled in the art, after having reviewed this description, that embodiments of the present invention can be used with a wide variety of other schemas that facilitate modeling other business layers.
Method 300 includes an act of accessing a structured business model of a business architecture (act 301). The structured business model including business attributes and business attribute relationships that are formatted in accordance with data formats defined in a structured data model. For example, mapping module 103 can access capability model 122. Capability model 122 can include business attributes and business attribute relationships formatted in accordance with the data formats of schema 300.
Method 300 includes an act of generating a renderable attribute object for each business attribute (act 302). For example, rendering module 108 can utilize mapping schema 109 to transform structured business attributes contained in capability model 122 into corresponding visually renderable graphical attribute relationship objects.
Method 300 includes an act of generating a renderable relationship object for each business attribute relationship (act 303). For example, rendering module 108 can utilize mapping schema 109 to transform structured business attribute relationships contained in capability model 122 into corresponding visually renderable graphical objects.
Method 300 includes an act of visually rendering the attribute objects and the graphical relationship objects as a navigable business architecture map that reflects the configuration of the business architecture (act 304). For example, rendering model 108 can visually render graphical attribute objects and the graphical relationship objects as business architecture map 112. Business architecture map 112 can reflect the configuration of the business architecture modeled in capability model 122.
Business architecture map 112 includes selectable components that allow a user to navigate between the components. For example, a use can selected a graphical retionship object to navigate between related graphical attribute objects. Alternately, a user can select (e.g., with a mouse or through keyboard input) a graphical attribute object or a graphical relationship object to cause focus to shift to the selected graphical attribute object or a graphical relationship. Thus, a use can navigate to virtually any graphical attribute object or a graphical relationship object simply by selecting the object.
Visual representation 600A can be presented through user-interface 102 to a user of computer system 101. The user can navigate to an object in visual representation 600A by selecting the object from within user-interface 102. For example, a user can navigate to fulfill demand 601.3 by selecting fulfill demand 601.3 with a mouse. Input indicating object selection can be received at navigation module 104. Navigation model 104 can interoperation with rendering module 108 to visually represent that an object has been selected.
Method 500 includes an act of receiving an indication that a business architecture map having an initial level of detail is to be rendered (act 501). For example, user-interface 102 can receive user-input 114 indicating an initial level of detail for business architecture map 112. User-interface 102 can transfer user-input 114 to level of detail module 104. An initial level of detail can indicate that all objects are to be rendered at the same level of detail. However, the initial level of detail is configurable across different objects such that the initial level of detail differs for different graphical objects. Thus, an initial level of detail can indicate that different objects are to be rendered at different levels of detail.
Method 500 includes an act of visually rendering graphical attribute objects and graphical attribute relationship objects as a navigable business architecture map having the initial level of detail (act 502). The navigable business architecture map reflects the configuration of a corresponding business architecture at the initial level of detail. The graphical attribute objects and graphical relationship objects represent structured business attributes and structured business attribute relationships respectively of the business architecture. For example, mapping module 103 can render visual representation 600A. Visual representation 600A can reflect the configuration of a portion of the business architecture corresponding to architecture models 111. Visual representation 600A can be a visual rendering of graphical attribute objects and graphical attribute relationship objects that represent corresponding structured business attributes and structured business attribute relationships from business architecture 111.
When a business model, such as, for example, capability model 122, is received, the business model may include structured attributes and structured attribute relationships that model business components at a number of different levels of detail. Based on the initial level of detail, level of detail module 104 can select appropriate structured attributes and structured attribute relationship that are to be mapped. Level of detail module 104 can interoperate with rending module 108 to facilitate the appropriate level of detail for each object in a rendered map, such as, for example, in visual representation 600A. Mapping module 103 can retain structured attributes and structured attribute relationships corresponding to increased levels of detail, even when objects in a map are rendered with reduced levels of detail.
For example, the business model corresponding to visual representation 600A may include structured attributes and structured attribute relationships corresponding to a plurality of different levels of detail (e.g., six different levels of detail). Level of detail module 104 and rendering module 108 can interoperate to render visual representation 600A with an indicated initial level of detail. Thus, visual representation 600A can be rendered partially at a most reduced level of detail (e.g., level 1) and partially at an incrementally increased level of detail (e.g., level 2). That is, within visual representation 600A, customer facing channel partners 602, customers 603, suppliers 604, logistic providers 605, and financial providers 606 are rendered with less detail (no internal components expressly rendered) and enterprise 601 is rendered with increased detail (some internal components expressly rendered). Accordingly, mapping module 103 can retain structured attributes and structured attribute relationships for abstracted (or not expressly rendered) portions of the corresponding business model. For example, mapping module 103 can retain structured attributes and got structured attribute relationships for levels 3 - 6 (and potentially for non-rendered portions of level 2) of enterprise 601.
As previously described an “initial level of detail” can indicate that different objects are to be rendered with different levels of detail. For example, visual representation 600A is rendered with an initial level of detail even though some objects are rendered with increased detail and some objects are rendered reduced detail.
Method 500 includes an act of receiving an indication that the initial level of detail is to be changed to an updated level of detail (act 503). For example, user-interface 102 can receive user-input indicating that level of detail for business architecture map 112 is to be changed. User-interface 102 can transfer user-input 114 to mapping module 103. Changing a level of detail can include increasing and/or decreasing the level of detail of all, some, or one of the graphical objects in a business architecture map. For example, a second level of detail can indicate that fulfill demand 601.3 is to be rendered with increased detail.
Method 500 includes an act visually rendering at least part of graphical attribute objects and graphical attribute relationship objects as at least a portion of the navigable business architecture map having the updated level of detail (act 504). The at least a portion of the navigable business architecture map reflects the configuration of a portion of the corresponding business architecture at the updated level of detail. For example, mapping module 103 can render visual representation 600B.
As depicted in visual representation 600B the detail of fulfill demand 601.3 is increased by a number of levels of detail. Based on the updated level of detail, level of detail module 104 and rendering module 108 can interoperate to identify structured business attributes and structured business attribute relationships that at to be rendered. This interoperation can potentially include accessing previously received and maintained structured business attributes and structured business attribute relationships corresponding to the increased levels of detail.
Method 400 includes an act of visually rendering a portion of a navigable business architecture map (act 401). The portion of the navigable business architecture map including visually rendered graphical attribute objects and visually rendered graphical relationship objects arranged to reflect the configuration of a corresponding portion of a business architecture. For example, mapping module 103 can render visual representation 800A. Visual representation 800A includes business capability objects 801-807 and business capability relationship objects 831-836. The arrangement of capability objects 801-807 and business capability relationship objects 831-836 can reflect the configuration of a portion of a business architecture, for example, modeled by business architecture models 111.
Method 400 includes an act of selecting a first of the graphical objects as the point of focus within the portion of the navigable business architecture map (act 402). Thus, the remaining unselected graphical objects provide context to the functionality of a business attribute or a business attribute relationship represented by the selected graphical object. For example, mapping module 103 can receive user input selecting business capability object 805. Thus, business capability object 805 transitions to the point of focus within visual representation 800A. Accordingly, the remaining unselected business capability objects 801-804, 806 and 807 and business capability relationship objects 831-836 provide context to the functionality of business capability represented by business capability object 805.
Method 400 includes an act navigating to a second graphical object within the navigable business architecture map (act 403). For example, navigation module 106 can receive user-input for navigating to business capability object 801. User-input can include input for navigating business capability relationship object 833.
Method 400 includes an act of selecting the second graphical object as the point of focus (act 404). For example, mapping module 103 can receive user input selecting business capability object 801 as the point of focus. Alternately, as a result of navigating to business capability object 801, business capability object 801 is automatically selected as the point of focus.
Method 400 includes an act of visually rendering second unselected graphical attribute objects and second unselected graphical relationship objects around the selected second graphical object to provide context to the functionality of a second business attribute or a second business attribute relationship represented by the selected second graphical object (act 405). The visually rendered second unselected graphical attribute objects and visually rendered second unselected graphical relationship objects are arranged to reflect the configuration of a corresponding second portion of the business architecture. For example, rendering module 108 can render visual representation 800B. Visual representation 800B includes business capability objects 801, 802, 804, 805, 808, and 809 and business capability relationship objects 831-833, 837, and 838. The arrangement of business capability objects 801, 802, 804, 805, 808, and 809 and business capability relationship objects 831-833, 837, and 838 can reflect the configuration of a second portion of the business architecture, for example, modeled by business architecture models 111.
Visual representation 800B depicts unselected business capability objects 802, 804, 805, 808, and 809 and unselected business capability relationship objects 831-833, 837, and 838. Unselected business capability objects 802, 804, 805, 808, and 809 and unselected business capability relationship objects 831-833, 837, and 838 provide context to the functionality of business capability represented by business capability object 801. Accordingly, as a user navigates objects in a visual representation of a business model, relevant context can provided for a selected object.
Embodiments of the presenting invention can also used to visually present a plurality of different business layers simultaneously. In some embodiments, maps for different business layers can be presented separately in a side-by-side arrangement. For example, visual representation 600A and visually representation 600A can be presented side-by-side at user-interface 102. Viewing visual representations of different business layers simultaneously can provide a use with increased insight into the represented business architecture.
As depicted, business capability objects 802, 803, and 806 reside at geographic location 821, business capability objects 809, 804, 805, and 807 reside at geographic location 822, and business capability objects 801 and 808 reside at geographic location 823. Thus, a user can efficiently determine what business capabilities exist and where the business capabilities are located.
Within visual representation 800C, some business capability relationship objects reside at a single geographic location. For example, business capability relationship object 837 resides at geographic location 823, business capability relationship object 834 resides at geographic location 821, and business capability relationship object 836 resides at geographic location 822. However, other business capability relationship objects span across geographic locations. For example, business capability relationship object 831 spans between geographic locations 823 and 821, business capability relationship objects 838, 832, and 833 span between geographic locations 822 and 823, and business capability relationship object 835 spans between geographic locations 821 and 822. Thus, a user can efficiently determine what business capability relationships exist and how the business capability relationships span geographic locations.
For clarity, locations 821, 822, and 823 are identified by dashed lines. However, actual geographic maps, such as, for example, maps of earth, countries, states, campuses, buildings, cities, etc. can be used. Business components residing at specified location can be rendered at or neat that location on a map. Business components that span locations-can be rendered to appropriately depict spanning, such as, for example, connecting other business compoents in different locations. Viewing overlays of a plurality of different business layers in the same visual representation can provide a user with increased insight into the represented business architecture.
Embodiments of the present invention can include one-way ports and connectors. For example, it may be that, from time to time, requisition 723 transfers data from purchase order request capability 701 (coming out of port 703 and into port 721) to purchase order submission capability 733 (coming out of port 722 and into port 733). Embodiments of the present invention can include two-way ports and connectors. For example, it may be that, from time to time, requisition 743 transfers data from purchase order review capability 763 (coming out of port 761 and into port 744) to purchase order submission capability 733 (coming out of port 742 and into port 741). On the other hand, it may also be that, from time to time, requisition 743 transfers data from purchase order review capability 733 (coming out of port 741 and into port 742) to purchase order submission capability 733 (coming out of port 744 and into port 761)
Ports 790-799 represent that requisition processing capability 580 can exchange data with other business capabilities and connectors, for example, included in part of general procurement network of business capabilities.
As depicted, purchase order process flow 790, utilizes purchase order request capability 701, requisition 723, purchase order submission capability 733, requisition 743, and purchase order review capability 763. Thus, a user can efficiently determine what business capabilities and connectors are used to implement purchase order process flow 790.
Embodiments of the present invention also include visual representations of business models that facilitate navigation between different business layers. For example in visual representation 700, a user can navigate from purchase order capability request 701 (e.g., at business capability layer 121) to purchase order process flow 790 (e.g., at business process flow layer 141). Similarly, in visual representation 800C a user can navigate from business capability object 803 (e.g., at business capability layer 121) to geographic location 821 (e.g., at geographical layer 161).
Selection of a business component in a different business layer can cause an increased level of detail to be visually rendered for the different business layer. For example, navigating to purchase order process flow 790 can cause visual representation 700 to transition to a more detailed visual representation of purchase order process flow 790, including, for example, other process flows that interact with purchase order process flow 790. Similarly, navigating to location 821 can cause visual representation 800C to transition to a more detailed view of location 821, including, for example, business components from other business layers (e.g., form a service network layer, a business organizational layer, etc.) that also reside at location 821.
Selection of a business component in a different business layer can also cause a reduced level of detail to be visually rendered for the current business layer. For example, navigating to purchase order process flow 790 can cause visual representation 700 to transition to a less detailed visual representation of requisition processing capability 780 including, for example, abstracting out purchase order request capability 701, requisition 723, purchase order submission capability 733, requisition 743, and purchase order review capability 763. Similarly, navigating to location 821 can cause visual representation 800C to transition to a less detailed view of locations 822 and 823, including, for example, abstracting out business capability objects 808, 809, and 807.
Embodiments of the present invention provide mechanisms to visualize and navigate a networked business structure. Users can configure levels of detail such that the appropriate amount of detail for a given task is provided. Further, users can navigate across business layers without having to associate or understand the structures of the different business layers. Accordingly, users are provided business context for completing tasks more efficiently without being overwhelmed by unneeded business details and without lacking all the relevant business details.
With reference to
The computer system 920 may also include magnetic hard disk drive 927 for reading from and writing to magnetic hard disk 939, magnetic disk drive 928 for reading from or writing to removable magnetic disk 929, and optical disk drive 930 for reading from or writing to removable optical disk 931, such as, or example, a CD-ROM or other optical media. The magnetic hard disk drive 927, magnetic disk drive 928, and optical disk drive 930 are connected to the system bus 923 by hard disk drive interface 932, magnetic disk drive-interface 933, and optical drive interface 934, respectively. The drives and their associated computer-readable media provide nonvolatile storage of computer-executable instructions, data structures, program modules, and other data for the computer system 920. Although the example environment described herein employs magnetic hard disk 939, removable magnetic disk 929 and removable optical disk 931, other types of computer readable media for storing data can be used, including magnetic cassettes, flash memory cards, digital versatile disks, Bernoulli cartridges, RAMs, ROMs, and the like.
Program code means comprising one or more program modules may be stored on hard disk 939, magnetic disk 929, optical disk 931, ROM 924 or RAM 925, including an operating system 935, one or more application programs 936, other program modules 937, and program data 938. A user may enter commands and information into computer system 920 through keyboard 940, pointing device 942, or other input devices (not shown), such as, for example, a microphone, joy stick, game pad, scanner, or the like. These and other input devices can be connected to the processing unit 921 through input/output interface 946 coupled to system bus 923. Input/output interface 946 logically represents any of a wide variety of different interfaces, such as, for example, a serial port interface, a PS/2 interface, a parallel port interface, a Universal Serial Bus (“USB”) interface, or an Institute of Electrical and Electronics Engineers (“IEEE”) 1394 interface (i.e., a FireWire interface), or may even logically represent a combination of different interfaces.
A monitor 947 or other display device is also connected to system bus 923 via video interface 948. Speakers or other audio output device is also connected to system bus 923 via an audio interface. Other peripheral output devices (not shown), such as, for example, printers, can also be connected to computer system 920.
Computer system 920 is connectable to computer networks, such as, for example, an office-wide or enterprise-wide computer network, a home network, an intranet, and/or the Internet. Computer system 920 can exchange data with external sources, such as, for example, remote computer systems, remote applications, and/or remote databases over such computer networks.
Computer system 920 includes network interface 953, through which computer system 920 receives data from external sources and/or transmits data to external sources. As depicted in
Likewise, computer system 920 includes input/output interface 946, through which computer system 920 receives data from external sources and/or transmits data to external sources. Input/output interface 946 is coupled to modem 954 (e.g., a standard modem, a cable modem, or digital subscriber line (“DSL”) modem), through which computer system 920 receives data from and/or transmits data to external sources. As depicted in
While
In accordance with the present invention, user-interfaces, mapping modules, rendering modules, level of detail modules, layer selection modules, and rendering modules as well as associated data, including business models, mapping schemas, and business architecture maps, may be stored and accessed from any of the computer-readable media associated with computer system 920. For example, portions of such modules and portions of associated program data may-be included in operating system 935, application programs 936, program modules 937 and/or program data 938, for storage in system memory 922.
When a mass storage device, such as, for example, magnetic hard disk 939, is coupled to computer system 920, such modules and associated program data may also be stored in the mass storage device. In a computer network environment, program modules depicted relative to computer system 920, or portions thereof, can be stored in remote memory storage devices, such as, system memory and/or mass storage devices associated with remote computer system 983 and/or remote computer system 993. Execution of such modules may be performed in a distributed environment as previously described.
The present invention may be embodied in other specific forms without departing from its spirit or essential characteristics. The described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is, therefore, indicated by the appended claims rather than by the foregoing description. All changes, which come within the meaning and range of equivalency of the claims, are to be embraced within their scope.