csollfrank Geschrieben 10. Dezember 2007 Teilen Geschrieben 10. Dezember 2007 Hallo Wir suchen Hilfe oder auch einfach nur ein paar Tips, ggf. auch gegen Bezahlung, was die Architektur unserer portierten (und weiterhin zu portierenden) Standardanwendung angeht. Hier kurz die Eckdaten: Allgemein Kaufmännische Standardanwendung Portierung von Visual Objects und dBase nach C# und MySql 5.x Gängige 32- und 64-Bit-Windows-Systeme. Momentan ab W2k Geringer Einfluss auf die Client- und Server-Hardware. Clients nicht immer die aktuellsten Office-PCs, Server teilweise nicht performanter als die Clients. Anwendungseckdaten Anzahl Klassen: 2000 (+?) geschätzt Anzahl Fenster 3-stellig Anwendung muss nicht auf demselben Host wie die Daten liegen. Mehrbenutzerbetrieb mit konkurrierenden Lese- und Schreibzugriffen auf die Daten. Komplexe Algorithmen Performance wichtig Asynchrone Lesezugriffe Hintergrundthreads, z. B. für Erinnerungen Umfangreiche Export- und Importschnittstellen Komplexe, variable Filter-/Suchfunktionalität Internationalisierung Umfangreiches benutzerbezogenes Rechtesystem Reporting Logging an vielen Stellen im Quellcode. Momentan mit Log4Net Datenzugriff über Persistenzschicht. Momentan mit Nhibernate (Vorher Versuch mit NDO, dessen Enhancing das Kompilieren bei unserer Klassenanzahl unmöglich machte) Kapselung von Anwendungsbereichen, z.B. wegen möglichem späterem Webzugriff auf Anwendungslogik Datenbankeckdaten Pro Lizenznehmer eine übergeordnete Datenbank und 1 bis x Mandanten-Datenbanken Mehr als 1000 Tabellen pro Mandantendatenbank Maximal 3. Normalform Viele m:n Beziehungen Wachsende Datenmenge Datensätze/Tabelle Anteil an allen Tabellen der Datenbank < 1.000 25 % < 100.000 30 % < 500.000 20 % > 1.000.000 25 % Die Datenbanken müssen nicht auf einem einzigen Host liegen (verteilt LAN/WAN) Das Betriebssystem des Datenbankhosts soll keine Rolle spielen Die Fragen, die wir haben, sind: Gibt es etwas, was wir bei der angegebenen Konstellation unbedingt beachten müssen? Hat jemand Erfahrung mit der Portierung von Visual Objects/dbf nach C#/MySql? Sieht jemand Probleme bei dieser Anwendungsgröße/Konstellation, die jetzt schon abgefangen werden können? Hat jemand Tips, was die Architektur angeht? Wir wissen, das sind sehr allgemeine Fragen, aber diese sind für uns gerade am wichtigsten. Konkretere Fragen zu kleineren Bereichen der Anwendung werden sich erst bei Auftreten von Problemen ergeben. Wir haben leider alle keine große Erfahrung in der Umsetzung eines Projektes dieser Größenordnung, und ein Großteil des Teams hat gerade erst mit C# (Von diesem Teil des Teams wurde die Visual Objects Version entwickelt und gewartet) angefangen und noch keine Erfahrung mit objektorientierten Techniken wie Entwurfsmustern, Schichtenmodell (Bei uns die Trennung nach GUI - Businessobjekte und -logik - Datenbankzugriffsschicht - Datenbank) etc. Darum wären wir für jede Art der Hilfestellung dankbar. Vielen Dank alleine schon fürs Gelesen-haben Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Argbeil Geschrieben 12. Dezember 2007 Teilen Geschrieben 12. Dezember 2007 Das ist alles sehr pauschal, kann man so über den Daumen nicht beantworten, realisieren kann man das natürlich mit C#. Wenn bei euch Interesse besteht kann ich euch einen externen Consultant vermitteln der sich das mal vor Ort anschaut und euch ggf. bei der Entwicklung unterstützen/beraten kann. Ich empfehle euch nicht das ohne externe Hilfe zu machen, besonders im Hinblick auf den Wissensstand der Entwickler. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.