views:

85

answers:

3

What are the factors in deciding framework to choose ,technology for a web application .any architect please provide a guidance.

+2  A: 
  • requirements of the project
  • restrictions of the environment
  • time frame of the project
  • previous foundational code
  • current abilities of team
Mimisbrunnr
+4  A: 
  • Skill of the team
  • Familiarity with the similar frameworks
  • Power of the framework
  • Ease of development
  • Scope of the project. I mean what you need, or will need, what it offers, or not.
  • Community support, Books
Adeel Ansari
+1 for skillset
extraneon
+5  A: 

Target devices - If your application needs to run on mobile devices, then your application needs to be lightweight on the client side (not too much complex javascript, light DOM structures...)

Visibility - Should your application's content be indexed by search engines? If yes, then you have to remember that for example AJAX and Flash based solutions won't be indexed (workarounds exist).

Usability - If your application needs a high usability, then you should consider creating desktop like applications - in other words, a Rich Internet Application (RIA)

Security - No matter what you answer on the previous points, you have to remember security. Using client centric solutions (business logic written in client code (eg. javascript)) are a major security risk. Remember that I only talk about the security of the architecture. No framework will give you security for free, ultimately, the level of security is always up to the developers.

Kim L
@Thanks kim. does it also depend on the domain such as banking,telecom
Suresh S
No negative cast. But this is frivolous, yet inappropriate. Here the tag suggest Java, I don't know how you will make RIA using Java. Let me make it clear JavaFX is not Java, its a lot different actually. From where JavaScript come into play, OP never gave a single hint. It was clearly a Java web framework question, and you clearly neglected that part. But somehow you hit the nail on its head, because it seems OP asked question wrongly, but you answered it right. :)
Adeel Ansari
I believe the skillset of the team is at least as important as the other considerations. If you have a very secure framework but you handle the implementation wrong you still have not gained anything.
extraneon
@Adeel Ansari, sure you can make RIA with java, take a look at Vaadin or GWT. Granted, the actual client side code will be javascript, but from the developer's perspective, it's all java, which I think is what he wants.
Kim L
@extraneon - I totally agree, you never get security for free, no matter which framework you choose. I'll modify my post to reflect this.
Kim L
@Suresh, in those cases security, availability and reliability are important. All of which are mostly dependent on the frameworks maturity, the developers of your application and the environment where the application is deployed.
Kim L
@Kim you mean reliability as transactions.
Suresh S
@Suresh - http://en.wikipedia.org/wiki/Software_quality#Software_reliability
Kim L