Per Cederberg – Software Consulting

Simplifying Software Development

Welcome to Per Cederberg Software Consulting!

Process & Architecture

Software development is a risky business. Projects are delayed, fail to deliver on requirements, or leave numerous bugs behind. And the cost is mostly on the client...

But it shouldn't be like that. Risks can be reduced by an order of magnitude simply by following known best-practices. So make sure you hire (or become) a contractor that use them.

1. Build the Right Thing – The most costly pieces of software are those that are never used. With written and straightforward requirements, everyone can understand what is being built beforehand. I help you analyze the requirements.
2. Design for a Future – Life expectancy tends to be underestimated for a lot of software. Therefore it is better to create a sound architecture and design at the beginning, rather than winding up with too many patches. I help you create the architecture.
3. Stay on Track – Software projects become late one day at a time, rather than due to some big event. The best way to detect and handle this is to have a good schedule, measurable milestones, and internal test releases. I help you plan the iterations.
4. Test Your Code – Bugs cost more money the later they are discovered. By continuously testing the code, preferably automatically, most bugs are found at a very early stage. I help you automate the tests.
5. Release Early, Release Often – System integration and deployment is often neglected to the very last minute, causing delays and unforseen problems. By building and packaging automatically every day this issue largely disappears, making it viable to make test releases as often as you like. I help you create automated builds.

If you are interested in learning more about software development, have a look at what Joel Spolsky says.