120 likes | 136 Views
Understand the importance of design, coding rules, documentation, and implementation in maintaining software quality as per COSMO standards. Get insights into version control, release planning, and daily development implications.
E N D
The COSMO Coding StandardsSome Highlights COSMO Working Group 6: Reference Version and Implementation Working Group Coordinator: Ulrich Schättler
Some highlights from the document Software Maintenance and Quality Control Release Planning Implications on daily work Contents COSMO General Meeting 2011
Design: One aspect of design is: How does the change fit into the model? Coding Rules: try to give the code a „common look“ and improve readability Documentation: The following documents have to be available for new / modified code: internal product documentation: code has to be structured in meaningful, documented units / sections external product documentation: scientific documentation and user guide (also: implementation documentation) process documentation: documentation of the changes for version history and changes log-file documentation has to be written such that it can be taken over to the existing documentation (english, latex) Implementation Issues: still has to be completed Some Highlights from the Document COSMO General Meeting 2011
Codes are maintained in a version control system (VCS) Code within the VCS is „official code“, all other code (not in the VCS) is „private code“ Each version in the VCS gets a certain status development: intermediate versions only given to the developers for cross-checking test: versions given to special test users to conduct extensive tests (different configurations, domains, etc.) release: if a version passes the tests successfully, it becomes a release and is available to all users Software Maintenance and Quality Control COSMO General Meeting 2011
How can a contribution („private code“) become part of the VCS („official code“)? This is specified in Sect. 6.2: Rules for the implementation of changes. These rules are closely related to the „Development Process“, described in Chap. 2 of the Coding Standards The most important steps are outlined in the following Some helpful definitions STC: Steering Committee SMC: Scientific Management Committee TAG: Technical Advisory Group SCA: Source Code Administrator Software Maintenance and Quality Control } „The Management“ COSMO General Meeting 2011
Software Maintenance and Quality Control COSMO General Meeting 2011
Software Maintenance and Quality Control COSMO General Meeting 2011
Software Maintenance and Quality Control COSMO General Meeting 2011
„The Management“ administrates a list of contributions, the Planning for Future Developments This list contains the contributions which are still under development and do not fulfill all requests yet „The Management“ administrates a second list, the Release Planning This list contains the contributions for which development is ready, fulfills all requirements and can be taken over to the „official code“ For these contributions a date is specified, when the corresponding version will be available Release Planning COSMO General Meeting 2011
Are you a „Real Programmer“? Real Programmers don‘t do design and write specifications: Users should consider themselves lucky to get any programs at all and take what they get. Real Programmers can write five page long DO loops without getting confused. Real Programmers like Arithmetic IF statements and GOTOs: They make the code more interesting. Real Programmers don‘t document: If it was hard to write, it should be hard to read. And usually the code is obvious. Real Programmers don‘t test: If there is a problem, it can be patched into a working version in „only a few“ 30-hour debugging session. Real Programmers don‘t use debuggers: They can read core dumps. Implication on Daily Work We do not need Real Programmers COSMO General Meeting 2011
It would be very beneficial for all of us, if the daily development work is done according to the COSMO-Standards: „The source code provided is properly designed“ „The source code provided conforms to the coding rules“ „All source code modifications are documented“ „All changes have been tested. The results are published appropriately“ „A code responsible person is available in the future“ Implication on Daily Work COSMO General Meeting 2011
Thank you very much for your attention COSMO General Meeting 2011