An app can:
* Run outside a normal browser
* Run whether the device is connected to the Internet or not
* Be launched in the same way a native device application is launched
At a minimum, an app is a website that can be installed on a mobile device or computer so that it looks to a user like a native application. You can distribute it
either on your own website or through an app store. Both can be built using open Web standards such as HTML5. You can control access to a Web app, so that only paid users can access it.
A site that is an app should be designed to work when the device is not on the Internet, or at least to fail gracefully. Building HTML5 Web runtime applications (as opposed to building sites that will always be visited from the Internet in a browser) requires some architectural additions to handle sites like sometimes connected, etc.