Softwareentwicklung ist ein riesiges Feld; Der einzige Trend, der für all das gilt, ist, dass wir darin langsam besser werden. Konkret kann man auf kontinuierliche Verbesserungen in drei Bereichen hinweisen: Sprachen, Werkzeuge und Systeme.
Sprachen: Es wird weiterhin neue Sprachen geben, und ältere werden entweder wiederbelebt oder ihre Ideen in neuere Sprachen einfließen lassen — ich denke hier zum Beispiel an die Einführung funktionaler Programmierkonstrukte in Java und den Einsatz von Typinferenz in Scala. Einige der neuen Sprachen werden so konzipiert sein, dass sie neuen Tools und Strukturen Rechnung tragen.
Tools: Ich bin weiterhin beeindruckt von den Fortschritten bei Tools wie der statischen Analyse (zB Findbugs und Checkstyle in der Java-Welt), der Code-Coverage-Analyse (zB JaCoCo) und Test-Frameworks. Ich denke, wir werden auch mehr Einsatz von Continuous Integration/Continuous Deployment sehen. Vor einem Jahrzehnt hätte ich die Versionskontrolle vielleicht in dieser Kategorie erwähnt, aber ich glaube nicht, dass etwas das Feld so revolutionieren wird, wie es git getan hat. Wir werden auch eine kontinuierliche Verbesserung der Konfigurationsverwaltungstools in Form von Dingen wie Puppet und Ansible sehen.
Systeme: Hier würde ich groß angelegte Strukturen wie Cloud Computing, serviceorientierte Architektur, virtuelle Maschinen, Container und massiv parallele Architekturen wie Map-Reduce, Amazons Lambda und so weiter einsetzen. Wir werden eine kontinuierliche Bewegung weg von relationalen Datenbanken hin zu Schlüsselwert- und anderen NOSQL-Datenbanken sehen, da relationale Datenbanken nicht skalieren.
Im Bereich der Nicht- Trends sehe ich weder vi noch emacs in absehbarer Zeit verschwinden. Jetzt, da unter Windows 10 eine einigermaßen vollständige Linux/Unix-Entwicklungsumgebung verfügbar ist (der Mac hat sie seit der Einführung von MacOS-10), sehe ich das auch nicht weg.
Automatisierungstests
gelten als eine der angesagtesten Methoden, die
heutzutage von vielen Softwaretestern und QAs im gesamten
Softwaretest-/Entwicklungslebenszyklus verfolgt wird. Besuchen Sie unsere Website Svitla Systems für mehr Mit Hilfe von Automatisierungstests
können effektivere und effizientere Testergebnisse erzielt werden.
Da sich das Softwaretesten in Richtung Automatisierung bewegt,
wechseln die meisten Softwaretester sowie QAs vom manuellen Testen zum
automatisierten Testen.
Einige der wichtigsten technologischen Trends im Bereich des Softwaretests sind: