Online software is increasingly becoming the preferred option in regards to all manner of software applications including the enterprise market. It has many advantages over locally installed software including being able to scale well with the needs of any client and being apt to a very stable pricing structure. Software piracy is almost completely nullified as the source code resides on well-protected servers. With the recent advent and stabilization of cloud computing and storage technologies the significant majority of all substantial software packages of the foreseeable future are likely to be online based.
Otherwise known as SaaS (Software as a Service) or cloud software, the basic principle is web-based software residing on remote servers. The software can be available publicly, reside behind a paywall, or simply made available on a secure intranet. Typically a robust administration package is developed with the ability to provide incredibly granular user roles and privileges.
While in most cases the complexity of developing an online application greatly increases from that of a basic website the organizational attributes and development methodologies remain largely the same. We almost always use an agile development method in order to constantly refine the requirements documentation. The discovery and testing phases typically take a little longer in lieu of the added number of possible use-case scenarios.
Ultimately what we’re trying to achieve is providing not just the functionality required but also an intuitive user experience the client can smoothly integrate into their current production environment. This includes the client’s managerial hierarchy and approval processes.
When it comes to software development communication is king.