PARX: Entwicklungsmethodik

Methodik bei massgeschneiderten Lösungen

Kann Ihr Prozess oder Ihr Anliegen nicht durch die Standardfunktionen von Salesforce gelöst werden? Dann entwickeln wir gerne für Sie individuell eine Lösung auf Basis der Force.com Plattform.

Bei der Entwicklung auf der Force.com Plattform setzen wir konsequent auf den Workflow, der sich aus der klassischen Software-Entwicklung bewährt hat. Dabei wird die Applikation in einer eigenen Umgebung (Development Sandbox) entwickelt und anschliessend über eine Testumgebung (Test Sandbox) in die produktive Force.com Instanz verteilt.

Workflow: Entwicklung - Sandbox - Production

Programmiersprachen und Applikationsarchitektur

Der Zugriff von aussen auf die Plattform und die Applikation erfolgt über standardisierte REST oder SOAP Webservice Schnittstellen.

Bei Entwicklung auf der Force.com Plattform setzen wir auf allgemein bewährte «Best-Practice»-Ansätze. Dies beinhaltet u.a. ein konsequentes Umsetzen der zum de-facto-Standard gewordenen Model-View-Controller (MVC) Architektur. Die Benutzerscreens (Views) werden dabei durch sogenannte Visualforce Seiten bestehend aus HTML, Javascript und erweiterten HTML Komponenten (Tag-Library) umgesetzt. Benutzerinteraktionen werden durch die Controller-Komponenten ausgewertet und an die entsprechenden Klassen zur Ausführung der Geschäftslogik weitergeleitet. Weiter werden die aus der klassischen Software-Entwicklung bekannten Konventionen wie Namensgebung, Codeformatierungen oder Objektorientierung strikt eingehalten.

Geschäftslogik wird mit der Salesforce-eigenen Programmiersprache Apex umgesetzt. Diese streng typisierte, objektorientierte und Java-ähnliche Sprache erlaubt es einem Entwickler, beliebige Funktionen und Prozesse auf Basis der Force.com Plattform umzusetzen.

Testing

Die Entwicklung von Applikationen auf der Force.com Plattform fördert ein konsequent testgetriebenes Vorgehen. Um Programmcode von der Entwicklungssandbox auf die produktive Umgebung laden zu können, wird eine Abdeckung durch Unit-Tests von mindestens 75% gefordert.

Werkzeuge

Die Entwicklung auf der Force.com Plattform erfolgt typischerweise in einer auf Eclipse basierten integrierten Entwicklungsumgebung (IDE). Alternativ besteht die Möglichkeit, kleine Anpassungen direkt in einer webbasierten Umgebung zu entwickeln. Dabei wird eine Vielzahl von Tools zur Unterstützung bei der Fehlersuche sowie zur Überwachung der Laufzeitparameter zur Verfügung gestellt. Der Programmcode sowie die weiteren Salesforce Konfigurationen werden über ein Standard Versionierungstool wie z.B. GIT verwaltet.

Komponenten

Die Force.com Plattform ist von Grund auf komponentenbasiert. Dabei kann auf eine umfangreiche Standard-Komponentenbibliothek zugegriffen werden. Bei Bedarf ermöglicht die Plattform eine einfache Erstellung von eigenen, wiederverwendbaren Komponenten.

Benutzerfreundlichkeit

Die Usability Benutzerfreundlichkeit einer Anwendung soll Haupttreiber der Screengestaltung sein, deshalb schlagen wir eine Vorgehensweise vor, welche sich an den Benutzerbedürfnissen orientiert. Das 5-S-Phasenmodell von Jesse James Garrett stellt den Benutzer in den Mittelpunkt und erlaubt es, schrittweise eine auf Usability ausgerichtete Benutzerschnittstelle inklusive visuelle Gestaltung zu entwickeln.

Das 5-S-Phasenmodell:

  • Strategy: Inhaltsziele und Benutzerbedürfnisse werden erarbeitet, mittels Expertenevaluation aber auch durch Benutzerbefragungen
  • Scope: Beschrieb der Funktionalitäten der einzelnen Bereiche, Definition der Inhalts-Elemente
  • Structure: Definition des Interaktions-Designs und der Informationsarchitektur
  • Skeleton: Gestaltung von Interface, Navigation und Inhalten, erste User-Akzeptanz Tests mittels Prototyping
  • Surface: Grafische Umsetzung des Designs, Usability Tests

Ein einfacher Styleguide fasst die Resultate zusammen und garantiert die korrekte Umsetzung bei der Entwicklung der Funktionen. Die Farben und Gestaltungselemente werden im oben erwähnten Prozess erarbeitet und orientieren sich einerseits an den Bedürfnissen der Benutzer, andererseits aber auch an den Vorgaben des Kunden in Bezug auf Corporate Identity Guidelines. Die letzte Phase des oben erwähnten Modells beinhaltet Usability und User Acceptance Tests und schliesst den Screengestaltungsprozess ab. Bei Bedarf können für diesen Bereich auch zusätzliche Spezialisten hinzugezogen werden.