Durandal is a popular Single Page Application (SPA) framework for web development. I recently had the need to develop a WinJS project for Windows 8.1 and wanted to make use of our existing in-house Durandal expertise, so we used Durandal.
We’ve recently worked on several mobile app development projects for tablets and phones running iOS, Android and Windows. Thanks to these projects, we’ve identified some key do’s and don’ts for managing your product backlog requirements for mobile application development efforts.
Here are some of the common business features and technical requirements/constraints for both consumer-facing apps and corporate internal apps that could show up in the product backlog:
- Responsive UX Design (screen size, orientation, device features, etc.) – for this you will need to identify a limited set of target device configurations for acceptance
- Required corporate branding/corporate style guides
- Choosing between a native app style UI that is device specific vs. a common style cross-platform UI
- Stringent speed/performance targets for initial app loading, screen navigation, response to user actions
- Connected vs. Disconnected Operations requirements – you need to clearly define what features work when there is no connection
- Data security and Personally Identifiable Information (PII) protection
- Support for multiple OS and multiple versions of an OS
- Support for multiple types of mobile browsers
- Integration with companion apps on the device
- Cloud/web service integration to access corporate systems of record
- App Store submission requirements (i.e. Google Play, Apple App Store and the Windows Store). Each store has its own unique sets of UX requirements, minimum performance, storage management, legal/copyright, privacy notification requirements, content age appropriateness designation, etc.
- App version management
- Code-sharing across device and OS platforms
- Graceful degradation of the app functions in case of failures
- Process improvement support, especially for corporate vs. consumer apps that are targeted for mobile workers
- Security and device management for corporate apps
The items in the list above may all need to be considered when you first start working with the product owner to both build the product backlog for the mobile app and help define the overall scope and timeline for the project. For consumer apps deployed through app stores in particular, the timeline for publishing to the stores — and factoring in the review and acceptance process — needs to be considered up front. Read More…
As a UX Designer, I admit that there are parts about Windows 8 that I love…and some I’ve hated. But I recently had the pleasure of training on UX Design for Windows 8.1 apps with two of Microsoft’s talented UX Evangelists and I learned a ton. After listening to users, Microsoft made some pretty important changes to the way we now design apps in Windows 8.1. Read More…
While the Windows.Storage.Compression namespace does provide an interface for compressing individual files, there is no native support for creating a multi-file archive. In order to implement this feature I chose to use the third-party JSZip library, which is a light wrapper around the zLib library. Read More…
I’ve been reading a lot about the sweeping organizational changes at Microsoft. It’s always interesting to analyze and attempt to interpret their strategy and internal politics. (For example, why is the Dynamics business still separate? Is it being positioned to be sold? Probably not, but fun to consider.)
However, I am more drawn to the larger changes the re-org is enabling. The external press always seems to be negative about the actions of Microsoft’s executive leadership ever since Bill Gates left. While I may not agree with every choice Steve Ballmer has made, when you really stop and think about how they have transformed themselves over the past six years, it’s pretty amazing — especially when set in juxtaposition to the lack of change at other lumbering IT giants. Microsoft is well on their way to transforming from a worldwide monopoly of “Windows and Office” to a “devices and services” business. Read More…
We often develop websites that require specific styling to render properly on the iPad via Safari. By default, sites served from one’s development machine are not accessible by other machines. So how does one go about allowing your iPad to access your website running within your local development environment? While not entirely straightforward, it’s actually a fairly simple process. Read More…
Take your company website, for example. It looks great on your desktop computer, right? But when you view it on your phone, it doesn’t look nearly as nice if it wasn’t developed using responsive design techniques. Images will be too big, the navigation may be impossible to tap and the download time may kill you.
Designers/developers must write the code in a way that looks great no matter what device it is viewed on. Basically, we have to use something called media queries. Media queries are pieces of code that allow us to put details around objects. So we can say if a web page is being viewed on a device with a 460 pixel width, display it like this. But if the web page is being displayed on a device with a 800 pixel width, then display it like that.
It actually goes well beyond just the width. We can decide what to display based on the following factors:
We can tell your website if it should use high-res images for Retina Display or no images for a phone display. We have a ton of options. Responsive Design is in its infancy and we are discovering new ways every day to make this logical way of thinking possible. The sad fact is we haven’t quite developed the best way to do this yet. Right now we have to write tons of lines of code to account for all the different resolutions, as well as older versions of browsers that do not support the latest and greatest best practices. But each time we launch a new digital page, we get closer. We make it better. Read More…
Is your organization in need of a cutting-edge, custom-developed mobile application? AIS is quickly becoming the go-to organization by developing innovative solutions like KCI Technologies’ new Windows 8 UI application. The application will enhance the efforts of the organization’s initiative to further develop its mobility program, and will support field inspections in both network connected and network disconnected environments. AIS is currently preparing for this exciting endeavor and expects the application to move into full production in early 2014.
So you want to design an app for Windows 8, huh? Moving from designing traditional web pages to apps can be a tough transition, but as designers we need to constantly push and recreate ourselves so that we can stay in touch with the latest technology and trends. So to help, I have some “getting started” tips I want to share.
First, read through Microsoft’s lengthy guidelines for Windows 8 Apps. Make sure you familiarize yourself with the terminology Microsoft uses for the Windows 8 system like hub pages, live tiles and badges. Don’t worry about memorizing everything in the document, just keep it handy and refer to it when you come to that section.
As we build applications for more and more platforms, it is extremely important that we maximize our code reuse across platforms. With the release of Windows 8 and Windows Phone 8, Microsoft has made significant improvements in platform convergence – this convergence will continue with each release. They share the same core as Windows, and Microsoft removed .NET compact framework and replaced it with CoreCLR and added WinRT. Much of this is common to Windows 8 itself.
However, it is important to understand that these are still two distinct platforms and still do not have 100% convergence with binary compatibility. Maximizing reuse across these platforms is key to an efficient development experience.