As the interest in Windows 8 builds, with new Windows 8 devices being revealed weekly, and new education apps for Windows 8 appearing in the Windows Store, I'm having regular conversations with people about developing new apps for education users (typically teachers or students) for Windows 8. Often the conversation isn't about the technical detail of producing an app, but about the purpose of proposed app – especially about how it will help a student or teacher to do something. Often, when planning a Windows Store app, it makes sense to think less about what features should be included and more about the experience you want to provide your users. Of course, there's plenty of advice published already (like Making great Windows Store apps) but here's an extra set of thoughts about approaching the design of an education app for Windows 8.
This is good advice – it's much more meaningful to say "my app will help teachers track the learning progress of all of the students in their class for the year" than "I'm writing a markbook app" – you can imagine how the former will help you focus on solving a problem for a teacher, rather than just build an app
Think about the flow of activities that a user is going to need to do to achieve their goal. If their goal is to see progress, how do you help them see that? Sure, entering marks in a markbook is a step on the journey, but it isn't the goal. What do they need to see – progress of their class; progress of individual students; which areas the whole class is struggling with; which areas a single student or group of students need reinforcement on.
One of the lessons about building apps in Windows 8 is that a bunch of the features you might want to give your user is already provided by Windows 8 – which means that if you want to provide a way for a teacher to share information – for example to email a chart to a student, or email a parent – then you can use the built-in facilities in Windows 8 to do it, rather than creating a unique way (especially when you don't know what ways of sharing each teacher is going to prefer – the other apps installed will be able to add more sharing options on top of the core ones in Windows 8 – meaning that you don't have to go back and re-develop your software every time a new social network comes along!).
Although this is a whole subject in it's own right (Do you go for free, trial, paid apps? Do you use in-app advertising to allow you to give the app away for free?) there's plenty of advice on this at Plan for Monetization
There's tons of detail on this on the MSDN network, starting at Design Guidance for Windows Store apps, including some project design templates, as well as some great advice on touch interaction and navigation patterns.
In the app culture, it's amazing how quick and easy it is to install – and then un-install an app. In the early days of your app, you're unlikely to get thousands of users recommending it to their peers, so that app has to have an attractive experience – a splash screen that's attractive and fast, and a first-launch experience that helps users understand what they can do with the app. And don't forget too that most users will see your tile on the Windows Start screen more than the app itself – so having a tile that updates itself with status or information messages is a way of re-engaging users. In the case of a markbook app, how about having a tile that tells you when you're ahead of your target with your students – or a live tile that scrolls through the names of students that haven't had a mark updated for the last two weeks?
Advice on these areas, and others, is detailed over on the Windows Store apps Dev Centre, in the "Planning Windows Store apps" article
As a bonus, in the video below, David Chou, who's one of our developer evangelists, talks through some of the concepts of building well-designed apps that create a consistent experience for users – so that as they move between different apps from different publishers, students and teachers can have a familiar experience, without having to learn new techniques to navigate different apps. Although this might seem like an easy thing to do, it could be potentially frustrating for users and developers, especially when you consider your user might be using a touch-enabled slate without a keyboard, or a conventional laptop with keyboard and trackpad, or a huge monitor with a standard desktop computer with keyboard and mouse. The design advice published is there to help you build a single app that works across all of those different devices, rather than having to have multiple versions for different devices.
If you're not a developer, but a user or a teacher, the video is still interesting, as it helps you to understand how so many different apps doing so many different things, can still be easy to use.