Build, protect and deploy apps across any platform and mobile device
Leverage a complete UI toolbox for web, mobile and desktop development
Automate UI, load and performance testing for web, desktop and mobile
Rapidly develop, manage and deploy business apps, delivered as SaaS in the cloud
Build mobile apps for iOS, Android and Windows Phone
Optimize data integration with high-performance connectivity
Connect to any cloud or on-premise data source using a standard interface
Build engaging multi-channel web and digital experiences with intuitive web content management
Automate decision processes with a no-code business rules engine
...her bastard child.
I was once relaxing with some friends and was asked, "what's the one thing you do better than anyone else?" I thought for a minute, and answered "I'm stupid. Too stupid to give up. Long after normal people give up, I just can't let things go."
Last night, after two scratched and beat up DVD's refused to play in a new DVD player, I hooked my laptop up to my TV and played an on-demand movie from Netflix. It was pretty cool and I never would have done it had I not had the "misfortune" of getting two bum DVD's at the same time. (To give Netflix credit, it's the first, and second, time I ever had trouble in a couple of years of service.)
Six and a half hours after starting, I had successfully watched a 100 minute movie. I probably should have read a book.
SOA What? In reflecting on last evening... I realize that I could compare the evening's activities to an enterprise integration project. And, using the lessons learned perhaps make integration-life a bit easier in the future.
Reacting to a market situation (failed DVDs), I needed to rapidly implement a "business solution" - connect my laptop to my TV and watch a streaming movie.
Remarkably, reading ANY vendor material made this look easy. I was dealing with standards (1080p, S-video, DVI, HDMI, HTTP, WIFI, Browser) that were supported by all my products.
I was under the gun... spending my whole evening setting it up defeated the purpose. I wanted to watch a movie (and ironically, relax), not just muck with components. And, I have to admit, one of the voices in my head wanted me to test the new DVD player. After all, what's the likelihood of getting two bum DVDs at the same time when I've never even gotten one before - coincidental to installing a new player?
So, my project plan looked something like:
Well, I hacked something together. In the end, it worked - quite well, actually. But... I was missing a neat feature of my existing setup that optimized sound for dialogue. Every time there was a loud action scene, I jumped out off the couch (and out of my skin) to turn the volume down so I wouldn't bother the neighbors. Oh, and my wireless mouse left quite a bit to be desired as a remote control.
What's my point?
The vendor literature said "connect laptop to TV via standard DVI or S-Video cables."
Well, the integration challenges we face are pretty normal across the board. Even with well defined standards, the real killer is the complexity and the fact that the standards really operate in a vacuum relative to that complexity.
Standards solve problems with interoperability NOT integration.
Integration is about inserting new/changed functionality into a complex system of moving parts. Complexity is layered into our solutions, and increases over time. When things change, we're not sure what we'll break, only that we will break something. In my case, it was a benign volume control issue (though, my neighbors might disagree with how benign it was). It's important to understand where the complexity is... it's often not where you think. Andrew McAfee at HBS wrote a good article on the complexity of IT. (By the way, his blog is one of my favorites.) He says, and I agree, the complexity (that concerns us) is not in the systems themselves, it's in the relationships between systems.
Sure, if I had planned for this, I could have done it better. But, market dynamics often dictate otherwise. We can't anticipate everything. We can only plan for being surprised and refuse to give up no matter how much it hurts.
View all posts from david bressler on the Progress blog. Connect with us about all things application development and deployment, data integration and digital business.
Copyright © 2017, Progress Software Corporation and/or its subsidiaries or affiliates.
All Rights Reserved.
Progress, Telerik, and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries. See Trademarks or appropriate markings.