Anmelden

Typische Projekte

Softwareentwicklungsprojekte

  • Implementierung kundenneutraler Systemfunktionen
  • Implementierung kundenspezifischer Systemerweiterungen
  • Implementierung von Konnektoren zu Fremdsystemen oder -produkten
  • Implementierung von Portale auf CMS-Basis
  • Implementierung von Portale auf Basis des Anwendungs-Frameworks

Customizing-Projekte

  • Installation neuer Instanzen ECampus21/CELLstudio
  • Systemeinstellungen (Funktionsaktivierung und Konfiguration)
  • Bearbeitung Navigationsstrukturen und redaktioneller Inhalte
  • Erstellung von Reportvorlagen
  • Erstellung von Webtemplates

Aufgabengebiete der Anwendungsentwicklung

Die Neuentwicklung als auch Erweiterung von Softwareprodukten auf Basis des campus21 Framework setzt sich aus einer Reihe von Tätigkeiten zusammen, welche je nach Anforderung einer Entwicklung oder Erweiterung zum Tragen kommen können. Diese Aufgabegebiete lassen sich grob einteilen in:

Implementierung von Frontendkomponenten

Es existieren folgende grundlegende Muster zur Implementierung von Frontendkomponenten (HTML-Code zur Ausgabe und Eingabe von Daten):

  • scriptbasierter Seiteninhalt
  • klassenbasierter Seiteninhalt (CmsPage)
  • klassenbasierter Zelleninhalt (CmsCell)
  • Assistenten
  • Objektformulare
  • Suchformulare
  • Reitermodelle
  • Eingabeelement (WebControl)
  • Handler
  • Dynamische Grafiken

Spezifische Implementierung können oftmal mit verschiedenen Musteren vorgenommen werden. Es ist immer eine Aufgabe der Implementierungsspezifikation, die Komponenten und deren Muster für eine konkrete Entwicklungsaufgabe zu identifizieren, nachdem die Anforderungen der Entwicklungsaufgabe bekannt sind.

Innerhalb eines Portals können die verschiedenen Muster durchmischt werden, um die jeweiligen Vorteile zu nutzen. Weitere Informationen erhalten Sie unter Framework und Entwurfsmuster.

Implementierung von Geschäfts- und Datenzugriffsobjekten

Bei kundenspezifischen Erweiterungen des Datenmodells werden in der Regel Datenzugriffsbjekte benötigt. Datenzugriffsbjekte dienen dem Lesen und Speichern von Objekten aus bzw. in das Datenbanksystem, wobei die dazu nötigen SQL-Befehle durch die ORM-Funktion des Frameworks erzeugt werden und für die Anwendungslogik unsichtbar bleibt. Von Geschäftsobjekten wird dann gesprochen, wenn Datenzugriffsbjekte durch Transaktionen erweitert werden, welche SQL-Befehle auf des Objekt selbst als auch auf andere Objekte ausführen.

Implementierung von Datenmodellen

Die Implementierung von Datenmodellen basiert mit der NET-Technologie. Ein Datenmodell ist eine Assembly, die SQL-Strukturen definiert. Die Assembly kann verwendet werden, um die SQL-Strukturen automatisch zu erzeugen und bei Releasewechseln nachzuführen. Daneben erleichtern sie die Realisierung von verschiedenen Aufgaben zur Aufrechterhaltung und Wartung der Datenqualität.

  • Erzeugung und Aktualisierung der SQL-Strukturen (Tabellen, Sequenzen, Sichten, Typen, Funktionen, Contraints)
  • Archivierungsaufgaben
  • Konsistenzprüfungen

Weitere Informationen siehe Datenmodell - technologische Informationen.

Implementierung von NET-Komponenten

Neben den Datenmodellen existieren folgende weitere Anlässe zur Implementierung von NET-Komponenten:

  • Systemprozesse (wiederkehrend ablaufende Verarbeitungen, Verlagerung von Geschäftslogik aus PHP-Komponenten)
  • Konnektoren (Datenaustausch mit Fremdsystem)
  • Tools (eigenständige Kommandozeilen oder Windowsprogramme)
  • Webservices (Verlagerung von Geschäftslogik aus PHP-Komponenten)

Implementierung von Templates und Navigationsstrukturen

Im Template werden Inhalte durch Platzhalter (Funktionsaufrufe) eingebettet. Templates bestimmen das Erscheinungsbild des Portals, siehe Hinweise für Webdesigner.

Report-, Import- und Exportfunktionen

Dies Komponenten dienen zur Erstellung von dateibasierten Reports für Einzelobjekte als auch Objektlisten (PDF, HTML) unter Verwendung von Reporting-Werkzeugen, sowie für den dateibasierten Export und Import von Daten. Weitere Informationen siehe Reporting, Export, Import und Reporting Tools.

Eingliederung in die Dateistruktur

Die campus21-Coderwaltung unter http://www.campus21.de:8081 dient vordergründig der Weiterentwicklung der Produkte und des campus21 Framework durch uns und die beteiligten Entwickler. Sie dient außerdem der Installation und Kompilierung auf den Kundenstemen. Kundenspezifische Projekte können in die campus21-Codeverwaltung eingegliedert als auch in einer kundeneigenen Codeverwaltung vorgenommen werden.

campus21-Codeverwaltung

Wir stellen eine zentrale Codeverwaltung für kundenspezifische Projekte bereit, welche selbstverständlich für Kunden bzw. deren Partnern kennwortgeschützt sind. Durch die Eingliederung kundenspezifischer Projekte in die campus21-Codeverwaltung können sie den bestmöglichen Support von einem campus21.de-Mitarbeiter erhalten. Insbesondere können wir bei Releasewechseln die Abhängikeiten der kundenspezifischen Komponenten von Framework-Komponenten nachverfolgen und notwendige Änderungen in den kundenspezifischen Komponenten identifizieren und ggf.vornehmen.

In der campus21-Codeverwaltung wird die Trennung der kundenspezifischen Komponenten untereinander als auch von den Komponenten der campus21-Produkte bzw. des campus21 Framework sichergestellt. Mehrere Kunden können aber gemeinsam kundenspezifische Komponenten entwickeln.

In der campus21-Codeverwaltung wird außerdem die Trennung zwischen dem Entwicklungskopf (trunk) und den Versionen (branches, siehe Releases) vorgenommen. Softwareentwicklungen werden immer im Entwicklungskopf getätig und sie werden im Regelfall mit dem folgenden Release verfügbar. Sie werden nur in seltenen, besonders dringenen Fällen in frühere Releases portiert. Daneben ist es möglich einen ausreichend getesteten Entwicklungskopf in Ausnahmefällen auf einem Produktivsystem zu verwenden, wenn Entwicklungen unverzüglich produktiv verfügbar sein müssen.

Fehlerbehebungen und ein Langzeit-Support werden in den Releases vorgenommen. Fehlerbehebung und Langzeit-Support werden auf Grundlage von Suportverträgen bzw. der Gewährleistungsoption für betreffende Releases erbracht, siehe Vertragsmodelle und Preise.

Bildung von Kundenlösungen

Bei Kundenlösungen wird von einem Produkt (Ecampus21 oder CELLstudio) ausgegangen, in dem Komponenten ergänzt oder ausgetauscht werden. Kundenspezifische Systemkomponenten werden erstellt unter folgenden Pfaden:

Techn.

SVN-Pfad

PHP

http://www.campus21.de:8081/releases/his2010/php/custom/{Kundenkennung}

Beispielstruktur für Frontendkomponenten:

/custom/{kundenkennung}/extensions

/custom/{kundenkennung}/pages

/custom/{kundenkennung}/forms

/custom/{kundenkennung}/objects

/custom/{kundenkennung}/reports

NET

http://www.campus21.de:8081/trunk/Solutions/{Kundenkennung}
Beispiele für Assemblies:

{Kundenkennung}.DataModel

{Kundenkennung}.Connector
{Kundenkennung}.Jobs

Darüber hinaus kann der Kunde mehrere Lösungen bilden, in dem er mehrere Kundenkennungen erhält. Die Kundenkennungen enthalten dann neben Kundenname auch den Name des Blockes, z.B. Studienprojektmanagement der Hochschule Musterstadt erhält die Kennung HSMusSpm. Weitere Informationen zur Bezeichnung von Verzeichnisstrukturen und Komponenten finden sie unter Coding Standard.

Bildung von eigenständigen Produkten

Hierbei kann der Kunde ein eigene Dateistruktur aufbauen. Er übernimmt lediglich die vom campus21 Framework bzw. einem campus21-Produkt vorgegebene Dateistruktur.

Checkliste für das Projektmanagement

AllgemeinerAblauf von Projekten

  • Projektdefinition
    • Formulierung des Entwicklungsziels
    • Erstellung eines Zeitplanes
    • Festlegung von Verantwortlichen
    • Schaffung und Auswahl von Werkzeugen, Datenformaten für die Projektdokumentation
  • Anforderungsanalyse
    • Analyse der Nutzererwartung der beteiligten Zielgruppen
    • Spezifikation des Projekzieles bzw. der Leistungsmerkmale
    • Spezifikation der Geschäftsprozesse
  • Implementierungsspezifikation
    • Spezifizierung von Datenmodellen
    • Identifizierung der erforderlichen Softwarekomponenten
    • Zuordnung von Entwurfsmustern
  • Implementierung
    • Herstellung einer Entwicklungumgebung
    • Zugänge zur Quellcodeverwaltung
  • Test
    • Erstellung von Testfällen und
    • Beschaffung von Testdaten
    • Testdurchführung
    • Bereitstellung von Previews
  • Betriebsdokumentation
    • Benutzungshinweise
    • Installation und Konfiguration
  • Inbetriebnahme
    • Update des Produktivsystems
    • Upgrade von Daten
    • Information der Nutzer vor und nach einer Inbetriebnahme
  • Support und Fehlebehebung
    • Beantwortung von Nutzerfragen
    • Fehlebehebung und geringfügige Änderungen

Organisatorische Belange

  • Verwendung von Tickets für offene Punkte, Probleme, Fehler
  • Protokollierung von Besprechungsergebnisse, Festlegungen, Termine
  • Gesamtstatus in Bezug auf den Zeitplan
   
Top

Wir arbeiten mit Software von http://www.campus21.de.

Verantwortlich für angezeigte Daten ist der Webdomain-Eigentümer laut Impressum.

Suche