Before you buy: how Apple software is born

CoverFlow concept
Concept art for equinux's CoverFlow app

One of the best things about the Mac is the community of dedicated software developers that create high quality software.

But what is involved in the process that goes into planning and developing new software for the Mac?

To find out, MacFormat magazine spoke to the following folks from equinux, the firm behinds apps including iSale, CoverScout and SongGenie:

TS: Till Schadde, CEO
RP: Ralf Pfleghar, Development Manager
MS: Matthias Spang, Customer Relations Manager
CR: Christian Rüb, Public Relations Manager

MacFormat: How does the process begin?

RP: Completely new software normally starts with a first idea. Maybe an idea about an improvement to an existing solution or something completely new. Our trendscouts always watch out for new technologies, new possibilities – sometimes it's just the zeitgeist that leads to a first idea of what a product should do. But developing software also means to update existing products or even complement others. The process of what features need to be added and how it should look often come from personal niggles – requests of users and new movements in the market. At equinux we have a lot of discussion within the team. When the idea is born and the mission is set we start with first scribbles, sketches, mockups and so on.

TS: The basic idea of CoverScout 3 is to put the music into the very core of the application. CoverScout is about finding album art and not about long listings of music files.

STARTING OUT: CoverScout in its early sketch-stage

MF: What's the next step?

TS: equinux always focuses on easy-to-use solutions with clear and well-thought-out user interfaces. This is why first mockups are really important to us so we can visualise the intent of the product. With CoverScout, for example, we had an existing solution – CoverScout 2 – but realised that the vision of the software (finding album artwork) isn't the centre of the application. We wanted to rebuild the application around the main feature: the music album.

SHOPPED: After the sketch comes the Photoshop mockup

RP: To see if our mockups can be achieved technically we have to code and test first builds of the applications. The Cover Flow that we're using in CoverScout 3 is for example way more complicated then the Cover Flow Apple is using in Mac OS X. But to decide if mockups really work, we have to code them. This assists us in deciding if the ideas work and if the flow of the application is user friendly.

TS: Frankly, this is actually a very expensive process, but we think it is worth it.

MF: What then? Take us through the process...

RP: Iterate building features of the application, implementing parts, try them, stare at them, make new mockups with improvements, implement again. In general we are using 'scrum' as a software development process, which means we break down the process of building an application into several stages. At the end of each stage is a working application. Finally we have to decide when the application reaches a level that is good enough for the market.

TESTING: A development build of CoverScout

TS: To be a bit more precise: From the first build to the so-called 'Golden Master' which is the build we're shipping with the first boxes it normally takes several months. The number of builds we're producing and iterating from the beginning to the final version is a four digit number. Because every single feature, every improvement, every step that is built into the software needs to be tested, checked and proofed to ensure it fits into our general rule: we simply want to make good solutions.