Friday, 16 December 2011

BMC Atrium Orchestrator(BAO)

Hi Friends today i came with remedy integration tool ,
  -> BAO is one most demand integration tool with other applications like Biztalk server,Web logic,Tibco Integration manager.
->using BAO will validate the messages which are coming from external applications.
            

Saturday, 3 December 2011

Version Control in ARS


What Is ARS Object History?

ARSOH is a filter plugin which enables Remedy administrators and developers to maintain a running history of changes to ARSystem workflow objects in a centralized repository. The daemon is capable of listening to events from multiple ARServer instances. Target operating systems for the first release include all platforms that support java.

ARSOH is capable of supporting all ARSystem workflow objects for which a Remedy server event is generated. This includes forms, fields, form views, active links, filters, escalations, containers (active link guides, filter guides, applications, and packing lists), and menus. This does not include flashboards, flashboards data sources, flashboard variables, flashboard alarms, DSO mappings, or DSO pools.

The main object audit daemon has the following characteristics:

Module 1: Object History Filter Plugin
The Object Audit Daemon captures changes to ARSystem workflow objects and stores the definition in a central repository. A strain ID will be created for each object to uniquely identify each object. The strain ID persists from the time of object creation to the time of object deletion. ARSOH will compensate for name changes to workflow objects using the ARSystem server events feature. Server events are communicated to ARSOH through a configurable polling interval.

The user interface for repository access is accomplished using standard Remedy forms. Information collected in the repository includes:
Unique identifier
Strain identifier
Server name
Name of the object
Type of operation (create, set, delete)
The object type
User making change
Timestamp of object change
Definition of object at the time of change
Revision counter
Previous version unique identifier
The end user interface for this module allows viewing of the repository via the Remedy User tool with methods to view:
Objects changed per user
Objects changed for a date range
All revisions for a given object
Why Such a Program?

There are several reasons behind the development of this program:
All too often, Remedy applications flex to the needs of the business in a way that is not conducive to the maintenance and administration of an application.
When things go wrong and applications stop working, fixes are implemented on the fly, and no record of what or how is retained.
During the application upgrade of purchased applications, reimplementation of customizations is cumbersome due to one or more of the following:
No record of customizations were generated or retained, either technical or functional
Vendor provided objects were modified and no method of identification was used to differentiate which objects were changed and which ones were not
When working with a series of workflow objects, and things just aren't going right and you need a way to go back in time with all the objects you modified
The available alternatives are clunky and cost prohibitive in terms of productivity:
This program is to the alternative what CVS is to RCS or a complete lack of control
No more checking in and checking out ARSystem workflow objects
No more object locking
Outside resources perform customizations and cry foul play after the engagement when things stop working (yes, this works both ways).
Outside resources are brought in to provide a solution and the level of technical documentation required for future maintenance is inadequate.
A better way of administering AR System Servers is long overdue.
Future Plans

The future direction of this program is speculative at this point as new and better ideas come along, but the targeted extensions are listed below. The object history daemon will serve as the underlying framework for the following modules:

Module 2: Requirement Management and Developer Check-in
This module will track, per functional requirement, various information pertaining an enhancement, module, or workflow change. In addition to tracking requirements, this module will enable each developer to check-in to a requirement under active development. By checking in to a requirement, all changes made by that developer can be tracked and correlated with a requirement. This will in turn automatically generate and maintain a packing list that includes all the objects created and modified to meet each requirement. This type of information is important for tracking bugs and during application upgrades. The information to be collected, per requirement, includes:
Requirement Specification (The what, who, when, and how)
System Generated Technical Documentation (The objects created, modified, and deleted)
Administrative Documentation (How to keep healthy, administer, integrate, and extend the module)
End User Documentation (Step by step instructions on using the feature)
Testing Documentation (Step by step instructions and requirement validation points)
Module 3: Release Management, part 1
This module will serve to track releases of the tracked enhancements (see module 2). The planned level of granularity for revision control will be four levels (i.e., version 1.0.3.1):
Level 1: Application version compatibility release level (HD 5.0 vs. HD 5.5 vs. HD 5.6)
Level 2: Module specific release level (major overhauls, rewrites)
Level 3: Functional release level (changes or additions to functionality)
Level 4: Reactive bug fixes (corrections to improper code)
This module will also seek to meet these requirements:
Ability to extract the definition files of a requirement for any revision level.
Conflict tracking and resolution. Identifies objects modified by two or more developers under the guise of two or more requirements between release cycles.
Module 4: Release Management, part 2
This module will seek to extend the capabilities added by module 3 by adding the following capabilities:
Ability to move specific enhancements between environments.
Ability to perform backwards environment refreshes of both the ARS application and the repository.
Module 5: Repository Integrations
This module will seek to take advantage of revision systems available, both commercially and through the OSI. The purpose of this effort is to offload the revision storage from the ARSystem Server to a system designed to act as a code repository. The specific version control systems under consideration include:
Subversion
CVS
PVCS
Visual SourceSafe
Module 6: Application Integrations
This module will seek to use external applications as the gateway for bug tracking and requirement management. The specific products under consideration include:
Remedy Change Management
Remedy Help Desk
Bugzilla

AR System Remedy 7.5.00 New Features


There are many changes in the new version, and most noticable and heavily impacted change that all the developers feel is the new Developer Studio (a.k.a. Admin Tool). The new IDE has replaced the old Admin tool which has new and improved look. The way we develop applications over remedy for years will change with this new tool, though the logic and behaviour stayed the same, the way we operate or create new fields to new workflow has to be changed.

It took some time for me to understand the controls and various functionalities, but exposure to VB and other tools made it easy for me to get used used with the new interface. The use perspective bar is important and one should try to utilize it to the utmost(we can live with out it too, but it makes things easy with differenet views)

I like the new features like editing multiple field properties and Undo most of all.

Here are the few things that are new or improved in Remedy 7.5.00 version

I have made a list of new/updated features on 7.5 that I like most, here is the list:

1. Usability Features

Adobe Flash Integration – Only useful if you use BMC Flashboards
My Reports – I think people will love BMC for this feature, most useful
Field Effects – This is some what visual delight to users seeing transitional effects in Remedy, pretty soon we will have emoticons  also.
Panels (a.k.a. Tabs, a.k.a. page holders) – The thing with Tabs is I never liked them because of several reasons, but this new version gave me some reasons to not hate them anymore. The features like display types, colors, images, text and url display are a few of them.
Drop-down character field changes – users are allowed to enter partial values for character fields.
Tooltips on Hoover and AL actions – This is also great addition to usability of remedy
The Web interface or usabilities are better than even. Application perform and look better on web than User tool. I think the reason for that is age old User tool.

2. Administration- Developer Studio changes

Un-Do last changes untill save
Multiple Field Property Changes
Work-Flow Objects view
IDE view and look
Prespectives
Outline, Properties and Reltionship tabs
3. AR Server and Enterprise Level Changes

New Java API – havent used it yet
AL firing condition – Table Refresh
New Auditing mechanics for fields
Run Prodcess command length increment – This is very useful for frequent run process command users.
New Improved AR Import tool
64 bit server support
Filter and Escalation work-flow debugger
Performing seraches on Internal and External Databases simultaneously – This feature became possible after the Join  with View forms.
4.  Misc Changes

New Logging mechanism
New Licensing System
Time out clocks on browsers
Failback Mid-tier support
New Keywords
New Execute on conditions
and many more……..
I haven’t got access to new version for the first 2 months, when i got my hands on it, even a patch was released

Environment Details:

Used VMWare for all the scenarios, with host server running on Windows 2003.

VM1 :

OS – Windows 2003 x64

DB – MS SQL Server 2005

Webserver – IIS

VM2:

OS – RHEL 5.1

DB – Oracle 10g

Webserver – Tomcat/Apache

Still there are many things and areas that need explorartion, will update very soon

Remedy Architecture


Remedy Architecture:
 1.Presentation Layer-
 As I said we have Remedy Administrator Tool/Developer Studio(Remedy IDE), we handle all the Form/Workflow creations in this-(Admin/Development activities),
 Form creation would be a kind of drag and drop as you do it in VB, wherein we have Form Object listed aside like Character/Text Field,Drop Down,Integer Fields,Borders,Labels……
 Once you design our Form Structure through drag and drop, the same structure would be saved/represented in the DEF File format in the Remedy Server.We don have to code as you do in Java for creating Forms here.(using Admin Tool/Developer Studio Remedy IDE’s-connecting to Remedy Server, through simple click and drag method to create Forms).

2.Business Layer-
 To define Business Layer, in Remedy IDE itself we have seperate Windows to create ARSystem Objects(Active Links,Filters and Escalations) through which again a simple drag and drop with your logical operators to build the Remedy Workflows.
 Again this will be represented in the DEF File, which Remedy Server can interpret and execute it.

3.Database Layer-
 The data which is being shown in the Presentation Layer and the operations which are being performed in the Business Layer will ultimately goes to the Relational Database(like Oracle,DB2,My SQL).
 The End user will be interacting with the Remedy User(thick client)-exe, or through Browser(thin client), the Remedy Forms and Workflows which you designed in the Remedy IDE will be viewed in these two client tools,
 On performing actions in the User Tools by the End User, there will be an API communication from these Client to the Remedy Server and through which the Forms will be loaded and the Workflows will be executed in the Client and Server Environment.
 There is no coding of any programming languages required to create Standalone Applications(Set of Forms and Workflows) on Remedy Platform-All you need to know is to understand the Remedy Workflows and Tools.
 With this platform, BMC has powered ITSM applications to automate the Service Management(you can go through ITIL to understand what is being done in the Incident and Problem framework, but through this platform you can build any kind of ticketing/enterprise applications(as mentioned earlier) which you may want to represent in the Web with out core programming.