Solved

Versioning Software

Posted on 2004-09-22
5
199 Views
Last Modified: 2012-03-15
What are different ways software can be versioned?  I know this is a pretty vague question but I just want to get some kind of discussion started.
0
Comment
Question by:lcor
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
5 Comments
 
LVL 55

Assisted Solution

by:Jaime Olivares
Jaime Olivares earned 100 total points
ID: 12125999
that will depent which programming language. By example C/C++ have specific facilities for versioning, using macros and pre-procesor directives. By example:

// This macro define your version
#define VERSION_LIGHT

// some code

#ifdef VERSION_LIGHT
    // some version-specific code
#else
    // some other code
#endif
0
 
LVL 19

Assisted Solution

by:RanjeetRain
RanjeetRain earned 100 total points
ID: 12126016
Typically, compilers are equiped with the logic to generate Version number and assign it automatically. In some IDEs, you can specify, whether you want a static version or self generated. In some cases, you specify the version in a make file.

At the binary level, its the version of your compiled program. THere is no built-in feature at OS level (that i know of) to control versioning. Typically, setup programs perform a version check prior to overwriting an existing binary file.
0
 
LVL 5

Accepted Solution

by:
brianb99999 earned 200 total points
ID: 12128506
Most common is:
Major Version.Minor Version.Revision/Build
ie
2.3.1

It's common for
Major Version = Major software upgrade/rewrite or changes including database structure modifications.
Minor Version = Minor software changes/enhancements that can include database structure modifications.  This is commonly a patch.
Revision/Build = Small bug fixes, often only displayed in house (ie to the developers).  Never includes database structure modifications, normally you would have a number of builds/revision numbers included within a patch (minor version).

But every company is different...

It is also common to add version information to the database.  A comparison of the database to the software is then applied on software startup to ensure the versions are the same.

Brian.
0
 
LVL 57

Assisted Solution

by:Julian Hansen
Julian Hansen earned 100 total points
ID: 12131333
Windows executables make provision for versioning information a resource segment attached to the executable.

You can set version numbers, build numbers, product description, copyright notices etc. There are various API's that you can use to retrieve this information from the file. GetVersion and GetVersionEx are a good place to start in the Windows environment.

Other ways of versioning would inlcude having the application to output a version number or provide an interface to get a version number based on an external call or a command line parameter. For instance a web application might return a version number based on some input parameter.

0
 

Author Comment

by:lcor
ID: 12143259
Everyone's input is appreciated.  This helps, thanks!
0

Featured Post

Space-Age Communications Transitions to DevOps

ViaSat, a global provider of satellite and wireless communications, securely connects businesses, governments, and organizations to the Internet. Learn how ViaSat’s Network Solutions Engineer, drove the transition from a traditional network support to a DevOps-centric model.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

This is an explanation of a simple data model to help parse a JSON feed
Since upgrading to Office 2013 or higher installing the Smart Indenter addin will fail. This article will explain how to install it so it will work regardless of the Office version installed.
An introduction to basic programming syntax in Java by creating a simple program. Viewers can follow the tutorial as they create their first class in Java. Definitions and explanations about each element are given to help prepare viewers for future …

752 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question