Study Material/CAD/App Design
20% of Exam~12 questions

Designing & Creating an Application

This domain covers application architecture decisions: when to build on ServiceNow, data model design, table creation, application scoping, and fundamental development patterns.

Is ServiceNow the Right Fit?

Before building an application, developers must evaluate whether ServiceNow is the right platform. The exam tests your ability to identify good and poor fits.

Good Fit for ServiceNow

  • Workflow-based applications — Approval chains, task routing, state management.
  • Request management — Forms, catalogs, and fulfillment processes.
  • Record management — CRUD operations on structured data with audit trails.
  • Integration hub — Connecting existing enterprise systems.
  • Applications that benefit from the existing platform infrastructure (users, groups, roles, notifications).

Poor Fit for ServiceNow

  • High-volume transactional processing (millions of transactions per second).
  • Complex mathematical/scientific computing.
  • Real-time gaming or media streaming.
  • Applications requiring extensive custom UI beyond ServiceNow capabilities.
📝Exam Tip

The exam presents scenarios asking if an application should be built on ServiceNow. Look for task-based workflows, approval processes, and integration needs — these are strong yes indicators. Applications requiring extreme performance or completely custom UIs are poor fits.

Designing the Data Model

A well-designed data model is the foundation of any ServiceNow application. This involves choosing between extending existing tables or creating new ones, and defining the right relationships.

Table Design Decisions

Extend vs. New Table

ApproachWhen to UseBenefits
Extend Task [task]Application involves work items with assignment, state, SLAsInherits task fields, SLA support, assignment rules, activity stream
Extend existing tableApplication is a specialization of an existing conceptInherits parent fields and behaviors, maintains consistency
Create new base tableApplication has no overlap with existing tablesClean slate, no inherited baggage, full control

Field and Relationship Types

  • Reference field — Points to a single record on another table (foreign key). Example: Assigned To → sys_user.
  • Glide List — Stores multiple references (comma-separated sys_ids). Example: Watch List.
  • Document ID — Points to a record on ANY table (polymorphic reference). Stores table name + sys_id.
  • Many-to-Many (M2M) — Uses a junction table to link records from two tables.
  • One-to-Many — Parent has a reference field on the child table. Use Related Lists to display.
📝Exam Tip

Extending the Task table gives you: Number field (auto-generated), State field, Assignment Group, Assigned To, SLA support, Activity Stream, and Work Notes/Comments for FREE. Always extend Task for work-tracking applications. Know the difference between Reference (single record), Glide List (multiple), and Document ID (any table).

SCENARIO

You need to build an application to track office maintenance requests. Requests need to be assigned to maintenance teams, have priorities, and track time to resolution with SLAs. What table should you extend?

Answer

Extend the Task [task] table. This gives you assignment (group and individual), priority, state management, SLA support, number generation, work notes, and activity stream — all inherited automatically. Create a new table like u_maintenance_request that extends task.

Application Scope

Application Scope provides isolation between applications. Each scoped application has its own namespace, and its artifacts (tables, scripts, properties) are protected from other applications.

Scoped vs. Global

FeatureScoped ApplicationGlobal Scope
Namespacex_vendor_appname_*Global (no prefix)
IsolationTables/scripts isolatedAccessible to all
Cross-scope accessRequires explicit permissionsFreely accessible
Best forCustom applications, Store appsPlatform-level customizations
RecommendationPreferred for new developmentUse sparingly

Key Scope Concepts

  • Application scope is set when creating a new application via Studio or App Engine Studio.
  • Scoped tables are prefixed: x_<vendor>_<app>_<table_name>.
  • Cross-scope access is controlled by Application Access settings on each table.
  • Scoped scripts have restricted API access — some global APIs are not available.
  • The 'current' application scope is shown in the application picker (top-left in Studio).
🔴Key Concept

Scoped applications are the recommended approach for ALL new development. Global scope should only be used for platform-wide customizations that must affect all applications. The exam heavily tests understanding of scope isolation and cross-scope access permissions.

AD SPACE

Studio & App Engine Studio

ServiceNow provides two IDEs for application development: Studio (for professional developers) and App Engine Studio (for citizen developers).

Studio (Professional Developer)

  • Full-featured IDE within the ServiceNow browser.
  • Create and manage scoped applications.
  • Built-in source control (link to Git repositories).
  • File browser shows all application artifacts.
  • Script editor with syntax highlighting and code search.
  • Application publishing and sharing.

App Engine Studio (Citizen Developer)

  • Simplified, guided application builder.
  • Point-and-click interface — minimal coding required.
  • Templates for common application patterns.
  • Built-in logic and automation builders.
  • Deploys through a managed pipeline with admin review.
📝Exam Tip

Know the difference: Studio is for professional developers who write scripts. App Engine Studio is for citizen developers who build apps visually. Both create scoped applications. Studio offers more control; AES offers more guardrails.

Application Menus & Modules

Application Menus group related modules in the Application Navigator. Modules are the links users click to access lists, forms, pages, and other resources.

Module Types

  • List — Opens a filtered or unfiltered list view of a table.
  • URL — Links to an internal or external URL.
  • Content Page — Opens a CMS or portal page.
  • Homepage — Opens a specific homepage/dashboard.
  • Separator — Visual divider between modules in a menu.
  • Script — Runs a script to determine the URL dynamically.
  • Modules can have filter conditions (e.g., show only Active incidents).
  • Role restrictions control which users see each module.
  • Display order determines the position within the menu.
📝Exam Tip

Module visibility is controlled by roles. If a user doesn't have the required role, they won't see the module in the navigator — but this doesn't provide data security. ACLs control data access; modules control navigation visibility. Both should be configured together.

Key Takeaways

  • Extend the Task table for any application that tracks work items with assignment, state, and SLAs.
  • Scoped applications are recommended for ALL new development. Global scope is for platform-wide customizations only.
  • Reference fields point to one record. Glide Lists store multiple. Document ID can reference any table.
  • Studio is for professional developers. App Engine Studio is for citizen developers.
  • Module role restrictions control navigation visibility, NOT data access. Always pair with ACLs.
  • Application fitness: workflow-based, record management, and integration apps are ideal for ServiceNow.
AD SPACE

Community-created study aids. Not official ServiceNow exam content.