Design Principles
Shibumi is a highly configurable platform that can streamline any number of manual, document heavy, processes. With the high level of configuration it provides, we as app authors need to adhere to a strict set of design best practices to ensure a good user experience.
Elements of Design
Templates
Structure and Organization
Templates control a solution’s behavior, data and design. In some sense, they are the solution. Each customer solution is made up of a collection of inter-related templates.
Example Template Structure
|
Never share templates across multiple solutions. For instance multiple solutions may include Activities and it may seem easier to have a single activity template. But, that means any changes necessary for a specific solution will impact all other apps using that shared template. This often becomes problematic. |
Template Hierarchies
Physical hierarchy A hierarchy created through using multiple templates with a parent/child relationship. Virtual hierarchy A hierarchy created through setting attribute values on a single template and grouping by those attributes. |
When to use each
Physical hierarchies should be used when you need to limit users access to particular branches of the hierarchy OR if nodes within a hierarchy have their own attributes to be tracked. Virtual hierarchies should be used in all other cases. |