The symptoms of our software development malaise

Software development has traditionally suffered from producing end products with a definite lack of inherent quality. The symptoms of this quality lack are listed here:

  • Software development projects are often delivered late and over budget.
  • Often the delivered product does not meet customer requirements and is never used.
  • Software products simply do not work right.

As we look into the symptoms of our software development malaise, five principal issues related to software development arise.

Lack of Visibility
Software is conceptual in nature. Unlike a bridge, a building, or another physical structure, it is not easy to look at software and assess how close it is to completion. Without strong project management, “software is 90% complete 90% of the time.” Through the adoption of SCM policy and the definition of the configuration management model of the software under development, all CIs, components, and subcomponents are immediately visible for versions, releases, and product families.

Read more »
features-for-scm-tools

What are the minimum features for SCM tools? – SCM Tools Essential Features

SCM Tools
The minimum features for SCM tools are closely related to the task of handling the different product deliverables produced within the project software engineering process. Tool requirements and selection criteria are based on a series of features that provide a consistent look and feel with state-of-the-art software development environments. An SCM tool must have multiuser support, an intuitive graphical user interface, conformity to the organization’s development environment, scalability, flexibility in integrating other software development tools, ease of setup, modifiable models, process management, extensive support for the development phase, and management of nondevelopment objects.

Basic selection criteria includes the following:

Read more »
scm-benefits-organization

SCM Benefits the Organization in Four Major Ways – SCM Process Benefits

SCM benefits an organization in four areas: control, management, cost savings, and quality. These four benefits are mapped to an organization’s overall goals and objectives when the decisions are made to bring a SCM tool in-house. The features of a SCM tool further support these benefits.
SCM Benefits the Organization in Four Major Ways


Control
Control in SCM provides the ability to review, approve, and incorporate changes into a configuration item. There must be one controlling SCM tool so that there is only one set of training, license management, installation, and user procedures. All project personnel use the tool. Inherent in the tool is a standardized, measurable process for change. Integrity maintenance of CIs is enforced throughout the product life cycle. The tool permits only controlled change to the baseline CIs, and all changes are tracked.

Read more »
potential-scm-problem-classes

Potential SCM Problem Classes | SCM Potential considerations in an organization

When planning for SCM in your product development organization, you must first understand the classes of potential problems that can exist. Once the classes are understood, the inherent problems that are causing configuration management issues may be easily identified.
Potential SCM Problem Classes

  1. Multiple developer syndrome—When you have a project that requires more than one developer, there is the problem with multiple people working on one product base. This could be a test plan, requirements specification, or code. Effort is wasted when two or more people work on the same file and then save it. Without SCM control, the last person to save the file has those changes saved. All the other changes are lost. The simplistic method of locking a file while one person reads it prevents others from simultaneously working on the file.
  2. Multiple releases—Enhancements to the base product should result in additional releases of the product containing the latest changes. Once the second release is available, some users are on an earlier release. Having an SCM makes managing those releases possible. When bugs are reported, changes must be made across all impacted releases. As new features become available in the product, they must be made available to all current users, no matter what the release date.
    Read more »
apache-ant

What is Apache Ant? – Apache ant Overview

What is an apache ant? Apache Ant is a Java-based build tool. In theory, it is kind of like Make, but without Make’s wrinkles. Why another build tool when there…

Read more »
scm-potential-problem-classes

What are the potential SCM problem Classes in the process?

When planning for SCM in your product development organization, you must first understand the classes of potential problems that can exist. Once the classes are understood, the inherent problems that…

Read more »
automating-configuration-management-for-application-infrastructure

5 Keys to Automating Configuration Management for Application Infrastructure

5 Keys to Automating Configuration Management for Application Infrastructure

One of the trends being discussed in business, among vendors and in the analyst community is the importance of automating the functions performed by IT. Growing demands by the business, tight budgets and compliance pressures together accentuate the need for IT to be more agile, efficient and responsive to business stakeholders.

Naturally, vendors rush into this environment, each touting the unique benefits of its solution set and the urgency to move forward immediately.  A key area targeted for IT automation is the area of ‘configuration management.’  As it relates to automating day to day IT functions, configuration management can mean many different things: patch management, server and network management or others. 

Read more »
perforcedfiles-tool

Step by step guide on PerforceDFiles Tool | Perforce Tutorial

PerforceDFiles Use: This tool can be used to add thousands of files and directory in perforce server on single click which is having different-different hierarchy Prerequisite: Java should install and…

Read more »
projects-in-cvs

Share common projects with two different projects in CVS

Share common projects with two different projects in CVS If there are two or more projects in the repository, some of the files are common in these two projects and some…

Read more »
p4v-deficiencies-compared-to-p4win

What makes P4Win better than P4V? – P4V deficiencies

P4V deficiencies compared to P4Win Here’s list of P4V deficiencies & features missing as compared to P4Win…   1). In P4V you can’t paste paths onto the tree view as way…

Read more »
advantages-of-cvsnt-over-cvs

Benefits of CVSNT, What are the advantages of CVSNT over CVS ?

Advantages of CVSNT over CVS Feature CVSNT CVS Server Supports authentication via Microsoft Active Directory or SSH (windows only) YES NO Set enforced protocols allow server to lock out clients…

Read more »
cvs-vs-cvsnt

Major differences between CVS and CVSNT | CVS Vs CVSNT

Major differences between CVS and CVSNT | CVS Vs CVSNT CVSNT was started as a variation (or branch) of CVS in 1999 because patches contributed to CVS were not considered…

Read more »

SVN Installation | Subversion Installation guide | Subversion Setup

Install CollabNet SVN Command Line Client in Red Hat Link: http://www.collab.net/downloads/subversion/redhat.html 1. Platform and configuration Product: CollabNet Subversion client Platforms: Red Hat Enterprise Linux releases 4 and 5 (all versions,…

Read more »
install-collabnet-svn-command-line-client-in-windows

Process to Install CollabNet SVN Command Line Client in Windows

Link: http://www.collab.net/downloads/subversion/ 1. Platform and configuration    Product: CollabNet Subversion server    Certified platforms: Windows XP SP2, Win 2003(Standard Edition) R2    Apache version: 2.2.8    ViewVC: 1.0.5 (requires ActiveState…

Read more »
collabnet-svn-command-line

How to Install CollabNet SVN Command Line Client in Solaris?

Link: http://www.collab.net/downloads/subversion/solaris.html 1. Platform and configuration Product: CollabNet Subversion client Platforms: Solaris 10 SPARC Prerequisite: You must be a superuser (root) to install and uninstall CollabNet Subversion. 2. Import/Update CollabNet…

Read more »
access-svn-when-client-is-under-proxy

How to Access SVN when client is under proxy ?

The Subversion client can go through a proxy, if you configure it to do so.   First, edit your “servers” configuration file to indicate which proxy to use. The files…

Read more »
native-programs-in-ant

Running Native Programs in Ant

Running Native Programs in Ant Ant, while extremely powerful and flexible, can’t always offer everything you want to do. If this is the case, you can use the <exec> task,…

Read more »
a-script-to-find-all-users-who-have-not-set-passwords

A script to find all users who have not set passwords

Write a script to find all users who have not set passwords. #!/usr/bin/ruby require “P4” p4 = P4.new p4.parse_forms p4.connect p4.run_users.each do |u| user = p4.fetch_user( u[ “User” ] )…

Read more »
script-to-list-the-clients-in-descending-access-date-order

Script to list the clients in descending access date order

  Write a script to list the clients in descending access date order (for deleting obsolete clients).   #!/usr/bin/ruby require “P4” p4 = P4.new p4.tagged p4.connect clients = p4.run_clients.sort {|a,b|…

Read more »