Software Development Process Insights

posted 07:16PM Nov 30, 2006 with tags development software tips by Lars Trieloff

Having sensible planning, source control, and testing in your project is not enough to make a project an agile project, if you are an Agile Atheist.

Many source control systems offer a feature called "branching". It is actually a good idea to use this feature, because it allows you to have fine-grained source control for teams, workgroups and features. It is interesting to see that despite the obvious advantages of branching it is only seldomly used.

| Comments[2]

Programming books and writing software

posted 09:27AM Jul 27, 2006 with tags development software softwarequality teamwork writing by Lars Trieloff

Signal vs. Noise, contains an interesting entry about the relation of Writing words vs. writing software. The basic idea of this post is that programming software is very similar to writing a book or a blog entry, because the most important aspect of writing is rewriting, constantly improving what you have done in order to achieve better quality. And also for software development, the ability to rewrite, or to refactor your code is most important for achieving great quality.

Of couse, there are more similarities: Writing and software development require a great deal of analysis of the problem, conceptionalization and abstraction. There are many different parties involved, the writer or developer, domain experts, editors, QA persons, testers and so on.

In order to achieve the best results, recognition of the importance of the teamplay of all involved parties is essential. After realizing the importance, proper means to optimize the teamplay are to be taken in order to make writing or software development an experience of productivity.

Subversion for JEE Applications

posted 12:17PM May 05, 2006 with tags development java software subversion tips by Lars Trieloff

Swaminathan Radhakrishnan's article Configuration Management in Java EE Applications Using Subversion suggests to use Subversion and the JavaSVN API to create a versioned storage backend for Java Enterprise applications. One comment further suggests to use XStream in order to serialize Java objects to XML documents which would allow textual differencing. And with support of xmldiff4j, even XML differencing would be possible.