Alle relevante Software ist derart komplex, dass sie die menschliche Fähigkeit, sie zu erfassen und zu kontrollieren, schlicht übersteigt. Wissenschaftliche Software ist hier keine Ausnahme, sondern Bestätigung: Die intrinsische Komplexität wissenschaftlicher Fragestellungen zwingt uns dazu, entsprechend komplexe Software zu entwickeln. Ohne (technische) Hilfsmittel und das Wissen um über die Jahrzehnte entwickelte Strategien ist das aber zum Scheitern verurteilt. Code von Naturwissenschaftlerinnen und Naturwissenschaftlern ist in der Regel viel zu schlecht, als dass er sinnvoll weiterverwendet werden kann. Das rührt aber direkt an die Grundlagen der Wissenschaft, denn ohne Nachvollziehbarkeit keine Wissenschaft und kein Erkenntnisgewinn. Die gute Nachricht: Software zu entwickeln, die den Ansprüchen der Wissenschaft genügt, ist möglich. Die weniger gute Nachricht: Das erfordert Disziplin, strukturiertes Vorgehen, Abstraktionsvermögen, die Kenntnis und das Verständnis entsprechender Werkzeuge und Techniken und die Professionalität, dieses Wissen gewinnbringend ein- und umzusetzen.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Motivation: Softwareentwicklung und Codequalität

  • Till Biskup

摘要

Alle relevante Software ist derart komplex, dass sie die menschliche Fähigkeit, sie zu erfassen und zu kontrollieren, schlicht übersteigt. Wissenschaftliche Software ist hier keine Ausnahme, sondern Bestätigung: Die intrinsische Komplexität wissenschaftlicher Fragestellungen zwingt uns dazu, entsprechend komplexe Software zu entwickeln. Ohne (technische) Hilfsmittel und das Wissen um über die Jahrzehnte entwickelte Strategien ist das aber zum Scheitern verurteilt. Code von Naturwissenschaftlerinnen und Naturwissenschaftlern ist in der Regel viel zu schlecht, als dass er sinnvoll weiterverwendet werden kann. Das rührt aber direkt an die Grundlagen der Wissenschaft, denn ohne Nachvollziehbarkeit keine Wissenschaft und kein Erkenntnisgewinn. Die gute Nachricht: Software zu entwickeln, die den Ansprüchen der Wissenschaft genügt, ist möglich. Die weniger gute Nachricht: Das erfordert Disziplin, strukturiertes Vorgehen, Abstraktionsvermögen, die Kenntnis und das Verständnis entsprechender Werkzeuge und Techniken und die Professionalität, dieses Wissen gewinnbringend ein- und umzusetzen.