- software engineering
Feb
21
2008

Notes on IBM SOA Products

2 years, 0 months ago.

I found a list of IBM products related to SOA, and copied brief introductions to each product into the list. It’s for my own purposes, not meant to steal contents and attract traffic.

*All the following are quoted from Service Oriented Architecture — SOA and related product home pages.

There are four stages of SOA cycle: model, assemble, deploy and manage.

IBM SOA Foundation – Model Phase:

  • WebSphere Business Modeler
    IBM® WebSphere® Business Modeler V6.1 helps you fully visualize, understand, and document your business processes.
  • Rational Software Architect
    It leverages model-driven development with the UML for creating well-architected applications and services.

IBM SOA Foundation: – Assemble Phase:

  • WebSphere Integration Developer
    It is a common tool for building SOA-based integration solutions across WebSphere Process Server, WebSphere ESB, and WebSphere Adapters.
  • Rational Application Developer
    Helps Java™ developers rapidly design, develop, assemble, test, profile and deploy high quality Java/J2EE™, Portal, Web, Web services and SOA applications.
  • Lotus Domino Designer
    IBM® Lotus® Notes® and Domino® provide a high productivity application development environment that supports the rapid creation, modification and deployment of security-rich business applications.
  • WebSphere Portlet Factory
    WebSphere Portlet Factory software’s ease of use and advanced development features dramatically streamline the entire portlet and Web application development process.
  • Rational Tester for SOA Quality
    IBM Rational® Tester for SOA Quality is an automated web services testing and SOA testing tool.

IBM SOA Foundation – Deploy Phase:

  • WebSphere DataPower SOA Appliances
    IBM SOA appliances are purpose-built, easy-to-deploy network devices that simplify, help secure, and accelerate your XML and Web services deployments while extending your SOA infrastructure.
  • WebSphere Process Server
    IBM® WebSphere® Process Server is a high-performance business engine to help form processes to meet your business goals
  • WebSphere ESB
    An Enterprise Service Bus (ESB) is a flexible connectivity infrastructure for integrating applications and services.
  • WebSphere Message Broker
    It distributes information and data generated by business events in real time to people, applications, and devices throughout your extended enterprise and beyond.
  • WebSphere Adapters
    IBM® WebSphere® Adapters deliver generic technology and business application adapters with wizards that quickly and easily service enable legacy applications, ERP, HR, CRM, and supply chain systems.
  • WebSphere Portal
    IBM WebSphere Portal software provides a composite application or business mashup framework and the advanced tooling needed to build flexible, SOA-based solutions, as well as the unmatched scalability required by any size organization.
  • WebSphere Application Server
    It delivers the secure, scalable, resilient application infrastructure you need for a Service Oriented Architecture (SOA).
  • WebSphere Extended Deployment
    Through centralized workload management, application virtualization, and management of large data volumes WebSphere Extended Deployment delivers enhanced qualities of service.
  • IBM Information Server
    IBM Information Server is a revolutionary new data integration software platform from IBM that helps organizations derive more value from the complex, heterogeneous information spread across their systems.
  • WebSphere Business Services Fabric
    It provides more dynamic BPM capabilities to assemble and manage composite business applications and offers optional Industry Content Packs containing pre-built SOA assets.
  • WebSphere MQ
    It provides the reliable, proven messaging backbone for SOA connectivity, as the ubiquitous, multi-purpose data transport for your enterprise service bus (ESB).
  • Lotus Expeditor
    IBM® Lotus® Expeditor software is IBM’s universal desktop client integration framework. It assists developers in integrating a wide variety of client and server applications in business mashups – or composite applications – to optimize the information that your employees need to accelerate your business processes.
  • FileNet P8
    It addresses the most demanding compliance, content and process management needs for your entire organization.

IBM SOA Foundation – Manage Phase:

  • Tivoli Access Manager
    It manages growth and complexity, controls management costs, and addresses the difficulty of executing security policies across a wide range of Web and application resources.
  • Tivoli Composite Application Manager for SOA
    Identify the source of bottlenecks or failures and pinpoint services that use the most time or resources with this composite application management solution designed for SOA.
  • Tivoli Federated Identity Manager
    It spans companies or security domains to provide identities access to information and services without replicating identity and security administration at both companies.
  • Tivoli Provisioning Manager
    Built on a Service Oriented Architecture, it enhances usability for executing changes while keeping server and desktop software compliant.
  • WebSphere Business Monitor
    IBM WebSphere Business Monitor V6.1 offers comprehensive business activity monitoring of your business performance.
Feb
18
2008

A Preliminary Thought on SOA (and IBM)

2 years, 0 months ago.

SOA is intangible!

Besides Web2.0, SOA is probably the other hottest term many people phrase. Like “Web2.0″ being confused with Ajax at first, SOA was often confused with Web Services – at least I did. The confusions aren’t completely unreasonable. Both Ajax and Web Services were new “add-ons” to the existing technologies and made up the new “evolutionary” technologies. Therefore, it is natural to ask “What SOA/Web 2.0 is, beyond Web Service/Ajax?”. This question was hard to put one’s finger on when the term was first widely used.

Over time, the concepts and deeper meanings are summarized and elicited by people, usually industry leaders, to save the community from “ignorance” – using a term that they don’t even fully understand but to be cool or geeky. Now SOA is pretty well defined – Wikipedia page has been written and refined over and over, many SOA leaders (although I am not sure how to lead SOA yet) are delivering SOA solutions, and there have been SOA books and publications too. However, the concept is still quite constrained within large corporations. I don’t see it quoted very often outside of SOA specific web contents.

I found this SOA Practitioner’s Guide series (1, 2, 3) is a plain and specific introduction to what SOA is like.

SOA is fragile!

It seems that there are quite a bunch of “considerations” that one need to take care of when designing a system that takes advantages of SOA, somewhat like best practices. I came across with a post on TechCrunch today, which reported an outage of Amazon Web Services that many start-ups are relying on (because of low initial costs). Then one question pop up in my mind: “If the average uptime of individual web services is x, then a system combined with n parties would have only (x) ^ n < x uptime, since x is between 0 and 1. Of course this is the most primitive probability model, the worst case would be the sum of downtime of all web services, i.e. each party is down for a while and the outages don’t overlap. This chaining effect on availabilities of SOA systems can be catastrophic. A few start-up companies commented on the post and said that their system is down because of the outage and “there is nothing they could do”. However, a better designed system (with cautious architects) claimed that they were not affected by the 5-min downtime at all, thanks to their cache and fall-over mechanisms.

Now IBM

So I’ve learnt IBM is the leader of SOA during my internship, but I don’t understand what that means. It’s probably true. IBM has apparently been pushing the software best practices for several years. After I came back to school, the stuff I was taught in Software Engineering courses has become such a redundancy – wasn’t I doing these at work? I mean, it’s so rare to see things on text still being in practical use in the industry. So I figured IBM’s claim on SOA was probably true too. After finishing reading the SOA Practitioner’s Guide, I will check out IBM’s SOA page, a page that I’ve visited many times but couldn’t sort out where to start. LOL.

Feb
12
2007

ImagineCup 2007, more fun

3 years, 0 months ago.

So the game started on 21st, Jan, and that’s a little more than 3 weeks ago. Finally some more serious competitors joined last week. But check this out. The current first three leaders Schools line up so well and spell “TOP”. University of “TOP”. Lol….

(+ click below to enlarge)

Related Post : ImagineCup 2007, some fun

Jan
29
2007

ImagineCup 2007, some fun

3 years, 1 month ago.

It is hard to believe so far so few people joined the second qualifier, which makes this No.1 weigh much less. Perhaps all the attendees tried out in the first qualifier and no one cares about this one anymore, since they are in if they rank within 250 in any of the two qualifiers. For me, I missed the last one and so saved my energy to this round. Am I a bit too over-reactive? I hope not.

About the competition

Most of the problems were straightforward and there are a few bugs in the specifications, which some I managed to guess out, the others I didn’t. However, I captured the screen right away, instead of at a later time, because I will lose the rank quite soon due to the contest rules. When two persons’ final scores are equal, their ranks are determined by the order in which they submit solutions to the hardest problem. See that 75 point boy? He was busy thus he nailed down the hardest one on his first shot, then he sat back and could finish other things up. As long as he finishes all problems before the deadline of this round, he is the 1st. Ziyan is his name.

Woohooo

Why to join?

“It’s … our responsibilities and even professionalism …”

My intention to join this Software Development competition was actually not about any prizes, but take this chance to push myself to learn some .NET stuff, which is being referred to increasingly more popularly and somehow will be an essential skill for any Software Developers to have. Well, learning a new language should be a simple task for Computer Science students, right? It’s not about the OpenSource or ClosedSource technology debates, but our responsibilities and even professionalism require us to know the quite-well-known framework, concepts, and its advantages/disadvantages.

What’s next?

Second round would be harsh. First 24 people out of 300-500 students get in. I don’t doubt my problem solving skills, but it under a time frame. I probably won’t get rid of the thoughts like “O if I can’t solve this in five minutes, I am going to lose” in the middle of the contest. That’s why I don’t like any competition thing, first is I don’t like to see other people lose; then I don’t like to see myself lose either. It’s quite stressful as the two opposite ideas mix together, and take over controls back and forth. The result is that I couldn’t concentrate and most of the time, end up losing it. My philosophy is: if there is a chance that I will lose, even if it’s just a minimal one, in many cases I will just not bother to do it at the first place. To me it is the same as not watching a horror movie because I will feel really sad during the nights.