Up since 11/8/17 02:45 pm


Up since 11/14/17 11:20 pm


Up since 10/17/17 05:40 pm


Up since 11/20/17 09:15 am


Up since 11/15/17 07:25 am


Up since 11/27/17 10:45 am
OLCF User Assistance Center

Can't find the information you need below? Need advice from a real person? We're here to help.

OLCF support consultants are available to respond to your emails and phone calls from 9:00 a.m. to 5:00 p.m. EST, Monday through Friday, exclusive of holidays. Emails received outside of regular support hours will be addressed the next business day.

Loading Events

Scientific Software Development Design Meeting


December 1, 2015 @ 8:00 am
December 3, 2015 @ 5:00 pm


Fernanda Foertter


Bldg. 8600, C250 and C152
One Bethel Valley Road
Oak Ridge, TN 37831 United States
+ Google Map

*This on-site training is for ORNL badged employees only.*

In this training, you will learn dozens of proven tips, techniques, and principles to produce clean, industrial strength software design and code.  Capturing the body of knowledge available from research, academia, and everyday commercial practice, this seminar synthesizes the most effective techniques and must-know principles into clear, pragmatic guidance. This seminar explains how to shorten development time, reduce errors, and make debugging easier. This seminar includes the following major topics:

Design and code complexity

  • The importance of complexity
  • The different kinds of complexity
  • How you can measure and manage complexity

Data structure design

  • Why data structure design is critical
  • Different data structuring paradigms
  • Data normalization and denormalization

Code Quality

  • The importance of code quality
  • Best practices for naming
  • Critical characteristics of effective comments
  • An introduction to refactoring
  • An introduction to code-level optimization
  • Error processing and notification principles
  • How to use assertions to your advantage
  • Principles of high quality routines and code formatting

Design Patterns

  • What design patterns are and why they are important
  • Model-view-controller
  • Adapter
  • Façade
  • Bridge
  • Strategy
  • Composite
  • Observer

Non-functional requirements “-ilities”

  • An introduction to ISO/IEC 25010 Software Quality Model
  • Beyond ISO/IEC 25010

Design Documentation

  • Desirable properties of design documentation
  • IEEE STD 1016-2009 Recommended Practice for Software Design Descriptions
  • Agile design documentation

Benefits / What you’ll learn:

  • How to measure and manage design and code complexity along with the fundamental design principles that lead to high-quality software that has low implementation efforts
  • How to document designs using either traditional or agile approaches

Who Should Attend

This seminar will benefit programmers, designers, technical leads, and anyone who wants to learn best software design and coding practices.

Attendees should have a basic understanding of object oriented software and be able to read Java, C++, or C# code.

Instructor:  Steve Tockey, Construx






Registration for this event is now closed.