Archive for August, 2009

The Yardistry Design Tool is out!

Thursday, August 27th, 2009

The Yardistry Design Tool that I mentioned in my previous post is out! As I mentioned in that post, it’s been implemented using Flex 3 and Papervision3D and stands out where applications that leverage 3D in the browser go, especially in terms of the complex tooling it brings into the browser.

Here’s the direct link to the tool: http://designer.yardistrystructures.com/.  Select the ‘Custom Design Tool’ and get started modeling your outdoor structures.

A slightly technical aside: All the 3D part shapes that you see in the tool were created in popular 3D applications like Google Sketchup and 3DS Max and imported into our tool using our custom import utility so that we could apply rules to the shapes so as to work in the tool. Yardistry had these parts designed and available in the Sketchup format and we brought them in without them having to do anything special to make these shapes usable in the design tool.

Jane was the primary analyst on the Yardistry project and I was the primary architect/designer for the design tool and we are both based out of Toronto. Our development team is based out of Bangkok and they recently celebrated the completion of the Yardistry project and sent us a pic. They did such an amazing job – mad skills!!

image

This also makes me think about how we have got our development processes locked down. We were very agile with very quick short cycle times. At the same time, we were able to communicate and track requirements, design and development milestones for this fairly complex application between Toronto and Bangkok seamlessly and without compromise.  As with almost all of our projects, we used Visual Studio Team System (VSTS) for  managing and tracking development and bug tracking. It helps that we have a lot of VSTS and process expertise in-house so that we were able to leverage VSTS to the full extent possible.

We have an excellent team to begin with but we are able to leverage tooling such as VSTS to make a distributed team a non-issue – and in fact make it an advantage.

Congratulations to the team!

Process Improvement Applications for Mobile Internet Platform

Saturday, August 22nd, 2009

During the last few months, I have spent most of my time on mobile process improvement tools. Working on these apps has had the side benefit of giving me a more in depth knowledge of exciting process improvement bodies of knowledge and even more appreciation for their scope.  Bodies of work such as these codify a vast amount of practical knowledge and best practices from which any size organization or team–formal or agile–can greatly benefit.  I feel the persistent bottleneck stalling wide utilization of these bodies of knowledge is due to the difficulty of internalization.  I strongly believe that having the right tools is the remedy for this internalization problem.

The majority of these tools will be imbedded in or made accessible via the user’s exciting systems such as ALM platforms, but a subset of them will run on mobile Internet platforms such as iPhone, Android, and BlackBerry. The ubiquity and instant accessibility nature of these devices make them specially practical in situational usage. You are not always at your desktop when you need process improvement related assistance.

We at Osellus have been working on ALM based process improvement tools for over eight years, and more recently we have started working on mobile process improvement related tooling.

Coming Soon: COBIT Mobile Reference for iPhone

Saturday, August 22nd, 2009

I have just finished another process improvement/governance related iPhone app, a quick look up reference app for COBIT process areas and control objectives. After two more days of  testing, I will submit it to Apple for approval. I’ll let  you know once it’s available on the App Store for download.

My respect for the iPhone development platform has increased considerably as I spend more time developing for the platform. Although Objective-C is outdated compared to  modern languages such as C# (especially C# 4.0), Apple more than makes up for it with extensive libraries and powerful development and in-device debugging tools.

Standing out in the Apple App Store

Wednesday, August 19th, 2009

It’s been around 2 months since my last post! We have been very busy with some very interesting projects. This year has had a good start from the point of view of getting to work with some very new and cutting edge implementations.

My team just finished work on a custom design/modeling tool for Yardistry implemented in Papervision3D and Flex 3. I have not seen something so functional and complex implemented in 3D on the browser platform. I am pretty proud of the work the guys put into building this product both in terms of technology and usability. I really encourage you to go play with it and use it once it is out at http://designer.yardistrystructures.com/. The custom design tool should be going live there within the next few days. I’ll put out a post once it is live.

The other thing I have playing with a lot in the last few weeks is the iPhone development platform. The popularity of the platform just cannot be ignored and Payman, I and  a few others have been putting a lot of thought into leveraging this first really usable mobile platform to bring our ideas to life.

Every serious developer has looked at some mobile device or platform in the past few years and had a few ideas for it but been frustrated with the sheer unfriendliness of the platform both for the user and the developer. I think the iPhone has changed all that – it’s a very serious mobile computing platform.

Payman put out a CMMI Reference App very recently and you are going to see many more in the next few months. The CMMI app is free. I know a lot of you come from the process engineering background and might find it very useful. Please don’t forget to rate it and leave a comment! Here’s the direct link to it in the app store: Click here.

I have been working on a very exciting iPhone app myself. I hate to be a tease but I cannot talk about specifics. Lets just say that it leverages social networks like Facebook and twitter to bring something very practical and functional to a crucial experience in a person’s life. Sorry, but that’s about as specific as I can get. I wanted to bring it up so that I can talk about a couple of things I have been thinking about since I started working on the app.

If you are an iPhone user, you probably groaned when you saw the words “social network”, “Facebook” and “Twitter” in reference to an iPhone app. I understand. There were an estimated 65,000 third party apps in the App Store mid July and it sometimes look like all of them deal with social networks.

We understood this. However, there is a difference between focusing on social networks like most apps tend to do and what we are trying to do – which is leverage them with a lot of attention to providing users with the benefits of integration with their favourite social networking sites without becoming about the social networks.

What we are realizing is that in order to differentiate between our app and the other thousands of apps in the app store, we have to do two things well.

First, it is no longer enough to have an application that has no server component. If your app is dependent solely on third party sites like Facebook, Twitter etc, you are always bound tightly to their APIs, restrictions and performance. Of course you are getting a lot - like a ready made audience and functionality that you don’t want to re-invent. But remember that everybody else out there is also using the same APIs and they probably work exactly like your application.  You have to enhance that experience in some way. The best way to do that is to have your own custom server component that adds some richness to the experience. You can layer this server component on top of existing social network sites ideally or add it to the list in order to achieve differentiation. The server component may or may not have a Web UI but it probably will have web services that cater to your app specifically.

Secondly, the integration with social sites should be balanced so that a user’s audience or their friends on those sites are made aware of your activities through your app but the app itself should not become focused around the third party sites.

A good example that comes close to illustrating my points is the GAP StyleMixer iPhone app. The StyleMixer app allows you to create and style your own outfit on the iPhone. I like the way it handles sharing the outfits a user creates. It allows you to share your outfits with your Facebook friends but also to GAP’s own StyleMixer community.

By doing that it gives you your standard Facebook experience but also gives you a specialized GAP community experience that would not be possible inside Facebook. It also means that the focus is around the StyleMixer community. Support for  third party sites like Facebook, Twitter can be added, removed based on their popularity. Your app is not very dependant on them anymore and works better because of the specialization you have built using your own server component along with a hook into Facebook and twitter.

Perhaps some of what I say above flies in the face of current practices but if you are building a serious product, I would say that the ‘Cloud’ becomes a rich back-end for your app only if you have a say in it – and that means your own server component more often than not.

It is easy to think that a server component for a mobile application is over-kill. But thanks to the iPhone and potentially platforms like Android, the time has come where a mobile application  is serious business and can be the backbone of your enterprise. If companies are getting funded for their iPhone app ideas, then we better believe its time to consider building more than a client only experience.

CMMI Mobile Reference Application for iPhone

Tuesday, August 18th, 2009

Many times while thinking about or discussing CMMI related topics, I have difficulty recalling a particular process area, goal, or practice. I don’t always have a CMMI book or my laptop handy, but I always carry my iPhone. This got me thinking about developing a CMMI reference for iPhone that I could access at anytime.

I feel this app is useful for any iPhone owner who is into CMMI and process improvement. You can get a free copy of this application from the Apple App Store.

I had so much fun with this application that I am thinking about creating other process improvement, governance, or development methodology related apps.

I hope the process improvement community finds this app useful.