Appian Interw Quetions & Answers-1
Appian Interw Quetions & Answers-1
Agile methodology
Faster time-to-market
DSDM is probably the original agile development method. DSDM was around before the term ‘agile’ was even
invented, but is absolutely based on all the principles we’ve come to know as agile. DSDM seems to be much less
well-known outside of the UK.
Scrum is also an agile development method, which concentrates particularly on how to manage tasks within a team-
based development environment. Scrum is the most popular and widely adopted agile method – I think because it is
relatively simple to implement and addresses many of the management issues that have plagued IT development
teams for decades.
XP (Extreme Programming) is a more radical agile methodology, focusing more on the software engineering process
and addressing the analysis, development and test phases with novel approaches that make a substantial difference
to the quality of the end product.
Externalized control removed from the work Internal control placed close to the work
==================================================================================
Story points are units of measure for expressing an estimate of the overall effort required to fully
implement a product backlog item or any other piece of work. Teams assign story points relative to work
complexity, the amount of work, and risk or uncertainty.
=================================================================================
Sprint zero usually takes place before the formal start of the project and/or at a team's inception. The goal
of the Sprint is for the Development Team to come together to develop a minimal number of User Stories,
project skeleton, story mapping, and develop a workable product.
===============================================================================
WebApi: Web APIs provide a way to expose Appian data and services to outside systems.
Web APIs are created much like expression rules, however there are two main differences between them.
First Web APIs also include an end point that can be called by other systems. Second, a designer doesn't
configure rule inputs for Web APIs, instead passing values to the Web API via query parameters, headers, a
body, or any combination of the three.
Hence External systems will call the corresponding URL for the Web API providing the inputs in the form of
JSON. Then the Web API will execute the rule and provide the output back to the System.
Integrations:
Appian can use Web Services to integrate with external systems as a service provider
(other systems calling Appian) or as a client (calling other systems from Appian). Most
common protocols and standards are supported by default
8. If we are not gave any alerts for process model what happens?
1. Using sub process, we can invoke a child process either synchronous or asynchronous as
per our business requirement, whereas using start process, it always starts the target process
asynchronous.
2. Because of above behaviour, if you have multiple tasks configured in various processes or
their child processes, and you want to have chaining between the tasks, you need to go for sub
process (synchronous with activity chain), where as if there is no need of having chaining in
between these tasks then, we can go for start process.
3. An another use case: let's assume you have 2 tasks and the moment you submit task1,
task2 should be visible due to chain, but before that we want some common operations to be
perform (which is configured in a common process model), you need to go for sub process with
synchronous approach, but if no dependency, they you can go for either sub process
(asynchronous) or start process (recommend)
4. Using sub process, adds readability to understand, which process has been invoked while
debugging whereas in case of start process we need to search for target process using its
UUID (if the process UUID gets change based on provided input).
5. If we want to switch from one process to another along with its respective parameters,
based on provided input, then it's preferable to go for start process instead of sub process
6. If you want to invoke a process from an Interface or Web API in such case you have only one
option i.e. start Process
7. And the most major difference, start process invokes the target process on a separate
engine of Appian to Balance the load, hence we can't give guarantee, whenever we use start
process, will immediately trigger the target process, whereas sub process gives you assurance
of starting the child process immediately once after the flow hits this node.
===============================================================================
=====
The configuration for a specific local variable for use within a!localVariables(). When used within an
interface, the value of the variable can be refreshed under a variety of conditions. When used outside
of an interface, all refresh properties are ignored.
=====================================================================================
a!forEach() evaluates the expression once for that value and returns the result in a single-item list. If
the result of any expression is an array, a! forEach() returns a two-dimensional array. Two-dimensional arrays
can be useful when processing data, but not all functions support them.
====================================================================================
========================================================================================
Activity chaining is used when the same user wants to complete two user inputs task one after other if
we enable activity chaining between these two user input tasks then after submitting the form in first
user input task then immediately second form will be displayed to the same user, if we don’t enable
the activity chaining then after submitting the first form then the second task will appear in Tasks Tab.
=========================================================================================
Use keywoards like "Get", "Set", "Update","Remove" while adding labels to nodes
Concat the unique ID of main object that process is handling to display names of process instances
Processes should NOT have start forms if you want to map them on sites
Use spaces and Caps for first letters, as the common rule for typing titles in English for naming proc
models
User Input Forms should be Quick Tasks if we don’t want tasks to appear in the default Appian Task
Administrators should have admin permission over the Process Models folder. All Users are going to
Viewer access
Use swim lanes to categorize process nodes and make the workflow readable. Example: User, Syste
Approval flow, Database
Use activity chaining when you have to perform a set of actions together. Ex: Forms in chaining, act
XOR, OR, AND, COMPLEX logical gates - Check if you have used the correct logical gates according
use case
XOR gateways are used in front of MNI nodes to check for empty/null values
Process flow will always reach at least one terminating end event
========================================================================================
Contains both Inputs and Outputs Only Input tab will be present so that the
so the parent process can take the parent process can send the data to the child
processed data from the child process.
process.
======================================================================================
18. What is the difference between button widget and button widget submits?
Button widget - Displays a button that can conditionally be used to submit a form. Buttons must be
placed inside a button layout.
Button widget Submit - Displays a button that submits a form. Buttons must be placed inside a button layout.
Load variables will be initialized With variables will be recalculated each time
once the form is loaded and re- when the expression is re-evaluated.
evaluated each time with the
existing values.
We can use load variables in We can use load variables in SaveInto and
SaveInto and a!Save() a!Save()
We cannot use apply function We can use apply function when calling rule
when calling rule has load has With
A Process Model is like a java Class and Process instance is like an Object for each class there can
have many objects like wise for a Process Model there can have Multiple Process Instances.
Exceptions: The exceptions tab lets designers create alternative workflows from an activity based on
configured conditions. The exception tab appears on all non-event and non-gateway activities. We can
configure the Exceptions based on Timer Event, Rule Event and Receive Message Event.
Escalations: It is like SLA when a task or process node is delayed for any reason, configurations in the
escalations tab can automatically take a number of actions to solve the problem. We can configure a timer
event and change raise the priority or send an Alert or Send a Message or Reassign a Task.
1. Reduce the size of the response: If there is more data than the query will take longer time to respond.
3. Minimize the number of calls: the more the number of calls are made to database, the longer time
interface takes to respond.
4. Do not use looping functions to execute db queries.
5. Use indexes wherever required: in the context of performance, indexes can improve data retrieval
speed by avoiding slow table scans. However indexes are slow write options.
1. Do not use administrator account for posting: when using Post Comment to Feed Entry smart service or
Post Event to Feed Entry smart service, choose a real, named user as an author.
2. Make sure readers understand the importance of post quickly: Use first few words to convey the real
meaning.
3. Avoid scheduling hazard alerts on repeat: When using Post Hazard to feed entry, avoid using this node
on repeat.
4. Make sure your entry or comment does not exceed byte limit i.e. 4000 bytes.
=======================================================================================
Sites are one of the Basic User interface. Sites allow the Designers to configure the specific tabs of
tempo like Records, Reports and Actions. In this ways the users who need to access only one tab can
be provided security for that tab for f corresponding Group so that can work on it and complete their
job. Unlike Tempo, when we want to display only set of tabs (Records, Reports and Actions) in
Appian We can go for sites. We can set the visibility for the each tab in Sites to set of User groups.
Each tab we use to call as a page and in each page we can display Record Type or Report or Action.
Maximum 5 pages are allowed in Sites.
Records allow you to bring together your internal and external data sources and see your business
information from a number of different views and perspectives. This may include searchable record lists,
read-only grids, summary views, charts, and reports.
====================================================================================
26. What is records Related Actions and what is the purpose of Related Actions?
Related Actions allows the users to act upon on existing context of the data. For Example for a patient
record if the surgeon wants to schedule a Surgery based on the existing context of the patient data. We can
set the security for the related actions so that the other users cannot act upon the existing data and only
specific set of users can act on it.
=========================================================================================
27. What types of Reports available in Appian?
Tempo Reports and Process Reports (Portal reports). Tempo reports display data from different types of
sources like databases, Records, Process Analytics and Third Party systems in the form of Grids, Pie charts,
Bar charts, Line Charts and Column Charts. Process reports are used to display the data regarding Process
instances. These data will be displayed in terms of Grids.
===============================================================================================
28. What is the Use of Data Management Tab and Alerts tab?
Data Management: All Appian processes, including completed and cancelled processes, are
retained in memory until archived or deleted. The settings on the data management tab allow
designers to specify a policy for archiving or deleting completed and cancelled processes.
By default, the process is automatically archived after 7 days. Any changes made on this form are
applied to all completed instances of the Process Model. Sub-processes do not inherit this setting.
Alerts: The alerts tab specifies the recipients of an alert if there is an error in the process. Generally
we use to configure Application Administrators Group in Alerts tab.
=========================================================================================
29. What is the difference between End Event and Terminate Event?
An End Event (without a trigger) is used to denote the end of a process flow within a process model.
The process remains active until all active paths in the process arrive at an end event. Until all the
active paths reaches the End event the process will still in Active state
A process can have multiple End Events. If so, the different branches of a process remain active until
each active path reaches one of the multiple End Event nodes. In such cases, a Terminate Process
event can be used to stop all branches of a process, even if one or more branches have not yet
reached an End Event node. If any of the active path reaches the Terminate Event then the Process
will be in completed state.
====================================================================================
A Quick Task is any attended activity that is activated by itself and completed outside of fixed process
flow. They are initiated on an ad-hoc basis and a new instance of the task is automatically generated
after one is completed. All assignees can view and complete the Quick Task any number of times until
the completion or termination of the process.
================================================================================