FlexSim Style Guide

Welcome to the Style Guide

The FlexSim Style Guide outlines a set of guidelines and conventions that will help FlexSim employees communicate to customers with a clear, consistent, and unified voice in many different kinds of technical contexts--such as user manuals, customer support emails, forum posts, online videos, and User Interface (UI) elements.

With that goal in mind, the FlexSim Style Guide incorporates some of the principles and best practices developed by technical writers in the software industry over the last few decades. Following this guide should help you to create documentation that: 1) presents a consistent company image, and 2) conveys information in a way that is easy for our customers to understand. In other words, this guide will help you to communicate more effectively about FlexSim products in technical contexts.

That being said, you should keep two caveats in mind when using this guide. The first caveat is that this guide is intended to apply only to documentation or other communications that will be read by customers. Although it's good to get in the habit of using the conventions outlined in this style guide, you do not necessarily need to use these conventions when communicating to other members of your team. For example, this guide recommends using the term flow item or item instead of flowitem. You should try to follow this recommendation in customer-facing communications. However, you are welcome to continue using the term flowitem within your team if that makes communication between your team easier.

The other caveat you should keep in mind is that you probably shouldn't think of the FlexSim Style Guide as a set of "rules" that are set in stone. Rather, you should think of this document as a set of guidelines based on extensive research into customers' needs and expectations when using software. In other words, this guide is intended to represent the consensus that FlexSim employees have agreed is the best way to communicate with our customers.

With that in mind, the FlexSim Style Guide is also a work in progress and is definitely open to suggestions for revisions. If you feel that something in the FlexSim Style Guide may not be the best approach for our particular customers, you may voice your concerns to FlexSim's technical writer at any time. Your concerns will be taken seriously and considered for the next version of the FlexSim Style Guide. You are also welcome to make suggestions for additional materials that should be covered in the guide.

How to Use this Style Guide

This style guide is organized by topic for easy reference. You are not expected to read the FlexSim Style Guide in its entirety, but instead to use it as a reference guide. Take some time to familiarize yourself with the general concepts in each section and refer to it whenever you compose technically-oriented texts for customers.

Occasionally, this guide will illustrate how to apply these guidelines using examples of the correct and incorrect way to write text using the FlexSim Style. Those examples will be formatted as follows:

This style guide also contains numerous images that will illustrate the concepts being discussed. By default, images will be shown at a small, condensed size in order to conserve space. If you would like to view the image in its full size, click on the image to expand it to its full size. Then, click on the image again to make it shrink again. Try it out with Figure 1 below:

Test how the image expander works

These guidelines and examples will likely assist you in creating quality content for our customers. Hopefully you'll find it useful!

Quick Start

The Style Guide is meant to be a reference material and so you're not expected to read the whole thing from beginning to end. If you want a quick way to get up to speed with the basics of the FlexSim Style, skip to these sections:

  • Glossary of Preferred Terms and Formats - A table listing the preferred style for specific words and phrases that frequently show up in technical writing about FlexSim products.
  • UI Quick Reference Guide - A table listing the preferred style for discussing UI elements in instructional materials (such as tutorial steps).
  • Revision Guidelines - Developers should review the guidelines for when and how to submit technical documentation for review.
  • HTML and CSS Coding Guidelines - Developers should also be familiar with the guidelines for authoring the HTML documents for FlexSim's User Manual.

Guiding Principles of FlexSim Style

FlexSim prides itself on creating software that is robust and powerful, yet intuitive and easy to use. In order to create this kind of product, we need to pay attention to more than just what we communicate to our customers: we need to be mindful of how we communicate.

With that in mind, the sections in this chapter highlight the guiding principles of FlexSim style. These principles will help us to communicate in a manner that fosters a sense of good will with our customers and partnering businesses. The remaining chapters in this guide will give specific instructions for writing in a way that is consistent with these principles.

User-Friendliness

The following guidelines will help you make your text more user-friendly:

  • Remember that FlexSim prides itself on solving our customers' problems. (Problem solved.) Use a tone that is respectful, supportive, and encouraging.
  • Avoid using a tone that sounds overbearing or restrictive. Users should never feel condescended to, blamed, or intimidated. Emphasize what users can achieve using FlexSim products rather than what they can't.
  • Use everyday words when you can, avoiding overly formal and awkward language that you wouldn't use when speaking to someone in person. Choose short, plain words with a clear meaning as much as possible. Avoid technical jargon whenever possible.

Efficiency

The following guidelines will help you make your text more efficient:

  • Put the most important information first in your sentences and paragraphs.
  • Eliminate unnecessary information and get right to the point. Avoid irrelevant details, self-serving expressions or backstories.
  • Omit unnecessary words and phrases, especially needless adverbs. However, be cautious about sacrificing clarity purely for the sake of cutting the length of your sentences. Try to find a good balance between being brief and being comprehensive.
  • Choose single-word verbs over multiple-word verbs.

Inclusiveness

The following guidelines will help you make your text more inclusive:

  • FlexSim has a global clientele and it's important to be sensitive to our international customers' needs when designing text for them. Choose words and phrases that are clear and easy to translate. Keep sentences simple and avoid ambiguity. Sentences become more difficult to understand and translate if they are long and complex.
  • Don't make generalizations about people, countries, regions, and cultures, especially if the generalizations could be considered derogatory. Avoid culturally-sensitive terms.
  • Use bias-free communication. Use terms that are all-inclusive, gender-neutral, friendly to a diverse audience, and sensitive to people with disabilities. Find ways to rewrite or rephrase sentences if your writing feels awkward when you try to write more inclusively.
  • Avoid clichés, idioms, and other figures of speech that might not be easily understood outside the United States. Be cautious about using humor that might not translate well abroad.

Consistency

The following guidelines will help you make your text more consistent:

  • Use words accurately and consistently. Don't invent words or apply new meanings to existing words. Don't use nominalizations, which are complex verbs created out of existing nouns.
  • Use consistent parallel structures to make your content easier to read and more predictable. Parallelism ensures that the elements of sentences that are similar in purpose are also similar in structure. For example, phrases presented in a list should start the same way (such as with the article a or an) and should have the same basic verbal structure.
  • Write your text using the present tense and the active voice. Avoid passive constructions. See the section about Voice for more information.
  • Use the second person, generally. In other words, refer to readers as you instead of they. Use the imperative mood in procedures and the indicative mood to convey information. See the section about Mood for more information.

Content Strategies

The FlexSim User Manual features a wide variety of content which needs to be handled in different ways stylistically. This section of the Style Guide will explain the different approaches you should take when handling these different types of content.

Types of Content

The FlexSim User Manual has three basic types of content:

  1. Tutorials - Tutorials give users a practical, hands-on introduction to FlexSim's main features. Each tutorial teaches about various aspects of building a simulation model and are designed to be used by both beginning and advanced users.
  2. Concepts and Tasks - This section of the manual is designed to provide a somewhat more in-depth (but still user-friendly) explanation of FlexSim's features. These topics are often written in an article format that explains key concepts about a given feature. These topics might also include step-by-step instructions for completing specific tasks.
  3. Reference - This section of the manual is highly detailed and specific, usually documenting the specific details of every property of every tool or object in FlexSim. This section of the manual is mostly intended for advanced users or developers. Command documentation is also considered reference material.

The following image explains the relationship between these three types of content:

The User Manual Conceptual Framework

In general, tutorials provide the most value to our users and are in the most demand, but they're also the most difficult and resource-intensive content to produce. They also require constant maintenance, since many of the tutorials have at least a few elements that become outdated every time there is a new FlexSim release. See Tutorial Guidelines for style guidelines that are specifically related to tutorial content.

Conceptual and task-oriented topics provide moderate value and are mostly used by users who want to explore a topic in more depth and gain a solid conceptual framework for modeling. They provide a good support system for the tutorials and help users who need a refresher course after having taken a break from FlexSim after a while.

The reference materials are largely maintained by the development team, meaning they control most of the content for this section of the manual. In general, the purpose of this section is to be comprehensive and serve as a reference for advanced users. This material generally gets produced for every new release of FlexSim and developers do a good job of keeping it up to date as part of the development process. Generally, the technical writer only provides feedback about the overall organization of the reference section of the manual. The technical writer might make additional changes in order to help standardize this section of the manual as much as possible.

Content Organization

The overall organization of the User Manual reflects the conceptual framework for these three types of content. Because tutorials are the most valuable types of content for our users, they go at the front of the manual.

Concepts and tasks go in the middle of the manual and are organized to be task-oriented. The chapters are organized roughly in the same order that a user would complete tasks while building a simulation model.

Reference material comes at the end of the manual and the chapters are organized to make it easy to look up a reference topic by the type of object, process flow activity, or tool you are specifically interested in. Command documentation is contained separately in the Command Helper tool.

Notification and Revision Guidelines

Under certain conditions, the technical writer or developers will need to notify each other about significant changes to the software or to the existing documentation. When the software changes, it may require creating new documentation or updating existing documentation. Similarly, when the documentation changes, it may require a review for accuracy and communication quality. Major changes will require notification and collaboration between the technical writer and the developers.

This section will explain some of the general guidelines for the notification and process.

Changes That Need Notification or Reviews

The following flowchart explains whether a software change should require notification of the technical writer:

Does This Software Change Need Notification or a Review?

See Major vs. Minor Changes for an explanation of what kinds of changes are considered major or minor.

In terms of this process, the terms own or ownership refer to the person who will bear the responsibility of being the lead author, meaning they will write the first draft of the documentation and coordinate any reviews as needed. Usually the technical writer should retain ownership of all major documentation. However, developers could potentially own some documentation under certain circumstances. For example, developers could possibly create the first draft of reference documentation if the technical writer is too busy working on other tasks and the developer could produce this documentation faster on his own.

Major vs. Minor Changes

As a general rule, major changes to the software will require notification of the technical writer and the creation of a new documentation task. Major changes to documentation will require a review by the technical writer or developers.

The definition of a major vs. a minor change is explained in the following table:

Major Changes Minor Changes
  • New topics (features, objects, tools, or concepts)
  • Anything that changes the UI (because it can affect screenshots, tutorials, or other content)
  • Additional sections added to an existing topic that comprise more than 1 paragraph
  • Multi-topic find and replace changes
  • Command documentation
  • Fixing typos
  • Fixing links
  • Rephrasing things on a small scale
  • Minor additions to reference documentation

Types of Reviews

Every major change to documentation will require either one of two types of reviews in order to ensure quality:

  1. An Accuracy Review - Every topic needs to be reviewed by a subject matter expert (typically one of the members of the development team) to ensure that the documentation is accurate and correct.
  2. A Communication Quality Review - Every topic needs to be reviewed by a technical writer to ensure that the documentation adheres to the FlexSim Style Guide and uses good communication techniques in general.

If the lead author on a topic was a subject matter expert, only a communication quality review is needed. In a similar vein, if a technical writer was the lead author on a topic, it will need an accuracy review.

The Review Process

When the lead author of a topic is ready to start a review:

  1. The author should push those changes to the appropriate FlexSim repository and create a review in Crucible, assigning it to one or more reviewers.
  2. In Crucible, the reviewer will make notes and comments on various sections of the draft, then notify the lead author that the review is finished. (Don't close the review or else that closes the ability to respond to comments.)
  3. The lead author will review the comments and make changes based on the comments. The decision about whether to implement a suggestion will ultimately rest with the lead author, who will be considered the topic's owner for all intents and purposes.
  4. The lead author closes the review in Crucible at the end of the review process.

After the review, the topic can be cleared for publication in the manual.

Tutorial Guidelines

When designing tutorials, there are a few general principles to keep in mind:

  • Make tutorials scannable. Tutorials should be designed in a way that make it easy for users to skip content that they don't find relevant or useful. When the tutorials are scannable, they can be more easily adapted for users with differing levels of experience and knowledge about FlexSim. See Designing Content for Scanning for specific strategies.
  • Write for the lowest common denominator (the least competent user). In general, you should err on the side of over-explaining rather than assuming the reader will know how to complete a certain task in the model. This means it's better to give too much information rather than too little. As long as you've designed the tutorial to be scannable (see previous point), advanced users who do not need their hands to be held through the tutorial can easily skim or skip content that they might consider to be too basic or over-explained. Meanwhile, beginning users will appreciate having more detailed instructions.
  • Forecast upcoming content. When writing tutorials, you need to give the learner a clear sense of the content and purpose of the tutorial. Forecasting helps the learner to know whether the tutorial will be useful to them or not. Each tutorial overview, task, or step should provide a clear explanation of what the user will do and know by the time they have completed that tutorial, task, or step. Make the learning objectives for that tutorial clear at the outset.
  • Keep instructional material distinct from explanatory material. When writing a tutorial, you're basically switching between two modes of writing. In the instructional mode, you provide specific step-by-step instructions about how to complete a given task or step in the tutorial. This mode almost always takes the form of an ordered list. In explanatory mode, you teach key concepts related to the tutorial's tasks and explaining why you are doing a specific task. Explanatory text usually comes in paragraph form at the beginning of a tutorial, task, or step. You should make sure there is a clear distinction when you switch from one mode to another. For example, if you need to explain something in the middle of an ordered list, use a tip box to do so.
  • Tutorials should be written in the second person. In other words, refer to readers as you instead of they or we. Use the imperative mood in procedures and the indicative mood to convey information. See the section about Mood for more information.
  • Pick a preferred method to accomplish a task when there are two equally valid methods. Sometimes there are two ways to accomplish the same task, such as editing a property in Quick Properties or in a property window. In general, you should pick one preferred method and just use that method consistently in your tutorial. Advanced users will generally find the alternative method through self-discovery. If needed, you can mention the alternative in a tip box or link to concept topics that discuss alternative methods or shortcuts.
  • Never use the default label settings and carefully explain how labels will be used throughout a process flow. Labels tend to confuse beginning users. For that reason, users should be instructed to change the name of labels when setting process flow properties, as opposed to using the default settings. Changing the label to something other than the default will make the purpose of the label more noticeable and obvious to the user. The new label name should be something that is relevant to the specific tutorial they are completing. The purpose of labels should be clearly explained and tracked in step introductions and tip boxes to make their logic as clear as possible.

Tutorial Content Guidelines

Every tutorial should have the following basic content:

  1. Tutorial Overview - A topic at the beginning of each tutorial that summarizes the overall tutorial.
  2. Tutorial Tasks - These topics are the main content of the tutorial. Each tutorial task should provide an overview and instructions for building a specific phase of the simulation model in the tutorial.
  3. Tutorial Steps - Tutorial steps are sub-sections of tutorial tasks. They consist of a general overview of the step and then an ordered list containing the specific instructions for completing that step.

The following sections will explain each type of tutorial content and will provide style guidelines specific to that type of content.

Tutorial Overview

Each tutorial should have a topic that is dedicated to forecasting the entire tutorial. This overview is a separate topic (with its own page).

In the first portion of the overview, you'll explain the high-level concepts taught by the tutorial and give general details about the simulation model the user will build in the tutorial. At the end of this section, you should include an image or animated gif of the final simulation model that will be built in the tutorial.

Example of a Tutorial Overview

In the next section of the overview, you'll provide links to the individual tutorial tasks and provide brief summaries of each one.

Example of a Tutorial Task Overview

In the last section of the overview, you can link to concept topics in the main body of the User Manual for more information. This section of the overview is optional if conceptual topics haven't yet been developed for the tutorial.

Example of a Tutorial Task Overview

Keep in mind the following naming conventions:

  • Never name the Tutorial Overview file Overview.html. Rather, try to give the file a more specific name that is unique to that specific tutorial. Having multiple files with identical names will cause problems when converting the User Manual for the web.
  • Tutorial tasks and steps should always be given a task-oriented name that is written in the imperative mood.

Tutorial Tasks

These topics are the main content of the tutorial. Each tutorial task should provide an overview and instructions for building a specific phase of the simulation model in the tutorial. Generally, each tutorial should have at least two tutorial tasks. Tutorial tasks are also separate, distinct topics (with their own pages). These tasks are a group of tutorial steps that explain how to build a specific phase of a simulation model. If possible, these tasks should be organized around teaching a general modeling concept or a specific feature of a tool.

Tutorial tasks should always begin with a mini table of contents that outlines the sections of the tutorial.

Example of Tutorial Mini Table of Contents

After the table of contents, the first section should be an overview section that summarizes the various steps and learning objectives for the tutorial. It should also include an image or animated gif of the simulation model that will be built by the end of the tutorial tasks. If needed, the overview can also include a section that explains key concepts related to that tutorial task or links to other relevant concept topics.

Example of Tutorial Task Introduction

The main body of the tutorial task will contain tutorial steps. Each tutorial task should contain at least two or more tutorial steps. As a general rule, the technical writer recommends organizing the tutorial steps after the following pattern:

  1. Build the 3D Model - Tutorials should start with building the 3D model, which generally includes adding 3D objects, naming 3D objects, connecting objects, and possibly setting some object properties. You should include an image of the 3D model near the beginning of the step.
  2. Add Activities to the Process Flow - The next step usually involves instructing the user to create a new process flow, add flowchart shapes and activities to the process flow, renaming the activities, and connecting the activities. Generally in this step, you're just building the basic layout of the process flow logic without editing its logical properties. You should include an image of the process flow near the beginning of the step.
  3. Create the Model Logic - In this step, you'll instruct the user to edit the properties for each activity in the process flow and connect it to the 3D model. In the introduction to this step, you should always include a table that explains how each activity will work logically.
  4. Run the Model - In this step, the user will run the model and see how the model logic controls the 3D objects during a simulation run. This step can also be used to discuss the pros and cons or key concepts related to the previous tutorial steps. If needed, you can attach a model run to the end of the task in which you build or modify model logic instead. Including animated gifs of the model run is highly encouraged.

Where only small changes are being made to a model (such as in later model building phases), you can potentially consolidate these different phases into a single step as needed.

The end of the tutorial task should include a conclusion that indicates the entire tutorial is either finished or links to the next tutorial tasks. If desired, the conclusion can also include a discussion of pros and cons of different model building methods that have been covered in the tutorial up to that point.

Tutorial Steps

Tutorial steps are sub-sections of tutorial tasks. They consist of a general overview of the step and then an ordered list containing the specific instructions for completing that step.

Example of Tutorial Step

The following style guidelines apply when writing tutorial steps:

  • Individual steps in must be given a title that is task-oriented and written in the imperative mood.
  • Each task should contain a brief overview of the step. If key concepts related to that step need to be explained, those concepts should be explained in the overview.
  • The specific instructions for each step should be formatted in an ordered list and the content in that ordered list should follow the The FlexSim User Interface (UI) Guidelines.
  • The ordered list of instructions should not contain more or less than 5-20 steps in order to keep the steps focused and simple. If it exceeds this limit, consider breaking the step into two different steps. If you decide to break this rule, make sure you do so for a good reason, such as it being nonsensical to break up a large set of steps into two smaller sets of steps.
  • If an explanatory note is needed in the instructions section of a step, you should use a tip box.
  • Often when you are instructing users to edit a 3D object or process flow activity, the user will need to change more than one property at a time. The directions for editing each property should be its own step. At the end of a set of steps for editing the properties of one object or activity, you should include a screenshot of the property settings for clarification.
  • When instructing users to edit a property that requires them to change the text of a property, instruct them to delete the property's current text first to avoid confusion.
  • All tutorial topics should use the FlexScript code highlighting CSS. Whenever you're telling the user to type something into a property, it should be formatted in <code> brackets. When the code is displayed it will use code highlighting, such as 2.00 or token.operator.
  • If a sentence ends with code highlighting, you can still end it with a period. Since the code highlighting doesn't encapsulate the period, it should hopefully not confuse users too much.

Tutorial Boilerplate Text

When writing tutorials there are certain phrases that you might find yourself using repetitively. The following are a few common ones that you can copy directly into your tutorial to ensure consistency:

  • When you're finished, your process flow should look similar to the following image:
  • For now, you'll merely add and connect these activities to the process flow. You'll edit the properties to add the functionality in a later step.
  • Add the following activities to create a stacked block:

Feel free to add to this list as needed.

Word Choice and Terminology

Consistency and efficiency in terminology and word choice helps improve user-friendliness of documentation.

For a guide on the choice of words you should use when discussing user-interface elements, you should refer to The FlexSim User Interface. However, the rest of this section will discuss some general principles and provide a glossary of specific terms that you should and should not use.

General Word Choice Guidelines

You should keep the following guidelines in mind when writing customer-facing documentation:

  • Use common English words rather than technical terms when possible. You can use a technical term when it's necessary for precise communication, but do not assume that everyone fully understands its meaning. Define technical terms as you use them, possibly including links to a glossary of terms.
  • Avoid using jargon. Jargon is technical language that is common in a particular profession but is not necessarily well-understood by individuals outside that profession. Avoid using jargon when you could easily use a more familiar term. If you are not sure whether a particular term is jargon or not, you should assume that it is.
  • Avoid using Latin and other non-English words or phrases. Phrases such as de facto or ad hoc can be easily misunderstood, especially by international audiences. The phrase etc. is acceptable to use when space is limited, but the phrase and so on might be a better alternative.

Glossary of Preferred Terms and Formats

The following table provides a list of specific terms that you should and should not use.

Preferred Term Avoid These Terms Explanation
3D
  • 3d
  • 2d
Capitalize the letter D in 2D and 3D
A-connect
  • 'A' connect
You can add the term A-connect or S-connect in parentheses for clarification when directing users to make a port connection.
dashboard
  • Dashboard
  • dash board
Do not capitalize the term Dashboard. Treat it as one word.
data (plural)
  • data (singular)
Treat the term data as a plural noun.
fixed resource
  • Fixed Resource
  • FixedResource
The term fixed resource should usually not be capitalized except in rare cases when referring to fixed resources as a concept (and even then with caution)
FlexScript
  • Flexscript
Use camel case capitalization for FlexScript to avoid confusion.
FlexSim
  • Flexsim
Use camel case capitalization for the company name to avoid confusion.
FlexSim Healthcare
  • FlexSim Health Care
When discussing the software, Healthcare is all one word.
flow item (item is also acceptable)
  • flowitem
Try to avoid using jargon unique to FlexSim by inserting a space in between flow and item. The term item is acceptable if it is clear from the context what you are referring to.
for example
  • e.g.
Avoid non-English words.
global tables
  • Global Tables
  • GlobalTables
By default, keep this term in all lowercase unless it makes sense to capitalize it in a specific context. Do not combine it into one word.
type
  • itemType
  • item type
  • Itemtype
As of FlexSim 2017.1, the term itemtype will no longer be in use in the software. Users should be encouraged to use the type label instead.
namely
  • viz.
Avoid non-English words.
picklist
  • pick list
In general, you should try to avoid using this term generally since it's jargon.
people objects or people-based objects
  • People objects
  • HC objects
  • healthcare objects
General users will only ever see objects in the UI labeled as people objects and not as HC or healthcare objects. Only if you change your environment to the HC environment will instances of people be replaced with HC. Therefore, people objects or people-based objects are the preferred terms to refer to these types of objects. These terms better reflect the user experience.
processor
  • Processor
The term processor should usually not be capitalized except when referring to a specific processor in a model (such as Processor4).
simulation model
  • model
Never use the term model by itself. The term model is vague and can potentially apply to a lot of different contexts and concepts. Always use a modifier with the term model such as 3D model or simulation model for clarification. It is also acceptable to refer to a simulation model merely as a simulation or a simulation run.
sub flow
  • subflow
The term sub flow is a shortened version of the term sub process flow. Use sub flow to mirror the way the term is used in the user interface.
task executer
  • Task Executer
  • TaskExecuter
The term task executer should usually not be capitalized except in rare cases when referring to task executers as a concept (and even then with caution).
task sequence
  • Task Sequence
  • taskSequence
By default, keep this term in all lowercase unless it makes sense to capitalize it in a specific context. Do not combine it into one word.
that is
  • i.e.
Avoid non-English words.
therefore
  • ergo
Avoid non-English words.
toolbox
  • Toolbox
Format the term toolbox in all lowercase.
User Manual
  • users manual
  • user's manual
Capitalize User Manual and be consistent in your terms when referring to it.

The FlexSim User Interface (UI)

This section will discuss common user interface (UI) elements and provide recommendations for discussing these elements in technical documentation. In particular, this portion of the guide will give specific guidelines about how to properly format these UI elements in technical documentation.

For a condensed version of these recommendations, use the UI Quick Reference Guide.

General UI Guidelines

You should keep the following guidelines in mind when writing customer-facing documentation:

  • The overall goal is to increase the ability for readers to scan the text and identify relevant UI elements quickly. Using consistent terminology and formatting will help your readers easily find the information that they need to accomplish the tasks they need to complete.
  • Pay attention to whether you are discussing general concepts or giving specific instructions. While many of the specific guidelines recommend bolding certain UI elements (such as menu names, property names, etc.), you only need to bold these items when giving the user instructions. You don't need to bold these items when introducing specific concepts unless you want to draw attention to a new term the first time you use it.
  • Clickable UI elements should be formatted in bold when giving instructions to users. If you're telling a user to click on a particular element in the UI, it should be formatted in bold.
  • When in doubt, mirror the capitalization in the UI. If you're not sure whether to capitalize something or not, just make sure you're consistent with the way terms are displayed in the user interface.

UI Quick Reference Guide

The following table is a quick explanation of how to format text discussing various user interface elements. NOTE: You might want to read General UI Guidelines first for a few rules of thumb about discussing UI elements. For a more in-depth version of these recommendations, see the FlexSim User Interface (UI).

For your convenience, the following table is available in both PDF or Word format for easy printing:

Quick Reference Guide.pdf
Quick Reference Guide.docx
UI Element Usage Notes Example
check boxes
  • Format the check box title in bold when giving instructions.
  • Always surround the title with the words the and check box.
  • Use the verb check to tell users to put a check in a check box. Use the verb clear to tell users to remove a check from a check box.
  • See Check Boxes for more information.
Check the Use Transport check box.
control bar (formerly simulation control panel)
  • Can be referred to as simulation control bar or control bar for short.
  • Use the term button to refer to control bar buttons.
  • At least the first time you discuss a control bar button, use the specific button name surrounded by the words the and button.
  • Only use the verb click to describe control bar button interaction.
  • Format the button name in bold when giving instructions to users.
  • See Control Bar for more information.
Pause your simulation by clicking the Stop button on the simulation control bar.
flow items (formerly flowitems)
  • Only use the term flow item or item to refer to items. Avoid referring to items as flowitems or boxes.
  • Do not capitalize the term flow item.
  • Do not format the term flow item in bold.
  • See Flow Items for more information.
Notice that flow items are beginning to stack up in the queue.
group boxes
  • Introduce a group box using the prepositions under or in, followed by the title of the group box, followed by the word group or area.
  • Format group box titles in bold when giving instructions to users.
  • See Group Boxes for more information.
Under the Output group, check the Use Transport check box.
key names and keyboard shortcuts
  • Use the verb press to refer to the action of pressing a key. Use the verb press and hold down to tell users to press a key continuously. Use the verb type to refer to the action of typing a phrase on a keyboard.
  • Spell key names as they appear on the keyboard. Capitalize the key name.
  • When telling users to press a key, do not format the key names in bold. However, when telling users to type a letter key, format the letter key in bold.
  • When explaining keyboard shortcuts, you can refer to a key combination or key sequence by the keys that make it up. Use either the plus sign or commas and spaces to indicate the sequence of keys.
  • See Key Names and Keyboard Shortcuts for more information.
Press the backspace key to delete an object.
links
  • Use text that is as descriptive as possible, preferably the title of the document you are linking to.
  • Never use phrases like click for more info or click here as the hyperlinked text.
  • See Links for more information.
See Ports for more information.
list boxes and drop-down list boxes
  • Format the list box title in bold when giving instructions to users.
  • Always use the term the before the list box title. After the list box title, use either the term list or box, whichever is clearer.
  • Use the verb click or select to tell users which selection to choose.
  • Format the selection title in bold.
  • See List Boxes for more information.
In the Setup Time list, select Statistical Distribution.
main menu
  • Refer to a specific menu by name, surrounded by the words the and menu.
  • Use the verb click to describe menu interaction. Use point to for submenus.
  • Avoid using angle brackets (>) to direct users to menu options.
  • Format in bold when giving instructions to users.
  • See Main Menu for more information.
On the Statistics menu, point to Dashboards, then click Add.
mouse terminology
  • Use mouse button to indicate the left mouse button. Use right mouse button to refer to the right mouse button. Use mouse wheel to refer to the middle button on the mouse.
  • Use the verbs click, double-click, and right-click to refer to mouse clicks.
  • Use the term point to when you want a user to hover over an item without clicking it.
  • Use the verb drag, but not click and drag, drag and drop, or press and hold.
  • See Mouse Terminology for more information.
Drag a processor from the Library into your model.
objects
  • When referring to an object, refer to its actual name. If you instructed a user to change the object's label, refer to the specific name you told them to use.
  • You do not need to capitalize the name of the object unless you are referring to a specific object in a specific model.
  • Use the verbs click and double-click to describe object interaction. Use the term drag instead of click and drag.
  • See Objects for more information.
Drag a processor from the Library into your model.
option buttons (radio buttons)
  • Refer to option buttons by their label or their title.
  • Use the verb click or select to describe how a user should interact with option buttons.
  • Format the options in bold when giving instructions to users.
  • See Option Buttons for more information.
If you are activating your license directly from FlexSim, click Activate through FlexSim.
panes
  • Refer to each pane by the title of its content rather than its location, such as the Library. Only describe the location of the pane if needed for clarity.
  • Refer to them as panes, not panels.
  • Do not format pane titles in bold.
  • Refer to individual submenus on panes by their titles alone. Since submenus are clickable, they should be formatted in bold when giving instructions to users.
  • See Panes for more information.
In the Quick Properties pane, under Output, select the Use Transport check box.
picklists
  • Use the term picklists. Do not refer to them as pick lists.
  • In general, you should try to avoid using this term generally since it's jargon.
  • If you need to refer to the actual drop-down list or field in a picklist, you can refer to those as pick list options.
  • When referring to specific picklists, mirror the spelling and capitalization in the user interface.
  • Use the verb click or select to refer to selecting a picklist from a drop-down list box.
  • Format the names of specific picklists in bold. Do not format the term picklist in bold typeface.
  • See PickLists for more information.
Use the Set Object Color pick list if you want a processor to change a flow item's color.
port connections
  • Refer to the specific type of port connection users should create between objects (input/output or center).
  • The terms port, port connection, center, input, or output are not capitalized.
  • Use the verb connect to describe the process of making port connections. Make sure it is clear from the context the exact order objects should be connected. Also make sure it is clear what types of connections user should make.
  • Names of port connections should not be formatted in bold, but the Connect Objects tool should be in bold when giving instructions to users.
  • See Port Connections for more information.
Connect Queue2 to Processor3. Make sure that the output port on Queue2 is connected to the input port on Processor3.
Properties dialog box
  • Use the term dialog box to describe the Properties dialog box or simply refer to it as Properties.
  • See Properties Dialog Box for more information.
Double-click an object to open the Properties dialog box.
spin boxes
  • In content for customers, simply refer to the spin box by its label. For example, the X-Position box. Only use the term spin box when writing for a technical audience.
  • Do not use the term spinners or other labels to refer to spin boxes.
  • Format the labels of spin boxes in bold when giving instructions to users.
  • For complex spin boxes that have both unnamed and named labels, make sure it's clear from the context which box you are referring to.
  • See Spin Boxes for more information.
Use the Position box to adjust an object’s position within the model.
Start Screen
  • When discussing the Start Screen page, format anything that is clickable in bold typeface.
On the Start Screen, click the New Model button in the upper-left corner to create a new model.
tabs
  • Always surround tab names with the words the and tab.
  • Use the verb click to describe how a user should interact with tabs.
  • Format tab names in bold when giving instructions to users.
  • See Tabs for more information.
Click the Statistics tab to view the statistics generated by the simulation.
text boxes and drop-down combo boxes
  • Format the text box title in bold when giving instructions to users.
  • Use the verb type to refer to the process of entering text into the text box.
  • See Text Boxes and Drop-Down Combo Boxes for more information.
In the Send to Port box, type or select the method you want the queue to use when sending flow items to the processor.
toolbar
  • Use specific name of the command when discussing a toolbar button.
  • Add a descriptive adjective or name in front of the word toolbar if it is not clear which toolbar you are referring to.
  • Only use the verb click to describe toolbar button interaction.
  • Format in bold when giving instructions to users.
  • See Toolbar for more information.
On the main toolbar, click New.
triggers
  • When referring to a specific trigger, refer to it using its specific title, mirroring the spelling and capitalization in the user interface.
  • Format the names of triggers in bold typeface.
  • See Triggers for more information.
If you want Processor4 to paint each item, you could add the Set Object Color behavior to the OnProcessFinish trigger.
unnamed buttons
  • Use the name of the tooltip and then insert a graphic showing a picture of the button, if possible.
  • See Unnamed Buttons for more information.
Click the Code Edit button to directly edit the code for the OnProcessFinish trigger.

Main Window

The following image illustrates the proper terminology for the user interface elements of the main window in FlexSim:

The Main Window in FlexSim

The sections below will discuss how to correctly format text when discussing these UI elements with customers.

Toolbar

A toolbar is a group of commands optimized for easy access. Unlike a menu, which contains a comprehensive list of commands, a toolbar contains the most frequently used commands. The FlexSim toolbar is a Graphical User Interface (GUI) with button icons for the most frequently used commands. A few of the toolbar buttons have submenus, which are indicated by the arrow next to the icon. The following are some guidelines for discussing toolbars in technical documents for customers:

  • When referring to toolbar elements, use the term button. Do not refer to a toolbar button as a choice or an option. Also, do not refer to a toolbar button as a toolbar item or a toolbar control except in content for software developers about the user interface. When giving instructions about toolbar buttons, you can simply use the command name, such as "click Save on the toolbar."
  • When referring to a specific toolbar, use lowercase for the word toolbar, unless the word Toolbar appears in uppercase in the user interface. Toolbar is always one word. You can also simply refer to the main toolbar as the toolbar.
  • To describe user interaction with toolbars and toolbar buttons, use click for toolbar buttons and submenu commands, and click, type, or enter if a submenu command requires users to provide information. Do not use choose, select, or pick.
  • Toolbar buttons should be in bold typeface in customer-facing documentation.
  • A toolbar item with a submenu is called a menu button if the user can click either the button or the arrow to open the submenu. For submenus, use the words the and menu with toolbar menu buttons, but do not use the word button, such as "click the Create Objects menu on the toolbar, and then click Create Objects."
  • In content for a general audience, do not add any extra descriptors to the term toolbar such as cascading, drop-down, pull-down, pop-up, or submenu unless the way that the menu works needs to be emphasized as a feature of the product. Avoid using angle brackets > for submenu items.
  • Refer to unavailable menu commands as unavailable, not as dimmed, or grayed since those words could potentially seem unprofessional or even offensive to certain audiences. You may use the term dimmed to describe the appearance of an unavailable command, but not grayed. You may use the term disabled, but please do so with caution and sensitivity.

Control Bar (Formerly Simulation Control Panel)

The control bar, also known as the simulation control bar, refers to the commands that are used to reset, run, stop and otherwise control simulations. It contains both text and Graphical User Elements (GUI) such as icons that resemble the playback functions on a video or music player.

In the past, the control bar has typically been referred to as the Simulation Control Panel. While this phrase is an accurate description of the UI element, the term control panel might be confusing because of it is used in the Windows UI as a way to change basic systems settings. FlexSim uses this term in a completely different way.

The following are some guidelines for discussing the control bar in technical documents for customers:

  • The control bar contains buttons. Do not refer to a control bar button as a choice, an option, or as controls. The first time you discuss a control bar button, use the specific button name surrounded by the words the and button, as in "the Reset button." You can possibly omit the words the and button if it is immediately apparent from the context that you are referring to a specific button on the control bar.
  • When referring to the control bar, use the lowercase word control bar or simulation control bar.
  • To describe user interaction with the control bar, use click or press. Do not use choose, select, or pick.
  • Control bar button names should be in bold typeface in customer-facing documentation.

Panes (Library, Quick Properties, Etc.)

Panes are a framed section of a window. FlexSim uses panes extensively throughout its UI. Some of the common panes are:

  • Left pane - Contains the Library and the Toolbox. The contents of the Library change based on what kind of window is open in the center pane.
  • Right pane - Contains the Quick Properties pane.
  • Bottom pane - Usually closed by default, this displays error messages, typically. However, it can also contain the Animation pane and other features.
  • Center pane - Contains the 3D Model View by default. This pane can also be used to display various windows or tabs such as process flows, the Flow Item Bin, the dashboard, or the User Manual, the Tree View, etc. The center pane can be split into multiple windows that can be viewed simultaneously (which is the default) or the windows can be re-arranged as tabs on the center pane to be viewed one at a time.

A few panes, such as the Library and Quick Properties, have content that is context-sensitive, which means the content varies depending on the object currently selected or displayed in the center pane. These panes also have submenus that can be expanded or collapsed by clicking the progressive disclosure controls: the + or - sign or arrows next to the menu title.

The following are some guidelines for discussing these panes in FlexSim documentation:

  • Do not refer to panes as panels. The term pane is used more commonly in documentation. NOTE: Microsoft possibly coined the use of the term pane in a software context because their operating system was named Windows. Because actual windows contain panes, that may have been the inspiration for the term.
  • Refer to each pane by the title of its content rather than its location, such as the Library, the Model View, Quick Properties, etc. However, when the pane is currently displaying something different than its normal content (such as when Tree Navigation is being displayed in the right pane), refer to that content by both its title and location, such as "Tree Navigation in the right pane."
  • When you are referring to a pane by the title of its contents, use the same capitalization that is used in the UI, e.g. the Library, Quick Properties, etc. If you are describing the pane's location rather than its title, use lowercase letters instead, such as "the center pane."
  • Generally, you should not bold the names of panes. However, you can bold the names of submenus on panes.
  • On panes that have submenus such as the Library and Quick Properties, refer to the individual submenus by their titles alone, such as "in the Quick Properties pane under Statistics." Do not do not add any extra descriptors such as submenu, accordion menu, accordion pane, cascading, drop-down, or pull-down. If you must use an extra descriptor, use the term group instead, such as "in the Quick Properties pane under the Statistics group."
  • When talking about the progressive disclosure controls, just refer to the individual controls by name or by its symbol. Use the verbs expand and collapse to refer to these actions, such as "click the plus sign (+) next to Statistics to expand it."

Tabs

A tab is a feature that allows one or more panes to be contained within a single window. By default, FlexSim splits the center pane when a user opens a feature such as a Statistics dashboard, the User Manual, or Tree View. As an alternative to splitting the center pane, users can dock these windows as tabs in the center pane for easier access. The following are some guidelines for discussing tabs in FlexSim documentation:

  • Always surround tab names with the words the and tab in procedural documents. When referring to a specific tab, capitalize the name of the tab, but use lowercase for the word tab, as in "the Statistics tab."
  • Use the verb click to describe how a user should interact with tabs.
  • Tab names should be in bold typeface in customer-facing documentation.

The 3D Model

The following image illustrates a few of the major elements of the 3D model in FlexSim:

Major Elements of Model View

The sections below will discuss how to talk about how to correctly format text when discussing these UI elements with customers. See the Quick Reference Guide for a condensed version of these suggestions.

3D Objects

In FlexSim, 3D objects are the basic building blocks of a simulation model. Using various objects from the FlexSim library, users can design and test the process or system they want to simulate. Each type of object has unique properties and functions. For example, a source creates new items, a transport moves items from one space to another, a processor delays or changes items in some way, and so forth.

The following are some guidelines for discussing objects in FlexSim documentation:

  • When referring to a specific object or type of object, use the actual object's name, such as source, processor, conveyor, etc. In a tutorial, you should refer to the object by the name you told the user to assign it, such as Processor3, Rack5, Queue2, etc. Avoid surrounding the object name with the words the and object.
  • You do not need to capitalize the name of the object unless you are referring to a specific object in a specific model.
  • Use the verb click or double-click to describe how a user should interact with objects. When you want to instruct users to drag an object from one space to another, use the verb drag instead of click and drag. Don't use words such as choose, select, or pick.

Items

In FlexSim, items are abstract items that move (flow) through the simulation model. By default, flow items are graphically represented as brown boxes in FlexSim.

The following are some guidelines for discussing flow items in technical documentation:

  • Only use the term flow item or item to refer to flow items. Avoid referring to items as flowitems or boxes. Only refer to items as objects when discussing them in a very general sense, such as when giving a high-level overview of how FlexSim works. However, if you are working one-on-one with a customer who has a specific item in mind that will be represented by the items in the simulation model, it is acceptable to substitute the name of that item for flow item.
  • Do not capitalize the term flow item.
  • The term flow item is never in bold typeface.

Port Connections

In FlexSim, port connections are used to connect one object to another. There are two types of port connections in FlexSim:

  • Input/Output ports: These ports are used to determine how an item passes from one object to another. When an output port on one object is connected to the input port of another object, the item will pass from the first object's output port to the next object's the input port.
  • Center ports: When the center ports of two objects are connected, it creates an abstract reference point between those two objects. Center ports enable objects to communicate or interact in complex ways.

Users create ports using the Connect Objects tool or various keyboard shortcuts. Users remove ports using the Disconnect Objects tool or keyboard shortcuts.

Port connections can be difficult to document and describe clearly. With that in mind, please follow these guidelines closely when writing about them:

  • Avoid using the term port by itself unless you are discussing the concept of ports generally. In most cases, you should probably refer to a port specifically as an output port, an input port, or a center port. Keep in mind that users will almost always assume you are referring to an input/output port when you use the generic term port. For that reason, you should take great care to use descriptive adjectives to refer to specific port types, especially center ports.
  • In general, you should refer to connections between ports as port connections. When discussing center port connections specifically, you should always use the full term center port connection for clarity.
  • You can add the term A-connect or S-connect in parentheses for clarification when directing users to make a port connection.
  • The terms port and port connections should not be capitalized. The descriptive terms center, input, output, open, or closed should also not be capitalized.
  • Use the verb connect to describe the process of making port connections. However, when using the verb connect, make sure that it is clear from the context: 1) which type of port connection the user should make, 2) which object should have the output port or the input port, and 3) which port will have highest priority when the object is potentially pushing flowitems to multiple objects. In other words, make sure that you clearly indicate the precise order that objects should be connected when instructing users to connect two objects. Also make sure that you are clear what type of connection users should make.
  • Alternatively, you can use the phrase create a port connection to describe how users should connect one object to another, such as "create a port connection from Source1 to Queue2." When using this phrase, make sure you use the prepositions from and to (in that order) to clarify which object the user should click first and which object they should click second. Use the full phrase create a center port connection when you are specifically discussing center ports.
  • In general, try to avoid using the phrases connection mode and disconnection mode. Try to only use these terms to describe what happens when a user is using the Connect Objects tool or Disconnect Objects tool or related keyboard shortcuts. If it is necessary to use these terms, use the phrases turn on or turn off, such as "turn on connection mode" or "turn off disconnection mode." Do not use the phrase enter or exit to describe how users turn connection and disconnection mode on or off.
  • See the section on Key Names and Keyboard Shortcuts for information on discussing keyboard shortcuts related to port connections.
  • Because port connections themselves cannot be clicked directly, they should not be formatted in bold typeface in documentation. Because the Connect Objects and Disconnect Objects tools are clickable, they should be in bold typeface.

The Properties Dialog Box

The Properties dialog box is shown in following image:

The Properties Dialog Box

The Properties dialog box is a key component of the FlexSim User Interface because it enables users to customize an object's properties. The following are some guidelines for discussing these panes in FlexSim documentation:

  • Use the term dialog box to describe the Properties dialog box or simply refer to it as Properties. Avoid using property sheet, property window, or property panel as a descriptor.
  • When referring to the Properties dialog box for a specific object, use that object's name as a descriptor in front of the term Properties dialog box, as in "Processor4's Property Dialog Box."
  • When discussing tabs in the Properties dialog box, use the same guidelines for discussing tabs found in the main window. See Main Window - Tabs.
  • For an in-depth set of guidelines for discussing the various elements of the Properties dialog box such as check boxes, pull-down menus, text boxes, buttons, etc., see the guidelines in General User Interface Elements below.

Picklists

Picklists are pre-programmed functions that have been created by the FlexSim development team to simplify common tasks or options in FlexSim. For example, there are picklists that can change the shape and color of an item or that can change the rate at which particular events occur in the simulation.

The following are some guidelines for discussing picklists in FlexSim:

  • Picklists should be referred to using the term picklist, not as pick lists.
  • In general, try to minimize the use of the term picklist as it is jargon that is unique to FlexSim. You can simply refer to the picklist by name.
  • If you need to refer to the actual drop-down list or field in a picklist, you can refer to those as picklist options.
  • Do not capitalize the term picklist. When referring to the names of specific picklists, mirror the capitalization that is used in the user interface.
  • Usually, users select picklists from various drop-down menu lists in the Properties Dialog Box or Quick Properties pane. For that reason, you can use either the verb click or select to refer to the process of selecting a picklist from a drop-down list.
  • The term picklist should not be in bold typeface. However, the names of specific picklists should be in bold typeface, especially when you are instructing users to click on the picklist name in a drop-down menu list.

Triggers

Users can define a trigger to execute a particular set of code during the simulation. Generally, triggers will execute at specific points during the simulation run.

The following are some guidelines for discussing triggers in FlexSim:

  • When referring to a trigger, refer to it using its specific title, mirroring the spelling and capitalization used on the user interface.
  • Format the names of triggers in bold typeface.

General User Interface Elements

This section will discuss general user interface (UI) elements and provide recommendations for discussing these elements in technical documentation.

Check Boxes

A check box is a square box that is selected or cleared to turn an option on or off. Follow these guidelines when discussing check boxes:

  • When referring to a check box, format the check box title in bold typeface. Always surround the title with the words the and check box.
  • Use the verb check to tell users to put a check in a check box. Use the verb clear to tell users to remove a check from a check box. Avoid using select or uncheck to instruct users what to do with check boxes.

Group Boxes

A group box is a frame or box that encloses a set of related options. In some programs, a group box can be indicated by a single line that unifies the options below it. For example, in the image below, Output and Input are both two different group boxes. The following shows an example of a group box in FlexSim:

Example of a Group Box in FlexSim

Follow these guidelines when discussing group boxes:

  • Keep in mind that group boxes are usually only visual devices, not actual elements of the user interface. However, pointing out group boxes to users can help direct their eyes to the appropriate part of the screen.
  • When discussing group boxes, you can decide whether you need to mention the title of the group box for clarity or not. If you decide to use the group box title, you can introduce it using either the prepositions under or in, followed by the title of the group box, followed by the word group or area.
  • Group boxes titles should be formatted in bold typeface.

Key Names and Keyboard Shortcuts

Follow these guidelines when discussing keys and keyboard shortcuts in FlexSim:

  • Use the verb press to refer to the action of pressing a key. Use the phrase press and hold down to tell users to press a key continuously unless it is obvious from the context that they should do so. Use the verb type to refer to the action of typing a key or a phrase on a keyboard.
  • When telling a user to press a key, spell the key names as they appear on the keyboard. Capitalize the key name.
  • When telling users to press a letter key, capitalize the letter. Do not format the key in bold typeface.
  • When telling a user to type a letter key, use a lowercase for the letter and use bold formatting, unless an uppercase letter is required.
  • On first mention, you can use the definite article the and key with the key name if necessary for clarity. For example, "the F2 key." On subsequent mentions, refer to the key only by its name. For example, "press F2."
  • Because special character names could be confused with an action or could be difficult to see, always spell out the following character names: Plus Sign, Minus Sign, Hyphen, Period, and Comma. It is acceptable to add the symbol in parentheses to avoid confusion if needed.
  • When explaining keyboard shortcuts, you can refer to a key combination or a key sequence by the keys that make it up. To specify a key combination, use the plus sign between the keys to be pressed. You can also use commas and spaces to indicate the sequence of keys to be pressed.

List Boxes and Drop-Down List Boxes

A list box is any kind of box containing a list of items the user can select. A drop-down list box is a closed version of a list box with an arrow next to it. Clicking the arrow opens the list. Follow these guidelines when discussing list boxes and drop-down list boxes:

  • When referring to list boxes, format the list box title in bold typeface. Always use the word the before the list box title. After the list box title, use either the term list or box, whichever is clearer. Avoid referring to it as a drop-down menu or pull-down menu.
  • Use the verb click or select to tell users which selection they should choose from the list box.
  • If you are instructing users to select a specific item in the list box, format the selection title in bold typeface as well.

Mouse Terminology

Follow these guidelines when instructing users how to use a mouse with FlexSim:

  • Use mouse devices if you need to refer to more than one mouse.
  • Use mouse button to indicate the left mouse button. Use right mouse button to refer to the right mouse button. Do not use mouse button 2 or secondary mouse button.
  • Use mouse wheel to refer to the third or middle button on the mouse. Use the term scroll in and scroll out to refer to mouse wheel movement. The term rotate is also acceptable.
  • Use the pointer to refer to the mouse pointer. Do not use the term cursor.
  • Use the verbs click, double-click, and right-click to refer to mouse clicks. Always include the hyphen for double-click and right-click. Do not use the terms choose, select, or pick to refer to mouse clicks.
  • When you want to tell users to put their mouse over an item without clicking it (such as when opening a submenu), use the term point to. Do not use > marks and do not use the term hover.
  • Use the term drag, but not click and drag, drag and drop, or press and hold.
  • Do not combine keyboard and mouse actions as if they were keyboard shortcuts, such as shift+click.

Option Buttons (Radio Buttons)

An option button, also sometimes called a radio button by developers, is a round button used to select one of a group of mutually exclusive options. Follow these guidelines when referring to option buttons:

  • Refer to option buttons by their label or their title. In other words, refer to buttons by the text that is next to the button. Do not use the term option, option button or radio button to describe what users should click.
  • Use the verb click or select to describe how a user should interact with option buttons. Don't use words such as choose or pick.
  • Format option button labels in bold typeface.

Spin Boxes

Spin boxes are text boxes with up and down arrows that users click to move through a set of fixed values. The user can also type a valid value in the box. The following image is an example of a spin box:

Example of a Spin Box in FlexSim

The following are some guidelines for discussing spin boxes:

  • In content for customers, simply refer to the spin box by its label. For example, the X-Position box. Only use the term spin box when writing for a technical audience.
  • Do not use the term spinners or other labels to refer to spin boxes.
  • Format the labels of spin boxes in bold.

The previously mentioned guidelines can be especially challenging because some spin boxes in FlexSim (such as the one pictured above) have complex labels using that are both unnamed and named. In these cases, make sure that it is clear from the context which box you are referring to.

Start Screen

The Start Screen is the beginning screen that displays after FlexSim has finished loading. The Start Screen essentially acts as a portal, giving users a chance to quickly start a new project or open an existing project. It also provides new users with links to help them learn how to use FlexSim. The following illustrates how the Start Screen looked in a previous version of FlexSim:

The Start Screen

The only general guideline to follow when discussing the Start Screen page is to format anything that is clickable in bold typeface.

Text Boxes and Drop-Down Combo Boxes

A text box is a rectangular box in which users can type text or numbers. If the box already contains text, the user can select the default text or delete it and type new text or numbers. Drop-down combo boxes are text boxes with list boxes attached. Follow these guidelines when discussing text boxes and drop-down combo boxes:

  • When referring to a text box, format the text box title in bold typeface. Always surround the title with the words the and box.
  • Use the verb type to refer to the process of entering text in the text box. You can also include the word enter if there is no chance of confusion. If you are instructing the user to select an item from the drop-down combo box, use the term click or select.

Unnamed Buttons

Some buttons in the FlexSim User Interface have graphics rather than text. If you refer to an unnamed button that appears in the interface, use the name of the tooltip, and then insert a graphic showing a picture of the button, if possible.

File and Coding Guidelines

These guidelines will apply to the User Manual's HTML and CSS files in the User Manual. It also includes some general guidelines for coding in FlexScript.

File Management Guidelines

The following guidelines are for creating and naming files in the User Manual directory:

  • Always update the Table of Contents file (TOC.html) in the root folder. Before FlexSim releases any version of FlexSim (including betas and bug fixes), the Development team runs a script that builds the in-software Table of Contents (TOC) using the structure in the TOC.html file in the root directory. If you add any file to the manual that you want to be accessible from the TOC, you must update this file. Make sure the link paths are correct.
  • Every topic in the TOC needs a unique data-topic id. Every topic in the TOC.html file should be assigned a unique data-topic-id (usually the ID matches the name of the file). In addition to running a script that updates the in-software Table of Contents, the help buttons in various parts of the UI need to link to topics with these data-topic-ids. Furthermore, the Development team will run a script before each release that updates the links in each topic to match the path that is listed for a specific data-topic-id in the TOC.html file. For that reason, all links to other topics need to contain a data-topic-id in order to prevent broken links.
  • The topic file folder structure and file names should exactly mirror the TOC.html file. For every nested level of content in the Table of Contents, there should be a direct correlation in the nested file folders in the User Manual directory with no exceptions. The file names should match the names in the Table of Contents as closely as possible to avoid confusion. Clarity in file naming is valued over brevity. In other words, it's better to have a long, accurate file name than a brief, ambiguous one.
  • Use initial capitalization and camel case capitalization in file names. File names should always begin with a capital letter, including image file names. If the names of files contain multiple words, use camel case capitalization to indicate multiple words. Do not use dashes (-) to separate multiple words in a file name.
  • Images used by only one topic should be contained in the Images folder for that topic. Each topic should have its own folder containing the HTML file for that topic and its own Images folder which contains all the image files used by that topic. Some developers occasionally complain that this file structure is inefficient, but it makes it easier to know which images belong to each topic. It also allows for easier file management if topics need to be moved to different sections of the manual.
  • Images used by multiple topics should be contained in the Images folder in the root folder. Images such as buttons or other UI elements that are referenced by several topics should be contained in the Images folder in the root folder.

HTML and CSS Coding Guidelines

HTML markup for FlexSim's User Manual should be consistent. When the HTML is coded using uniform rules, it is easier to change styling and formatting going forward. You should not do inline CSS styling unless you have specific reasons for deviating from the standard formatting. The following tables list User Manual formatting examples with their accompanying proper HTML.

General Guidelines

The following general guidelines apply to HTML and CSS files in the User Manual directory:

  • Thou shalt not change the CSS. Changes to the CSS are considered major changes and should be made in consultation with the major stakeholders, including the FlexSim technical writer.
  • HTML files should use line breaks. Line breaks help developers or other content reviewers to review the differences from one file to another within Mercurial. The technical writer recommends using a tool to guide when a line break should occur. For example, if you use Notepad++, you can open the Settings menu and select Preferences. In the Editing settings in the Vertical Edge Settings group, you can check the Show vertical edge checkbox and set the number of columns to 100. This will create a blue line in your editor that suggests where you should break a line. It helps to keep your line breaks consistent.
  • Use indents to indicate a tag is nested in another tag. If you have nested a tag within another tag, it should be indented inside that tag to keep the HTML page well-organized and easy to read.
  • You can never use too much white space. Don't be afraid to use white space (hard returns) between content, such as between two <li> tags in a list or between two <p> tags. Using white space liberally increases the HTML file's readability.
  • Use CSS to create white space rather than <br> tags. You should avoid using break tags in general. The only exception to this rule is that you can sometimes use break tags to create paragraphs inside table cells.
  • In reference topics, format descriptions of multiple buttons in a table. If you need to describe what each button in a UI does and there are multiple buttons, format those buttons in a table.

Heading Tags

The following table discusses the rules for the kind of content that should use heading tags. NOTE: In general, you should not go any deeper than an h4 tag in User Manual content. If you need more sub-sections in a given topic, you should try to reorganize it rather than use more nested headings.

Heading Tag Usage Explanation
h1 Main Topic Heading The h1 tag should be used as a topic heading. Generally, there should only be one h1 tag per each topic, located at the top. It should be identical to the text contained in the topic's <title> tag.
h2 In-Topic Heading The h2 tag should be used as an in-topic heading. Each main section within a topic should have an h2 heading above it.
h3 In-Topic Sub-Heading The h3 tag should be used as an in-topic sub-heading. If a given section of a topic is split into sub-sections, then each sub-section may have an h3 above it.
h4 Important Notes and Tip Box Titles The h4 tag should only used to create titles for important notes and tip boxes.

Section Tags and Anchor Links

The User Manual uses the HTML 5 <section> tag in all topics. The following guidelines apply to this tag:

  • Each topic should be divided into logical sections. Every topic should be broken up into multiple sections that follow good organization principles. The content in these sections should be nested within <section> tags.
  • Each section in a topic should be given a unique ID. Assign a unique id to each section. This section ID will take the place of <a name> tags when creating anchors when linking to content within a page.
  • Every section should first contain an h2 tag. Every section tag should start with a title to that section, formatted in h2s.
  • Subsections (which start with an h3 tag) do not need to be their own nested section tag. Subsections can simply be contained within a single section tag. If you feel that the HTML file would be easier to read by adding nested section tags for subsections, you can add it at your discretion.

Bold and Italics

Formatting text in bold and italics can help guide the eyes of your reader to the most important part of the sentence. It can also help them to easily scan documents for relevant information. This section will explain how to correctly format code in bold and italics.

In the FlexSim User Manual, words should generally only be bolded when you are writing in the instruction mode (and it should generally be formatted in an ordered list). When you are writing in instruction mode, there are two possible reasons for formatting text in bold, as explained below. You should use different classes for these <strong> tags to indicate your purpose in using these tags:

  1. User Interface Elements: When you format text in bold because it is an element in the user interface, such as a clickable UI element, use the class "gui" in the <strong> tag.
  2. Inline Heading: To bold something as an inline heading, such as the first word or phrase in a list item, use the class "heading" in the <strong> tag.

Text can be formatted in italics if you want to introduce a new term or if you want to emphasize a word or phrase.

NOTE: You should always use the <strong> tag to format a text element in bold. Never use the <b> tag. To format a text element in italics, use the <em> tag. Never use the <i> tag.

Tip Boxes and Important Notes

Also sometimes referred to as callout boxes, tip boxes and important notes help readers learn how to get the most out of FlexSim software. Tip boxes and important notes also add some visual variety to the document and help draw attention to helpful points you want your audience to notice. This section will discuss how to format the code for tip boxes and important notes.

Tips and important notes look very similar, but are quite different in purpose. You should consider your purpose carefully when deciding which format to use:

  • Tip Boxes: Used for text that is relevant to the topic, but not necessarily within the goal or scope of the topic, such as a side note or afterthought. You should use the <aside> tag with a class="tip" for tips.
  • Important Notes: Used for emphasizing important information that might otherwise get lost in the text. You should use the <aside> tag with a class="important" for important notes.

The following style guidelines apply to both tips and important notes:

  • Every tip or important note should have a title. Every aside should contain a title, using the h4 tag. This title should describe the topic of the tip so that users can quickly get the point of the tip or important note.
  • Use paragraph tags for the content of the tip or important note. The rest of the content should be formatted inside <p> tags. You're welcome to use multiple <p> tags if you need to break up the content into more paragraphs.

Table Tags

The following guidelines apply to the <table> tag and the related <tr>, <th>, and <td> tags:

  • Use the <th> tag for table headings. The first row in a table should always include table heading tags.
  • Use line breaks and white space liberally. Table tags should include line breaks and ideally some white space in between content such as two <td> tags.
  • Use indents for nested tags. Tables are especially difficult to read if you don't indent your nested tags.
  • Use class headings in <th> tags to set the column width. To set the width of a column, assign it a class with the percentage you want the the column to be. For example, <th class="twentyfive"> to set the width to 25%. The CSS will do the rest. Just remember that all the columns in the table should equal a total width of 100%.

Images and Callouts

Use the following classes for images:

Image Class Explanation
framed Adds a border to the image
autoresize If defined, images will automatically resize to fit within the size of the user manual window. Use this class for large screenshots so that if the user shrinks the help manual window down, the images can still be seen without scrolling. This class will also allow for the user to click on the image to get a popup showing the full-sized image. Please use this class for all images except small UI buttons.

The following additional style guidelines apply to images:

  • Screen captures should be a maximum of 700 pixels wide. Capture only what is absolutely necessary to convey the information the user needs. For example, if you are documenting the fields in a tab pane, you should capture just the tab pane itself, and crop out images of other tabs. Do not capture the whole window if you don't have to.
  • Don't include extra information in an image tag. In the image tag, include only the src and class tags (as specified above). Don't add any alternate text or IDs to the image.
  • Direct users to images in the body of the text. In the body of text, use the verbs preceding and following to direct readers to the appropriate image.
  • Match the capitalization of images. Try to match the capitalization of the images when linking to the file. The capitalization can affect whether the image displays correctly in certain web browsers.

Unless there are specific reasons for deviation, the following rules should apply to callouts in images.

  • Callouts should use 12pt Arial font.
  • Arrows and text should be black and arrows should be sized to match the 12pt font.
  • Use drop shadows for arrows and callout text, but only give the drop shadow a few pixels offset. For text, the drop shadow should not be so dramatic that it makes the text hard to read.
  • Callouts should be placed in a blank area of the image, not jumbled into a high-density area.
  • Don't surround the callout with a bubble caption. Just leave it as drop-shadowed text.

FlexScript Coding Guidelines

Having a set of standardized guidelines for formatting code is especially valuable for helping to create clear, consistent, readable code. This section will discuss guidelines for achieving a set of common standards for formatting codes.

WebKit Open Source Project Exceptions

FlexSim follows the Webkit coding style guidelines, which can be found at the WebKit Open Source Project. However, there are some exceptions, as discussed in the table below:

Coding Element Guideline Explanation
indentation
  • Use tabs, not spaces.
Most FlexSim employees have agreed that we prefer using tabs rather than spaces for indentation. Using tabs allows users to customize their indentation sizes. Using tabs allows coders who like wider indents to coexist with coders who prefer smaller indents.
naming
  • Class getters should be prefixed with "get."
  • Show variable names in function declarations.
Function declarations may include the names of parameters. This allows for coders who are reviewing the definition of a class to know what each parameter actually means.
constructors
  • You do not need to use member initializer lists.
You can initialize class member variables based on your personal preference. Initializer lists may be faster, because they can be resolved at compile time; however, it is not a requirement.
header files
  • Use #pragma once instead of #ifndef header guards.
FlexSim has no plans to use any other compiler than Visual C++, so there is no need to worry about cross-platform compatibility.
function names
  • Global command names should be all lowercase for consistency.
  • C++ class member functions should be in camel case.
  • Unlike WebKit, Flexscript will not require C++ class member variable names to have the m_prefix, but it is allowed.
FlexSim has over 1,000 commands in the command list that are all lower case. It would be too difficult to change that now to be backwards compatible. So, any command list commands, as well as C++ functions defined at the global scope should be defined all lowercase.
design
  • Follow model-view-controller pattern.
In building UI's, FlexScript should follow the model-view-controller pattern where possible--although the controller piece isn't that crucial. This means anything that requires code to change an object should be defined as a function (either FlexScript or C++ method) on the object. Use function_s() to call a named function on an object. This will traverse the class tree to find the named function. Although the model-view-controller pattern hasn’t been as strictly followed in the past, employees should try to do it going forward.

Formatting Code Examples for Users

The following guidelines come from the Microsoft Manual of Style, 4th edition. Code examples can be an effective way to teach users about FlexScript. You can possibly include:

  • Simple, one-line examples interspersed with text
  • Brief, self-contained examples that illustrate specific points
  • Lengthy samples that illustrate multiple features, complex scenarios, or best practices

To create useful code examples, first identify the tasks and scenarios that are meaningful for your readers, and then create examples that illustrate those scenarios. Code examples that demonstrate product features are not useful unless they explicitly address the problems developers are trying to solve.

The following are some general guidelines to follow when creating code examples:

  • Create concise examples that exemplify key development tasks. Start with simple examples and build up complexity after you cover common scenarios.
  • If you can't provide examples for all programming elements, focus on frequently used elements and elements that may be difficult to understand and use.
  • Don't create code examples that are too complex to scan or understand easily. Reserve complicated examples for tutorials and walkthroughs, where you can provide a step-by-step explanation of how the example works.
  • Don’t use code examples to illustrate points that are obvious or scenarios that are contrived.
  • Add an introduction to describe the scenario that the code example illustrates and to explain anything that might not be clear from the code. List the requirements and dependencies for using or running the example.
  • Design your code for reuse by making it easy for users to determine what to modify. Add comments to explain details, but don't over-comment. Don’t state the obvious.
  • Show expected output, either in a separate section after the code example or by using code comments within the code example.
  • For code that creates UI, consider accessibility requirements. For example, include alternate text for images.
  • Write secure code. For example, always validate user input, never hardcode passwords in code, and use code analysis tools to detect security issues.
  • Show exception handling only when it is intrinsic to the example. Do not catch exceptions that are thrown when invalid arguments are passed to parameters.
  • Always compile and test your code.
  • If you're publishing your content on the Internet, provide an easy way for users to copy and run the code. If the code example demonstrates interactive and animated features, consider providing a way for the user to run the example directly from your content page.
  • If you're publishing content on the Internet, use appropriate keywords, linking strategies and other search engine optimization (SEO) techniques to improve the visibility and usability of the code example. For example, add links to relevant code example pages and content pages to improve SEO across your content.

The following are some guidelines for formatting and naming code samples:

  • Use white space and indentation to improve the readability of your code.
  • Use blank lines to separate individual tasks or components in the code.
  • Avoid long lines of code; if possible, break these into multiple lines to improve readability.
  • Use a monospace font for all code examples, whether they’re embedded or text or displayed as separate paragraphs.
  • If you omit part of an example for clarity or length considerations, insert a comment at the point of omission to explain what should be added to make the code compile, or use an ellipsis (in a comment) to indicate that code segments have been omitted. Identify code that users must edit or add before the code can be compiled. If your documentation will be localized, consider putting this information in the body of the topic as well.
  • Observe the casing and coding conventions for the language you are documenting.
  • Use fictitious people names, company names, email addresses, and URLs.
  • Remember worldwide users. Do not use examples that include U.S.-centric data, such as zip codes or sports teams.
  • Do not use sensitive geographic and cultural references.
  • Do not use offensive language or slang. For example, do not use foo or bar or their derivatives when naming coding constructs.
  • Use descriptive construct names. Do not use names that are too generic or that include the prefix My.

Best Practices for Designing Content

This section will outline best practices for designing both UI text and content for documentation.

Designing Content for Scanning

The general rule of thumb when designing user manuals is to design text so that it can be easily scanned. Users are far more likely to scan text than to actually read it. Although you should write text as if a user were going to read it continuously, you should simultaneously make it easy for users to quickly scan the text and find what they need.

The following sections discuss some best practices for making user manuals easier to scan.

Organize Your Text

Help your users to quickly locate the information that is important to them using clear, well-reasoned content organization. Here are some general guidelines:

  • Put the most important content first. Put the most important content in the content’s title, headings, subheadings, and the first sentence of each paragraph.
  • Use the inverted pyramid style. Write the key points first by using keywords, so that users will see them and know whether they want to read on. In other words, give the conclusion first.
  • Include an overview. When writing procedural documents, it’s important to orient your readers with an overview that will help them see the overall purpose of that section of the document and what they are about to do.
  • Use short, focused paragraphs. Avoid complex paragraphs that express more than one idea. State your point in the topic sentence of each paragraph and stick with one idea per each short paragraph.
  • Use notes and tips. Your main paragraph should focus on the main point, but you should include notes and tips by breaking these out of the main paragraph. This also helps to give some variety to the monotony of the page.
  • Use clear language. Keep your sentences simple and short. Use keywords that users understand and use regularly. Avoid self-serving speech. For example, they want to "download," not to "experience the latest innovations." Also avoid using technical terms and jargon that users may not intuitively understand.

Use a Table of Contents and Headings

If you have a long content set, it's very important to include a Table of Contents (TOC) with links to every subheading. Keep the content of each page short and brief if possible.

Good headings are crucial to helping users navigate easily through your documentation. A few guidelines about headings:

  • Make headings and subheadings short.
  • Use keywords as your headings.
  • For headings introducing tasks, use gerunds (verbs ending in –ing).
  • Use nouns or noun concepts for headings that introduce basic concepts or information.
  • For headings introducing a guideline or policy, use the imperative voice.
  • Only use question style headings in FAQs.

Balance the Need to be Concise Versus Comprehensive

You can shorten nearly everything you write. Short, strong sentences are the essence of good technical content. Streamlined text helps your readers to find what they're looking for--and fast. Clear, simple text is also easier to understand. Readers strongly prefer concise, direct writing.

However, make sure you do not sacrifice your meaning in an effort to be concise. Don’t use a chainsaw to cut down your text when a scalpel would do better. Cut length--not clarity.

Here are a few phrases to look for when trying to find ways to condense your text:

  • Words or phrases that add unneeded bulk to a sentence and weaken its message.
  • Common phrases that are bloated with redundant words or unnecessary information.
  • Unimportant words at the beginning of a sentence that push the most important words farther away from the start.

By the way, don’t omit the word that, especially when it introduces a clause. It's a good word to keep in for clarity.

Use Lists

When appropriate, use bulleted or numbered lists, which are easy to scan and more likely to be read than paragraphs of text.

A few guidelines to follow:

  • If the steps must be done in chronological order, use a numbered list.
  • If the order of the information doesn’t matter, use bullet points.
  • Phrase steps in the imperative (as commands).
  • Put one action in each step.
  • If conditions apply to the action, include them in a phrase or dependent clause before the imperative.
  • If your lists are too long, consider breaking it up into smaller chunks using headings and/or section breaks.

Chunk the Content

Pay attention to places where you’ve got a large "chunk" or section of information. For example, long blocks of text or paragraphs. Especially long lists can be tedious as well. When you notice this type of problem, try conceptualizing your text differently. Can your content be subdivided in a logical way? Once you’ve subdivided it appropriately, you can break the content up using headings or subheadings. You can perhaps express things in a table, a flowchart, or a figure. You can perhaps break the content up into different pages.

Use White Space

White space refers to the areas on a page that have no text or visuals: the space between lines, in the margins, around visuals, between the visual and its caption, and around titles and headings. Effective use of white space can help users scan the page and more easily identify what they need. Pay attention to the amount of white space between the content “chunks” on your page.

Use your white space to signal relationships between the elements of the page and add emphasis to important items (by increasing the white space around it). White space helps to direct your user's eye to the right spot on the page. You can also use white space to add variety and visual interest to the page.

One helpful way to think about is to think of the idea of the fold on the screen. The term fold refers to the newspaper medium. Back in the days when print newspapers were more common, editors knew they needed to put their most important text above the crease where the newspaper was folded.

In that vein, content that is on the first screen ("above the fold") is more likely to be read; users are unlikely to scroll down to find more information. This means that you need to reduce word count (preferred) or increase the total number of pages (by dividing a page into shorter, separate topics). Remember that where “the fold” is depends on factors that you might not control, such as the device used to view your content and screen resolution.

Select Readable Fonts

From a usability perspective, there are different opinions about whether it is better to use a serif font (like Times New Roman) or sans-serif font (like Arial) for the body text of a document. In the 1990s, researcher Colin Wheildon studied how well readers could comprehend a body of text written in a serif or sans-serif font. He found that 670,000 out of a million readers could fully understand or comprehend the serif font compared to only 120,000 readers who read the sans-serif font.

While the previous study suggests that you should always use a serif font, other studies have shown this isn't always the case. Another study at Carnegie-Mellon University suggested that when readers were reading technical information, the majority of readers preferred the sans-serif font. They stated that the font felt "less intimidating" and more "user friendly." Furthermore, other researchers have found that there are different results when comparing font choices that will be read on a computer screen as opposed to print. They found that it was less taxing on the eyes to read sans-serif font on a computer screen.

Regardless of your font choice, you’ll want to introduce some variety in your font choices in the body of your text. For example, consider using a serif font for body text with a sans-serif font for headings or vice versa. You could also format bold text in a different font style for variety.

NOTE: Please don't embed fonts into your HTML. Use CSS to control your fonts.

Use Appropriate Visuals

Good visuals are essential to effective technical communication. You may have heard the proverb that "a picture is worth a thousand words." In technical communication, a good picture can replace a thousand words of explanation.

Although you don’t want to overuse or misuse visuals, it's a good idea to use them liberally. Feel free to use screenshots, possibly with the use of arrows or other callouts to highlight important parts of the screen. Animated gifs can also be effective for demonstrating an action. Sometimes a video that demonstrates what you are trying to illustrate can be very powerful.

Designing User Interface Text

User interface (UI) text is any words that appear on UI surfaces, such as menus, toolbars, tool tips, dialog boxes, buttons, etc. Well-designed user interface text is vital to the success of any software product. Effective user interface text makes the user feel like the software is easy to use and intuitive, which fosters a sense of good will toward a company’s brand. In contrast, poor user interface text leaves the user feeling frustrated and incapable of using the software. Those negative associations can damage a company’s brand considerably. In short, user interface text is as important to the success of a software product as its overall functionality is. This guide will discuss some tips and best practices for making your user interface text as helpful and intuitive as possible.

If You Do Only Six Things

The following guidelines come from the Microsoft Manual of Style, 4th edition. Microsoft outlines six bare minimum requirements for creating effective user interface text:

  1. Start writing UI text early, because UI text problems often reveal product problems.
  2. Think like a customer and ensure that you understand the entire workflow process:
    • How do customers get to this surface?
    • What is the essential information that they need to accomplish the task on this surface?
    • Where are they going from here?
  3. Design your text for scanning.
  4. Be concise, eliminate redundant text, and don't over-communicate. Too much text discourages reading.
  5. Provide links to Help content for more detailed information only when necessary. Don’t rely on Help content to solve a UI problem.
  6. Use a consistent voice and consistent terminology across the product or service.

High-Level UI Checklist

This checklist comes from the Microsoft Manual of Style, 4th edition:

  • Is the text that describes the flow to and from the given UI surface logical?
  • Is the point of the UI surface clear?
  • Did you provide enough information for users to make a smart decision? Can they scan the text and still be successful?
  • Did you use plain, straightforward words that your audience will understand?
  • Did you use the terms consistently? Is the voice consistent?
  • Could you use fewer words while still ensuring that the customer will succeed?
  • Is the UI text easy to localize? Will the text still work with the visual design if the text were to be 30 percent longer after translation?
  • Does the text inspire users' confidence that they can complete the task at hand?

Consult the FlexSim Technical Writer

The FlexSim technical writer should ideally be someone who has a good range of vocabulary and a sense of how to phrase things in a way that is intuitive and easy to understand. Consider inviting the FlexSim technical writer to provide feedback about UI text early on in the process.

Design a Usability Test

A usability test is a test that researchers run to determine the user-friendliness of a particular software product. It generally involves giving users a version of a software product and asking them to perform a series of activities using the software. It can also be used for testing whether technical documents (like user manuals) are easy to use.

Usability tests are incredibly valuable for both software and technical document design. Although it may seem like common sense to have users test a draft of a document or software before releasing it to the public, many organizations do not do so, resulting in documentation or software design that is frustrating and alienating to use. Fortunately, usability tests are inexpensive to create and can provide significantly useful data about how to improve a product. From a cost-benefit perspective, usability tests just make good sense.

Usability tests can possibly be conducted a number of different ways:

  • You can observe an individual attempting to use the software or the document. This observation can be done in person or it can be recorded.
  • You can interview an individual about their experiences using the software.
  • Some companies use software that analyzes keystrokes and mouse positions. Some companies also use heat sensors to track the parts of the screen users look at the most. These tools can sometimes reveal tasks that are difficult for users. There are many free or open source versions of this software.

Practical Issues of Style

Questions about style have less to do with strict grammar rules and more to do with personal preference. Consequently, issues of style can lead to inconsistencies that cause confusion for readers. By using a consistent style, you can make your content easier to understand. This section discusses the most common style problems and provides you with guidelines for addressing them.

Voice

Technically speaking, voice refers to the relationship between the grammatical subject of a sentence and the verb. That probably sounds extremely arcane, but read on for a clearer explanation.

In the English language, there are always two essential parts of a sentence: a subject and a predicate (the verb). Every English speaker puts the subject before the predicate (with the exception of Yoda from the Star Wars series). The concept of voice refers to whether the true subject of the sentence (the noun that is actually performing the action) is in the subject position of the sentence or whether it is buried deep in the sentence (or missing entirely).

In the active voice, the noun (person or thing) that is performing the action is in the subject position of the sentence. In the passive voice, the receiver of the action is in the subject position of the sentence instead. (See examples below.)

Although there are times when using the passive voice can be effective, the majority of the time you should use the active voice instead. Active sentences are shorter and much easier to understand.

The following are a few ways to possibly catch whether you are using the passive voice or not:

  • Did you use any "to be" verbs as helping verbs? (Be, am, is, was, etc.)
  • Is it clear who or what is performing the action in the sentence?
  • Do you use the preposition "by" at all? (NOTE: Not all passive sentences use the preposition "by" because it is merely implied.)

Capitalization

In general, follow the capitalization rules of Standard English. Use the American Heritage Dictionary as a guide for capitalization for specific words and the Chicago Manual of Style for general guidelines. The FlexSim technical writer has copies of these guides and can also help answer specific questions.

For information on capitalizing terms that are specifically used in FlexSim contexts, see Glossary of Preferred Terms and Formats for more information.

Mood

Mood is a way of classifying verbs according to whether the writer intends the verb to express a fact, a command, or a hypothesis. There are three moods in English, as discussed below.

Indicative Mood

The indicative mood expressed information such as facts, questions, assertions, or explanations. In technical writing, the indicative mood should predominate, except in procedures. The following are examples of sentences in the indicative mood:

  • FlexSim software products can help you identify places where your production line could be more efficient.
  • You can import a CAD drawing of your health care facility into FlexSim Healthcare to make your model more precise.

Imperative Mood

The imperative mood expresses requests or commands. You should use the imperative mood when writing procedures and direct instructions. In the imperative mood, the subject is always you, but the "you" might sometimes be implied. The imperative mood is always in the present tense. A few examples of the imperative mood:

  • Click Reset and Run to start the simulation.
  • Select the Use Transport check box.

Subjunctive Mood

The subjunctive mood expresses wishes, hypotheses, and conditions contrary to fact. The most common use of the subjunctive mood is to express a recommendation or to insist on something. You should generally avoid using the subjunctive mood in technical communication. The following are some examples of the subjunctive mood:

  • We recommend that you be careful about opening email attachments.
  • If you were to save your project regularly, it would help prevent data loss.

Print or PDF Versions of the Manual

FlexSim officially wants to discourage users from accessing print, Word, or PDF versions of the manual. These versions of the manual are less than ideal for several reasons:

  • The Word, PDF, or Print version of the manual goes out of date every four months when there is a new release of FlexSim.
  • The in-software manual contains over 200 animated GIFs to enhance communication. These animated images will not work in a PDF or Word version of the manual and will instead display the first frame of the animation.
  • The Word, PDF, or Print version won’t always maintain the same organization as the in-software and online manual.
  • Mini table-of-contents that are found in most topics will no longer function.
  • Links in between topics will not work correctly.
  • Tables, images, and tip boxes and other stylistic elements will not always be formatted correctly.

However, FlexSim will provide users with these versions of the manual on request. Users should contact the FlexSim technical writer directly for this version of the manual so that we can better understand why the in-software or online version of the manual doesn't meet their needs.

Applied Simulation Style Guidelines

The following guidelines apply only to the Applied Simulation textbook:

  • Don’t indent the first paragraph after a new section.
  • Only capitalize the first word in section titles and subheadings.
  • Do not use a colon after subheadings.
  • Check for and remove double spaces after periods
  • Make sure that em-dashes are not encloses by spaces
  • Capitalize the term Advanced User, Occasional User, and so forth.
  • Hyphenate compound adjectives, such as steady-state. Do not hyphenate when this term is used as a noun such as steady state.
  • Always refer to the appendix as the Appendix, not the chapter appendix.
  • The word Lean is capitalized when it refers to a specific methodology used to improve operations.
  • When formatting in-line definitions:
    • Introduce the term and follow it with the definition in italics.
    • For example: A model in this sense is defined as a physical or mathematical description of an object or an event.
  • When formatting definition lists:
    • Italicize the word.
    • Capitalize the first word.
    • Do not follow the definition with a period.
  • For all other conventions, refer to the full FlexSim Style Guide.

Revision History

The authors of this guide consulted the following texts while designing this Style Guide:

  • Microsoft Manual of Style, 4th ed. Redmond, WA: Microsoft Press, 2012.
  • Graves, Heather and Roger Graves. A Strategic Guide to Technical Communication, 2nd ed. Toronto, Canada: Broadview Press, 2012.
  • DeRespinis, Francis, et. al. The IBM Style Guide: Conventions for Writers and Editors. Crawfordsville, IN: IBM Press, 2012.
  • Barr, Chris, et. al. The Yahoo Style Guide, New York: St. Martin’s Griffin, 2010.

The following table describes the history of all revisions made to the Style Guide over time:

Edition Date Lead Author(s) Description
1.0 July 2014 Alyssa Rock First draft of the Style Guide
1.1 August 2014 Alyssa Rock Made some minor additions based on feedback from stakeholders. Added a section for spin boxes to the FlexSim User Interface and quick reference guide.
1.2 October 2014 Alyssa Rock Converted guide to HTML format. Added the sections for Word Choice Terminology and Applied Simulation Style Guidelines. Made minor revisions for clarity.
2.0 November 2014 Alyssa Rock Made major revisions to Style Guide based on feedback from stakeholders. Revisions included:
  • New policy change to refer to flowitems as items
  • Several additions to the Glossary
  • Changes to the preferred verbs for referring to various UI elements
  • Miscellaneous minor changes
2.1 November 2014 Anthony Johnson, Alyssa Rock Added a section about HTML/CSS Coding Guidelines.
2.2 July 2015 Alyssa Rock Added a section for Topic Templates.
3.0 February 2016 Alyssa Rock Made major revisions to Style Guide based on feedback from stakeholders. Revisions included:
  • General changes to organization
  • Updated HTML code to use HTML 5 tags
  • Several additions to the Glossary
  • Reverted built-in behaviors to pick lists because that pet phrase will just not die
  • Reverted items to flow items because that pet phrase also will just not die
  • Added a General Guidelines section to the UI Interface section with some general rules
  • Updated Quick Reference guides to reflect these changes
4.0 December 2017 Alyssa Rock Major revisions to Style Guide based on the overhauled User Manual that was included in the 2017.2 release. Revisions included:
  • Updates to the overall CSS of this guide to better mirror the CSS of the User Manual
  • Updates to the heading hierarchies
  • Changed the tip boxes to use the same HTML 5 tags as the User Manual
  • Removed topic templates section (outdated)
  • Added new sections:
    • Quick Start
    • Content Strategies
    • Notification and Revision Guidelines
    • Tutorial Guidelines
    • Policies about print and PDF versions of the manual
  • Consolidated the HTML/CSS coding guidelines with the FlexScript coding guidelines and substantially revised these sections to bring it up to date
  • Consolidated the Designing Content for Scanning and Designing User Interface Text sections and substantially revised these sections to reduce the bulkiness of the content