Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Open Source adoption in a Mexicon Second tier Bank


Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Open Source adoption in a Mexicon Second tier Bank

  1. 1. Open source adoption in a Mexican second-tier Bank by Nelson Raimond IT Manager Sociedad Hipotecaria Federal
  2. 2. Introducing myself <ul><li>Self employed IT consultant for 8 years </li></ul><ul><ul><ul><ul><li>Client server, web and DWH projects for Insurance, Government, TV and Entertainment sectors </li></ul></ul></ul></ul><ul><li>7 years. National Savings Bank </li></ul><ul><ul><ul><ul><li>Implemented software platform for handling international remittances and disbursing subsidies for poverty diminishing </li></ul></ul></ul></ul><ul><li>2 years as IT manager. Federal Mortgage Society </li></ul><ul><ul><ul><ul><li>Middleware renewal, BPM suite awakening from slumber and open source demystifying </li></ul></ul></ul></ul>
  3. 3. Sociedad Hipotecaria Federal (Federal Mortgage Society) <ul><li>Mexican second-tier Bank </li></ul><ul><ul><ul><li>Do not serve the public directly. Rely on the assistance of financial brokers to make SHF resources available to people. Brokers are responsible for granting and managing loans, from opening to conclusion </li></ul></ul></ul><ul><li>Promotes the growth of the mortgage markets </li></ul><ul><ul><ul><li>Grants guarantees to build, acquire and improve of housing, preferentially for the lower-income bracket </li></ul></ul></ul>
  4. 4. Main products Long-term loans for acquisition Medium-term for rural housing acquisition Micro credits for housing improvement
  5. 5. Key values in SHF. Efficiency <ul><li>Done right the first time with minimal resources and meeting the expectations of our clients and stockholders </li></ul>
  6. 6. Key values in SHF. Innovation <ul><li>Encourage creativity to develop new processes, services and products or improving them </li></ul>
  7. 7. Key values in SHF. Teamwork <ul><li>Achieve goals with a spirit of cooperation and shared responsibility, encouraging systemic thinking and the integration of value chains </li></ul>
  8. 8. Main objectives to align IT with business <ul><li>Achieve efficiency and decrease TCO </li></ul><ul><ul><ul><ul><ul><li>Make more with less </li></ul></ul></ul></ul></ul><ul><li>Increase levels of service </li></ul><ul><ul><ul><ul><ul><li>Work faster. Keep your client happy </li></ul></ul></ul></ul></ul><ul><li>Standardize processes using tools and methodologies based on open standards and best practices </li></ul><ul><ul><ul><ul><ul><li>Don’t reinvent the wheel </li></ul></ul></ul></ul></ul>
  9. 9. Obj. #1 Make more with less <ul><li>Which were the urban legends in SHF related to proprietary software vendors in early 2010? </li></ul><ul><ul><li>They won’t let you down. The best performance ever </li></ul></ul><ul><ul><ul><ul><ul><li>Microsoft, Oracle, Sybase have best of breed technology, R+D and worldwide support </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Just get new boxes to avoid stepping on the corns </li></ul></ul></ul></ul></ul><ul><ul><li>The more expensive, the better </li></ul></ul><ul><ul><ul><ul><ul><li>Liabilities coverage are proportional to licensing and consultancy costs. Don’t repair in expenses </li></ul></ul></ul></ul></ul><ul><ul><li>They shield you from obsolescense. Won’t disappear </li></ul></ul>
  10. 10. But… <ul><li>Now servers are underutilized. Plenty of them. Management became complex </li></ul><ul><li>Obscure application integration. Lots of frameworks and worst practices </li></ul><ul><li>Older versions of RDBMS & AS </li></ul><ul><li>Have not asked for support </li></ul>
  11. 11. Obj. #2 Work faster. Keep your client happy <ul><li>To avoid underuse of proprietary technology, formal learning and getting certification is desirable </li></ul><ul><ul><ul><ul><li>“ In theory, there is no difference between theory and practice. But, in practice, there is.”- Snepscheut </li></ul></ul></ul></ul><ul><li>Hiring VAR consultants will speed up things. A high hour rate assures you will get pros </li></ul><ul><ul><ul><ul><li>How fast are results visible? </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Is our people getting their hands dirty? </li></ul></ul></ul></ul>
  12. 12. In practice <ul><li>Loss of control on how are things done. Everything but agile </li></ul><ul><li>Junior consultants (newbies that charge like pros) </li></ul><ul><li>No one questions the outsourcer skills or if they do right things </li></ul>
  13. 13. Obj. #3 Don’t reinvent the wheel <ul><li>Proprietary high-end technology should enforce us to adopt standards and best practices </li></ul><ul><ul><ul><ul><li>Instead of understanding the rationale behind those standards and best practices? </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Humans tend to apply the minimum effort law </li></ul></ul></ul></ul><ul><li>20% depends on technology the rest, on people </li></ul><ul><ul><ul><ul><li>“ Why to make it difficult if we can turn it impossible?” </li></ul></ul></ul></ul><ul><ul><ul><ul><li>“ Don’t leave it for tomorrow if you could do it the day after tomorrow” </li></ul></ul></ul></ul><ul><ul><ul><ul><li>“ It always been done this way” </li></ul></ul></ul></ul>
  14. 14. So far it seems we are doomed
  15. 15. Diagnosis <ul><li>Lots of paradigms . Fear of changing </li></ul><ul><li>Low level of reusability . Copy and paste seems to be an easier way of coding </li></ul><ul><li>Lots of services . Operations=services. All services must be WS. Everybody talks through the bus </li></ul><ul><li>Complexity . Systems integration and mediation is rocket science </li></ul><ul><li>Personnel avoids to get hands dirty </li></ul>
  16. 16. Prescription <ul><li>Break the proprietary software paradigm </li></ul><ul><li>Think about business processes instead of systems </li></ul><ul><li>Take advantage of being on the second-tier business: low volume of transactions, few customers, 5x12 instead of 7x24 </li></ul><ul><li>Reduce application integration complexity </li></ul><ul><li>Get rid of anti-patterns and code less </li></ul><ul><li>Let personnel be involved in the whole application life cycle </li></ul>
  17. 17. But where to start? <ul><li>“ Start with whatever is right in front of you” – Muhammad Yunus </li></ul><ul><li>First of all, your boss support </li></ul><ul><ul><ul><ul><li>Needs to belief on change </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Needs to break paradigms </li></ul></ul></ul></ul><ul><li>Begin from scratch </li></ul><ul><ul><ul><ul><li>One or two simple use cases </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Quick hits </li></ul></ul></ul></ul>
  18. 18. So what is the deal? <ul><li>Adopt a methodology </li></ul><ul><li>Assemble a squad team </li></ul><ul><li>Implement a lean middleware </li></ul><ul><li>Follow David Wheeler approach </li></ul><ul><ul><ul><li>Identify </li></ul></ul></ul><ul><ul><ul><li>Review </li></ul></ul></ul><ul><ul><ul><li>Compare </li></ul></ul></ul><ul><ul><ul><li>Analyze </li></ul></ul></ul><ul><li>Test drive and exploit the solution </li></ul>
  19. 19. Adopt a methodology That is simple: KISS for instance
  20. 20. Assemble a squad team Enthusiastic Shares values & principles High performance oriented Self-directed
  21. 21. Middleware eval. Step 1. Identify <ul><li>Many options: open source and proprietary </li></ul><ul><li>Proprietary software will take too long. Public bid is needed. Can’t be under evaluation for long time. Not an option now </li></ul><ul><li>OSS is at hand. Will enable internal capabilities without having to pay in advanced </li></ul><ul><li>Players found: Fuse, JBoss, Mule, OpenESB and WSO2 </li></ul>
  22. 22. Middleware eval. Step 2. Review <ul><li>Googled deeper and gather information: </li></ul><ul><ul><ul><li>Features </li></ul></ul></ul><ul><ul><ul><li>Community and Customers </li></ul></ul></ul><ul><ul><ul><li>Support and consultancy model </li></ul></ul></ul><ul><ul><ul><li>Documentation </li></ul></ul></ul><ul><ul><ul><li>Benchmarks </li></ul></ul></ul><ul><ul><ul><li>Pros, cons and FAQ’s </li></ul></ul></ul><ul><ul><ul><li>Embedded third party software </li></ul></ul></ul><ul><li>Reviewed “Open source SOA”. Davis, Jeff (2009) </li></ul><ul><li>Experienced customer service </li></ul>
  23. 23. Middleware eval. Step 3. Compare <ul><li>Fuse </li></ul><ul><ul><ul><ul><li>Asked for info but they did not reply </li></ul></ul></ul></ul><ul><li>JBoss </li></ul><ul><ul><ul><ul><li>Bounced me between US and LA support. After several weeks they asked me for project info: size, number and type of servers involved, number of architects and programmers </li></ul></ul></ul></ul><ul><li>Mule </li></ul><ul><ul><ul><ul><li>Tried community edition </li></ul></ul></ul></ul><ul><ul><ul><ul><li>More coding than configuring </li></ul></ul></ul></ul><ul><ul><ul><ul><li>If you want more need to pay for EE </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Asked for pricing but they did not reply </li></ul></ul></ul></ul>
  24. 24. Middleware eval. Step 3. Compare - cont’d <ul><li>OpenESB </li></ul><ul><ul><ul><ul><li>Received a demo from a SUN partner </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Too much coding </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Complex to model composite services </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Just ESB. JavaCAPS and Metro if want more </li></ul></ul></ul></ul><ul><li>WSO2 </li></ul><ul><ul><ul><ul><li>Lean </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Quick install </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Easy to learn </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Excellent customer service </li></ul></ul></ul></ul>
  25. 25. Middleware eval. Step 4. Analyze <ul><li>Decided to go with WSO2 </li></ul><ul><li>Took a glance to the samples </li></ul><ul><li>Started playing with WSO2 ESB for simple proxy and services implementation </li></ul><ul><li>Reviewed how main mediators work </li></ul><ul><li>Also reviewed WSAS and Mashup </li></ul><ul><ul><ul><ul><ul><li>Not very lucky with BPS </li></ul></ul></ul></ul></ul>
  26. 26. Test drive <ul><li>“ Rule #38: To think big, start small”–Alan Webber </li></ul><ul><li>Define standards </li></ul><ul><li>Maintain a base line </li></ul><ul><li>Start with simple services </li></ul>
  27. 27. Exploit the solution <ul><li>Spread the word </li></ul><ul><ul><ul><ul><li>Adhere to standards </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Train the trainers </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Get feedback and refine </li></ul></ul></ul></ul><ul><li>Continue improving </li></ul><ul><ul><ul><ul><li>Add more functionality </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Try the unused features </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Compose </li></ul></ul></ul></ul><ul><li>Do not go alone </li></ul><ul><ul><ul><ul><li>Prepare to be part of the community </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Get professional support </li></ul></ul></ul></ul>
  28. 28. Not everything is plain sailing. Another lessons learnt <ul><li>Good enough is good enough </li></ul><ul><ul><ul><ul><li>Could be better or nicer but, do you need it? </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Feel the force. If something goes complex, then there must be something wrong from its design </li></ul></ul></ul></ul><ul><li>Upgrade to new versions as soon as possible </li></ul><ul><ul><ul><ul><li>If it is too hard to upgrade, then something may be wrong </li></ul></ul></ul></ul><ul><li>Defining standards doesn’t mean that everybody is following them </li></ul><ul><ul><ul><ul><li>Naming conventions, fault handling, filing, coding style and how-to’s were the main issues </li></ul></ul></ul></ul>
  29. 29. &quot;We don't have mistakes here, we just have happy accidents”
  30. 30. Questions?