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
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
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
JMS inbound/outbound integration
Not supported on Appian Cloud.
Email inbound integration
Fragile integration patterns.
Appian to Appian integration
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.
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.
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.
Generally high-volume use cases that can lead to scaling issues if not implemented correctly.
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.
© 2023 Appian. All rights reserved.