I’ve blogged a good deal recently on Rich Internet Applications (RIAs) but mainly concentrated on the runtime and application structure sides of the equation. So let’s be fully rounded and look at how RIAs are changing the rules for Software Configuration Management (SCM) systems. Originally, SCM systems evolved to deal purely with text-based source code written by developers while other digital assets (e.g. graphics and document data) were managed by separate Digital Asset Management solutions.
In recent years, the more agile SCM systems have been used to manage all data in one central repository. However, because developers write source code, technical writers write documents… and so on, it is not always the case that all data is actually kept together.
For an angle on this topic, I spoke to Perforce Software’s European director of operations Dave Robertson. “RIAs blur the definition of what it means to write source code. With RIAs, developers will now be creating code using tools that produce ‘code’ in a wide range of binary formats, Some believe RIAs are destined to be the dominant application development form. So, companies looking to RIAs will need to have an SCM that can cope with them.”
The problem, according to Perforce, is that currently, most SCM systems struggle to support binary files. They often have no native understanding of binary formats and will treat them as impenetrable objects that cannot be searched. They also don’t scale well, frequently copying entire files when branches happen. Such SCM systems do not give developers the information they need to quickly solve development problems such as fixing bugs or adding new features.
The answer, arguably, is to build a system with repository design that enables binary files to be stored and branched without using unnecessary disk space or compromising on performance. You also need to think about the kind of visual tools that let developers find information contained in the binary files quickly so that (with some user customisation) it is possible to search within these files for text strings. The future of SCM systems looking to support RIA development will rely on the storage, search and retrieval of ‘source’ of any kind.