Creating a template does not require software programming, thanks to the Modelio Template Editor. So, why would a template require a design?

The reason is that extracting pertinent data from a model and producing it in a readable and expected way (organization, look and so on…) requires some initial thought. In other words, do not try to create a template if you do not know exactly (or enough) what you want in your document. This might seem obvious but it is still worth saying.

How to achieve a good design for your template? There is no universal answer to this question, probably for the same reasons that forbid the existence of a universal template. In other words it depends on many things.

However from our experience let us give you some useful tips.

  1. Always start with a good model sample: a model of the kind that your template is supposed to be run on. A template cannot be well-designed for all model types or contents. If you do not already have an existing realistic model sample, take some time to build one. This will help you a lot and later enable efficient testing of the template.

  2. Your final goal is to produce "good" documents. Here "good" depends on the reader expectations. Therefore start by manually creating a document sample (ideally documenting the same model sample as above).
    The unique risk here is to create a document structure that might be difficult or costly to implement as a template. For now, accept this risk.

  3. Try to submit both the model sample and the document sample to the expected readers, and use their feedback to modify the document sample until you get their approval. These readers are your customers. And by the way, proceed in the same way for the model sample itself: is it relevant and similar to the kind of models they are used to work with?

  4. Only then create your template in the template editor… Last thing, you will need a name for your template.

What if my sample document structure is hard to implement as a template?

You will probably have to make a choice here. Reading this part of the tutorial, you are customizing the produced documentation at level 4, and asking this question means that the level 4 possibilities do not suffice to fit your needs.

The straight and naïve answer is ‘move to level 5’. In level 5, programming specific extensions in Java code should allow you to produce anything… However, be aware that level 5 requires more effort, more testing more development and actually more costs. In such situations, it might be more efficient to re-negotiate the structure of the document to produce with its intended users. Most often, a few changes enable you to stick to level 4 and to the standard features of the template editor.