Heuristics of Complex User Stories

While scoping, prioritizing and designing user stories for the Appian platform, pay close attention to the technical design and implementation of user stories exhibiting the following heuristics.

Appian recommends for the implementation teams to review their designs and approaches with Appian lead designers or Appian architects.

User Story Heuristics

Risks

Import or export of data from/to a file like Excel, CSV, flat file, etc...

Storing/caching large amounts of text data in the Appian engines.

Heap memory usage on application server.

Query more data than what is needed to be shown to the end user

Heap memory usage on application server.

Long running database query affecting UX and scalability.

Multi-step workflow assigned to the same user

Abuse of the activity chaining feature.

Application server threads "locked" to activity chains.

Application server scalability.

ETL-type user stories: data is transformed using complex logic without user interaction

Application server and engine server resource usage.

Overall impacts on performances.

Complex business logic and processing in process models

Large process models are difficult to develop and maintain.

Unattended and headless user stories

Hard to predict system load.

Potential impacts on user driven activities that compete for resources.

Functional use cases stretching over weeks/months

Long running Appian process instances.

Unscalable application design.

Complex and resource intensive process-to-process communication.

Process centric design

Long running Appian process instances.

Unscalable application design.

Complex and resource intensive process-to-process communication.

JMS inbound/outbound integration 

Not supported on Appian Cloud.

Email inbound integration

Fragile integration patterns.

Appian to Appian integration

Siloed applications/platforms.

Complex data dictionary and data model

Complex nested CDTs difficult to create and maintain.

JPA cascading refresh and update issues.

Complex logic in process to work with nested CDTs.

Document generation

Storing/caching large amounts of text data in the Appian engines.

Resource intensive text manipulation.

Large volume of process instances, nodes (PM size or MNI), users, documents, data, etc...

Large resource usage.

Scalability of the solution.

Internationalization

Can add overhead and complexity depending on the use case.

“Hacking” the product

Using unsupported APIs, functions, etc. or leveraging features in a way that weren’t intended.

Not always supported by Appian Support and subject to product changes.

Event-driven architectures

Generally high-volume use cases that can lead to scaling issues if not implemented correctly.

Complex integrations

Non-modern, high-volume, and high-load integrations, or integrations with non-standard authentication methods.

Scalability of the solution, resource usage, response time, and/or security.