Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Fact that now a days everyone is moving to cloud due to ease in scalability, con

ID: 652030 • Letter: F

Question

Fact that now a days everyone is moving to cloud due to ease in scalability, configuration and maintenance.

But my question is should we develop all web application scalable event if it is not required? If an application is low budget with no such special requirements then why we should add efforts to make it support sclability?

There are many factors to consider while making application scalable. If client has no specific requirement, small application contains 3-4 modules, client budget is low and is using on premises servers.

To make application scalable, we have to make sure of session, IO files, caching etc...

Explanation / Answer

It is difficult to imagine a situation in which being scalable is not important enough to take into consideration when building a web application, however, I imagine it could happen. If you are making a web application in order to try out new technologies, it does not need to be "production ready." Likewise if you know that this is going to be a web application used by few that is not likely to grow, then scalability would be low on the list of priorities.

However, if the client did not explicitly specify, it could be because A) it is not important for the client or B) the client doesn't even know what "scalability" entails and thus didn't specify it.

In the case of A, no problems there. However, in the case of B, it should be your responsibility to verify if scalability is, in fact, an issue. Even though budget is low and you think it might be obvious enough, you should make it clear. Make it cost more, whatever you want, however at least both parties are at an agreement. If the client expects a web application that works just as well with 1 user as with a million users, it's not going to end well for him and ultimately for you as well.

There are some programming practices that improve scalability and have no serious downfalls, save for taking slightly longer to implement (caching common requests, reducing session data usage, database connection pooling). For these, I would encourage you to always take the longer route whether or not the client values scalability. This makes you a better programmer, and it helps you think in the mentality of always striving to write a better program. That's just my 10 cents though.