Scalability
Performance issues can be identified during the performance testing phase before we go live with our system. There are a number of tools and websites available to conduct performance tests as well as to identify bottlenecks. JMeter (http://jmeter.apache.org/) is a free and very capable performance testing tool. Monitoring tools such as New Relic (http://newrelic.com/) help us identify bottlenecks when we are conducting performance tests. These are just pointers. We will not cover how to conduct performance tests.
Even in cases where performance tests were conducted and response times met our expectations, the number of users might go up beyond our expectations over time. From a business perspective, it's definitely a good thing to happen. However, this might lead to increased application response times. Tracking the requests and responses from the browser all the way to the database might tell us that it's the database that is the bottleneck. This means that we have...