In information systems, application architecture is one of several architecture domains that form the pillars of an EA or solution architecture. The term "application architecture" is commonly used for the internal structure of an application, for its software modularization. Application architecture is the methodology for ensuring that the applications suite being leveraged by the enterprise to create the composite architecture is reliable, scalable, and manageable.
The recommended methodology for developing application architectures is as follows:
Qualities
The following is the comprehensive list for ensuring completeness of an application architecture:
Probability indicator:
This is done through the use of protocols such as SOAP, RMI, and CORBA for building distributed architecture and providing the plumbing mechanism. For example, if the presentation tier and business are designed in .NET, .NET remoting will the right choice. A SOAP web service is the choice if business logic needs to be exposed and accessible outside the domain.
When leveraging a remoting mechanism, such as RMI, the contracts between two tiers is pre-defined. In SOA, the client can dynamically discover the contract. For example, web services expose contracts through the Web Service Description Language (WSDL), which provides decoupling. At times, it is essential to define data contracts or data transfer objects that can be transferred between tiers. Internally, tiers have to convert DTOs to business objects ensuring that the contract doesn't break if the database changes.
Probability indicator:
One approach to this is through JMS/MQ, which provides queues that store messages if the destination node is not reachable/available. The messages remain in the queue until they are finally consumed by the application end point. JMS is only a specification for messaging services from Oracle and is part of the JEE framework. The corresponding implementation is the MQ series from IBM which provides the API and tools for building JMS compliant applications which are highly reliable. Message queues can be configured to work in a point-to-point model or a publish-subscribe model.
Please refer to the following figure:
Probability indicator:
An Enterprise Resource Planning (ERP) is a business process management product that allows an enterprise to leverage a suite of integrated applications to manage business and automate functions such as customers, administration, logistics, and production. ERP software integrates all facets of operations, including planning, marketing, sales, development, and manufacturing.
ERP is an enterprise software that is targeted to be leveraged by larger enterprises and often requires dedicated SMEs to customize and manage upgrades and deployment. In contrast, small business ERPs are lightweight business management solutions, customized for the specific industry.
Benefits of ERP
The benefits of ERP are as follows:
Probability indicator:
CRM is the acronym for customer relationship management. Customer relationship management entails all aspects of interaction with a customer including sales, services, or marketing domains. While the term "CRM" is leveraged for customer business relationships, CRM also manages business contacts, prospects, clients, contract wins, and sales leads.
CRM solutions provide the customer data to help provide services or products that your customers want, and provide better customer service, cross-selling and up-selling more effectively. They help to close deals, retain current customers, and better understand your customer. Enterprises frequently look for ways to personalize online experiences through tools such as help-desk software, e-mail organizers, and different types of enterprise applications.
Benefits of CRM
Let's take a look at the benefits of CRM:
Popular CRM software
The following table illustrates the different types of CRM software:
SAP CRM |
Salesforce |
Oracle Siebel |
OnContact |
Sage Act |
Prophet |
AIM CRM |
Relenta |
Webasyst |
Sugar CRM |
Probability indicator:
The challenges organizations face while incorporating CRM include:
Probability indicator:
Substantiate a rationale for picking the system over others and the factors that you considered while making the final selection. The following are the key factors for product selection. One can then leverage a decision matrix for the final data consolidation and share it with the customer executives.
The decision matrix is one of the approaches to leverage in this scenario. The decision matrix is one of the approaches to tackling this scenario. This has been explained in IT strategy and advisory section.
Probability indicator:
Application monitoring and performance management helps organizations monitor and optimize infrastructure performance and availability through the use of best practices by identifying and resolving problems in distributed environments. Many organizations begin with no visibility, forcing them into management that is reactive, ad hoc, and slow. The goal is to make sure you have in place the capabilities to assure that you can meet your service level agreements.
Benefits of APM
The benefits are listed as follows:
The following diagram depicting APM capabilities:
Probability indicator:
There are three major factors to costing a solution. For the first two parts, you will have to engage with the product vendor/ISV to get the information. While there are online tools and data available it's always a good practice to engage the ISV once the solution/building blocks are finalized. The third factor is predominately related to service aspects and will be governed by the billing rates for your organizations. This is calculated through either function points, use case-based, or WBS estimations. This stage will also include finalizing the team organization/structure before working on the effort estimation. This is done with the help from project managers and delivery managers.
This includes:
Component |
Description |
Part I: Software component |
Applications, products, tools, frameworks, monitoring software and antivirus tools. |
Part II: Hardware component |
Servers, networks, storages, disks. |
Part III: Services component |
Design, build, and testing phases that will be provided by SI/vendors support and maintained for the next 3-5 years |
Table 1: Costing of solution
Probability indicator:
Approach for cloud migration:
Steps |
Description |
Cloud assessment |
Financial assessment: TCO calculation
Compliance and security and technical assessment
Identify tools that can be re-used and the ones that need to be procured
Create cloud migration plan and measure success through metrics |
Proof of concept |
Build pilot and validate the technology solution in the cloud |
Moving your data |
Understand different storage options in the cloud
Migrate fileservers, RDBMS, and MySQL |
Moving your apps |
Forklift and hybrid migration strategy
Build cloud-aware layers or tiers
Create AMIs for each component |
Leveraging the cloud |
Automate elasticity and SDLC
Harden security
Create dashboard to manage resources and leverage multiple availability zones |
Optimization |
Optimize usage based on demand, improve efficiency, and implement monitoring and telemetry capability
Re-engineer applications and decompose relational databases |
Table 2: Cloud Migration Approach
Probability indicator:
Challenges
The following are the list of problems with silo organizations:
Resolution
In order to correct silo problems, there is no need to re-organize the entire company. Here are the steps that can help break down walls and allow cross-pollination:
Probability indicator:
18.116.37.129