Process to identify and use an AJAX UI Toolkit
The selection of a toolkit library is based on:
1: Core Technology:
Typically the core technology for the application which will be Microsoft or Java. In most cases the core technology is driven by a much broader set of issues than just the presentation layer. If you already know what the core technology will be, put a stake in the ground to constrain your evaluation. We have seen very few teams be successful in delivering an application within the required scope and schedule requirements when the team had to change to an entirely new technology base.
2: "Rich Internet Behaviors" Required:
Identify and model the information collections within the application. The required behaviors are a function of the information collections that need to be supported within the application. For example, if the application was a payroll service the collections would include (but not be limited to) Employees, Pay Checks, Organizations, Payroll Transmittals, etc.
3: Define the functional design of the core view types via B&W paper-based wireframes:
Once a library is identified you'll want to design on paper an initial iteration consisting of the 5-8 key view types based on the most essential portion of the application. Almost all software applications regardless of technology and platform (including cellular phones and hand held devices) can be defined with 5-8 key view types. (Yes, BTW this isn't just a developer exercise. There is a need for a UI designer.)
4: Identify the AJAX toolkit(s) that deliver the required functionality:
This is like looking for the appliances you would like to have in your kitchen You are not trying to find the entire kitchen, just the key items of most significant complexity and value (i.e the stove, dish washer, microwave, refrigerator). We have created a Wiki that list the most common libraries to make that comparison easier.
5: Finalize the decision on UI Toolkit and Framework:
Evaluate the frameworks, licenses, support, coding style, additional custom code and components required to finalize decision on UI Toolkit and framework
6: Select the most effective IDE to work with.
7: Refine design of 5-8 core view types using final UI Toolkit.
8: Prototype key view types.
9: Validate views with users via web meetings.
10: Create specifications for remaining views.