Procedure For Software Development
Procedure For Software Development
ROLTA
MANUAL OF INSTRUCTIONS
Page 1 of 14
ROLTA INDIA LIMITED REV : NEW GSD-307
REVISION HISTORY
Paragraph/
Revision No. Date Page Nature of Change
Section
Page 2 of 14
ROLTA INDIA LIMITED REV : NEW GSD-307
INDEX
1 Purpose 5
2 Scope 5
3 Definitions & Acronyms 5
4 Responsibilities 6
5 Software Request Origin 6
6 Software Development 8
7 Processing in Applications 11
8 Security of System Files 12
9 Handling Change Request 13
10 Software Development Process Flow 15
11 Software Request Form 16
Page 3 of 14
ROLTA INDIA LIMITED REV : NEW GSD-307
Purpose
This procedure defines the implementation of Software Development system in accordance
with the requirements of ISO/IEC 27001:2005 standard. This procedure defines the method
for maintaining the security of application system software and information occurring in
GSD through a formal process. This procedure also ensures that all the software requests
are documented and maintained properly for possible re-use in future.
2.0 Scope
This procedure applies to the control of documents and data pertaining to the projects and
groups of GSD SBG, which are within the scope of implementation of Information Security
Management System.
Page 4 of 14
ROLTA INDIA LIMITED REV : NEW GSD-307
4.0 Responsibilities
The responsibilities for Software request Handling are distributed as follows:
4.2.1 Review the software request for feasibility and approve its implementation.
a) Pilot Projects:
Most of the requests for software program find their origin at the time of
1. Project Kick-off meeting
Page 5 of 14
ROLTA INDIA LIMITED REV : NEW GSD-307
Software requests are reported through the online software request form. This form also
helps in the Software review process and serves as a database that helps prevent re-
producing the same software.
Project
Planning
Requirements
Definition
Design
Development
Integration &
Test
Installation &
Acceptance
Page 6 of 14
ROLTA INDIA LIMITED REV : NEW GSD-307
associated with the project, and describe appropriate management and technical
approaches.
High Level Product requirements are listed out which percolate down to defining all
software product requirements. Each requirement is recorded with some minimum
information like title and textual description; although in some instances additional
information and references to external documents are included.
In this stage, major Function, like input & output data validation, critical processes to be
managed, as well as mission critical inputs, outputs and reports, of the intended application
are defined.
The requirements are fully describe in the Requirements Document. This document contain
complete descriptions of each requirement, including diagrams and references to external
documents as necessary.
The outputs of the requirements definition stage include the requirements document and
an updated project plan.
Design elements describes the desired software features in detail, and generally include
functional hierarchy diagrams, screen layout diagrams, tables of business rules, business
process diagrams, pseudo-code, and a complete entity-relationship diagram with a full data
dictionary.
These design elements describe the software in sufficient detail that skilled programmers
may develop the software with minimal additional input.
The outputs of the design stage are the design document and an updated project plan.
Page 7 of 14
ROLTA INDIA LIMITED REV : NEW GSD-307
The development stage takes as its primary input the design elements described in the
approved design document.
For each design element, a set of one or more software artifacts may be produced.
All software codes are maintained on Tortoise SVN (SVN) for ensuring Version
Maintenance, revision history, etc. All codes relating to a project are stored in a folder
created for that particular project. Only software developers and other important team
members assigned for that project have privilege to view the contents of this folder for
security reasons.
The outputs of the development stage include a fully functional set of software that satisfies
the requirements and design elements previously documented, and an updated project
plan.
The software, in the encrypted format, along with the DDD is provided to the testing team
who perform the entire test using the test cases prepared by them.
All the modules of the software provided to the testing team are in encoded format to
ensure security and prevent leakage of code.
The outputs of the integration and test stage include an integrated set of software, an
acceptance plan, which contains the final suite of test cases, and an updated project plan.
After customer personnel have verified that the initial production data load is correct and
the test suite has been executed with satisfactory results, the customer formally accepts
the delivery of the software.
Page 8 of 14
ROLTA INDIA LIMITED REV : NEW GSD-307
The primary outputs of the installation and acceptance stage include a production
application, a completed acceptance test suite, and a memorandum of customer
acceptance of the software.
After receipt of acceptance, the project is locked by Project Manager, by archiving all
software items, the implementation map, the source code, and the documentation for
future reference.
Data input to application is validated to ensure that this data is correct and appropriate. The
following check-list is referred to while preparing validation for any application:
Validation checks are incorporated into applications to detect any corruption of information
through processing errors or deliberate acts.
The design and implementation of applications ensures that the risks of processing failures
leading to a loss of integrity are minimized.
Page 9 of 14
ROLTA INDIA LIMITED REV : NEW GSD-307
2. A database is maintained for all application running in batch mode; the status of
all processes is maintained in the database and the next process initiates only
after the successful completion of the previous process.
3. Protection against attacks using buffer overruns/overflows.
Data output from application is validated to ensure that the processing of stored information
is correct and appropriate to the circumstances.
Applications and operating system software are implemented only after extensive and
successful testing.
The operational software applications are handed over to the IPR department who keeps a
control of all implemented software as well as the system documentation.
Previous versions of application software are retained and are archived together with all
required information and parameters, configuration details and supporting software.
Access to program source code and associated items are controlled, in order to prevent
the introduction of unauthorized functionality and to avoid unintentional changes. This is
achieved by central storage of codes in Tortoise SVN.
Page 10 of 14
ROLTA INDIA LIMITED REV : NEW GSD-307
1. All software codes and DDD are maintained on the Tortoise SVN database,
which automatically maintains version history and assigns version numbers to
the latest modified code or document.
2. For identifying changes in code vis-à-vis changes required by client, all the
software codes carry appropriate comments.
3. The changes in specifications or any additional requirements are received
through a Change request template only which is duly signed or authorized by
the issuing party.
4. Any Change in request is reviewed for any possible changes it may require on
any other procedure.
5. All CR, after implementation, result in updating the DDD and the old version is
identified or disposed accordingly.
6. Every change in software is made only with a proper CR in place.
7. Implementation of CR is ensured and track of all CRs is maintained in a CR
Database.
8. CR requiring change in operating system is reviewed and tested – the process
of incorporating this change follows the normal change request process flow.
(as shown in the following flow chart)
Page 11 of 14
ROLTA INDIA LIMITED REV : NEW GSD-307
Identify change
in Specification
Study related
Identify the need of
process/routine for any
any additional
routines / modifying changes required.
existing ones
No
Data reviewed
by QA / Client
for confirmation
of ECR
implementation
Modifications
acceptable?
Yes
Update the CR
Database
Close the ECR accordingly.
Page 12 of 14
ROLTA INDIA LIMITED REV : NEW GSD-307
B The software developer verifies if all requirements to develop routine are furnished by the
requestor, before starting the development of the routine
Return to Return to
A B
The requestor, after checking the software
against his requirements, requests the QA to
certify.
Development
Requesting issue
issue
QA Pass
Page 13 of 14
ROLTA INDIA LIMITED REV : NEW GSD-307
Description of the software requirement can be written in area provided against Routine
Details. Also, provision to attach relevant documents is available.
Page 14 of 14