Wednesday, December 20, 2006

Activity-based Collaboration (a new issue of the IBM Systems Journal)

I used to spend many happy hours soaking up the fascinating contents of the IBM Systems Journal during my decades as a Systems Engineer at IBM. I sometimes even read selected articles (those I could comprehend) the more formidable IBM Journal of Research and Development. They were print-only publications in those days and it was a little hard for me to get my hands on some issues. How much easier it is these days, getting access to them via the Web!

The excellent trend continues ...


The December 2006 issue (Volume 45 no 4) is focused on Business Collaboration, which is the focus of the Workplace Portal and Collaborative (WPLC) software division. WPLC is responsible for all Lotus branded products as well as WebSphere Portal. A common theme in several papers in this issue is activity-based collaboration, which is an important research focus for continued development. You can learn more about activity-based collaboration in this exciting issue of the IBM Systems Journal:

http://www.research.ibm.com/journal/sj45-4.html

Nine papers of this issue deal with business collaboration, and they cover activity-centered collaboration with customers, the use of patterns for capturing best practices, tools for supporting activity-based collaboration, user studies, and collaboration-related analytics and visualization. A tenth, non-topical paper deals with the use of ontology in the development of software architectures.



It's a sobering thought that the Systems Journal goes back to 1957. Hey, that was well before Microsoft appeared on the scene, and my final high school year!

Since I went on to major in Chemistry at university, perhaps (if I had known about the Journal in those days) I'd have found the very first article of some interest: Domain Orientation in Barium Titanate Single Crystals ("An acid etching technique makes visible the domain structure of barium titanate crystals as reported by Hooton and Merz. Earlier observations by Merz of the mechanism of switching are confirmed by experiments using this technique. A discussion of domain wall formation in the orthorhombic state leads to the explanation of observed domain patterns. Photomicrographs are shown and discussed.") -- then again, perhaps not.

ASIDE:
Everyone regards Microsoft to be the "biggest software maker", which might be true in terms of licenses and revenue, but by no means so in terms of software/hardware/research/consulting history and variety. IBM has been developing systems software since 1964 at the very least, that being the year of that the System/360 architecture was announced. And its successor, the System/370 was announced in 1970 (the year that I joined IBM), the first widely-adopted virtual system. But such tales and the argument about "who's biggest" is better left for another time.

A fog-shrouded Vista?

The question going through many peoples' minds at the moment is when to upgrade from Windows 2000 or XP to Windows Vista. There's much opportunity for Sturm und Drang here!

Certainly there are lots of goodies in Vista. But my own approach will be to keep using Windows XP Professional as my production system long enough (which could be quite a few some months) for all those third-party software developers out there to update their products to operate under Vista. Meanwhile, I'll be happy enough to run Vista as a secondary non-production system underneath Microsoft Virtual PC (or similar) and go through the painful learning stages without threatening my income-generating production work.

I suspect that some of the lesser players will take a long time to master some of the more esoteric differences in Vista, and some of them will not be up to the task (so I suspect that that some of my favorite tools may never become available in Vista-compatible versions).

You only have to look at Java Software on Vista - Yes, it works to see all the sorts of things that Sun Microsystems had to do to get Java functioning properly under Vista:
People have been wondering lately: How does Java software work on Windows Vista? The short answer is: Java software works great on Vista. In fact, the entire Sun engineering team working on Java Platform Standard Edition has been tuned into Vista and making Java software work on it since it was named after a breed of cattle. ...

Windows Vista is not just XP++; there are fundamentally new things about the system that makes older software break. Is all software broken? Probably not. But the more of the system an application uses, the more likely it is to run into issues in which the system has changed. In our case, Java software is not just a simple Win32 GUI application; it's a runtime platform with deep-rooted needs in the operating system, the networking stack, the security model, the graphics system, etc. If any of these subsystems change significantly, we need to adjust our software accordingly. In the case of Vista, it has been an ongoing process of learning, testing, debugging, filing bugs with Microsoft, fixing our bugs, and repeating the whole process. Since Vista has been a moving platform during the Java Platform Standard Edition 6 (Java SE 6) development process, we have been in an ongoing cycle with every new drop of Vista.
When a major player like Sun has had to do so much intricate software engineering work, I shudder to think what some of the minor players will come up with!

Web Services, Specifications, and Interoperability

Keeping up with the goings-on in the IT industry is a big challenge. Here's a short but informative article that might help you:

Web Services, WS-* Specifications, and Interoperability

"Interoperability is an important factor in the success of solutions that are based on Web Services and Service Oriented Architecture (SOA), along with other key factors such as contracts, loose coupling, and reuse.

Interoperability is generally accomplished by developing your Web Services using the well-established guidelines for implementing Web services and by following industry standards such as XML, WSDL, SOAP, and UDDI. However, just following Web Services standards and guidelines during the development phase of a project isn't sufficient to achieve interoperability.

As the Web Services industry evolves, it embraces new specifications like WS-Security, WS-ReliableMessaging (WS-RM), and WS-AtomicTransactions (WS-AT) to provide advanced functionalities such as security, reliability, and transactions that are not provided by the basic specifications. These specifications are generally referred to as the WS-* (pronounced WS-Star) specifications. As they are relatively new and have not been so widely agreed on by the industry, achieving interoperability between Web Services that use WS-* specifications is much more difficult and the WS-* specifications may not even be supported in many products."

This SYS-CON SOA Web Services Journal article by Sanjay Narang "provides a set of guidelines and best practices that you can follow to accomplish interoperability when developing web services that make use of the WS-* specifications across products provided by different vendors. It also provides insight into the Web Services specifications situation that contains a large number of WS-* specifications that are being developed by different groups."

Microsoft to get the VAPORs in 2007?

Read this JDJ article to find out:
Where's i-Technology Headed in 2007?

Saturday, December 16, 2006

SOA means Business!

One of the major trends in IT these days is, as you would probably be aware, that of SOA ... Service-Oriented Architecture

I'm certainly no expert in this field, just an interested observer. Keeping my eyes open, yesterday I came across two interesting insights into the business aspects of SOA.
- - - - - - - - -

Firstly, in a recent survey by GCR Custom Research (sponsored by BEA Systems) over 150 SOA decision-makers and influencers across North America and Europe were asked to give their input on SOA costs, and benefits. Below are some of the key findings:


  • The CIO is the main SOA sponsor and business-case approver
  • IT cost savings are the main driver of SOA adoption in Europe, while North America’s focus is on business agility
  • 22 percent of SOA funding comes from SOA money, while 59 percent?comes from business-solution money
  • Almost 40 percent of SOA projects are impeded due to difficulty with financial justification
  • The most significant cost in the business case is for software infrastructure
Secondly, at the CBDI Service Oriented Practice Portal there's an article by David Sprott titled Explaining SOA to the Business Audience where he makes the point (amongst other things) that:
Much has been said about the way SOA can deliver agility and I continue to observe comments that suggest everything can change constantly in an SOA. Frankly this is dangerous nonsense. In a large enterprise change needs to be controlled both from a technical and business perspective in order to manage quality and regulatory compliance. But what SOA does give us is an enhanced ability to cleanly separate the things that do need to change from the things that don’t.

As an outside observer, it seems to me that far too many discussions of SOA focus on the technical side, but business considerations such as those covered in the above two references need always to be kept foremost.

Wednesday, December 06, 2006

Choosing the right server virtualization solution

I'm interested in too many things for my own good -- ah, what a dissipated person I am!

One of those things is system virtualization, and here I merely wish to point you towards a short and to=the-point four-part series of articles by Andrew Kutz, over at Techtarget's SearchServerVirtualization.com (you may have to carry out a free registration to view these and other Techtarget articles).
Just keep in mind that these articles were published early 2006, and new virtualization product versions and pricing are sure to have been announced since then. But the methodology used by Andrew to compare and contrast the various offerings is nice., and there's always new stiff being added to SearchServerVirtualization.com.

Tuesday, December 05, 2006

"Workplace" software -- from IBM, and from O3Spaces too!

I participated a week or two ago in an online survey being conducted on IBM's behalf. I remember that one of the questions was something like "What is your impression of the 'IBM Workplace' product name?"

I commented that the name was quite acceptable, except possibly down here in Australia where there's some contentious federal legislation about "Workplace relations" -- in general, the workers and particularly the trade unions don't like it at all. If you're interested, try a Google search such as http://www.google.com.au/search?hl=en&q=workplace+legislation&meta=cr%3DcountryAU and browse some of the items, such as Catholic Bishops call for changes to workplace legislation to get one point of view.

It surprised me a little to find that the name "Workplace" is used for another software product, and wonder what IBM thinks of it: take a look at O3Spaces - "The way to extend OpenOffice.org" which has as its opening paragraph:

O3Spaces technology enhances OpenOffice.org and StarOffice with an integrated solution for Collaboration, Document Management and Document Retention within teams and small businesses. O3Spaces provides the OpenOffice 2.0 and StarOffice user community with a professional out-of-the-box extension for team and project collaboration, O3Spaces means an affordable and integrated alternative for MS Office Sharepoint.
Pricing options are given at http://o3spaces.org/Page/sp6/nctrue/ where it states: "The O3Spaces Workplace software is licensed on a 'per user' basis in 5 user bundles for accounts from 5-100 users. From 100 users up, a per (virtual) cpu licensing model applies which is available on request. Base prices include a one year subscription for product updates, five direct support calls (3 day response), forum and wiki support."


It seems that the folks behind O3Spaces are going after Microsoft's Sharepoint marketplace ... that is, document-centric collaboration. Now, isn't this the playing field of IBM Lotus Notes/Domino and IBM Workplace? I wonder why I couldn't find any reference to either of them on the site. (The site search was in "coming soon" mode so I could have missed any such references.)

Would anyone care to comment or offer enlightenment?

A presentation on Architecture and Design

I just came across a nice presentation ... Architecture and Design by John Klein, guest lecture for COMP 180: Software Engineering, at Tufts University, Fall 2006.

It's only 24 pages, and well worth a look. A couple of cautionary quotations from it that tickled my fancy:
  • "Software architecture is the set of decisions which, if made incorrectly, may cause your project to be cancelled.” – Eoin Woods

  • (Under the heading "Reality Check") ... Conway’s Law – The structure of the system reflects the structure of the organization that builds it - “…[an] organization had eight people who were to produce a COBOL and an ALGOL compiler…five people were assigned to the COBOL job and three to the ALGOL job. The resulting COBOL compiler ran in five phases, the ALGOL compile ran in three.”

Friday, December 01, 2006

Good form is hard to come by (in America)!

I've been using the Internet since the early 1990s, and have subscribed for many Web sites and e-mail newsletters over the years.

One thing that really annoys me is poorly designed web forms. There are far too many of them. Why don't form designers put them selves into the mindset of those who will be filling? Is that too much to be asking for?

Apart from the horror of forms that lose all your carefully-entered information if you hit the Back button, which can be rather a programming challenge to handle appropriately (and a fundamental browser architecture shortcoming that needs to be resolved), it continues to disappoint and amaze me that even elementary usability faults still abound.

Simple things like:
  • Fields that are too short for the field contents to be visible with horizontal scrolling
  • Comment fields that are just a few rows in depth
  • Check boxes used where radio buttons should have been [for multiple-choice questions where only a single response is valid]
  • And a particular annoyance of mine -- form fields that handle North American postal and telephone values but do not cope with international values
  • I was reminded of this when today I came across a form that was designed quite well, and I'd like to pass on my compliments to Techtarget.com for the good form design! Having received an newsletter from them inviting me to subscribe to yet another nice service of theirs (SearchServerVirtualization.com).

    I decided to take up their offer, and launched the specified registration page: http://go.techtarget.com/r/786206/57192

    If you open it yourself, you will be able to view the source code and see what they've coded. In this discussion, I'm interested in the Member Profile section at the bottom of the form, the type of form that you would get for just about any registration, which looks like this:

(click to see a larger image)
My e-mail address was automatically placed into the form and I have deliberately obfuscated it.

I'd like to focus on on that part of the form which is surrounded by the green rectangle. It's here that very many web forms on other USA-centric web sites are deficient, and this is an excellent example of how to do it properly:
  • Selection of states, provinces, regions, zones outside the USA.
    Most us-designed web forms provide a selection list for US states and dependencies, but just have "Other" or "Non-US' or "Not in USA" for all other parts of the world. If I live in a country like Australia that has states, there's absolutely no excuse for them to be listed in the form, like this:
    (click to view a larger image)(As you can see, Techtarget.com also has the "other" option, anyway.)
  • Postal/zip codes should be catered for. Make sure that the field is long enough. Why not allows, say, twenty characters?(click to view a larger image)
    The Techtarget form also has a link labelled International Formatting Requirements that opens a separate window to provide some background guidance about the proper entry of postal codes and zip codes. On top of this, there are some examples (albeit for the USA and Canada only). In Australia we have four-digit postcodes, but I've used some forms that give an error message insisting on five digits (the minimum for US zip codes) so I've been forced to enter an unnecessary leading zero!

  • Telephone number formats vary quite a bit from country to country, so it's probably best/easiest to just have a single field (say, twenty characters long). But many US-designed forms have three separate fields that allow only for a 3-digit area code followed by the number broken onto a 3-digit field plus a 4-digit field.

    Such a filed layout is not good at all. Firstly, it makes no allowance for country dialling codes, such as +61 for Australia or +44 for the United Kingdom. Here I'm using the "+" convention for country code prefix, of which some people are ignorant and this presumably includes some insular web form designers! (Which is strange, since if you want to call an overseas number on your mobile/cell phone you need to use the "+" button to signify that the country code follows.)

    A further complication is that some countries -- Australia and the United Kingdom being two of them -- use a "0" (zero) prefix for long distance non-international calls. We have the situation where some people signify that this zero must be dropped for calling them internationally by enclosing the zero in parentheses. Therefore they would represent my office number as +61 (0) 3 9888 7772 which might be meaningful to them but can confuse anybody not familiar with this convention. My preference is to always omit the zero and hope that intra-country callers have enough nous to realize that they have to insert the zero if they're calling long distance. So, my recommendation for the entry of telephone numbers is s single text field of twenty characters (enabling me to enter my number simply and unambiguously as: +61 3 9888 7772).

    The Techtarget form has this:

    (click to view a larger image)At least the phone (and fax) field isn't broken into three separate areas, but it's too short to cater for some numbers -- why didn't they allow, say, twenty characters? But at least they give some examples, even if they're USA- and Canada-centric (no "+1" for country code). And they have that link labelled International Formatting Requirements that opens window giving additional guidance for the formatting of telephone numbers.
Enough said!

To sum up, my message to all web form designers is: There's absolutely no excuse to do it poorly. Use some of the above tips (including the sample Techtarget form) to improve your registration forms and bring them up to a standard that caters for international users and isn't that what the Web is all about? I feel that the worst offenders are Web form designers in North America, or that probably should be just the USA (apologies to fellow British Commonwealth members in Canada)!