Wednesday, February 19, 2014

Pros and Cons of adopting SOA in data integration among multiple applications

SOA (Service Oriented Architechture)

Oracle Service Oriented Architecture can support the integration with multiple systems and helps Orchestration in the middle without touching the individual applications.. This alternative is also considered for evaluation on fitment to the requirements.

Pros:

  • Supports both synchronous and asynchronous integrations
  • Data orchestration, content based routing  is supported
  • Exception Handling framework
  • Supports the integrations to different technologies and packaged applications(EBS,Siebel,PPSFT,SAP,JDE etc) through adapters
  • No cost for Technology adapters
  • Common monitoring tool i.e. Enterprise Manager is available
  • Accommodates growth and addition of touch points if designed well
  • Maintainability
  • Must when intelligence is required in the Middleware without changing the end applications

Cons:


  • Infra and licenses cost for Weglogic and SOA  adds to expenditure
  • Packaged applications adapters are licensed separately
  • Recurring cost of Administrator required post production
  • Infra and licenses cost for Weglogic and SOA  adds to expenditure
Best to Use:
  • When considerable logic is required in the Middle without touching the end applications
  • When lot of exceptions are to be handled and monitored
  • When it is required to accomodate integrations with other applications and that too with intermediate logics
  • Integration of low volume but with content base routing and logic required

Pros and Cons of adopting Flat file Integration for Data Integration among multiple Applications

Flat file Integration


Standard Format for each of the document will be defined.
Standard Mapping between the document and the receiving sending application must be in place.
Whichever applications takes in or sends out this document must have developed a interface like API or a function to interact.
All such documents are placed in a defined repository  where the APIs or equivalent will access and process.

Pros:

  • Flat Files integrations are cheaper solution in terms of cost if the source and target systems are fixed.
  • Low Cost Solution
  • Quick to develop

Cons:

  • Needs FTP Infrastructure and SQL Loader licenses and Programming skills
  • When the new systems are introduced into integration, Integration of new systems skilled resources required.
  • Data orchestration between the systems is not possible. All are point -to- point integrations
  • No single point of monitoring for all integrations.
  • Dependency on the experts of interacting application
  • Poor Error Handling
  • Scalability issues
  • Less ease of use
  • Difficult to maintain
  • NetChange data becomes quite critical
Best to adopt when:
  • budget is limited
  • Standard formats of data exchange are in place
  • Field Mapping and Logic is not going to change much
  • No extension plans
  • Data volumes are not high
  • timelines are tight
  • Expertize for developing and maintaining is abundantly available in the Customer organization

Pros and Cons of using ODI in data integration requirements

Batch data integrations can be designed with mapping and Business rules and the solution works seamless with the defined mapping and conversion schedules.

Pros:
  • ODI is  for batch data integrations (ETL transactions)
  • Appropriate for bulk data integrations and Batch integrations can be scheduled
  • Out-of-box integration with databases, ERPs, CRMs, Flat Files
  • Lesser cost compared to SOA products as App server is not needed for this only ODI licenses required.
  • Good error monitoring systems
  • License costs are relatively low (Compared to OSB or SOA)

Cons:
  • This is not meant for real-time data integrations

Best to Use When:
  • The Applications involved such as Oracle JDE, EBS, Hyperion which have Out of Box Integration features
  • Budget is restricted but Flat File Integration is not going to help
  • Bulk data integrations are required but need not be real time integrated
  • Error monitoring required unlike Flat File Integrations which wont have good error Monitoring
  • Inhouse expertize of ODI available
  • Complementary Products like Hyperion are already in place with ODI licenses included
  • Real-Time data integration is not critical

Thursday, January 2, 2014

How do you present the Proposal in Customer Language

Disclaimer: I have been writing the blogs in the style of story telling based on real incidents but with some fiction added to emphasize the message. Hence I request not to make any conclusions to derive facts based on the posts in these blogs. 
I made many business development sessions and one of the challenges was to convince the Customer on why their organization must go for a ERP, a BI Solution or even an upgrade to better version. In a typical Presales mode, I used to present what are all the great features the software has and believed the customer would be convinced for sure.
I was doing a similar presentation to a matured Customer who is in top 10 of the Fortune 100 Conglomerates. The customer Organization was known to be the process oriented and organization full of knowledgeable stakeholders. My first challenge was there when the customer stopped my presentation and asked me a simple question.
Why should I upgrade my current ERP to the latest version? I just want the answer to this and I can convince my leadership for the rest.
I politely responded that this was exactly what I was trying to do through explaining the great features that are added to the new version
He said “we can hear this from any consulting organization. And in fact, I can go through the literature of this Product vendor in their web site to understand what are all new in the Software.”
I was confused. “Dear X, You will be having more user friendly screens, parameter based navigations, new functionalities to support some of your activities for which you might be doing customizations. They are all going to make your life much better”
“At what cost?” Now he came to the point.
“It costs …. USD but I am sure that helps you a lot”
‘This is English, can I have another session where you will explain me on what will be my investment and what will be my cost or Productivity benefits if I make this migration?”
“Sure Mr. X. I will come back next week”
“Thanks! But please remember. I don’t want any English text detailing the benefits in terms of excellent features, great performance, superb reports etc. I want to know the numbers against each of what you say as the benefit. And preferably in terms of dollars”Completely puzzled about what to present in the next week, I met Bholerao and explained the scenario.
“Dear Khaderao, let me give an example. I agree any model of BMW car has great features but it also costs a lot. If my job is to buy vegetables every day and carry them home,  will I buy BMW?”
Your customer is asking the same question. You need to understand what is the line of business for the customer, what are the major business transactions that they do. What is the volume of transactions. What are their major 3 pain areas that they don’t fulfill currently?
These are a few questions to which you must have the answer.
I asked ‘how do I get there? Can you please clarify?’
“Hmm. Ok, let me try. There are two approaches for you”
Approach 1:
1.       Understand the current business
2.       Identify the features that are already in use and the new features will help the customer at a Macro level
3.       Approximate the benefits to the customer when the features are adopted. This is to be done based on customer’s business metrics (CTQ) and the expected cost savings, increase of revenue, reduction of effort, space or speed up of business such as quick delivery
4.       Compute the fixed benefits as well as recurring benefits based on the analysis
5.       Compare the with fixed and recurring investments made by the customer
6.       The cost is not just licenses or the service costs of implementation / upgrade. They include:
a.       Purchase of Infra such as Hardware, upgrades of OS, Database, additional disk space etc
b.      Any Network costs or upgrade costs
c.       Recurring costs such as hiring new staff for maintenance. Examples are like Administrators, DBAs, Domain specialists
d.      The cost of business leaders involving in the Implementation / upgrade and the opportunity loss due to their reduced involvement in the Business
e.      Others
7.       Submit the substantial benefits in numbers to justify the upgrade / implementation
Approach 2;
1.       If you cant justify what is the business benefit by having new or upgraded version, analyze on the basis what we don’t get when you continue the same way
2.       For each additional feature look at what you cant do with the existing implementation
3.       Compute the loss in terms of time, cost savings, revenue increase, Productivity gains etc
4.       Present your analysis
I got some idea on what I need to do.
I also realized I cant just copy paste my proposal defense based on what my product ./ services are offered. I need to map to specific business requirements and make more value adding proposal.
Thanks a lot Bholerao.