June 12, 2018
Naming Objects to Facilitate Your Workflow, and Ease Troubleshooting and Maintenance of Your Project.
Comments
(3)
June 12, 2018
Naming Objects to Facilitate Your Workflow, and Ease Troubleshooting and Maintenance of Your Project.
I'm the IT guy for a software company in Kingston, TN but the scope of my job extends into eLearning Development and Customer Service. I've been working with Adobe Captivate since 2016. I love solving problems myself and other users encounter in Captivate and pushing the software to "find out what it can do". I'm currently working on my Master's Degree in Information Technology Management.
Newbie 13 posts
Followers: 20 people
(3)

There is a “rule” in programming that states, or at least strongly suggests, that you should give your variables meaningful names. This “rule” should apply to your Captivate project as well and it shouldn’t apply only to the variables but to every nameable object in the project. Every variable, text caption, smart shape, image, web object, etc. should have a meaningful name but what is a meaningful name? When working in Captivate, as well as in coding, my definition of a meaningful name is a name that answers the question “What is this?”, in other words, if I look at just the name of the object I should know immediately what it is. For example, if I see an object with the name ”Slide_1_text” then I know the object is the text on slide one of the project. If I see a variable named “numberIncorrectAnswers” then I can assume that this variable is being used to track the number of answers the learner has answered incorrectly. If I had left the text on slide one with the default name “Text Caption 17” or I had named the variable “A” then I would have a difficult time determining what the objects were or what the did, in fact, if I were building an Advanced Action then I would probably need to exit the action and verify that I had the correct object.

While stopping to name every object may seem like it will slow you down it will not only speed up your building process but make both the building and maintaining of the eLearning course easier. Properly named objects will make building both Advanced and Shared Actions easier as you won’t need to stop to check the name of the object you want to show, or hide, or change the state of, you’ll know what they are because you took the time to name them. Issues will be easier to troubleshoot if your objects are named, for example, if you click a button and “Slide_1_Square” turns red instead of “Slide_1_Circle” the issue will be much easier to troubleshoot than if the objects were name ‘Smart Shape 17” and “Smart Shape 23”.  You’ll also find it easier to tweak (or fix issues) in the project six months or a year later if you don’t have to look to see what each object is or what each variable does.

Giving meaningful names throughout the project will also help other eLearning developers or authors work on the project. This is especially helpful if you are a member of a team where other authors or developers will be working on the eLearning Course. Meaningful names will also make it easier for another developer or author on your team to take over your project if something were to happen to you (the dreaded “hit by a bus” scenario).

Okay, so (hopefully) you realize you should be naming the objects in your eLearning project but how do you decide what to name your objects or variables? I use the “This is _______” method. If I’m having trouble naming an object or I’m not sure about the name I have chosen and then I place the name in the blank and read the sentence aloud. If I know what the object is from reading the sentence, then the name probably a good one.

3 Comments
2020-01-10 18:42:50
2020-01-10 18:42:50

Great tip!

Like
2018-06-12 14:11:21
2018-06-12 14:11:21

Since I started blogging about Captivate, almost 10 years ago I have been pleading all the time for a good labeling system. Every trainee around who had basic or advanced training from me will never forget that neither. Maybe you miss the filtering option in most dropdown lists, will blog about them. As a proof to my comment, here is a link to a very old blog post (before filtering existed):
http://blog.lilybiri.com/some-reasons-for-labeling-in-adobe-captivate

Like
2018-06-12 13:12:13
2018-06-12 13:12:13

Chris these are some great points. I learn’t this within 2 months of working in Captivate and having to work with advanced actions. Like you I come from an IT background so it definitely helps. I also found that I will design the slide layout first then go about naming objects etc. I do this primarily to stay in the creative flow as I put it all together on the slide (this is just a personal preference). I would also recommend standardizing your naming. I use a system such as im_03_Background which represents image_slide number_Description. The description can sometimes be substituted with a number such as ss_03_01 (smartshape_slide 3_shape 1). This system works really well for what I need to do on a typical project. The only downside to this system of including slide numbering is when the project owners want to add content or remove content then it can get a little laborious changing the labels around. Hope this helps add to the discussion. If anyone has other great ideas and ways of structuring their projects let us know its always good to become better and more efficient. Thanks for the post Chris Guider i

Like
(1)
Add Comment