Software in the PIONIER group
• Software infrastructure– the “software tools” and network
• Software engineering– application of the tools to achieve goals– minimize costs:
• time
• effort
• money
Knowledge exchange with:
• Scientific researchers world-wide
• General public
• Reseachers of the PIONIER group
Types of Knowledge exchange:
• Software
• Publications
• Databases
• Online interactive memory tests
• Walnut/Nutshell– neural network simulator
– free for download from the web site (Internet)
– supports addition of new paradigms
– user-friendly shell with graphical user interface
– runs on Microsoft Windows
– Walnut core library is platform independent
Software
• Object oriented languages– reuse– stability– Python, C++
• Usability tests– user friendliness– effectiveness
Software (cont’d)
• Geppetto– neural network programs
– modeller tools
– online modifiable records by privileged users
• Online Tests– Memory tests
– Testpanels
– Scientific data for analysis
Databases
• Linux
• Apache and Zope
• MySQL
• CVS
• Samba
• Bugzilla
• Python and C++
Knowledge exchange: tools
Open Source software
• “Free” software: what is free?
• Verifiability and changeability
• Quality, stability and security
• Support
• Vendor independence
• Widespread longterm use
Open Source software (cont’d)
• Runs on regular, off-the-shelf, hardware
• Supported and endorsed by governments
• Used by universities and not for profit
organizations
• And more and more by government and commercial companies
Usability (Nielsen)
• Web site– Platform and user independence
– Easy navigation
• Software– Easy and intuitive to use
– Effective
– Session analysis
– Easy feedback
Object orientation (“OO”)
• Efficient re-use of software components
• Reduction of bugs and testing
• Design by Contract (“DBC”)
Software testing
• Extensive testing before release
• Use of sophisticated tools
• Automatic testing with scripts
User feedback
• Facilitate user feedback
• Web site: documentation, faq’s
• Feedback forms and bug tracking
• Mailing lists
Summary
• Knowledge exchange and management
• Support collaborative work (“groupware”)
• Appy solid software engineering principles
• Open Source software used where possible