During development on the Force.com platform we consistently use Workflow, which has proven itself in traditional software development. The application is developed in its own environment (Development Sandbox) and then distributed through a test environment (Test Sandbox) in the productive Force.com version.
External access to the platform and applications takes place via standard REST or SOAP web service interfaces.
Business logic is handled in Apex, Salesforce's own programming language. This strongly typed, object-oriented language similar to Java allows the developer to implement any functions or processes based on the Force.com platform.
The development of applications on the Force.com platform promotes a consistently test-driven approach. In order to be able to load program code from the development sandbox to the productive environment, unit tests covering at least 75% are required.
Development on the Force.com platform typically takes place in an integrated development environment (IDE) based on Eclipse. Alternatively, there is the facility to design small adaptations directly in a web-based environment. A wide variety of tools are provided to help in identifying errors and monitoring runtime parameters. The program code and the other Salesforce configurations are managed via a standard versioning tool such as GIT.
The Force.com platform is component-based from the ground upwards. An extensive standard component library is available in this context. If required, the platform allows simple creation of customised, reusable components.
Usability - the user-friendliness of an application - should be the main driver of the screen design, which is why we suggest an approach that focuses on user requirements. The 5-S phase model of Jesse James Garrett puts the user in the centre and makes it possible to design a user interface based on usability step by step, including visual design.
The 5-S phase model:
A simple style guide summarises the results and guarantees the right implementation in developing the functions. The colours and design elements are developed in the process described above and are based on the one hand on the needs of users, but on the other also on the specifications of the customer in relation to corporate identity guidelines. The final phase of the model described above includes usability and user acceptance tests and concludes the screen design process. Additional specialists can also be called on if necessary.