When and How Should We Use Custom Properties in a Software Application?

Custom Properties can be an excellent way to add flexibility and adapability to a software application. Here is an instruction to help you think through and set up custom properties.

Many software platforms and programs provide the ability to create “custom properties,” user-defined fields or attributes that can be added to the system. These properties are not predefined by the software, but can be created by users based on specific needs and requirements.

Custom properties allow you to extend the default set of properties available in the software and tailor the system to your unique use cases. They allow you to capture and organize additional information beyond the standard fields provided by the application. For example, you will likely find the fields “email address,” “name,” and “phone number” in all contact management systems. But you may need to add fields like “industry type,” “work anniversary,” or “MBTI profile” to your system if those are data points that matter to your business.

At best, custom properties can help you enhance data management, improve organization, and create more personalized workflows within the software

At worst, custom properties duplicate fields and functions that already exist in the software (possibly using different names than you are accustomed to), adding confusion and complexity and contributing to poor data quality.

Identifying the need for a custom property and deciding what that property should be requires a thoughtful and structured process.

  1. Identifying the Need for a Custom Property:
    1. Start by considering the specific requirements and goals of your organization or team. The need for custom properties will often arise when discussing what questions or fields to put on forms or information that needs to appear on a report.
    2. Analyze the existing default properties and determine if any of them adequately capture the necessary information. Avoid creating duplicate or redundant custom properties, and instead, leverage existing ones whenever possible.
    3. Consult with relevant stakeholders, such as team members or managers, to gather insights and determine specific needs.

If you determine that no existing properties adequately serve the purpose and you need a custom property, then:

  1. Define the Purpose of the Custom Property:
    1. Create a company document for the software you are working on that is called “Custom Properties in (Software Name).” This will be very useful in the future to preserve corporate memory.
    2. Clearly articulate the purpose or goal each custom property will serve.
    3. Express how the property will be used to categorize, filter, search, or report on specific data.
    4. Align the custom property's purpose with the overall objectives of the software usage.
  2. Plan and Design the Custom Property:
    1. Think about the type of information the custom property will store (e.g., text, numbers, dates, options).
    2. Choose a clear, concise name for the custom property that accurately describe its purpose. Have users participate in this naming process to be sure the name makes sense in the context of their use and understanding.
    3. Consider any additional features, such as default values, field requirements, security, or visibility settings that might be necessary.
  3. Testing and Iteration:
    1. Test the custom property with a small subset of data or users before implementing it on a larger scale.
    2. Gather feedback from stakeholders to ensure the custom property effectively serves its intended purpose.
  4. Documentation and Communication:
    1. Stress the importance of documenting the purpose, configuration, and usage guidelines for each custom property. You may not be in every subsequent discussion about custom properties, so ensure the document you created in step 2A of this instruction is known to all current and future users and readily available for updating.
    2. Communicate the availability and purpose of new custom properties to relevant team members or users.
    3. Create an internal process to ensure that future updates to or additions of custom properties follow this instruction and update your Custom Property documentation.

Custom properties are flexible and adaptable, so they’re a fantastic way to accommodate unique business needs within a software application. Just make sure you understand the properties that exist out-of-the-box, and use the existing functionality of each software to its fullest capabilities before adding any new fields to a system.