Thursday, 5 June 2014

Software Change Management Product

By Raul Bernardino
Introduction:
The software configurations management are “a mechanism of how to manage the software versions, a mechanism to control the changes, a mechanism of reporting and auditing of the changes that has been made," Pressman, R.   Software Engineering: A Practitioner's Approach. There are three focus stages of developing the software.
They are as follows:
  1. The focus on definition: The System Analyst and Business Analyst establish the requirement and business needs it is including the validation the criteria’s, functions that need to be performed, information need to be processed,  system behavior, and which interface to be established;
  2. The focus on development: The developer defines the implementation of the functions and procedures within software architecture, translate the design in to the programming language, and how to test the coding;  
  3. And focus on support: The developers are focusing on error correction including adjusts and adopts some functions and features.

a.     The correction: it is the time to correct the defects that made during development face.
b.     The adaptation: the time where system application is adapting to the CPU, operation system, business rules, and etc. whereas to change the actual designed. In this case software needs to be modified in order to accommodate the environment.
c.      The enhancement: the developers are adding additional functions in order to give maximum benefits to the client. In this case software developer extends the functions in order to met addition requirements.
d.     The prevention: in this essence the developer gives the room for improving such as to correct, to adapt, and to enhance.

In the practice, the software configuration management has various activities to manage such as software source codes, hardware, documents, design models, and software structure directory. The IBM use rational software as software configuration management, while Forrester Research and Gartner Research use software change and configuration management.
The IBM Rational Software is an industry leading application software for release management and changes in the software configuration management.

The Rational Unified Process (RUP) is a web base knowledge share among software engineers. This will be enabling software engineers and developer team to deliver software best practices through guidance, templates, and tools of mentoring in all software lifecycle activities. The knowledge base will be allowing the developers team members to benefit the standard of industry which called unified modeling language (UML).

The RUP is also able to configure or reconfigure the process; because no single processes are suitable to all software development. Therefore it is fitting to small software development team up to the large software development organization. The RUP also has simple architecture which is providing the commonality among the process families. It is also a flexibility to accommodate various situation, including providing the development kits, support for configurations which allow to suit the organization needs.

There are six best practices as follows:
1.     The development of the software is iterative: In this approach the developer increases their understanding the problem gradually grow an effective solution with multiple iteration;
2.     The requirement are manageable: In this approach will be enabling he or she to define the requirements and define the functionalities, and it is including the constrains to help the decision making process and to communicate with business requirements;
3.     The architecture is used component base: In this approach will be giving the systematic to define the architecture by using the new or the existing component;
4.     The software model has a visualization: In this approach will be showing how software model is capturing the structure and behavior of the architecture and the components;
5.     Software qualities are verified: In this approach the quality will be confirmed with the business requirements, original functionality designs, the reliability of the process and functionality. All participants are using the objectives to measure the quality of the application;
6.     Software has a control change: In this approach will be allowing managing the changes and the changes are acceptable. It is also to control the changes that has been made in the coding, model, and documents;

 Alloy navigator is an Information and Technology Service Management solution whereas designed and built with best practices and real world of the customer in mind,” Alloy Navigator. The new version just released on April 1, 2011. There are three main component of the Alloy Navigator 6 (AN6) as follows:
1.   IT service management
a.     Service Catalog
b.     Service Level Management
c.      Incident Management
d.     Problem Management
e.      Change Management
f.       Work Orders
g.     Knowledge Base
h.     Self Service Portal
2.     Configuration management
a.     Computers
b.     Hardware
c.      Documents
d.     Configuration assemblies
3.     IT assets management
a.     Network Discovery
b.     Computer audit
c.      Library
d.     Purchase Orders
e.      Contracts
f.       Software License Compliance

As it shows in below diagram:



Today focus is how the Alloy Navigator 6 (AN6) can helps in the software configuration management. What Alloy Navigator 6 can offer from the configuration management point of views?

First of all, the AN6 target is medium up to large business environments where it can offer the service desk management, IT assets management, task assignment management etc. Here, the AN6 system is mostly for help desk system whereas to manage the action base work flows. For the software change configuration, we can use configuration management and IT assets management to help in the recording and documenting the changes.

The StarTeam is another software application designed for software changes and configuration management. The StarTeam designed to improve the team communication and collaboration via centralized control project. It is designed for differ methodologies and distributes to the various team. There is no limitation on the size of the development team.

Some benefit of the StarTeam as follows:
1.     Integrate change management in which to track the revision, assets, defects, discussions and project tasks just from one tools;
2.     Source code management in which it has file versioning labeling, code compare the capabilities, gives the ability to the managers and developers to access the project source code;
3.     Process automate support which is enabling flexible workflows, versioning and notification capabilities for assets to support the process needs;
4.     Supports for mix methodology environment in which the project can be co-exist in the same repository. This will be allowing the team to use the maturity of the collaboration;

In conclusion: Any software application such as RUP from IBM or StarTeam that is using for the software change and configuration management, it has to be easy to operate and every team members have knowledge on how to maximize the uses of the application itself in order to support them to build new or do enhancement of software application that has quality and meet all business requirements.  On the development cost wise, I do think RUP from IBM have lot of advantages in the cost saving during new software development phases.

References:
Hall, P. A.V. & Fernandez-Ramil, J. (2007) Managing the Software
Enterprise: Software Engineering and Information Systems in Context. London: Thomson Learning.
Lecture notes, MNGSWE_WK7_seminar
Wales, J., (2010), Software Configuration Management, [Online]. Available
from:
Department of Defense, USA (2001). Military Handbook: Configuration management guidance (rev. A) (MIL-
HDBK-61A), [Online]. Available from: http://www.everyspec.com/MIL-HDBK/MIL-HDBK+(0001+-+0099)/download.php?spec=MIL-HDBK-61.011531.PDF (Accessed: 21 November 2011)
Scott, J.A. & Nisse, D. (2001). Software configuration management
In: Guide to Software Engineering Body of Knowledge, [Online]. Available from: http://www.computer.org/portal/web/swebok/htmlformat
(Accessed: 21 November 2011)
IBM, Rational Software, Change and release management, [Online].
Available from: http://www-01.ibm.com/software/rational/offerings/crm/ (Accessed: 21 November 2011)
Rational Unified Process, Best Practices for Software Development Teams,
Pressman, R.,   Software Engineering: A Practitioner's Approach, 5th 
edition, McGraw-Hill, [Online].  Available from: http://uotechnology.edu.iq/sweit/Lectures/Dr-Muna-SW-4th/Software%20Engineering%20-%20Pressman-opt.pdf (Accessed: 21 November 2011)
StarTeam, Software change and Configuration management, [Online]. 
Available from: http://www.borland.com/us/products/starteam/ (Accessed: 21 November 2011)
Alloy Navigator, Action Base work-Flow Management, [Online]. 

Available from: http://www.alloy-software.com/an6/?gclid=CM7-6cSny6wCFUob6wodhDlbfg (Accessed: 21 November 2011)

No comments:

Post a Comment