Thomas Wölfers Baustatik-Blog

Thomas Wölfers Baustatik Blog

Das bedeuten die Dateinamen


Wer schon mal einen Blick in das Installationsverzeichnis der Baustatik gewagt hat, hat festgestellt, das die Namen der Dateien darin einem gewissen Muster folgen. Aber was bedeutet dieses Muster?

Eigentlich ist es ganz einfach: Die Baustatik ist ein relativ komplexes Programm, und wie bei allen Dingen die komplex sind, braucht es eine gewisse Ordnung, damit sich alle zurecht finden. Bei den Installationsdateien der Baustatik geht das eben über den Dateinamen, und da gibt es folgende Kategorien:

Alle Dateien, die mit “framework.” anfangen, sind .NET Assemblies, die zu unserer Benutzerinterface-Bibliothek gehören. Diese Dateien enthalten Programmcode, der von allen Dokumenten gleichartig verwendet wird.

Alle Dateien die mit “kernel.managed” anfangen, sind .NET Assemblies, die zu den diversen Rechen-Kernen gehören. Alle, die mit “kernel.native” anfangen, sind native (32 oder 64 bit) Programmodule, die die Rechenkerne enthalten,die der Rest des Namens verrät. kernel.native.calculations.fem enthält also zum Beispiel den FEM-Kern.

Alle Dateien die auf “64.dll” enden, sind speziell für 64bit CPUs übersetzter Programmcode. Diese Endung gibt es nur bei den “nativen” DLLs, weil eine spezielle 64bit Übersetzung für .NET Assemblies nicht notwendig ist: Der endgültige Code wird bei denen erst zum Start auf dem Zielsystem erzeugt (das passiert im wesentlichen beim Installieren), sodas es bei diesen im Zuge der Installation keine Namensunterschiede zwischen 32bit und 64bit Modulen gibt.

Alle Dateien die mit “x” anfangen (xdach… xdur…) enthalten den Programmcode der speziell für die Benutzerschnittstelle eines Dokumentes zuständig ist. xdach…. enthält also zum Beispiel den Dach-spezifischen Code.

Alle anderen DLL-Dateien sind Komponenten von Drittherstellern, bei denen wir keinen Einfluss auf den Namen haben. Die mit “sql” beginnenden sind zum Beispiel von Microsoft stammende Dateien die den Programmcode für die von uns benutze SQL-Server Variante enthalten.


Happy Birthday, Blog !


Heute vor 12 Jahren gab es meinen ersten Blog-Beitrag, und der letzte Geburtstagswunsch war natürlich vor einem Jahr. In diesem letzten Jahr ist viel passiert – auch bei der Anwendung der BaustatikSmiley

Eine große Änderung des letzten Jahres: Lange Zeit nachdem Microsoft Windows XP nicht mehr unterstützte haben auch wir damit aufgehört, weiter für XP zu entwickeln. Für alle, die nicht auf irgendwas modernes wechseln können oder wollen, gibt es noch eine “alte” Version der Baustatik, die unter XP läuft, aber alle neuen Versionen brauchen ein aktuelleres Betriebssystem. Das ist auch bei den Anwendern angekommen – laut unseren Telemetriedaten gibt es – alle Kunden, Studenten, Demos- und Hochschulversionen zusammengenommen – noch insgesamt 8 (!) Rechner, auf denen die Baustatik läuft, und die noch immer Windows XP verwenden. Wäre übrigens echt mal an der Zeit, die upzudaten Smiley

Seit letztem Sommer gibt es Windows 10, und das kommt zur Zeit etwa AUF 25% aller Rechner mit Baustatik zum Einsatz. Tendenz steigend – was wohl auch nicht verwunderlich ist.

In der Baustatik gab es natürlich auch jede Menge Veränderungen und Neuheiten. Nicht zuletzt ist da die Ankunft der ersten “richtigen” Lastweiterleitung mit dabei – und davon kommen im Laufe der nächsten Zeit jede Menge weitere Teile dazu. Man darf auf die nächsten Monate gespannt sein …


Was gerade passiert …


Wir sind gerade dabei unser “komplettes” Toolset umzustellen: Es gibt unter anderem einen neuen Compiler (eigentlich 2), einen neuen Gleichungslöser und einen neuen Netzgenerator. (Die beiden letzten “neuen” sind eigentlich ein Resultat des neuen Compilers..)

Diese Umstellung braucht etwas mehr Zeit, als ich ursprünglich angenommen hatte – darum zieht sich die Sache ein bisschen.

Erste Resultate sind aber schon da, und die sind recht vielversprechend: Ohne “weitere” Maßnahmen sieht es so aus, als würden die Berechnungen deutlich schneller laufen, als zuvor. Zumindest die Testberechnungen brauchen statt bisher etwa 100 Minuten etwas weniger als 70. Ich denke aber, das wir noch ein bisschen mehr umbauen werden, als “nur” den Compiler – und das da auch noch mehr Rechengeschwindigkeit bei rausspringen wird. Ist aber nur so ein Gefühl – genaueres, wenn ich mir etwas sicherer bin Smiley


Etwas ruhig im Blog …


Grund: Bin schwer eingespannt mit einer Compiler-Umstellung, über die es nichts interessantes zu berichten gibt Smiley


TuneUpUtilities–Just say No!


Ich kann es gar nicht oft genug sagen: Installieren Sie die “TuneUpUtilities” NICHT. Ich hatte gerade mal wieder ein Gespräch mit einem Kunden, der das doch getan hatte. Leider Pech gehabt: Dieses “Tool” führt Änderungen an einer normalen Windows-Installation vor, die eindeutig zu Folgeproblemen, teilweise in größerem Umfang führen.

Im Beispiel heute konnte man das Installationsprogramm der Baustatik nicht einmal mehr starten. Dabei ist das Installationsprogramm nichts ungewöhnliches: Es handelt sich um ein stinknormales Windows-Installer MSI File – die komplette Installation wird vom Windows Installer durchgeführt. Nur eben nicht, wenn die TuneUpUtilities installiert sind.

Kaum waren die deinstalliert, lief alles so, wie man das erwarten würde. Darum nochmal: Hände weg von TuneUpUtilities. Wer das aber schon installiert hat: Einfach deinstallieren – vermutlich verschwinden dann diverse Probleme die man mit dem Rechner hat auch gleich mit.


Baustatik-Update: Leider noch ein Problem


Bei der Korrektur-Version die wir gestern veröffentlicht haben, trat leider auch ein Problem auf. Die Korrektur hatte eigentlich nur die eine Änderung, das einige der Programmdateien (i.b. der Timeserver) nicht mehr digital signiert waren. Trotzdem waren im zugehörigen Installationsprogramm defekte Datenbank-Tabellen enthalten. Ich kann mir das eigentlich nur mit einem nicht erkannten Festplattendefekt erklären – denn die zugehörigen Quelldateien waren unbeschädigt, und die daraus resultierenden Dateien in der Vorversion völlig ok. Nach dem erneuten Herstellen des Installationsprogramms verschwand das Problem auch wieder, ohne das irgendwelche Veränderungen vorgenommen wurden.

Wie dem auch sei: Ich habe gerade nochmal eine neue Version (140) veröffentlicht, bei der keine der Probleme mehr auftreten. Um sicherzustellen das auch das Installationsprogramm nicht beschädigt ist, habe ich auch dieses nochmal manuell auf einen anderen Rechner transferiert und getestet: Es sollte nun wirklich nichts mehr auftreten.

Für die Zukunft müssen wir uns offensichtlich noch einen Mechanismus einfallen lassen, mit dem nicht nur die Baustatik an sich mit Testfällen geprüft wird, sondern auch das Installationsprogramm dafür.


So wird man das Problem nach dem Update auf Version 138 wieder los


Durch die Installation des Updates auf Version 138 (vom 3.2.2016) kam es bei einigen Kunden zu einem Problem im Zusammenhang mit dem TimeServer und bei anderen im Zusammenhang mit den “alten” XFEMily Programmen.

Dummerweise ist das TimeServer-Problem etwas nervig: Der TimeServer stürzt beim starten ab, und wird dann immer wieder automatisch gestartet. Das macht es, falls der TimeServer automatisch gestartet wird, praktisch unmöglich ein weiteres Update zur Korrektur zu installieren. Man muss also den TimeServer aus der Autostart-Gruppe von Windows entfernen. Das ist allerdings je nach Version von Windows auf eine andere Art zu erledigen. Um die Sache einfacher zu gestalten, können Sie den folgenden Schritten folgen: Die beseitigen das Problem.

  • Deinstallieren Sie “DIE Anwendungen” über die Systemsteuerung
  • Wichtig: Starten Sie den Rechner jetzt neu
  • Laden Sie die aktuelle Version (139) aus dem Download-Bereich von www.die.de herunter
  • Installieren Sie diese Version

Danach läuft alles wieder wie gehabt.

Ich entschuldige mich für die Störung. Den eigentlichen Grund suche ich noch, diese Update behebt aber auf jeden Fall die störenden Symptome.


Betriebssystem-Update wäre jetzt notwendig


Die allermeisten der Baustatik-Anwender verwenden ein “aktuelles” Betriebssystem: Etwa 75% verwenden Windows 7 mit aktuellem Service-Pack, 24% verwenden Windows 81 und Windows 10, und nur 1% verwenden Windows XP oder Windows 8. (Und irgendwo gibt es auch mindestens einen Windows-Vista User…)

Das Windows XP schon seit langem von Microsoft nicht mehr unterstützt wird, darauf habe ich schon mehrfach hingewiesen: Wer noch immer XP benutzt, sitzt eigentlich auf einem einzigen großen Sicherheitsleck, denn es gibt seit langer Zeit keine Sicherheitsupdates mehr für XP, und es wird auch in Zukunft keine geben. Man sollte wirklich updaten.

Seit gestern ist aber auch der Support für Windows 8 ausgelaufen, und wer noch 8 verwendet, sollte schleunigst – mindesten auf 8.1 updaten. Das Update ist kostenlos und über den Windows-Store erhältlich. Mit 8.1 bekommt man dann auch wieder einen langjährigen Support von Microsoft: 8.1 wird bis 2023 unterstützt. Alternativ kann man auch kostenlos auf Windows 10 umsteigen – das gilt übrigens auch für die Windows Vista und Windows 7 Nutzer – in dem Fall gibt es Support bis ins Jahr 2025.

Ich empfehle:

  • Wenn Sie XP verwenden: Ein Update auf Windows 10 durchführen. (Vermutlich ist der Rechner dann auch schon recht alt – es könnte nicht schaden in dem Fall auch mal über neue Hardware nachzudenken.) Unabhängig davon: Sie erhalten bei XP auch keine Updates mehr von uns – und die neuen Baustatik-Versionen können einige sehr interessante Dinge, die man bei XP eben einfach nicht bekommt.
  • Wenn Sie Vista verwenden: Auf Windows 10 updaten
  • Wenn Sie Windows 7 (Mit SP1) verwenden: Man muss nicht zwingend tätig werden. Allerdings gibt es das Update auf Windows 10 zur Zeit noch kostenlos, aber das wird nicht so bleiben. Der Support wird 2020 beenden, mit dem Update auf 10 gewinnt man also außerdem noch 5 Jahre.
  • Wenn Sie Windows 8 verwenden: Auf jeden Fall auf 8.1, oder besser auf 10 updaten.
  • Wenn Sie Windows 8.1 verwenden: Es ist nicht dringend notwendig, etwas zu unternehmen. Es gilt aber auch, das man eben jetzt noch ein kostenloses Update auf 10 bekommt. Außerdem kann man mit 10 definitiv besser arbeiten, als mit 8.1. Ich würde daher updaten.

Details zum Support-Lebenszyklus von Windows finden Sie hier.


Umstellung bei der Infrastruktur


In nicht gerade regelmäßigen Abständen müssen wir bei uns Änderungen an der Infrastruktur vornehmen – und in den Weihnachtsferien dieses Jahr war unsere Revision Control System dran: Dabei haben wir nicht nur ein Update durchgeführt, sondern gleich auch das Produkt gewechselt. Das alte Vault wurde durch die Visual Studio Team Services (früher Visual Studio Online) ersetzt. (Über lang oder kurz werden wir wohl auch mit unserem Issue-Tracking System diesen Wechsel vollziehen.)

So ein Wechsel ist nicht ganz so einfach, denn es hängen viele Dinge direkt vom Repository ab: Zunächst mal arbeiten natürlich alle Entwickler damit – das ist ja der Kern der Sache: Neben der Versionsverwaltung (sowas haben Sie übrigens auch in der Baustatik) ermöglicht RCS eben auch die parallele Arbeit mehrere Entwickler am gleichen Projekt. Wechselt man also die Verwaltung, müssen auch die Arbeitsplätze aller Entwickler umgestellt werden. Darüber hinaus haben wir aber auch noch andere Dinge, die an das Repository angekoppelt sind. So wird zum Beispiel die online verfügbare Dokumentation der Baustatik einmal pro Tag automatisch auf den neues Stand gebracht: Jedesmal, wenn jemand bei uns eine Änderung an der Dokumentation vornimmt und diese ins Repository eincheckt, landet diese Änderung spätestens nach 24 Stunden auch automatisch auf unserer Webseite. Auch dieser Mechanismus musste also an das neue Tool angepasst werden.

Darüber hinaus haben wir ja auch noch die Testcases, mit denen wir jeden Tag (eigentlich jede Nacht) automatisch sicherstellen, das die Änderungen vom Tag nicht dazu geführt haben, das sich irgendwelche Ergebnisse ändern. (Es sei denn, es handelte sich um eine Korrektur, und sie sollten sich ändern Smiley ). Dazu gehören ein paar tausend Baustatik-Dateien, die natürlich auch im Revision Control System liegen – und alle internen Tools, die damit zusammenarbeiten, mussten ebenfalls angepasst werden.

Die Umstellung sollte nun aber eigentlich vollständig vollzogen sein – es wird zwar sicher noch die ein- oder andere kleine Störung geben, aber im großen und ganzen ist das nun abgeschlossen.

Was ändert sich dadurch für den Anwender? Nichts – außer, das wir nun ein etwas besseres Toolset haben, und damit hoffentlich (noch) schneller an Verbesserungen unserer Software arbeiten können…