Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Design using standards-based schemas and data models – adopt existing data models and properties and properties wherever possible. Only create new elements where none of the existing ones are suitable.  
  2. Don't over-design – design for a well-defined set of use cases and to support specific features.
  3. Design incrementally – following #2 above, design for the basic cases and extend the design to include additional use cases or features. 
  4. Design at a low granularity and merge as necessary – using a bottom-up approach, create data models, access features, and user interfaces for different types of records and adapt these as appropriate for other types of records. The opposite will be a top-down approach, creating a set of common features, which can then be specialized for each kind of record. The bottom-up approach will allow for common features to bubble up to the top organically rather than enforcing unnecessary features on collections where these are not appropriate. The bottom-up approach aligns with the "don't over-design" principle, described above. 
  5. Document the design process as well as the rationale behind the design decisions.
  6. Design openly – seek feedback early and often. Don't expect to have a perfect design. Plan to have many eyes review and approve