I will continue to expand from the Previous Post of Solution Architecture reference models. This post I will cover the second but the major architectural view logical reference model.
The logical reference model details the concept of the conceptual reference model which is explained in the Previous Post. The logical reference model identifies the building blocks of each of the concept that are identified at the conceptual reference model.
Logical Reference Model Depiction
The below diagram shows the depiction of a Logical Reference model.
![]() |
Logical Reference Model |
Presentation
Layer
In this section all the logical components
which are part of this layer will be identified and explained.
Graphic Interface
A graphical user interface (GUI) (sometimes
pronounced gooey) is a type of user interface item that allows people to interact
with programs in more ways than typing such as computers; hand-held devices. A
GUI offers graphical icons, and visual indicators, as opposed to text-based
interfaces, typed command labels or text navigation to fully represent the
information and actions available to a user. The actions are usually performed
through direct manipulation of the graphical elements.
Internationalization
Internationalization is the process of designing a software application so that it can be adapted to various languages and regions without engineering(Source codes) changes. Localization is the process of adapting internationalized software for a specific region or language by adding locale-specific components and translating text.
Personalization
Personalization involves using technology to accommodate the differences between individuals. Web pages are personalized based on the characteristics (interests, social category, context, etc) of an individual
Printing
Printing is a capability for reproducing text and image using a printer. It could be on pre-formatted paper or exact reproduction of UI.
Portal
It is a capability which allows to presents information from diverse sources in a unified way. Portals provide a way for enterprises to provide a consistent look and feel with access control and procedures for multiple applications and databases, which otherwise would have been different entities altogether.
Domain Layer
In this section all the logical components which are part of this layer will be identified and explained.
Domain Logic
Business logic, or domain logic, is a capability that is generally used to describe the functional algorithms that handle information exchange between a database and a user interface.
Business Rules
Business rule is a statement that defines or constrains some aspect of the business. It is intended to assert business structure or to control or influence the behavior of the business. The capabilities of the Business Rules component includes but not limited to
- Rule Versioining
- Rule Auditing
- Rule Approval
- Rule Deployment
Event Processing
Capability to produce, detect, consume , and react to events generated because of a business or system significant change in system state. This capability is used to help deliver a decoupled or loosely coupled solution which allow for flexible and adaptive solutions.
Reporting
Reporting capability provides ability to query data sources with different logical models to produce a human readable report. Reporting can be mostly divided to three categories
Operational Reporting
Operational reports directly support the ongoing operation of a system. They collect transactional data in order to enhance operational efficiencies. These reports are used by people with responsibility for improving operations. They provide task-oriented line-item information on individual transactions at the very granular level of detail required for operational management.
Tactical Reporting
Tactical reports are intended for monitoring and responding quickly to a variety of short-term situations Such reports may need to combine data from multiple operational systems or store attributes that are not resident in the operational system because they are not required for operational processing.
Strategic Reporting
Strategic reports may measure the same entities as tactical reports; but they may also deal with more strategic financial, sales and productivity data and stretch the analysis over longer periods of time. This report is required by the Senior Management and executives have a business need to obtain the reporting figures at an overview level as opposed to an analyst in a department who needs reporting data at a finer level of detail.
Job Scheduler
A job scheduler is a capability that is in charge of unattended background executions, commonly known for historical reasons as batch processing. Job schedulers may also provide a graphical user interface and a single point of control for definition and monitoring of background executions in a distributed network of computers.
Workflow
A workflow is a depiction of a sequence of operations, declared as work of a person, a group of persons, an organization of staff, or one or more simple or complex mechanisms.
Transaction Processing
Transaction processing is designed to maintain an application/database integrity a known, consistent state, by ensuring that any operations carried out on the system that are interdependent are either all completed successfully or all canceled successfully.
Data Layer
In this section all the logical components which are part of this layer will be identified and explained.
Data Persistence
Persistent data is data which always preserves the previous version of itself when it is modified; such data are effectively immutable, as their operations do not (visibly) update the in-place, but instead always yield a new updated copy.
Analytics
The study of business data using statistical analysis in order to discover and understand historical patterns with an eye to predicting and improving business performance in the future.
Replication
Replication process of sharing information so as to ensure consistency between redundant resources, such as software or hardware components, to improve reliability, fault-tolerance, or accessibility
Query
Information Query allows users to interactively interrogate databases, analyze its data and update it according to the users privileges on data.
Data-Warehousing
Data-warehouse is a repository of data which is created by integrating data from multiple disparate transaction processing systems.
Data Archival
Data Archival refers to the capability of long-term storage and preservation of information for recovery, legal, audit and compliance reasons.
Data Summarization
Data Summarization summarizes data included both in primitive and derived data, in order to create a derived shortened data that is general in nature. Data summarization provides the capacity to give data consumers generalize view of disparate bulks of data.
Data Extraction
Data extraction is the act or process of retrieving data out of disparate data sources for further data processing or data storage or data migration. An intrinsic part of the extraction involves the parsing of extracted data, resulting in a check if the data meets an expected pattern or structure. If not, the data may be rejected entirely or in part
Infrastructure Layer
In this section all the logical components which are part of this layer will be identified and explained.
Network
Network services provide addressing and packet delivery for the provider’s physical infrastructure and the consumer’s VMs. Network capability includes physical and virtual network switches, routers, firewalls, and Virtual Local Area Network (VLAN).
It facilitates communication between people, software or server to share hardware, information and software.
Storage
It is a device for recording (storing) information (data). A storage device may hold information, process information, or both. A device that only holds information is a recording medium. Devices that process information (data storage equipment) may either access a separate portable (removable) recording medium or a permanent component to store and retrieve information.
Compute
Compute services supply the physical resources such as CPU, Random Access Memory (RAM), NIC, Video, and Storage used by the provider to deliver VMs to consumers. It contains the physical server hardware and parent OS.
Hypervisor
The hyper-visor provides VM (Virtual Machine) services by partitioning and presenting compute, network, and storage services.
Integration Layer
In this section all the logical components which are part of this layer will be identified and explained.
Mediation
Mediation can be defined at the following levels.
- Protocol Mediation - Communication protocol (SOAP, JMS, FTP, HTTP, SMTP etc.) mediation
- Data Mediation - Data transformation, adapter to enterprise systems.
- Partner Mediation - Fan-in and Fan-out of messages to multiple producer/consumer
Messaging
It is defined as the capability to transfer packets of data frequently, immediately, reliably, and asynchronously, using customizable formats.
Discovery
Provides services/capabilities which allows participating application to inquire and discover the metadata associated with interfaces. This is useful for dynamic discovery and binding to appropriate interfaces. Following capabilities are examples of the same
- Service Registry
- End point discovery and Binding
- End-point Virtualization
Collaboration
It is defined as the capability to provide interaction between participating business and/or system entities using communication channels as defined below.
- SMS
- Fax
- Web 2.0
- File Transfer
Security Layer
In this section all the logical components which are part of this layer will be identified and explained.
Non-Repudiation
Non-repudiation is the ability to prove that a specific user and only that specific user sent a message and that it hasn't been modified.
Authentication
Authentication as a capability is the process of confirming the correctness of the claimed identity.
Authorization
Authorization as a capability is the approval, permission, or empowerment for someone or something to execute an action.
Encryption
The capability of transforming information (referred to as plaintext) using an algorithm (called cipher) to make it unreadable to anyone(system or human) except those possessing special knowledge in the form of keys, symmetric or asymmetric. In the current context this capability is used to protect data in transit.
Identity Management
Identity management is the capability of a system that maintain and also verifying the identity of a user, process, or device, usually as a prerequisite for granting access to resources in an IT system.
Common Services Layer
In this section all the logical components which are part of this layer will be identified and explained.
Logging
Logging refers to the recording of activity. Logging is a common issue for development teams. Designing a good logging and instrumentation strategy is important for the security and reliability of any application. Failure to do so can make the application vulnerable to repudiation threats, where users deny their actions, and log files may be required for legal proceedings to prove wrongdoing. There should be audit and log activity across each of the layers. Auditing is usually considered most authoritative if the audits are generated at the precise time of resource access, and by the same routines that access the resource. Instrumentation can be implemented by using performance counters and events to give administrators information about the state, performance, and health of an application.
Exception and Error Handling
Exception handling is the process of responding to the occurrence, during computation, of exceptions – anomalous or exceptional
situations requiring special processing – often changing the normal flow of program execution. Designing a good exception management strategy is important for the security and reliability of your application. Failure to do so can make it very difficult to diagnose and solve problems with in an application. It leaves the application vulnerable to Denial of Service (DoS) attacks, and it may reveal sensitive and critical information. Raising and handling exceptions is very important process in any application development.
Notification
Notification provides a means of delivering a message to a set of recipients. The key capabilities should include
- The data contained within the notification system should help the recipient to take some informed decisions.
- There should be capability for real time bi-directional interaction with the notification system so as to take appropriate actions.
- The criticality of the event needs to be prioritized and adequate escalation mechanism needs to be implemented.
- There should be scheduling capabilities to identify what are the appropriate time when a recipient needs notification.
Monitoring
Monitoring applications to detect and respond to problems - before an end user is even aware that a problem exists - is a common systems requirement, especially for revenue-generating production environments. Most administrators understand the need for application monitoring. Infrastructure teams, in fact, typically monitor the basic health of application servers by keeping an eye on CPU utilization, throughput, memory usage and the like. There are many parts to an application server environment, and understanding which metrics to monitor for each of these pieces differentiates those environments that can effectively anticipate production problems from those that might get overwhelmed by them.
Caching
Caching is a technique which actually stores the data that have been computed earlier or duplicates of original values that are stored elsewhere. If requested data is contained in the cache this request can be served by simply reading the cache, which is comparatively faster. Otherwise the data has to be recomputed or fetched from its original storage location, which is comparatively slower. Hence, the greater the number of requests that can be served from the cache, the faster the overall system performance becomes.
No comments:
Post a Comment