SlideShare a Scribd company logo
WHITE PAPER
                             www.intellavia.com | September 23, 2010



Configuration Management of Web Application Development
–Where did you go

Does your ad agency or web design firm use the right processes and tools that
aid in the design, development, and deployment of your website, o rapp?

By Marc Piparo, VP Technology, Intellavia LLC
© Intellavia, 09/23/2010. Permission to share if source is fully credited.

Configuration Management (CM) of software development has its roots in the earliest days of software
development practices. Even the Countess Ada Lovelace, daughter of Lord Byron, is recognized as the
very first computer programmer, used configuration management practices and procedures in her work
with Charles Babbage – and this was back in the 1840s. So with such a long history, it’s ironic that web
application development, arguably the most modified and heavily updated software, continues a
downward trend when it comes to configuration management.

It’s amazing how increasingly rare it is becoming for web developers to work in any type of
configuration managed environment of their software, especially when it comes to version control. It’s
also glaring that the majority of open-source tools that web developers use to build their web
applications are typically under some form of a team environment and versioning control, so why the
disconnect with the web app itself?

The primary reason is typically a lack of discipline that exists today in web application development.
While software engineers with a solid background in CM and an understanding and the respect of the
importance of these processes still thrive, the web application landscape is increasingly lacking this
discipline. It appears the vast proliferation of web development tools have enabled the explosion of web
application development activity along with the exponential expanse of the World Wide Web, hence,
web application development has become a victim of its own success. It has come at the cost of the loss
of software engineering discipline. No longer are software engineers, along with their discipline and
practices, a required resource on an increasing number of web application projects–the reason many
projects increasingly continue to omit configuration management processes.

So what exactly is Software Configuration Management or SCM? To put it simply, it’s a set of
processes and tools that aid in the design, development, and deployment of software. Without it,
especially in the quickly changing world of web application development, source code and supporting
documents become nothing more than a mutation of its previous state, unable to be tracked or
explained. And unfortunately, this is the world we live in today. Web files are being updated and
modified on the local desktops of a developer, only to be uploaded directly to the web server, replacing
its former version of itself, with all history lost. And it’s that important history, containing the



                                       29 S. Orange Ave. 3rd Floor, Orlando, FL 32801 | 407.412.7244 | www.intellavia.com | 1
WHITE PAPER
                            www.intellavia.com | September 23, 2010



information about what was modified, by who, when, and why, that is vital to maintaining a solid
development environment.

While the depth of CM processes that should be implemented can certainly be measured based upon the
complexity of the application and number of developers involved, one vital part of CM that must not be
overlooked, is versioning control. Version control is vital to every…yes, “EVERY”…artifact created
for the project. This includes not only the source code and supporting files, but documents as well.
Documents relating to requirements, design, or even a sketch on a napkin should be scanned in.
Basically any bit of information that is relevant to the application being built should be captured in
version control. Since the ability to simply view a document is not enough, the ability to view past
revisions of these documents is an essential necessity, especially in environment with ever changing
requirements, such as a web site.

So, while I certainly do not expect every web app to be developed in a fully fledged process driven
environment, (though I personally would never work outside of one) the use of some components,
specifically version control, is enough to at least have a level of CM in your project.

The following suggestions are some final food for thought:

   1. Implement a versioning control system (VCS), such as SubVersion (SVN), CVS, or if $$$ is not
      issue, proprietary systems such as Perforce and Visual Source Safe.

   2. Create a build and deployment process, even if it’s just a single page. This process can be highly
      effective and should discourage uploading or modifying files directly on any deployment server,
      including a test server.

   3. Block or disable FTP access to host servers, (both test and production). This will eliminate the
      instinct (and ability) to change files directly on the server.

   4. Always commit your files, including documents, to the project repository to maintain version
      control.

   5. Make use of version control systems deployment and version mechanisms, and ‘diff’ and
      history functionality to determine changes from one revision to the next.

   6. All builds and deployments to test, staging, production, or any platform should be built from the
      repository, create branches where specific modifications unique to a server or web app instance
      are needed.

   7. Choose a versioning control system that your IDE supports either inherently or through an add-
      on or plug-in. This makes working with the VCS very convenient and many times seamless.



                                      29 S. Orange Ave. 3rd Floor, Orlando, FL 32801 | 407.412.7244 | www.intellavia.com | 2
WHITE PAPER
                             www.intellavia.com | September 23, 2010




   8. Do not dismiss following a formal development process as an unnecessary burden, even for
      small scale projects. Most development processes, such as RUP, will scale to your project size
      and contain invaluable disciplines.


   9. Tag release versions within the VCS, including beta or user acceptance testing versions, so a
      baseline can be established for these releases.

   10. Implement a backup procedure for your VCS repositories, preferably off-site, with a
       documented recovery plan.

As a Director of Marketing or Brand Manager, how many times have you heard "we must have
overwritten some files" as an excuse for your website not working?

Or, what about needing information as to when your website was changed, and who changed it?

Bet you'd love to easily replace those files that were incorrectly edited or *gasp* deleted by the intern...

Wouldn't you love to have those requirements and brainstorming documents from your iPhone app
project stored and tracked? ("I thought it was going to do _______, remember?")

Let Intellavia show you the love, and how many agencies #fail when it comes to configuration
management.

We'd like to hear your comments, even project horror stories.

© Intellavia, 09/23/2010. Permission to share if source is fully credited.




                                       29 S. Orange Ave. 3rd Floor, Orlando, FL 32801 | 407.412.7244 | www.intellavia.com | 3

More Related Content

PPT
Case Study: USDA Maximizing Collaboration with NetBeans and Codebeamer
DOCX
SaiBhaskar-Resume
DOCX
What does a web based application do for your business
PPT
Uncovering Windows - Silverlight Seminar
PPTX
Microsoft Teams community call-March 2019
PDF
Windows Phone
PDF
Iron speed appgeneration
ODP
3D Camp 2013 - Build your own Weather Station
Case Study: USDA Maximizing Collaboration with NetBeans and Codebeamer
SaiBhaskar-Resume
What does a web based application do for your business
Uncovering Windows - Silverlight Seminar
Microsoft Teams community call-March 2019
Windows Phone
Iron speed appgeneration
3D Camp 2013 - Build your own Weather Station

Viewers also liked (6)

PPSX
ISciences at the Hands-On Museum Local Tech Event
PDF
No Silver Bullet – Essence of Content Management for the Web
PPTX
Report on Cancun COP16
PPTX
COP16 Road to Cancun (ISciences)
PPT
Road to durban_share
PPT
Report on durban_share
ISciences at the Hands-On Museum Local Tech Event
No Silver Bullet – Essence of Content Management for the Web
Report on Cancun COP16
COP16 Road to Cancun (ISciences)
Road to durban_share
Report on durban_share
Ad

Similar to Configuration management intellavia_sept2010[1] (20)

PPT
Configuration Management
PDF
Tech Brief Questions
PDF
Tech Brief Questions
KEY
Management Strategies for Successful WordPress Projects
PDF
Class 7: Introduction to web technology entrepreneurship
PDF
Coldfusion 8 Developer Tutorial John Farrar
PPT
Session slides
PPT
Session slides
PPT
Session slides
PPT
PDF
A Rational approach to application migration and modernization
PPT
Software configuration management, Web engineering
PPT
Mod5-SCM.ppt
PPT
Mod5-SCM.ppt
PPT
PPT
A Brief Introduction to Software Configuration Management
DOCX
Project_Estimation
KEY
101 Exciting Tips To Get The Site You Need While Saving Time And Money (And G...
PPT
13 configuration management
PDF
Surviving a Hackathon and Beyond
Configuration Management
Tech Brief Questions
Tech Brief Questions
Management Strategies for Successful WordPress Projects
Class 7: Introduction to web technology entrepreneurship
Coldfusion 8 Developer Tutorial John Farrar
Session slides
Session slides
Session slides
A Rational approach to application migration and modernization
Software configuration management, Web engineering
Mod5-SCM.ppt
Mod5-SCM.ppt
A Brief Introduction to Software Configuration Management
Project_Estimation
101 Exciting Tips To Get The Site You Need While Saving Time And Money (And G...
13 configuration management
Surviving a Hackathon and Beyond
Ad

Recently uploaded (20)

PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
NewMind AI Monthly Chronicles - July 2025
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPT
Teaching material agriculture food technology
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
cuic standard and advanced reporting.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Electronic commerce courselecture one. Pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Encapsulation theory and applications.pdf
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Encapsulation_ Review paper, used for researhc scholars
Dropbox Q2 2025 Financial Results & Investor Presentation
Reach Out and Touch Someone: Haptics and Empathic Computing
Unlocking AI with Model Context Protocol (MCP)
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
NewMind AI Weekly Chronicles - August'25 Week I
NewMind AI Monthly Chronicles - July 2025
Understanding_Digital_Forensics_Presentation.pptx
Review of recent advances in non-invasive hemoglobin estimation
Teaching material agriculture food technology
The Rise and Fall of 3GPP – Time for a Sabbatical?
cuic standard and advanced reporting.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Electronic commerce courselecture one. Pdf
Building Integrated photovoltaic BIPV_UPV.pdf
Encapsulation theory and applications.pdf
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...

Configuration management intellavia_sept2010[1]

  • 1. WHITE PAPER www.intellavia.com | September 23, 2010 Configuration Management of Web Application Development –Where did you go Does your ad agency or web design firm use the right processes and tools that aid in the design, development, and deployment of your website, o rapp? By Marc Piparo, VP Technology, Intellavia LLC © Intellavia, 09/23/2010. Permission to share if source is fully credited. Configuration Management (CM) of software development has its roots in the earliest days of software development practices. Even the Countess Ada Lovelace, daughter of Lord Byron, is recognized as the very first computer programmer, used configuration management practices and procedures in her work with Charles Babbage – and this was back in the 1840s. So with such a long history, it’s ironic that web application development, arguably the most modified and heavily updated software, continues a downward trend when it comes to configuration management. It’s amazing how increasingly rare it is becoming for web developers to work in any type of configuration managed environment of their software, especially when it comes to version control. It’s also glaring that the majority of open-source tools that web developers use to build their web applications are typically under some form of a team environment and versioning control, so why the disconnect with the web app itself? The primary reason is typically a lack of discipline that exists today in web application development. While software engineers with a solid background in CM and an understanding and the respect of the importance of these processes still thrive, the web application landscape is increasingly lacking this discipline. It appears the vast proliferation of web development tools have enabled the explosion of web application development activity along with the exponential expanse of the World Wide Web, hence, web application development has become a victim of its own success. It has come at the cost of the loss of software engineering discipline. No longer are software engineers, along with their discipline and practices, a required resource on an increasing number of web application projects–the reason many projects increasingly continue to omit configuration management processes. So what exactly is Software Configuration Management or SCM? To put it simply, it’s a set of processes and tools that aid in the design, development, and deployment of software. Without it, especially in the quickly changing world of web application development, source code and supporting documents become nothing more than a mutation of its previous state, unable to be tracked or explained. And unfortunately, this is the world we live in today. Web files are being updated and modified on the local desktops of a developer, only to be uploaded directly to the web server, replacing its former version of itself, with all history lost. And it’s that important history, containing the 29 S. Orange Ave. 3rd Floor, Orlando, FL 32801 | 407.412.7244 | www.intellavia.com | 1
  • 2. WHITE PAPER www.intellavia.com | September 23, 2010 information about what was modified, by who, when, and why, that is vital to maintaining a solid development environment. While the depth of CM processes that should be implemented can certainly be measured based upon the complexity of the application and number of developers involved, one vital part of CM that must not be overlooked, is versioning control. Version control is vital to every…yes, “EVERY”…artifact created for the project. This includes not only the source code and supporting files, but documents as well. Documents relating to requirements, design, or even a sketch on a napkin should be scanned in. Basically any bit of information that is relevant to the application being built should be captured in version control. Since the ability to simply view a document is not enough, the ability to view past revisions of these documents is an essential necessity, especially in environment with ever changing requirements, such as a web site. So, while I certainly do not expect every web app to be developed in a fully fledged process driven environment, (though I personally would never work outside of one) the use of some components, specifically version control, is enough to at least have a level of CM in your project. The following suggestions are some final food for thought: 1. Implement a versioning control system (VCS), such as SubVersion (SVN), CVS, or if $$$ is not issue, proprietary systems such as Perforce and Visual Source Safe. 2. Create a build and deployment process, even if it’s just a single page. This process can be highly effective and should discourage uploading or modifying files directly on any deployment server, including a test server. 3. Block or disable FTP access to host servers, (both test and production). This will eliminate the instinct (and ability) to change files directly on the server. 4. Always commit your files, including documents, to the project repository to maintain version control. 5. Make use of version control systems deployment and version mechanisms, and ‘diff’ and history functionality to determine changes from one revision to the next. 6. All builds and deployments to test, staging, production, or any platform should be built from the repository, create branches where specific modifications unique to a server or web app instance are needed. 7. Choose a versioning control system that your IDE supports either inherently or through an add- on or plug-in. This makes working with the VCS very convenient and many times seamless. 29 S. Orange Ave. 3rd Floor, Orlando, FL 32801 | 407.412.7244 | www.intellavia.com | 2
  • 3. WHITE PAPER www.intellavia.com | September 23, 2010 8. Do not dismiss following a formal development process as an unnecessary burden, even for small scale projects. Most development processes, such as RUP, will scale to your project size and contain invaluable disciplines. 9. Tag release versions within the VCS, including beta or user acceptance testing versions, so a baseline can be established for these releases. 10. Implement a backup procedure for your VCS repositories, preferably off-site, with a documented recovery plan. As a Director of Marketing or Brand Manager, how many times have you heard "we must have overwritten some files" as an excuse for your website not working? Or, what about needing information as to when your website was changed, and who changed it? Bet you'd love to easily replace those files that were incorrectly edited or *gasp* deleted by the intern... Wouldn't you love to have those requirements and brainstorming documents from your iPhone app project stored and tracked? ("I thought it was going to do _______, remember?") Let Intellavia show you the love, and how many agencies #fail when it comes to configuration management. We'd like to hear your comments, even project horror stories. © Intellavia, 09/23/2010. Permission to share if source is fully credited. 29 S. Orange Ave. 3rd Floor, Orlando, FL 32801 | 407.412.7244 | www.intellavia.com | 3