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
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.
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.