Sunday, October 25, 2009

10 Things I Wish I Knew About ITSM when i got started

When someone gets started with ITSM,there are a few points/concepts which if clear would make life much easy :-).There are couple of reasons for this -something which you think is a 'customization' that needs to be built,might be already existing in some form or the other or even there could be some existing functionality that would help you to build your customization very easily or even understanding them would help you to know in detail about how the product behaves

The points below were consolidated so that it can benefit everyone who works on BMC Remedy ITSM.

In the BMC Remedy ITSM applications, the multi-tenancy feature is available for Data segregation based on company. Access to data is controlled by a user’s access to a company.
(reading up a little bit about field 112 would be helpful as-well).
This feature is enabled from Application Administration Console>Custom Configuration>Foundation>Advanced Options>System Configuration Settings-System Settings

2.Restricted and Unrestricted access
This is related to multi-tenancy & for restricting data access of individuals to only companies that are relevant for them.Unrestricted users can access data for all companies based on there application permissions (Say a Global Support Manager).This is configured from People form’s Login/Access Tab.Check “Unrestricted Access” for granting such an access to a user.For restricting access to specific companies, add them into “Access Restrictions” Table

3.ITSM in a DSO environment

ITSM Installer now provides more support for DSO (7.5.xx onwards).Another good thing about the installer is that it is consolidated (ServiceDesk,Change Management & Asset Management) & runs on multiple platforms (InstallAnywhere based).Enable user defined prefix from SYS:System Settings.The 'Custom prefixes' are one of the most important aspects of a DSO enabled environment for ITSM.Update SHR:SchemaNames in the other server for appropriate application prefix (user defined prefix).Update field default for field ID 1 to match the prefix setup in above step.For additional information,refer ITSM-DSO-Enablement.doc

4.ITSM plug-ins
Another common query is regarding the plugins used by ITSM.Below is a list of few important ones
4.1ARDBC Plugin : Provides Overview console functionality, a view of work assigned across multiple applications. Query on the Vendor form triggers the plug-in

4.2Command Automation Interface (CAI) – libcaieventcmd/caiventcmd.dll :Primarily used by Requestor Console ,SRMS,TMS etc. CAI subsystem provides a common infrastructure that can be shared across applications for integration. It is a filter API plug-in

DVF Plug-ins ( These are for data visualization to provide graphical representation of data)

1.Task Viewer – Provides a graphical representation of tasks, task groups and their sequencing
2.Change/Release Calendar – Provides a calendar representation of changes/releases within the Organization.This is very important for scheduling changes /releases. Similar to outlook calendar view

5.Approval mapping & Integration with approval server

in ITSM,there is tight integration with approval server.Applications like change management have this integration because critical changes done to the production infrastructure needs to be following the approval process of the enterprise so that sufficient "what-if" scenarios can be thought about & appropriate sign-offs can be obtained.

Approval Mappings for Change Management Application is done from Application Administration Console>Custom Configuration>Change Management>Approval> Approval Mappings

Approval Process Configuration is done from Application Administration console>Custom Configuration>Foundation>Advanced Options>Approval Process Configuration

The approval processes that are configured can be based on CI (Configuration Item) and IA (Impacted Area)

Approval Rules involved in these processes can be viewed/customized from the form AP:Administration console

6.Risk Management

Risk assessment within change management helps to achieve greater productivity by combining qualitative and quantitative criteria for assessing the risk level associated with a change.The computed risk value can be selected, based on answers to a series of predefined questions.Derived risk factors are based on the historical performance of different aspects of a change. For all configured derived risks, a cumulative performance rating is stored

7.Release Manifest
The Release manifest defines the content of the Release.The manifest can consist of Activities and/or Change Requests.Manifest is used to provide a consolidated view needed to drive completion of the Changes and the Activities required to Close the Release.

Milestones are used to provide grouping mechanism to identify key points within in the Release process.

8.ITSM Notifications
Notifications are very important from the application's perspective because they keep key people informed

You can customize an individual’s notification preferences. Notification preferences vary by module

User Level - General preferences - They are configured in Notifications tab in people form
Configurable from the Notification tab of Application Rules

Notifications are Message Tag/Event DrivenYou can customize your own notification messages from the SYS:Notification Messages form. The SYS:Notification Messages form contains the notification text for each event.

Notification Message Tag is used by the notification workflow to identify the specific message to be sent. Each notification event can be associated with several notification messages.
formed on what is going on.

9.Impact Analysis
Change Impact Management: Thre are ways of Automated, intelligent and accurate change impact assessment to pro-actively determine impact to Services and mitigate risk of implementing a Change Request .When touching a CI it is difficult to understand the impact of the change: Atrium Impact Simulator -Provides “what if” CI impact analysis for ITSM applications.Higher level of service assurance can be provided before planning or approving changes to the production environment.This will reduce possible change collisions-(using Collision Detection functionality)

10.Integration with external apps – Web service & interface forms
Integration with external apps can be esility done with Web service & interface forms
Web services allow third-party integration tools to create, modify and query requests

They are built on top of Application Interface forms which has the Ability to Create requests, specify templates and associations.We can query and modify relationships and work info entries etc associated with a request

e.g. for a webservice is RMS_ReleaseInterface_Create_WS

Wednesday, October 7, 2009

Changing the State of a Remedy Deployable Application Programmatically to “Production”

Recently there was a query on changing the deployable application state to ‘Production” programmatically (using Driver script/API etc)

The challenge was that there was a new Deployable application “My Deployable App” that was made by a colleague which he was deploying using the rik loadapp command with in a batch file. He was also importing ARX records corresponding to the roles to group mapping for his new application into the "Roles" from. The application & roles got created and mappings with group was also correct, but the application State was “Maintenance” and he wanted to set it to “Production” automatically without any user intervention or without using Developer Studio

By default, deployable applications are imported in the Maintenance state. When an application is in the Maintenance state, only members of the Administrator group have permissions to use it. This is AR System behaviour by design,but ARsystem does allow you to change it using API calls (which Devstudio does when you change the dropdown value)

To change the state of the application, we can use driver command “sas” which stands for set application status. Below is a useful driver script snippet to change the status of the deployable application to “Production”

My Deployable Application

There is also a “gas” command that stands for get application status which can be used to retrieve the status of a deployable application