Great suggestions. I add a special character + at the beginning of the string. This automatically lists the newly created workflow first.

-----Original Message-----
From: Lyle Taylor <[email protected]>
To: [email protected]
Sent: Tue, Nov 24, 2009 1:02 pm
Subject: Re: Naming Standards


**
I’ve seen several naming standards, and lots of passion around some of them, but most of the ones I’ve seen are too complex and, IMO, unnecessary.  My preference is to keep it simple and readable without trying to embed too much information into the name.  Generally, I do something like this:
 
<prefix>:<descriptive name>
 
<prefix> is something specific to your organization that groups all of your custom workflow together.  That way, you keep all of your stuff in one place, and it’s very easy to see what’s OOB and what’s yours.  The prefix may also be more than one level, kind of like this: <prefix>:<app>:<descriptive name>.  That helps to group related workflow together.  For active links, I may even have a third level to indicate the primary form they’re with, but not always.
 
For example, I might have something like this:
 
LDS:MIRS:Config:Load Configuration Settings
 
In this case, I have three prefixes (probably the most I would generally have).  The first one says it’s for our organizations.  The second one is the app it’s associated with.  And the third one is the form it’s for (the configuration console).  The primary reason for that is that I have a group of workflow related to that form, and this makes it easy to view and work with as a group.  That’s not strictly necessary, since you can view by or filter by the primary form, etc., but this works well for me.
 
I use two different prefixes for the organization, one for completely custom workflow, and another for modified OOB workflow where we disabled the original and copy it to a new object and modify the copied object the way we need.  For example, if I want to modify the following active link
 
HPD:INC:DetailsCurrentIncident_100_OpenDlg
 
I would copy it to
 
LDS_HPD:INC:DetailsCurrentIncident_100_OpenDlg
 
And then disable the original and modify the copy.  Using the underscore makes it obvious that it’s modified OOB workflow rather than our custom workflow.  That’s important when you’re patching the system, and you need to know what you’ve modified so you can verify that the patch hasn’t broken something, or if you can now undo something you did before, because the patch fixed the issue you were working around.
 
For the last part, I prefer not to try to embed all kinds of things like the execution order, details about what the active link does, etc.  They tend to make the names cryptic, and don’t add much useful information from what I’ve seen, especially given the tools we have to work with now.  In addition, since names can be quite long, I generally don’t abbreviate words much, and often include spaces in the words.  The description I use usually is a short description of what the active link accomplishes or what triggers it.  I often use the latter for active links attached to buttons, etc.  That works well for me, because I generally have the practice of having a single active link on the button that then calls a guide to do the work rather than having a bunch of active links on the button with different execution orders.  I’ve found that works better for me. 
 
So that gives me names like this:
 
LDS:MIRS:Console:Check Required Fields
LDS:MIRS:Console:Clear Form
 
Or
 
LDS:MIRS:Console:Cancel Button Clicked
LDS:MIRS:Console:Assigned Group Entered
 
Occasionally, I will add additional information like sequence numbers of there are two pieces of workflow that are conceptually together.  That is, there is conceptually one action being done, but it needs to be done in two steps.  Like this:
 
LDS:MIRS:Console:Lookup Assignee_1
LDS:MIRS:Console:Lookup Assignee_2
 
Looking up and validating the Assignee takes two active links to complete (one to do the look up, and another to verify that it succeeded), and since they’re intimately tied together, I give them the same name with a  sequence number.
 
I occasionally use underscores in the name when I want to visually separate two parts of a name, like this:
 
LDS:MIRS:Console:Required Field_Assigned Group
LDS:MIRS:Console:Required Field_Assignee
 
The first part of the name indicates what it’s about (in this case, validating required fields), and the second part after the underscore indicates the field I’m validating.  Doing it this way groups the names together in the list and still makes it easy to see the two different parts of the name.  You could just as easily use some other separator that stands out to you as well.
 
So, in general, I don’t get much more complicated than that, because I don’t see much value in many of the complicated naming conventions I’ve seen, including the ones used by BMC.  That said, a large and complicate application or set of applications (e.g., ITSM) could benefit from a rigorous naming standard, but I’m not sure it needs to be as complex as what they’ve used in the past.  Embedding too much information in the name just makes it hard to read, and harder to maintain.  For example, if you include the execution order in the name, you’ll need to renaming the object if the execution order changes.  That has resulted in a large number of active links and filters in the ITSM suite where the name doesn’t match how the object is currently defined.
 
Well, that’s my philosophy.  Others have very different ones, and they may appeal to you more.  Good luck.
 
Lyle
 
 

From: Action Request System discussion list(ARSList) [mailto:[email protected]] On Behalf Of Brittain, Mark
Sent: Tuesday, November 24, 2009 10:09 AM
To: [email protected]
Subject: Naming Standards

 
**

Hi All,

 

I was wondering if there are any good standards for naming filters and active links. On my server there is an amazing mix that appears to be dependant on what worked for the previous Admins. Also is there any need/value to having the name all one word like the last two examples. Really makes it hard to read/find. Here are some examples of what I have.

 

CR-950-Notify Deinstall Closed-Cancelled

CR-UpdateAuditLogforAttachmentAdd

CR:SM-Company-ChkDefaultEmail-600 (SM=Submit/Modify)

 

Thanks

Mark

 

____________________________________________
Mark Brittain
Remedy Developer
NaviSite
[email protected]
(315) 453-2912 x5418 (Phone)

(315) 317.2897 (Cell)

Reduce Cost of IT with Managed Hosting and Application Services from NaviSite.
Visit www.NaviSite.com Today.

 

 

  ________________________________  

This e-mail is the property of NaviSite, Inc. It is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential, or otherwise protected from disclosure. Distribution or copying of this e-mail, or the information contained herein, to anyone other than the intended recipient is prohibited.

_Platinum Sponsor: [email protected] ARSlist: "Where the Answers Are"_



NOTICE: This email message is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message. _Platinum Sponsor: [email protected] ARSlist: "Where the Answers Are"_


_Platinum Sponsor: [email protected] ARSlist: "Where the Answers Are"_

_______________________________________________________________________________
UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
Platinum Sponsor:[email protected] ARSlist: "Where the Answers Are"

Reply via email to