Catalyst Conference 2008

Burton Group Podcast

Blog powered by TypePad


« July 2007 | Main | September 2007 »

August 2007

August 28, 2007

The iPhone Teleconference is Free and Open

Blogger: Richard Monson-Haefel

Richardmonsonhaefel

Update: You can now download Part 1 of the podcast here.  Part 2 will be published  later this week.

Last week I blogged about our telebriefing debate asking, "Is the iPhone is ready for the Enterprise?" That telecoference is today (Aug 28th) at 2 p.m. Eastern Time. I just found out that Burton Group has decided to make it open and freely accessible to anyone and everyone! Normally, telebriefings by Burton Group are exclusive to our clients. The URL to register is below. Please jump on and listen while we discuss the pros and cons of the iPhone.

Chick on Burton Group iPhone Debate

August 21, 2007

New REST Material Available

Blogger: Pete Lacey

I typically don't post over here on the APS blog.  Usually you'll find me over at Non-Intersecting, my personal blog.  However, today I'm cross-posting the news that Burton Group is making the slides from my Catalyst REST Workshop available.

While REST was first described back in 2000, it's only in the last year and a half or so that the concept has made it onto the radar of most enterprise developers and architects.  And in recent months the momentum behind REST has increased dramatically; with beta-product announcements from Microsoft and IBM, API development in the JCP, a wealth of projects from the open source community, a new book from O'Reilly, and the unrelenting voices of the blogosphere.

But still, to many developers and architects REST is only partially understood, if at all.  Until recently, with the publication of the "RESTful Web Services" book, it was not easy to find all of the information and best practices surrounding REST in one place.  It was in this light that Burton Group gave the go ahead for me to create and deliver a REST Workshop for Catalyst 2007.  And it's in this light that we're making the (ahem) number one rated workshop available here--for free!  That's cool.

In addition, I've created a "Take 5" introductory presentation on REST.  This is a PowerPoint show with audio that you can download and listen to over coffee.  It's currently being served as a .ppt, so make sure you go into slide show mode.  Oh, and it's really 15 minutes, not 5.

The workshop itself is just a raw PowerPoint deck (though it's 93 slides).  It provides a concise summary of what REST is, how to use it to build distributed systems, and how it compares to SOAP/WS-*.  Of course, paging through a PPT deck is not going to make you a REST expert.  But if you know nothing about REST, this is a great place to start.  And if you're REST-knowledgeable, then this will provide you with the raw material to present RESTful ideas to your colleagues.

The original workshop, of course, came with me to provide the details and field questions.  It also came with a large chunk of running code which I used to demonstrate the concepts discussed.  For obvious reasons, the former has been left out.  I've also decided to excise the code from this material.  However, if you want the whole shebang presented to your organization, I'd be happy to do that.  Le me know.

Burton Group believes that REST represents an important development in the industry, and we're happy to make this material available.  We hope to provide more in-depth coverage in the future.

Is the iPhone ready for the Enterprise?

Blogger: Richard Monson-Haefel

Richardmonsonhaefel

Next Tuesday and Wednesday (August 28th and 29th) Burton Group will be hosting a telebriefing that asks the question, “Is the iPhone ready for the Enterprise?”  This has been a topic of serious and sometimes not-so-serious debate among Burton Group analysts since before the iPhone was released. In the weeks since the device’s release I’ve been amazed by the differences in opinions and the well defended analysis on the subject by analysts throughout Burton Group.

The question of the iPhone’s utility and fitness for the Enterprise is an important one because it helps us determine what kinds of devices are fit for enterprise use and which ones are not. In addition, it’s a fun debate among iPhone enthusiasts such as myself and its detractors.  The telebriefing next week promises to provide both perspectives and not just from yours truly.  In what may be a first for Burton Group we have created a panel of Analysts to answer the iPhone question from various services including Application Platform Strategies (that’s me), Security and Risk Management Strategies (Diana Kelley), Networking (Dave Passmore), and IdPS (Bob Blakley).  The panel discussion will be lead and moderated by our very own CEO, Jamie Lewis who has his own interesting perspective on the iPhone.  A couple of the panelists, at my request, have already posted opinions on the iPhone in the enterprise. Diana Kelley has an excellent post from the perspective of SRMS as does Eric Maiwald.  Bob Blakley – a self professed advocated of the iPhone in the enterprise – has also posted a very intersting blog entry on the subject. I look forward to seeing blog entries from other Burton Group analysts as we all seem to have slightly different opinions on the subject.

My position is mixed. I use my iPhone constantly to check e-mail, peruse the web, and yes to watch YouTube!  But more importantly I use the device to access Web applications while away from my desk. For example, Burton Group uses Outlook and provides a Web client for Outlook Web Access. I frequently go this interface on my iPhone to check e-mail and my calendar – The experience is surprisingly good thanks to the iPhone’s ability to show web pages in their full splendor and to zoom in on specific areas of a page. I’ve also used iPhone to gather information form SalesForce.com.  However, while the iPhone does a fine job with existing web applications its real potential is in applications developed specifically for the iPhone. 

Today there are hundreds of applications that have been developed for the iPhone most of which focus on the mass consumer audience. A couple of my favorites right now include the iPhone interface to Facebook.com, which is excellent, the Gass.app which shows me the lowest gass prices a given zipcode (I drive a Suburban which gets 13.7 mpg on a good day, so this is a critical application for me), and Movie.app an application that lets me see movie times and locations (there are a lot of good movies out right now).  All of these applications are designed specifically for the iPhone Safari web browser so that the user experience is simply excellent – far exceeding other mobile applications I’ve used. Why are these web-based interfaces so great? Because they are very lightweight and elegant.

Today the number of enterprise applications you can use with iPhone is small but it’s growing.  For example, Funambol offers an iPhone interface to Outlook that promises to be pretty good – I haven’t used it yet but hope to get invited to the private beta soon.  Another example is LiveTime, which is an application that provides service support interface for field technicians. It’s likely that the iPhone will gain some usage in the Enterprise especially when developers can create iPhone-specific interfaces to existing services or when using software as a service. For example, I don’t think it will be long before someone offers an iPhone interface to SalesForce.com.

The real sweet spot for commercial iPhone applications in the enterprise will be software as a service. As software as a service becomes more common vendors of such products will likely offer mobile phone interfaces to web applications and the iPhone, which provides the nicest mobile web surfing experience, will clearly be a primary target platform for mobile interfaces.

The iPhone does have drawbacks as a terminal for interacting with enterprise applications (applications is my focus. I’ll leave security, networking, and collaboration to the experts in those fields) it lacks persistent storage for both data and applications. As a result, every time you have to access an iPhone web application you load it from scratch. That can be a pain when working over the EDGE network with applications that are not properly designed for the iPhone.  I find this far less of a problem, however, when working with applications (i.e. Gass.app and iPhone Facebook) that are specifically designed for the iPhone.  Another problem with the iPhone applications is poor integration with the device itself so you cannot write applications that access Bluetooth or PIM application directly.  This is seen as a limitation but it’s typical of web-browser-based applications which have very limited access to the device’s operating system.

In general I think the iPhone has enormous potential for the enterprise but as its stands now it’s a bit early in the adoption curve. Apple needs to release a more capable device with a resident development platform to complement the web interface. In addition, security concerns such as device management need to be addressed.

Tune in next week for the iPhone telebriefing to hear a lot more from me on the subject as well as other analysts from Burton Group.

August 16, 2007

Looking for a nice IDE for Ajax development?

Blogger: Richard Monson-Haefel

Richardmonsonhaefel

One of the problems with Ajax, from an enterprise perspective, is the dearth of decent IDEs that developers can use. There are probably close to 200 Ajax frameworks now, most of which have little or no following or are dead, but very few Ajax frameworks come with a decent IDE – they are mostly APIs and command line tools.

Backbase has been offering a very nice development environment for Ajax for a while now – even before the Ajax term was coined – so I was happy to see them offer a free version of the commercial product with unlimited seats on a 2-CPU license. They have also launched a community web site, Backbase Developer Network, that looks promising.

There are other good Ajax IDEs out there besides Backbase. I like Nexaweb’s offering in this space as well and JackBe’s. Of course Microsoft is integrating Ajax development plug-in to Visual Studio. Here is a list of IDEs from AjaxPatterns.org (a good resource).

August 15, 2007

What are Widgets and Gadgets?

Blogger: Richard Monson-Haefel

Richardmonsonhaefel

In case you haven’t noticed, there have been a lot of new software start-ups and initiatives by major software vendors around the concept of widgets and gadgets. A widget is a small GUI application (both visually and computationally) that provides information on, or an interface to, a very restricted set of functionality or data.

In many ways a widget is analogous to a gage on the dashboard of your car. Just as automobile gages provides information about a single aspect of your automobile (tachometer, speedometer, oil level, gas level), software widgets provide information on a single aspect your personal, public, or enterprise data.

Here is the definition I use for software widgets and gadgets:

A small footprint application that provides relevant on-demand, personalized, encapsulated information from a predetermined data source.

Widgets and gadgets (which I’ll call collectively widgets) got their start in the computing industry back in 1984 when Apple Computer released Apple Desktop Accessories as shown in figure 1.

Appledesktopaccessories

Microsoft followed suite with their own calculator and clock widgets, but really Apple Desktop Accessories were the first set of software widgets available for mass consumers. These widgets were essentially applications you used to perform minor functions (i.e. calculator).

In 1996 PointCast introduced another pre-cursor to today’s widgets – a set of small applications that provide information from a specific data set in what was called “push technology” (see Figure 2). PointCast went away but the idea that widgets could provide information or an interface to applications whose data is accessed remotely was important.

Pointcast

Also in 1996 and about the time that Microsoft released its first real widget product, Active Desktop, Bill Gates said the following (which may have been somewhat self-serving at the time but is also prophetic).

“the future of computing will revolve around" these small, Internet-connected applications that would live on the desktop, "blurring the distinction" between individual PCs and network and Internet servers.”
Dow Jones International News, Quoting Bill Gates, 1996

Widgets as we know them today and as defined in the definition provided at the start of this article were fully manifested for the first time by a product called Konfabulator (figure 3) for Mac OS X in 2002. Konfabultor was acquired by Yahoo! and became the foundation for Yahoo! Widgets.

Konfab

Today there are several widget products to choose from all of which promise a dashboard like experience for mass consumers. You can divide widget products into three categories: Desktop Widgets, Web Widgets, and Mobile Widgets.

List 1: Widget Products
Desktop Widgets Engines
• Apple Desktop Widgets
• Yahoo! Widget Engine
• Microsoft Gadgets
• Google Desktop
• KlipFolio Klips
• Opera Widgets
• SpringWidgets

Web Widgets
• Google AdSense
• Flickr
• YouTube
• SnapShots
• LineBuzz
• ClustrMaps
• Microsoft Gadgets

Mobile Widgets
• Openwave Mobile Widgets
• Opera Platform
• S60 Web Run-Time

There are at least seven widget products (see List 1) for the desktop and more are being introduced every quarter. The objective for most of these widget products is to provide services to mass consumers but there is also a growing interest in widgets for enterprise consumers. This would make sense for both tacit workers and developers. For example, developers can use widgets to monitor CVS check-ins or transform binary to Hex. Tacit workers such as sales people might have a widget to monitor updates to client records (Salesforce.com widgets?) or merchandisers might use widgets monitor sales at brick and mortar stores.

Each widget product has its own “widget engine” which is essentially a runtime application that provides a framework for developing, storing, displaying, and updating widgets. Google Gadgets, Yahoo! Widgets, and Microsoft Gadgets are all widget engines. Desktop widget engines are in fact “fat clients” that you install on your desktop – making each widget a “little fat client”. Mobile widget engines are resident applications on the mobile phone. Web widgets also have an engine, but it’s remote. For most web widgets whether its Google Adsense or SnapShots – there is a server application that makes the data you are interested in available.

Ideally you should be able to develop a widget for one engine, say Google Gadgets, and have it work with all the other engines (Yahoo! Widgets, Apple Desktop Widgets, SpringWidgets, etc.), but that’s not the case and it probably will not be for a long time. The impetus beyond creating widget engines (beyond advertising revenue) in the first place is the potential for creating a widget market place where the widget engine vendor acts as the middle man between those creating widgets and those purchasing widgets. Making widgets portable across desktops removes the ability for widget engines to differentiate. Without differentiation there is no reason to choose one widget engine over another.

In the future it seems likely, IMO, that the open source community will develop a widget engine that will initially fail to capture people’s imagination but will eventually become THE platform for mass consumer widgets. The enterprise may also adopt the same open source engine, but that will take more time. For a while, vendors that provide enterprise, communication, collaboration, and content (e.g. Microsoft and Adobe) will dominate the enterprise landscape for widgets.

The fast growing widget industry is really a good thing for consumers. Widgets are lightweight and powerful providing you exactly the information you need and nothing more. Personally, I enjoy using widgets and find them most useful on my iPhone where built in widgets such as YouTube!, Weather, Stocks and Maps have become invaluable.

(Btw - I’m pretty sure that Apple has a plan for a widget engine for the iPhone that will enable third parities to create and sell widgets through iTunes – an idea that was proposed in a conversation among Burton Group analysts. Keep your eyes pealed for that – Ajax is not that last word on widgets for the iPhone.)

August 14, 2007

EA won't go away

Blogger: Lyn Robison

Lynrobison

I've been doing some thinking about our clients' mixed success in implementing Enterprise Architecture programs. Some companies do EA well, some are not doing it well, and a few have given up and are no longer doing EA at all.

The reality is that it is EA is compulsory for large enterprises. EA is a vital IT function, but is hard to do.

There is a cost to not doing EA, or not doing EA right. Every large enterprise that has an ineffective EA program and every large enterprise that says, "Oh well, EA doesn't work so we aren't going to do it" pays a significant cost for that dysfunction.

Relative to their competitors, companies that make EA work:

  • Have higher profitability
  • Experience a faster time to market for products
  • Get more value from their IT investments
  • Have better access to shared customer data
  • Have lower risk of mission-critical systems failures
  • Have higher senior management satisfaction with IT
  • Have lower IT costs

Companies that don't do EA or that can't make EA work:

  • Fritter away their technology investments on local projects that don’t support the enterprise’s objectives
  • Try to cut waste from their IT budgets but cannot figure out how to increase the value they get from IT

(The source for this information is a survey conducted by the authors of a book from the Harvard Business School Press.)

EA is hard to do, but finding ways to make it work is vital. I have been advising our clients to make sure their EA program is doing more than merely producing artifacts that will end up in a binder on a shelf somewhere. An EA program needs to be spearheading enterprise-wide IT initiatives, such as application portfolio management, SOA governance, and identity management, that provide demonstrable value to the enterprise. Those enterprise-wide IT initiatives (on which you can find an abundance of guidance from Burton Group) should be leading the enterprise to the desired future state.

August 08, 2007

What is a service?

Blogger: Chris Haddad

Chrishaddad

A client is creating an inventory of possible services, and they asked us a simple question; “What is a Service?   A few quotable passages were found in Burton Group research documents:

"SOA is a design discipline that focuses on implemented shared functionality as reusable services. A core SOA principle is to maintain a clean separation of concerns between the services that implement shared functionality and the applications that consume them. This design approach enables any type of application to consume the service. It hides implementation details from the consuming applications, and therefore enables more flexibility and adaptability in the systems. “

Source: VantagePoint 2007–2008: Build for Today, Architect for Tomorrow.

“Data services can provide well-defined programmatic interfaces to any type of enterprise data source. The purpose of data services is not to reuse or extend existing application logic. They do not perform workflow, process automation, or orchestration. Instead, data services operate on data and their purpose is to provide information.”

Source: Lyn’s upcoming report, Data Services: Data Access in Service-Oriented Architecture.

“The core unit of design in SOA is a shared, reusable service that implements a discrete piece of functionality. The service exposes its functionality through a well-defined interface. Any application that requires the functionality uses the service. A single service may be used in multiple applications.”

Source: Service-Oriented Architecture: Developing the Enterprise Roadmap.

But even with these great sound bites describing services, their relationship to SOA, and best practice design patterns, I realize teams can get lost when attempting to identify service candidates for an inventory project. It is useful to first categorize services according to the level of interaction and purpose:

  • Infrastructure services: Externalizes common application platform functions such as security, reliability, integrity, systems management
  • Integration services: Point-to-Point EAI or messaging connections between applications that are not re-used. These services can form the basis of true service oriented services
  • Primitive services: Services exposing datasets or business domain entities (processes, services methods, schema classes)
    • Data Services: Services providing a well-defined programmatic interface to any type of enterprise data source.
  • Business application services: Services describing business process fragments
  • Composite services: Services fulfilling an end-to-end business process contract

An inventory project may review data models to identify data service candidates, assess business capabilities to establish composite and business application services, or de-compose security and platform capabilities to recognize possible infrastructure services. The most viable service candidates have the widest possible scope of re-use, are subject to frequent modifications, and hide complexity.

During consulting engagements, we assist clients in building service metadata and policy frameworks that provide the scaffolding required to identify, classify, and describe service candidates.  Services metadata is the design and development time information used to describe a service. Services policies are used to map metadata to deployed service instances and endpoints. Metadata can span the following concerns:

  • Service Overview (e.g. name, description)   
  • Lifecycle Attributes (e.g. version, version relationships, lifecycle status)
  • Classification (e.g. basic, composite, infrastructure, business)
  • Endpoint Deployment Attributes (e.g. protocols, location, WS-* specifications)
  • Data Model (e.g. XML Schema, WSDL, version, semantics, validation)
  • Service Level Requirements and Policies (e.g. availability, capacity, responsiveness, security, transaction rate)
  • Mediation (e.g. routing, queuing, caching, transformation)
  • Service Dependency Attributes (e.g. services, databases, directories, frameworks)   
  • Physical Instance Dependencies (e.g. application platform, security, management)
  • Business Process Model (e.g. UML diagram, business classification)
  • Contract information (e.g. consumers, providers, utilization)
  • Usage Guidelines (e.g. time of day, availability, # of users. throughput)
  • Accounting or remuneration options (e.g. pay per use, subscription, chargeback amount)

Metadata enables formal description of the service and promotes discovery and re-use by other teams.  Most organizations don’t start with a full inventory effort, but instead simplify the project's scope. They work towards describing a single candidate service that is core to the business, refining their metadata taxonomy, and gaining buy-in from solution teams on possible re-use.  What approach has worked for you?

August 01, 2007

Freedom and Responsibility at OSCON

Blogger: Joe Niski

Joeniski

Now that I've had a few days to rest up and catch up after attending OSCON 2007 (my first), I can digest the experience and test whether I'm still as inspired as I was last week.

One could describe OSCON as a really good developers' conference, with plenty of technical breadth and depth. But it definitely had a sense of espirit de corps that I haven't encountered elsewhere. For all the talk of the free/open source movement "growing up" (it has in a number of ways), and for the increasing involvement (some would say "encroachment") of enterprise ISVs in open source projects, there's still a healthy amount of honest idealistic motivation in the FOSS world. The idealism may be a bit tempered by experience, and it may have reached a pragmatic coexistence with the realities of doing business, but it's still palpable and still has a valuable influence on the state of software, the development profession, and the expanding use of computing by humanity.

Eben Moglen (founder of the Software Freedom Law Center and counsel to the Free Software Foundation in drafting the just-released GPL v.3) was more articulate than anyone else I've encountered in expressing the complex and dynamic tensions between freedom and commerce; between the rights of software developers, publishers and users; and between individualism and community.

Much was blogged last week about Moglen's spirited conversation with Tim O'Reilly during an all-day "executive briefing" session (here, here, and here, among other places). But Moglen's most insightful remarks were presented in a talk titled "More Than Licenses: The Legal Policy of the Free World in the Age of Web 2.0." Despite a healthy dose of what some might describe as "freedom-fighter rhetoric," Moglen's talk was a balanced assessment of the legal and political landscape, both inside and outside FOSS communities. He also waxed poetic about the larger accomplishments of the FOSS movement while exhorting the audience to continue maturing. What I appreciated most was his ability to place the FOSS movement and the development profession in a much larger context.

The text of his talk isn't available on the OSCON site, but I gleaned a few points and a couple of quotes. Here are minimally-edited excerpts from my notes (I typed furiously throughout the talk, and take responsibility for any inaccuracies):

The effects of community the and "network effect" in creating the Web 2.0 phenomenon were presaged beginning over 20 years ago by open source software projects. Today the FOSS community is stronger than ever; the FOSS development, distribution, and licensing model is well-enough established to be under no substantial legal or commercial threats. But it's not completely out of the woods - "..our problem is not with some failing monopolist; our problem is with the uncertain state of patent reform in this country (the USA)."

"We (FOSS communities) spend little money and earn little money - though we earn money for the companies around us - and we spend no money on lawsuits... The communities are working with an absence of friction that should be the envy of the industrialized world... our efforts are being used to benefit just about everyone around the world... we are the best example the world has to show of how the reduction of barbed wire can benefit business and society."

"...and yet many still characterize us/you as geeks who don't understand politics! ...we have to be aware that this is a political achievement... we should understand that we have built a republic, and what it means to keep it."

FOSS communities are examples of Emersonian meritocracy - rooted in the larger (Western) values of individual achievement, freedom to reinvent ourselves, and so forth - one's status depends on the answer to "what have you done?" This inevitably leans toward libertarianism, and emphasis on individual rights, which has an odd tension with the idea of community.

"Institutions of equalization" are essential as more capital/wealth moves into the FOSS republic - the most important of these is accessibility to each other, as exemplified by email (despite all its problems). For such a "peaceable republic", the OSS communities are notoriously undemocratic - no elections! The leadership of meritocracy needs to evolve to an elected leadership model. "...attach the people's power, collectively, to the people who lead them. ...to legitimize the leadership over time."