You are on page 1of 20

1. RMsis Documentation - 1.0 Release . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2
1.1 RMsis Application Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.1 Requirements Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 RMsis User's Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1 Introduction and Context . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1.1 Menus, Keyboard and Mouse Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1.2 Requirement Categories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1.3 Roles and Access Rights . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.2 Capturing and Analyzing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.2.1 Requirement Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.2.2 Requirement Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2.3 Requirements Traceability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2.4 Reverse Traceability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.4.1 Artifact Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.4.2 Artifact Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.5 Release Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.5.1 Release attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.5.2 Release operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.6 Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2.7 User administration by Requirement Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3 RMsis Installation and Upgrade Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3.1 Target Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3.2 Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3.3 System Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3.4 Application Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.3.5 Database Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.3.6 Deployment of RMsis Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.3.7 License activation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.3.8 Upgrading Existing RMsis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.3.9 Trouble Shooting and FAQ's . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.4 RMsis Administrator's Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.4.1 RMsis administration by JIRA admin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.4.2 Backup and Restore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.4.2.1 MSSQL Backup and Restore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.4.2.2 MySQL Backup and Restore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
RMsis Documentation - 1.0 Release
This is Home Page for the RMsis 1.0 release. You can access documents / articles using the LHS navigation pane.

RMsis Application Notes


Application notes are intended to explain how certain end use objectives can be achieved in RMsis. These are mostly version independent,
unless explicitly stated.

Requirements Manager
Requirements Manager is a role, generally performed by a person who "owns" the requirements in a project. Requirements Manager may be
assisted by a team, who may own some of the roles.

A requirements manager is responsible for

collecting and maintaining the requirements


analyzing the requirements
(usually) defining releases
assigning the requirements to releases

In this section, we will explain certain end use scenarios, applicable to this role and how RMsis can be used in these scenarios.

RMsis User's Guide


Introduction and Context
RMsis is simple, intuitive and specific requirement management extension for JIRA. This tool provides a user friendly collaborative platform for
effectively managing requirements. This document provides a complete overview of the functions provided by RMsis.

Menus, Keyboard and Mouse Handling


The keyboard and mouse handling philosophy is presented below:

Mouse
Right click on any cell/element shows possible operations in context of that cell/section.
Clicking on a cell opens cell in editable mode if user is having permissions.
Clicking on link of any artifact shows details about that artifact.
Keyboard
Esc key is used for cancelling any operation/action.
Tab key is used navigate on next available control.

Requirement Categories
RMsis provides functionality to manage requirements under two categories:

Unplanned Requirements: This is the collaboration space, where all the users can create/edit requirements and comment on them.
Requirement Manager can move requirements from this category to "Planned Requirement" category and assign them various
attributes/release.
Planned Requirements: This list is used by Requirement Manager to analyze requirements and assign them to specific releases. It is
recommended that only 1 manager should have write access to the "Planned Requirements", even though RMsis can be configured to
provide write access to other category of users as well.

Roles and Access Rights


The tool is tightly integrated with JIRA ecosystem and uses the same user credentials as maintained by JIRA. As a consequence, the roles of
users in RMsis are largely in line with JIRA, except that another role of "customer" has been defined. This has been done, anticipating more
restrictions on this category of users as compared to design / development / testing team member. The current version of RMsis defines and this
document assumes the following roles:

User defined in RMsis Role Description


Administrator
Installs the system and manages, licenses, database backup, system upgrades
etc
Identifies the system users
Defines the access rights against a role
Assigns users to projects and defines the role

Product Manager / Project Manager / Project Lead


** Owns all the requirements and artefacts mapped to the requirements.
Schedules releases and assigns requirements to the same,
Maintains an oversight of the product / project.

Team Member
Can contribute requirement(s)
Reviews the requirement(s)
Refers to the requirements for other downstream activities.

Customer
Has limited RW access, as defined by the administrator.
Can contribute requirement(s)

Note **: Also referred as Requirement Manager in document.

These users can map into various designations / roles for your specific context. Some examples of this mapping are enumerated below:

User defined in RMsis Context Equivalent Roles

Project Manager / Agile (Scrum) Product Owner, who is generally responsible for consolidating, analyzing and allocating
Project Lead team requirements.

Team Member Agile (Scrum) Scrum Master will be a part of the team and will be allocated a set of requirements (as sprint
teams backlog) by the Product Owner.

Capturing and Analyzing Requirements


Requirements can be captured in 2 ways: -

Requirement Manager can create/edit requirement under "Planned Requirements" and assign values to their attributes.
Any user (if permitted by Admin) can create requirement under "Unplanned Requirements". If found suitable, these can be moved to
"Planned Requirements" by Requirement Manager.
Fig – 1 : Requirement Management Screen

Requirement Attributes
A requirement has following attributes:

Req. Id: A unique identification of the requirement. This field is non editable.
Requirement: This is a brief description of the requirement.
Attachments: Any number of documents can be attached to the requirement. For attaching a document against a requirement, just click

on "Attachments" column ( ) and row corresponding to the requirement. After a panel appears, click on "Attach new document" to
attach the document.

Depends on: Requirement dependency can be created by clicking the cell corresponding to the requirement in "Depends On" column.
After clicking on this column, a panel will appear. Check the requirements on which dependencies needs to be created. RMsis checks for
and prevents cyclic dependencies.
Fig – 2 : Requirement Dependency Screen

Categories: A requirement can be classified in user defined categories.


A category can be created by clicking on "Categories" column in any row of the table. After a category panel appears, click on
"Create New Category" to create a new category.
After a category is created, it can be associated with any requirement in the table (planned or unplanned).
A category can be edited by clicking on edit category image (this image will appear after hovering the mouse on category in
category panel)
A category can be deleted by clicking on delete category image (this image will appear after hovering the mouse on category
in category panel)
Estimated Effort: This field specifies estimated effort required for the requirement in man days.
Estimated effort of parent requirement is auto-computed and cannot be edited.
Change in estimated effort of a requirement will also be reflected in the parent requirement.
Technical Risk: This field specifies technical risk of the requirement. Possible values for this field are "Very High", "High", "Average",
"Low" and "Very Low".
Release Id: This field identifies the release id associated with the requirement. A release can be created in "Releases" tab.
Priority: This field specifies priority of the requirement. Possible values for this field are "Blocker", "Critical", "Major", "Minor" and "Trivial".
Criticality: This field specifies criticality of the requirement. Possible values for this field are "Low", "Medium" and "High".
Feasibility: This field specifies technical and business feasibility of the requirement. Possible values for this field are "Yes", "No" and
"Investigate".
Status: This field specifies status of the requirement. Possible values for this field are "Open", "Closed" and "Completed".
Comments: Any comment related to the requirement can be entered into this field. The latest comment will be shown in "Comments"
column against any requirement. After clicking on that cell, all the comments related to the requirements will be shown. Reply can be
given to the comment by clicking on "reply to comments" image .
Fig – 3 : Requirement Comments Screen

Requirement Operations
The following operations can be performed on "Planned Requirement" table:

Create Requirement: A new requirement can be created by either


clicking on the table row under the "Requirement" column labeled "< Enter new requirement >".
selecting context menu item ("Add Requirement above" or "Add Requirement below").

Fig – 3 : Requirement Operations Screen

Edit Requirement: A requirement can be edited simply by clicking on it OR by clicking its ID.
Delete Requirement: A requirement can be deleted by clicking on context menu item "Delete Requirement".
Caution! if a parent requirement is deleted, then all of its children will also be deleted.
Select Requirement: A requirement can be selected by clicking on first column of the requirement.
Indent Requirement: A requirement can be indented in the following two ways:
First select a requirement and then click on indent button to indent it.
By selecting context menu item "Indent Requirement".
Outdent Requirement: A requirement can be outdented in the following two ways:
First select a requirement and then click on outdent button to outdent it.
By selecting context menu item "Outdent Requirement".
Paste Requirement: A requirement can be cut from the unplanned requirements table and then pasted into the planned requirements
table either:
by selecting context menu item "Paste Requirement above" or "Paste requirement below".
or by selecting a requirement from planned requirements table and then choosing "Paste Requirement above" or "Paste
Requirement below" from the dropdown "More Actions" in the planned requirements section.
Expand Requirement: A parent requirement can be expanded by clicking on expand button associated with the requirement text but if
you want to expand all the requirements then click on "Expand All" button.
Collapse Requirement: A parent requirement can be collapsed by clicking on collapse button associated with the requirement text but if
you want to collapse all the requirements then click on "Collapse All" button.
Move Requirement from Unplanned to planned: A requirement can be moved from "Unplanned Requirements" section to "Planned
Requirements" section by selecting requirement and right clicking on it. After right click, a menu appears and requirement can be moved
to planned section by selecting "Move to Planned Requirements" section.
Filters: Requirements can be filtered on various attributes like "Release ID", "Priority", "Criticality", "Feasibility", "Status" etc. Filter
selection performs an OR operation within a given column and performs AND operation across columns.

Fig – 4 : Requirement Filters Screen

Export Requirements (PDF/Word): Requirements can be exported to PDF/Word document by clicking icons shown on top right corner.

Important Notes:

If you are unable to perform any operation on this table, then please confirm with your administrator / manager that you have the required
credentials to perform that operation.
Context Menu is accessible by right clicking on any table row. Operations defined in context menu will be performed on that row.
The fields categories, estimated effort, technical risk, release id, priority, criticality, feasibility, status for a parent requirement are non
editable.

Requirements Traceability
Requirement Manager can link/unlink JIRA issues/bugs/tasks with a given requirement and can check traceability in real time.

To link an artifact to a requirement, just click on of that row. After a panel appears containing:

Linked Artifacts table showing artifacts linked with this requirement. To unlink an artifact, just click on .
Link New Artifacts table showing artifacts not linked with this requirement. To link an artifact, just click on , that artifact will be
automatically moved to linked artifact table.

Color coding of table cells is done according to the status of the artifacts.

Red Color: if number of ("Resolved" and "Closed") artifacts are less than 50% of total attributes associated with requirement.
Yellow Color: if number of ("Resolved" and "Closed") artifacts are more than 50% and less than 100% of total attributes associated with
requirement.
Green Color: If all artifacts are either "Resolved" OR "Closed".

Requirement traceability table can be exported to PDF/word by clicking icon on top right corner.

Fig – 6 : Requirement Traceability Screen

Reverse Traceability
Using RMsis, Requirement Manager can easily track requirements associated with a given issue. This feature is helpful to know associatively of
JIRA issue(s) with given requirement(s).

Artifact Attributes
An artifact has the following attributes:

Jira Reference: This field specifies unique key (Jira reference id) of the artifact.
Summary: This field specifies brief summary description of the artifact.
Artifact Type: This field specifies type of the artifact. Artifact types are automatically synchronized with issue types in Jira.
Priority: This field specifies priority of the artifact. Possible values are "Blocker", "Critical", "Major", "Minor" or "Trivial".
Status : This field specifies status of the artifact. Possible values are "Open", "In Progress", "Reopened", "Resolved" or "Closed".
Requirements: This field shows the requirement ids which are linked with this artifact.

Artifact Operations
The following operations can be performed:

Add Artifact: An artifact can be created by clicking on "Add Artifact" button. A Jira issue panel will be opened to create a new Jira issue.
Artifact table will be automatically updated after closing the Jira issue panel.
Edit Artifact: An artifact can be edited by clicking in "Jira Reference" column. A Jira issue panel will be opened to edit that Jira issue.
Artifact table will be automatically updated after closing the Jira issue panel.
Link Requirements: An artifact can be linked to one or more requirements. A requirement can be linked to an artifact by clicking on
"Requirements" column for an artifact row. After a panel appears, check on the requirement rows to link requirements.
Filters: JIRA issues can be filtered on "Artifact Type", "Priority" and "Status".
Export Releases (PDF/Word): JIRA issues can be exported to PDF/Word document by clicking icons shown on top right corner.
Fig – 7 : Requirement Reverse Traceability Screen

Release Planning
Requirement manager can plan releases on the "Release" tab.

Release attributes
A release has the following attributes:

Release Name: This field specifies name of the release.


Planned Effort: This field specifies planned effort for the release. This field is non editable and calculated automatically from the
requirements assigned to this release.
Planned Date: This field specifies planned date for the release.
Actual Effort: This field specifies actual effort for the release. After release, Requirement Manager enters the actual effort.
Actual Date: This field specifies actual date for the release. After release, release manager provides the actual date.
Release Status: This field specifies status of the release. Possible values are "Planned", "On Going" and "Closed".

Release operations
Following operations can be performed on releases:

Create Release: A new release can be created by clicking on the last row of the table under the "Project Release Name" column labeled
"< Enter new release >".
Edit Release: A release can be edited simply by clicking on it.
Delete Release: A release can be deleted by clicking on context menu item "Delete Release". However, if a release is associated with
requirements, then it will not be deleted.
Filters: Releases can be filtered on "Release Status".
Export Releases (PDF/Word): Releases can be exported to PDF/Word document by clicking icons shown on top right corner.
Fig – 5 : Requirement Release Screen

Filters
RMsis implements filters with some common characteristics, described below:

RMsis filters are implemented with a universal philosophy of


OR within a column
AND across columns

A filter is indicated by the presence of an icon in a column header of a table.


Filter can be accessed by clicking on this icon, which provides multi-select options (if available).
The filter is applied as soon as an option is selected.

The filter drop-down can be closed by clicking on the (now changed) icon.

A typical view from the Planned Requirements table is shown below.

User administration by Requirement Manager


Requirement Manger can associate users with roles in a project. Following operations can be performed by requirement manager:

Assign Role to a User: To assign role to a user, click on "Roles" column and row corresponding to the user. After a panel appears,
check on the desired role and close.
Un-assign Role to a User: To un-assign role to a user, click on "Roles" column and row corresponding to the user. After a panel
appears, un-check the desired role and close.
Fig – 8 : User Management Screen

RMsis Installation and Upgrade Guide


Target Audience
Targeted audience for this document are:

Users who would like to install and configure RMsis (Requirement Management Extension for JIRA)
Users who would like to upgrade existing RMsis.

Assumptions
In this document, it is assumed that the readers are aware of JIRA and its basic configuration. For detailed information about JIRA, please refer (
JIRA documentation).

Terminology
Following table describes the terms used in this document.

Term Description

Admin Person who is responsible for installation and configuration of RMsis for JIRA.

RMsis web application Requirement management product from Optimizory. Typically it's implementation is available as rm.war file.

RMsis JIRA plugin JIRA plugin for RMsis application. Typically this plugin is available as jira-rmsis-x.x.jar.

System Requirements
Hardware

RMsis can be installed on any server/machine where JIRA is installed. You would need a server class machine, as suggested by Atlassian for
JIRA.

Software

Platform Supported by RMsis

Operating Systems Microsoft Windows XP/VISTA/7, Linux

JIRA JIRA 4.0, 4.1, 4.2, 4.3 or later. Please refer JIRA Installation and Upgrade Guide

Java Platform Sun/Oracle JDK / JRE 1.6 (update 10 or higher). Please refer JAVA environment setup
Application Servers Apache Tomcat 6.0 OR later

Databases MySQL 5.x OR later, Microsoft SQL server 2005/2008

Web Browsers Firefox 3.5/3.6/4.0, Internet Explorer 8.0, Chrome 11/12

Application Structure
RMsis Application Structure
Latest version of RMSis can be downloaded from http://cart.optimizory.com/rmsis. The compressed downloaded file contains following files:

rm.war: It is the RMsis web application.


jira-rmsis-x.x.jar: It is the JIRA plugin, which connects RMsis application with JIRA
setup.sh: Setup file for Linux/Unix
setup.bat: Setup file for Windows
sample-conf directory which contains sample database and mail configuration files
README.txt: Contains basic README file. This file contains brief installation instructions.

Database Setup
Database Creation

MySQL

1. Open a unix terminal or a windows command prompt whichever is relevant to you. And login to MySQL database using the command line
client that is shipped with the MySQL. Use "root" (administrator) credentials to login.
2. Create a database to store RMSis data. Use any name for it. Example - "rmsis".
3. Create a database user and assign permissions to this user to access the database created above.
4. Exit MySQL

$ mysql -uroot -ppassword


mysql> create database rmsis;
mysql> grant all on rmsis.* to 'username'@'hostname' identified by 'new_user_password';
mysql> exit;

Microsoft SQL Server 2005 / 2008

1. Create a database for RMsis (e.g. rmsis). Note that the collation type must be case insensitive, e.g.: 'SQL_Latin1_General_CP437_CI_AI'
is case insensitive. If it is using your server default, check the collation type of your server.
2. Create a database user which RMsis will connect as (e.g. rmsisuser). Note that rmsisuser should not be the database owner, but should
be in the db_owner role.
3. Create an empty 'schema' in the database (e.g. rmsisschema) for the RMsis tables. Please note that a 'schema' in SQL Server 2005 is a
distinct namespace used to contain objects, and is different from a traditional database schema. It is not required to create any of RMsis
tables, fields or relationships (RMsis will create these objects in empty schema when it starts for the first time). Read more on SQL
Server 2008 schemas in the relevant Microsoft Documentation (http:/msdn2.microsoft.com/en-us/library/ms190387.aspx).
4. Ensure that the user has permission to connect to the database, and create and populate tables in the newly-created schema.
5. Ensure that TCP/IP is enabled on SQL Server and listening on the correct port (the port is 1433 for the default instance of SQL Server).
Read the Microsoft documentation for information on how to enable a network protocol (TCP/IP) and how to configure SQL server to
listen on a specific port.
6. Ensure that SQL Server is operating in the appropriate authentication mode. By default, SQL Server operates in 'Windows Authentication
Mode'. However, if user is not associated with a trusted SQL connection, i.e. 'Microsoft SQL Server, Error: 18452' is received during
RMsis startup, it is required to change the authentication mode to 'Mixed Authentication Mode'. Read the Microsoft documentation on
authentication modes and changing the authentication mode to 'Mixed Authentication Mode'
7. Turn off the SET NOCOUNT option. Open SQL Server Management Studio and navigate to Tools -> Options -> Query Execution -> SQL
Server -> Advanced. The following screenshot displays the configuration panel for this setting in MSSQL Server 2005/2008. Ensure that
the SET NOCOUNT option is not selected:
8. Copy SQL server driver to application server.
9. Download the SQL Server JDBC driver (v1.2.3) from JTDS.
10. Add the SQL Server JDBC driver jar (jtds-1.2.3.jar) to the <Tomcat install>/lib/ directory.
Deployment of RMsis Application
Application Deployment

For Windows

1. Unzip rmsis.zip file in any folder using winzip/winrar.


2. Create RMsis configuration directory at any location (to keep RMsis configuration files)
3. Run setup.bat file.

c:\> .\setup.bat

4. System will ask to enter RMsis configuration directory. Please enter the full absolute path of configuration directory (created in step 2).

c:\> Enter the RMsis configuration directory path: Path/to/rmsis/configuration

5. Go to RMsis configuration directory and open jdbc.properties file. Enter your database configuration.
6. Go to RMsis configuration directory and open mail.properties file. Enter your mail configuration.
7. Deploy rm.war to your application server (Tomcat). This can be done by copying rm.war to your <CATALINA_HOME>\webapps\ folder.

c:\> copy rm.war <CATALINA_HOME>\webapps

Note:

<CATALINA_HOME> is path to Tomcat installation.


rm.war can be deployed on any instance of tomcat server, not necessarily the one where JIRA is running.
Example: Suppose domain is http://example.com/ and tomcat server is running on port 8080 of this domain, then RMsis base url will be
http://example.com:8080/rm/ remember this base url, the system will ask for it while launching RMsis application for the first time.

For Linux

1. Unzip rmsis.zip file in any folder using gunzip.


2. Create RMsis configuration directory at any location (to keep RMsis configuration files)
3. Run setup.sh file.
3.

$ chmod +x setup.sh
$ ./setup.sh

4. System will ask to enter RMsis configuration directory. Please enter the name of configuration directory (created in step 2).

$ Enter the RMsis configuration directory path: Path/to/rmsis/configuration/

5. Go to RMsis configuration directory and open jdbc.properties file. Enter your database configuration.
6. Go to RMsis configuration directory and open mail.properties file. Enter your mail configuration.
7. Deploy rm.war to your application server (Tomcat). This can be done by copying rm.war to your <CATALINA_HOME>/webapps/ folder.

$ cp rm.war <CATALINA_HOME >/webapps/


Note:

<CATALINA_HOME> is path to tomcat installation.


rm.war can be deployed on any instance of tomcat server, not necessarily the one where jira is running.
Example: Suppose domain is http://example.com/ and tomcat server running on port 8080 of this domain, then RMsis baseUrl will be
http://example.com:8080/rm/ remember this baseUrl, the system will ask for it while launching RMsis application for the first time.

Installation of JIRA plugin for RMsis

For Windows

1. Move jira-rmsis-x.x.jar plugin file to JIRA home's /plugins/installed-plugins/ directory.

C:\> copy jira-rmsis-x.x.jar <JIRA_HOME>\plugins\installed-plugins

2. Shutdown JIRA and restart it. It will install rmsis JIRA plugin.

For Linux

1. Move jira-rmsis-x.x.jar plugin file to JIRA home's /plugins/installed-plugins/ directory

$ cp jira-rmsis-x.x.jar <JIRA_HOME>/plugins/installed-plugins

2. Shutdown JIRA and restart it. It will install rmsis JIRA plugin.

First Time Initialization


1. Please access the JIRA application through your browser
a. Click on the RMsis Tab.
b. Provide RMsis Base URL in the space provided
c. Press "Save"

1. After this stage, the Database should be created and RMsis should run normally.
2. Now, you should be able to see the "License Activation Screen".

At this stage RMsis application is installed and can be activated after providing license to the application.
Note : The application's (JIRA / RMsis) startup sequence is not important.

License activation
After installation of RMsis, "RMsis" link will appear on JIRA menu bar.

The screen shows the system code for this RMsis instance. To generate license key, click on "RMsis Evaluation License Key" or log on to
http://cart.optimizory.com/rmsis and input your system code to generate License Key.Enter the license key in text box.

Click the submit button. It will show license validity.

Upgrading Existing RMsis


In order to upgrade existing RMsis with new version, please follow below mentioned steps: -

1.
1. Take backup of existing database.
2. MySQL

$ mysqldump -uroot -ppassword rmsis_database_name > backup_file.sql

For Microsoft SQL server 2005/2008 please refer http://msdn.microsoft.com/en-us/library/ms187048.aspx


3. Download new version of RMsis and unzip new rmsis.zip.
4. Deploy new rm.war file to application server and remove old file (refer section RMsis Application Deployment).
5. Clear the Tomcat Cache. This can be done by deleting the TOMCAT_HOME/work/Catalina/<HOST_NAME>/rm folder.
6. Remove old jira-rmsis plugin from JIRA_HOME/plugins/installed-plugin/ directory.
7. Install new JIRA plugin for RMsis (refer section Installation of JIRA plugin for RMsis).
8. Shutdown JIRA and restart it.
9. Open JIRA web link in web browser and login as "Administrator".
10. Now click RMsis menu on JIRA top navigation bar.
11. If required, follow instructions for license activation.

Trouble Shooting and FAQ's


FAQ

What is RMsis base url?

If http://www.example.com is host, & tomcat server is running on port 8080 of this host; then RMsis base url(i.e. host ID) will be
http://example.com:8080/rm/. RMsis base url may be different according to your deployment scenario.

Where are the log files located?

If you get an error, which log files should you share with us?

Logs files that you need to share in case of error are:-

*Application Server Logs:*These logs files are generally located in logs folder of your application server. e.g. In case of Apache Tomcat, it
is located in <CATALINA_HOME>/logs/ folder.
JIRA Logs: These are located at <JIRA_HOME>/logs/ folder.
RMsis Logs: These are located at <RMSIS_HOME>/logs/ folder.

Is the system code for RMsis same as the one for JIRA?

No, they are different.

Common Issues

I have JIRA installed on a different server and I have installation problems !

I have JIRA running on another server and I am getting one of the following errors:

Unable to interpret JIRA response


Invalid Base URL
The log files contain one or more of the following errors, apart from the above
HttpClient error
Jira - RMsis not connected

One of the following may be the cause of error, please check if

Firewall / Proxy is interfering with JIRA-RMsis communication.


Port number is correctly specified in the base URL.

If your system reaches this state, then you will need to

if you get an error database is in inconsistent state, drop the database


fix the identified issue
restart JIRA
reinstall RMsis

Caution: If your system is already in use, please backup the database before trying out any fix.

I have upgraded RMsis, but now I cannot see any data !


Please clear the Tomcat Cache. This can be done by deleting the TOMCAT_HOME/work/Catalina/<HOST_NAME>/rm folder.

Listener Error

I am getting the following error while operating on issues java.lang.RuntimeException:com.atlassian.jira.event.ListenerException:


Could not find class:com.optimizory.plugins.listener.RMsisListener

May be you have wrong listener configuration. To resolve this issue: -

Open JIRA in your browser and login with administrator account


Now go to Administration Menu and click on Listeners link under the system category
If any listener shows up with name (RMsis Listener, com.optimizory.plugins.listener.RMsisListener) then delete this listener by clicking on
the delete link corresponding to that listener

JIRA top navigation bar is showing multiple RMsis menus

You may have multiple JIRA plugins installed in the system. To resolve this issue : -

Shutdown JIRA and remove previous versions of jira-rmsis plugin from JIRA_HOME/plugins/installed-plugins/ directory
Restart JIRA again

RMsis is already connected to JIRA

I am getting the following error after clicking on RMsis. Error : RMsis is already connected to JIRA instance "XXXX-XXXX-XXXX-XXXX".

Detailed error in this case is as below: -


Error : RMsis is already connected to JIRA instance "XXXX-XXXX-XXXX-XXXX". It cannot be connected to this JIRA instance
"YYYY-YYYY-YYYY-YYYY".
Please note that here "XXXX-XXXX-XXXX-XXXX" and "YYYY-YYYY-YYYY-YYYY" represent two different JIRA server IDs.
Typically this error is due to the fact that RMsis can be connected with only one JIRA instance. If one instance of JIRA is already connected and
there is need to connect to another JIRA instance then please specify different database configuration for RMsis (in jdbc.properties file) and
restart application server.

In order to use RMsis for both JIRA instances simultaneously, different RMsis instance and license keys would be required.

There is no log file in <RMSIS_HOME>/logs/ folder

This is because RMsis may not have permission to create / write a file in RMsis logs directory. You need to provide write permission to
<RMSIS_HOME>/logs/ and will have to restart RMsis.

The RMsis initialization time is very high!

This problem has been fixed in Version 0.70 of RMsis. Please upgrade, if you are facing performance problems with each user login.

jar:command not found

I am getting the following error during setup; jar:command not found / 'jar' is not recognized as an internal or external command

Please check that you have JDK installed (Java development kit). If you have not installed JDK then install it and set the JDK path as follows:

For linux/unix, run the command: export PATH=$PATH:path_to_your_jdk/bin/


For windows, Please set the jdk (Java development kit)'s bin directory path in the environment variable "PATH"

Support
For any queries or unresolved issues, you can reach out to our support team support@optimizory.com and we will ensure a prompt response to
your problem.

RMsis Administrator's Guide


RMsis administration can be divided into 2 parts:-

User administration by Requirement Manager


RMsis administration by JIRA admin

RMsis administration by JIRA admin


RMsis administrator operations span the following

User Management: RMsis admin can assign users based on number of users for which license is purchased (by enabling check-box).
This table automatically shows all JIRA users in given system where RMsis is installed.

Fig – 9 : User Management Screen (for admin)

Role Management: RMsis administrator can assign/un-assign permission to a given role by enabling/disabling check boxes.

Fig – 10 : Role Management Screen

Project Management: RMsis administrator can see all projects and assign/unassign users in those projects. This table automatically
syncs with JIRA.

Fig – 11 : Project Management Screen


Configuration:
License Management: RMsis administrator can update license key by clicking "Update License Key" link.
Debug Mode: This operation can help Optimizory team locate the probable root cause of any unexpected behaviour in the
system. In case of any problems in RMsis, "Enable Debugging" link should be checked and all logs should be shared with
support team. Once operation is complete, administrator can disable debugging by clicking "Disable Debugging" link.

Fig – 12 : Configuration Screen


Log Collection: In case of any problems, following logs need to be shared with debug mode enable : -
Application Server Logs: These logs files are generally located in logs folder of your Application Server. e.g.
In case of Apache Tomcat, it is located in <CATALINA_HOME>/logs/ folder.
JIRA Logs: These are located at <JIRA_HOME>/logs/ folder.
RMsis Logs: These are located at <RMSIS_HOME>/logs/ folder.

Backup and Restore


For an RMsis instance you must take backup of two things - one is RMsis home directory and the other is database.

Backup and restore of RMsis home directory


RMsis home directory is what you have configure during the installation. RMsis home directory is used to store RMsis database settings, SMTP
settings and logs. Use the operating system utilities to take backup of the home directory. On UNIX, use programs like tar, cpio to take backup
and on Microsoft Windows you can use WinZip. Restoring is extracting the data back from the backup file using the same tools.

Backup and restore of RMsis database


Database backup is dependent on the type of database you are using. Currently Optimizory supports - MySQL and MSSQL. There are separate
topics explaining backup and restore on these databases.

MySQL

Backup and restore of MySQL should be done using the utilities that come packaged with MySQL. This section briefly describes the process.

more...

MSSQL

This section briefly describes how to backup and restore MSSQL database using the SQL Server Management Studio.

more...

MSSQL Backup and Restore


This section briefly describes how to backup and restore MSSQL database using the SQL Server Management Studio.

Backup

Taking backup using SQL Server Management Studio.

1. After connecting to the appropriate instance of the Microsoft SQL Server Database Engine, in Object Explorer, click the server name to
expand the server tree.
2. Expand Databases, and depending on the database, either select a user database or expand System Databases and select a system
database.
3. Right-click the database, point to Tasks, and then click Back Up. The Back Up Database dialog box appears.
4. In the Database list box, verify the database name. You can optionally select a different database from the list.
5.
5. You can perform a database backup for any recovery model (FULL, BULK_LOGGED, or SIMPLE). In the Backup type list box, select
Full.
6. For Backup component, click Database.
7. Either accept the default backup set name suggested in the Name text box, or enter a different name for the backup set.
8. Optionally, in the Description text box, enter a description of the backup set.
9. Specify when the backup set will expire; a value of 0 days means that the backup set will never expire.
10. Choose the type of backup destination by clicking Disk or Tape. To select the paths of up to 64 disk or tape drives containing a single
media set, click Add. The selected paths are displayed in the Backup to list box.
To remove a backup destination, select it and click Remove. To view the contents of a backup destination, select it and click Contents.

Restore

Restoring using SQL Server Management Studio.

1. After you connect to the appropriate instance of the Microsoft SQL Server Database Engine, in Object Explorer, click the server name to
expand the server tree.
2. Expand Databases. Depending on the database, either select a user database or expand System Databases, and then select a system
database.
3. Right-click the database, point to Tasks, and then click Restore.
4. Click Database, which opens the Restore Database dialog box.
5. On the General page, the name of the restoring database appears in the To database list box. To create a new database, enter its name
in the list box.
6. In the To a point in time text box, either retain the default (Most recent possible) or select a specific date and time by clicking the browse
button, which opens the Point in Time Restore dialog box. For more information, see How to: Restore to a Point in Time (SQL Server
Management Studio).
7. To specify the source and location of the backup sets to restore, click one of the following options:
a. From database
b. Enter a database name in the list box.
c. From device
Click the browse button, which opens the Specify Backup dialog box. In the Backup media list box, select one of the listed device
types. To select one or more devices for the Backup location list box, click Add.
After you add the devices you want to the Backup location list box, click OK to return to the General page.
8. In the Select the backup sets to restore grid, select the backups to restore. This grid displays the backups available for the specified
location. By default, a recovery plan is suggested. To override the suggested recovery plan, you can change the selections in the grid.
Any backups that depend on a deselected backup are deselected automatically.

MySQL Backup and Restore


Backup and restore of MySQL should be done using the utilities that come packaged with MySQL. This section briefly describes the process.

Backup

Backup should be taken using the mysqldump utility. Following is the syntax of command.

mysqldump -u [username] -p [password] [databasename] > [backupfile.sql]

[username] - this is your database username


[password] - this is the password for your database
[databasename] - the name of your RMsis database
[backupfile.sql] - the file to which the backup should be written.

Restore

Backup taken using mysqldump is an SQL dump. You can restore the database using any MySQL client. Following is the command syntax for
the CLI mysql client.

mysql -u [username] -p [password] [database_to_restore] < [backupfile.sql]