Hi WILL, In this email I have provided the difinitions for better understanding plus i have changed the response from yes/no to rating on the scale of 1-3, 1 means no support, 2 means partial support and 3 means full support.
On 2/2/06, Will Glass-Husain <[EMAIL PROTECTED]> wrote: > > didn't you already ask this and get a couple of answers? > > WILL > > ----- Original Message ----- > From: "Sohaib Akhtar" <[EMAIL PROTECTED]> > To: <[email protected]> > Sent: Wednesday, February 01, 2006 9:07 PM > Subject: Need Help : Comparison of open source Frameworks > > > Hi. I am doing research study on open source frameworks. One of its > requirements is to provide comparison analysis that which framework > support > which feature (These are the feature, which could be used for selection of > framework). Because I have not worked on these framework, so I need any of > you to help me out and please fill in the below matrix. You only have to > respond in scale of 1-3. > > 1 = No Support > 2 = Partial Support (Either through some 3rd party tool or little support) > 3 = Full Support > > You can only fill in the framework you have worked on. > > Thanks in Advance for your support. > > Comparison > > *Feature* > > *Struts* > > *Turbine* > > *Tapestry* > > *WebWork* > > *Velocity* > > *JSF* > > 1. Provide Designer/developer separation? > > 1. Can be Coupled easily with Organization Code? > > 1. Built-in Internationalization (I18N) Support? > > 1. Provide built-in Security framework? 1. Provide Validation and conversion support? > > 1. Can Manage Component State? > > 1. Support new Component's development? > > 1. Provide built-in Standard components? > > 1. Provide User documentation? > > 1. Provide Error handling support? > > 1. Built-in Testability? > > 1. Increase Developer productivity? > > 1. Have IDE/tool support? > > 1. Is easy to learn? > > 1. Is Extensible? > > 1. Free Licensing? > > 1. Which programming language is supported? > > 1. Support Integration with other technologies? > > > Appendix: > > *Features Definition* > > 1 Designer/developer separation This attribute will help us in identifying > the extent to which framework supports the separation of different roles > > > 2 Coupling Whenever choosing an application framework, it is important to > recognize that the framework might be outgrown. Regardless of the reason, > if there is a clear separation (loose coupling) of the framework's code > and > the organization's code, it will be a fairly painless migration from the > original framework to a new framework > > > 3 Internationalization (I18N) A web application framework must provide > support for internationalization to allow for web applications to be > localized because framework support for internationalization (I18N) can > save > a considerable amount of development time and effort in handling items > like > character encoding and addressing locale-specific requirements > > > 4 Security The framework selected should have support for your > organization's security infrastructure. However, the framework might also > provide additional security functionality that can be very useful to the > organization. > > > 5 Validation and conversion An essential feature of any web application > framework is strong support for validation. Type conversion is a closely > related task, in the sense that successful type conversion is often a > precondition to successful validation of an inputted value. > > > 6 Component state management Another important feature for any framework > is > how well it manages the state of the components. These days most of the > frameworks support the state management of component and it leads to less > development time and cost. > > > 7 Component development In spite of the variety of existing components > available, it probably won't be long before you find the need (or urge) to > create your own components. How successful, enjoyable and productive this > process is depends on the component development model of the framework > you're using. > > > 8 Standard components The standard components are the well documented, out > of the box components that you get for free. They are the components that > you can confidently expect to be ported to future versions of the > framework. > Most of the frameworks provide a set of standard components. By > restricting > yourself to using standard components, you can avoid vendor lock-in, > component compatibility issues and license costs. > > > 9 User documentation Reviewing documentation and sample applications will > probably reveal the framework architect's expectations and intentions as > to > how exceptions should be handled. > > > 10 Error handling The framework might favor or accommodate certain ways of > handling errors than other error-handling methods. For example, it might > be > more appropriate to pass exceptions up the hierarchy if the framework uses > declarative programming for handling errors rather than trying to handle > the > exception where it took place. > > > 11 Testability An increasingly important requirement for web applications > is > that they can be easily unit tested. The testability of an application > depends directly on how free your application code is from framework > specific dependencies. > > > 12 Developer productivity Frameworks are very productive compared to > traditional MVC frameworks largely because they allow you to write > applications with less code. How they measure up against each other also > depends on how efficiently this code can be created and modified, and how > easily and quickly errors can be detected and corrected. > > > 13 IDE/tool support Development tools such as IDE's are tremendous > time-savers for developers. Similarly, organizations tend to adopt and > have > the infrastructure in place for a particular Version Control Systems > (example, PVCS). A certain amount of testing of the framework and these > tools during a trial period might be necessary to make sure that they can > be > integrated. > > > 14 Ease of learning In the same way that powerful features and the promise > of greater productivity in the future will draw developers to a framework, > the perception that a framework is complex or hard to learn will put many > off. > > > 15 Extensibility The extensibility of a framework is how easily you can > replace or add to the parts of the framework that don't meet your needs, > without affecting other parts of the framework. > > > 16 Licensing Licensing of a framework is also very important aspect while > selecting a framework because open sources are not always available for > free, they have licensing costs. So one should consider the licensing > options before selecting any framework. > > > 17 Language requirement Frameworks tend to target a specific programming > language. If your organization has settled on a particular programming > language, the language and platform will be two of the major criteria in > determining what frameworks are available to you. > > > 18 Integration with other technologies When we talk about the open source > web frameworks then one should consider the availability of long list of > other open source technologies and a framework should be able to work > along > with those technologies e.g. hibernate. It could save lot of re-work and > cost. Moreover integration with Enterprise Java Beans, Web Services > Object/Relational tools, XML-RPC consumption and WAP/WML device/browser > support is very critical while deciding framework for an application. > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >
