000863092 001__ 863092 000863092 005__ 20210130001826.0 000863092 037__ $$aFZJ-2019-03206 000863092 041__ $$aGerman 000863092 1001_ $$0P:(DE-Juel1)131044$$aWuttke, Joachim$$b0$$eCorresponding author$$ufzj 000863092 1112_ $$adeRSE19 - Konferenz für Forschungssoftwareentwickler in Deutschland$$cPotsdam$$d2019-06-04 - 2019-06-06$$wGermany 000863092 245__ $$aGUI-Architektur für interaktive Datenanalyse 000863092 260__ $$c2019 000863092 3367_ $$033$$2EndNote$$aConference Paper 000863092 3367_ $$2DataCite$$aOther 000863092 3367_ $$2BibTeX$$aINPROCEEDINGS 000863092 3367_ $$2DRIVER$$aconferenceObject 000863092 3367_ $$2ORCID$$aLECTURE_SPEECH 000863092 3367_ $$0PUB:(DE-HGF)6$$2PUB:(DE-HGF)$$aConference Presentation$$bconf$$mconf$$s1560861672_8336$$xPlenary/Keynote 000863092 520__ $$aFor scientists, it is tempting to think of GUI development as a tedious but trivial task, best delegated to auxiliary personnel. Expect this approach to yield unstable software with unsatisfactory performance and an unmaintainable code base. Get a few basics right, and everything will be so much clearer and easier: Strictly separate the GUI layer from the scientific core. Dare using global variables to hold session and GUI state. Cache computational results. Ensure that the display is always up to date. Provide an emergency interrupt button. Foresee multithreading. Log user actions. Use a replay engine during development and for testing. Plan for scripting. [Talk held in German, slides in English.] 000863092 536__ $$0G:(DE-HGF)POF3-6G15$$a6G15 - FRM II / MLZ (POF3-6G15)$$cPOF3-6G15$$fPOF III$$x0 000863092 536__ $$0G:(DE-HGF)POF3-6G4$$a6G4 - Jülich Centre for Neutron Research (JCNS) (POF3-623)$$cPOF3-623$$fPOF III$$x1 000863092 65027 $$0V:(DE-MLZ)SciArea-220$$2V:(DE-HGF)$$aInstrument and Method Development$$x0 000863092 65017 $$0V:(DE-MLZ)GC-2002-2016$$2V:(DE-HGF)$$aInstrument and Method Development$$x0 000863092 693__ $$0EXP:(DE-MLZ)NOSPEC-20140101$$5EXP:(DE-MLZ)NOSPEC-20140101$$eNo specific instrument$$x0 000863092 909CO $$ooai:juser.fz-juelich.de:863092$$pVDB$$pVDB:MLZ 000863092 9101_ $$0I:(DE-588b)5008462-8$$6P:(DE-Juel1)131044$$aForschungszentrum Jülich$$b0$$kFZJ 000863092 9131_ $$0G:(DE-HGF)POF3-6G15$$1G:(DE-HGF)POF3-6G0$$2G:(DE-HGF)POF3-600$$3G:(DE-HGF)POF3$$4G:(DE-HGF)POF$$9G:(DE-HGF)POF3-6G15$$aDE-HGF$$bForschungsbereich Materie$$lGroßgeräte: Materie$$vFRM II / MLZ$$x0 000863092 9131_ $$0G:(DE-HGF)POF3-623$$1G:(DE-HGF)POF3-620$$2G:(DE-HGF)POF3-600$$3G:(DE-HGF)POF3$$4G:(DE-HGF)POF$$9G:(DE-HGF)POF3-6G4$$aDE-HGF$$bForschungsbereich Materie$$lVon Materie zu Materialien und Leben$$vFacility topic: Neutrons for Research on Condensed Matter$$x1 000863092 9141_ $$y2019 000863092 920__ $$lyes 000863092 9201_ $$0I:(DE-Juel1)JCNS-FRM-II-20110218$$kJCNS-FRM-II$$lJCNS-FRM-II$$x0 000863092 9201_ $$0I:(DE-588b)4597118-3$$kMLZ$$lHeinz Maier-Leibnitz Zentrum$$x1 000863092 980__ $$aconf 000863092 980__ $$aVDB 000863092 980__ $$aI:(DE-Juel1)JCNS-FRM-II-20110218 000863092 980__ $$aI:(DE-588b)4597118-3 000863092 980__ $$aUNRESTRICTED