Archive for the ‘Products’ Category

Bringing RUP Content into VSTS

Monday, November 23rd, 2009

There have been quite a few development posts in our blog as of late, so I thought I’d share some current activities from our products and services front.

In the past month, we welcomed three new customers to our IRIS Product Suite and Content Bridge for VSTS, including a large Canadian Federal government agency. Two of the customers were specifically looking for a solution to bring RUP or RUP-inspired methodology into VSTS for process enactment. After evaluating their requirements, we selected the right tool from our product family and provided our expertise in this area to deliver the needed solutions for them.

As VSTS continues to gain maturity as an ALM tool, we have noticed growing interest in processes and process integration within the development environment to facilitate its enactment. Organizations who have adopted TFS initially for centralized source control and automated build capabilities are now ready for more. After having deployed and migrated existing projects to VSTS, many are looking into bringing their own processes into the tool to benefit from process guidance and work item tracking in their daily development activities.

However, creating process templates for proprietary processes remains a challenge. In this regard, it is a pity that a process tool, such as RMC, does not provide cross-platform support to generate process templates that can be used in a (competitor) enactment platform.

I believe that a well-rounded process tool should not only satisfy the modeling needs of process authors, but also provide the necessary support to help project teams deploy and implement processes in a chosen enactment tool, whichever it may be.

For those who are interested in seeing an RUP process template live in action in VSTS, here is a recording of a webinar that we hosted with Microsoft last year. In this webinar, I used an RUP Process Template for Small Projects as an example to create a project in VSTS.

Automatic work item creation and linking in VSTS

Thursday, March 13th, 2008

It’s been a busy few weeks since the Heroes Happen {Here} event here in Toronto where we launched the latest release of our IRIS Process Live product for VSTS 2008.  This release has been generating a lot of excitement amongst those looking to increase their productivity with VSTS.  IRIS Process Live (IPL) is a collection of client and server extensions that enable VSTS to guide the execution of your projects based on your process of choice.  IPL is methodology neutral so it allows you to bring any process definition (MSF, RUP, agile, in-house) into your VSTS enactment environment and automatically create the necessary work items and relationships to help you get going.  The following are some of the features of IRIS Process Live.

IPL extends the project creation wizard to allow you to select the process definition and process patterns that you want to use for your project.

Select process definition during project creation

IPL extends the project creation wizard to allow you to select which process elements you want to instantiate in your project.

Select which elements to instantiate

IPL work items automatically contain the necessary guidance for you to get started.

IPL work items are automatically linked together based on their process relationships.

IPL work items automatically contain links to relevant guidance and process guidance items.

IPL automatically performs work item state changes based on their process relationships.

IPL automatically sends users notifications when their work items are ready to be started or have been updated.

IPL allows you to create additional work items from the process definition at any time during project execution.

Instantiate additional work items during project execution

Both activities and work products are instantiated by the wizard

IPL allows you to add or remove additional process definitions and practices during project execution.

IPL contains process related reports that can be used for process improvement or governance related initiatives.

More information about IRIS Process Live is available at http://www.osellus.com/IRIS-PL.

IRIS Process Central Sandbox is now available

Friday, November 16th, 2007

I am pleased to announce the availability of IRIS Process Central Sandbox. This is an online process community to promote discussions on process improvements through collaborative input. Its goal is to bring together process modelers, process consumers, and other stakeholders to freely share information on existing processes and create new process mash-ups.

To facilitate these discussions, we have included several processes on sandbox including MSF for CMMI, OpenUP, and Agile. Where possible, we have provided variety of formats for each process as well as enactment templates.

You can participate by providing your feedback through blogs, discussions boards or modifying the content of the processes. We are eager to get your feedback and will make every effort to ensure that IRIS Process Central Sandbox becomes a valuable asset to you and your organization. Click IRIS Process Central Sandbox to access the sandbox.

IRIS Process Central Sandbox demonstrates how IRIS Process Central which is included as part of IRIS Process Author can help an organization improve their process tailoring in a collaborative environment.

It is our strong belief that through awareness and involvement of process community, there is a great chance of increasing adaptation of processes across the organization. We feel that IRIS Process Central is an important step towards this goal.

We are looking forward to the community participation in IRIS Process Central Sandbox or any suggestions regarding IRIS Process Central product.

But what about Jazz in MS Office?

Monday, October 29th, 2007

David had this to say (quite disdainfully :) ) about my theorizing about getting data out of Jazz into MS Excel and MS Project:

Instead of a one-way data transfer from Jazz to Microsoft documents, I think a much more useful exercise would be to extend MS Office to make it Jazz aware. This would allow the Office applications to behave as Jazz clients much like Microsoft and others have done for VSTS. Without Jazz awareness, I feel that these other applications would be limited to reporting functions and be of little use to the project management community.

I see this more as an exercise in extending MS Office (or your application of choice) rather than extending Jazz and can understand why IBM would be looking for partners to provide such a solution for their customers.

Point is good. Point taken. I am doing precisely what Negin was complaining about - missing the project management perspective and looking at it from the developer’s perspective - but I did fool myself for a bit there that I had the answer signed, sealed and delivered.

The project manager would rather work directly from inside MS Excel, MS Project and interfaces she is familiar with - and it is far fetched to expect non-developer stake-holders to log into a Jazz client/web client and export into Project or report into Excel.

Also, Work Item information (for example) could be changing frequently and direct integration into MS Excel and MS Project provides an opportunity to refresh statuses and other work item information directly from inside a report that the project manager has open compared to having to export repeatedly from inside a Jazz client each time.

Not to fear. As with the Jazz-based solution I outlined yesterday, I have a similarly vague outline of how to do this - atleast for Excel:

As mentioned in my previous post, we already have a way to get the data off the Jazz server.

Microsoft has made it equally easy to develop applications that target the Office ecosystem through VSTO (Visual Studio Tools for Office - currently VSTO 2005). This means that we have application level add-in support for Office system applications like MS Excel.

Through VSTO, I can write a plug-in for Excel that puts a Jazz toolbar/ribbon in Excel and interfaces directly with the service interface of the Jazz Server to get the raw data required off Jazz. This VSTO plugin would then take care of the business logic of putting together and rendering different reports and charts based on pre-defined queries by leveraging the runtime support in MS Excel that VSTO allows.

Reverting to the developer perspective for a bit, VSTO is installed as an add-on on Visual Studio and provides very nice design-time support - just like Win-Forms controls. Makes it that much easier to develop these plug-ins.

Depending on the needs, in case we find that the Jazz service interface is too ‘raw’ for consumption, another option would be to have the Excel VSTO plug-in interact with the Jazz server through a custom Jazz service-plugin that takes care of sending the Excel plug-in well filtered and formatted data. This has some obvious advantages but in my opinion, has the decisive disadvantage of mandatorily requiring a Jazz server side plug-in without which the nice MS Excel plugin we developed will not work.

The part I am not sure about is how to implement a similar VSTO plug-in for MS Project. If I remember correctly, VSTO doesn’t offer support for MS Project development. I could be wrong.

Browsing the VSTO site is becoming a pain right now because I am on a train back to Toronto that has wifi access on board - but connectivity is sporadic at best. I’ll check up a little later and update this post. If it does have support, that’s that.
If not, a plugin can be written directly against the MS Project SDK to achieve our end.

[Update] There seem to be a couple of options for developing MS Project plugins:

  • The version of VSTO that comes integrated with Visual Studio 2008 (currently in beta) has support for creating MS Project plug-ins.
  • I guess you can create a COM add-in for MS Project using the MS Project SDK I mentioned above but that would be something to consider only if I couldn’t use VSTO.

That can’t be too tough

Sunday, October 28th, 2007

Last week was pretty busy and I can remember only bits and pieces of it- sort of like Memento without the anterograde amnesia. I digress but it’s one of my favorite movies and I recently watched it again - and was looking for a way to bring it up - even if completely irrelevant :). So there!

One of the things I do remember from last week was attending the Jazz sessions on the 23rd and then the BoF session on 25th at CASCON’07

There were quite a few of us Ossies at Cascon (see Kamal’s post) and I think we all agreed that Jazz and Team Concert were a pretty impressive debut effort by IBM in the ALM space - though crippled by the lack of certain features and perhaps by the potentially dangerous mislabeling of a group of disjointed policies as “process” (a word and space held dear at Osellus :)).

While we didn’t get a chance to sit down and discuss our observations after cascon, we all took away strong observations from our respective perspectives. I can get started on what I really liked and also the large gaps I see in these offerings - but that’s not the reason I am posting this on a weekend when I could be flipping through channels.

I just read Negin’s post regarding the lack of project mgmt. support in Team Concert and I thought I would quickly respond to it before returning to another re-run.

I know exactly where she is coming from and understand this is a pretty important requirement once you get down to actually using Team Concert/Jazz in a real environment.

However, given that Jazz is built on the Eclipse platform, I see this as a job for an extension (or extensions) built on top of Jazz instead of as an inherent deficiency in Jazz. A couple of us had a chance to talk to Kartik Kanakasabesan, the product manager on Jazz at their booth at cascon and he said as much - it’s something that can be built by the community - possibly by somebody who is more qualified to build such extensions.

Hypothetically, with knowledge of the high-level architecture of Jazz and Eclipse, here are what ingredients I would need to build a MS Project or MS Excel Export concoction:

A way to extend Jazz by adding my own services or wrap Jazz services to get data off the Jazz server:
Jazz is built on the plugin-based architecture of Eclipse and has exposed extension-points both on the client side and the service side (Both of which are Equinox OSGi based). These extension points are in addition to the Jazz services themselves that are exposed as part of the service interface (and also have corresponding siblings in the client library)

So, getting the data off the Jazz server to put into my MS Excel report or into MS Project is taken care off.

Getting the data into MS Project:
Negin’s point regarding getting the Work Items in the “process” heirarchy in JAZZ/Team Concert into MS Project or into any other PM tool for that matter is perhaps *the* most important practical fine-grained feature that will get JAZZ out of just the research community into a real project manager’s hands.

MS Project projects can be defined as XML and Microsoft has a well-defined schema for the XML definition.

So, if we mash up JAZZ’s Work Item related service interface API to get the data out and transform the data to a MS project XML, we are good to go!
I can’t get my jazz.net username/pwd to work for some reason so am vaguely referring above to the “Work Item related service API” - I would have preferred to use the right nomenclature.

Getting the data into MS Excel
Getting the data into Excel is similarly not a problem technically.
A server side plugin that the Jazz team calls a ‘common’ plug-in can be built that provides the generic functionality of being able to export data in the Excel format. This plug-in has to be written in Java of course considering this is the Eclipse platform - therefore it can leverage one of the many libraries openly available for reading/writing to the OLE 2 Compound Document Format which includes the MS Excel (XLS) and MS Word (DOC) formats.

The one I rely on usually for similar purposes is Apache’s POI but the choice might depend on the specifics we want to achieve.

I would then build a Jazz service plug-in that wraps the business logic of generating the specific reports we want to output in the Excel format. This service plug-in would get the data using Jazz’s service interface, mash the data up into different types of reports and then output them into spreadsheets using the generic ‘common’ plugin I mentioned above.

A Jazz client plug-in that provides a way to trigger the service plug-in for generation of specific reports or export into MS-Project would be the last step.

I have used Negin’s specific complaints above to demonstrate a hypothetical and technical answer. However, MS Project and MS Excel are but two formats. Formats such as the Open Document Format (ODF) can be just as easily supported. These formats will become increasingly prominent given the adoption of ODF based tooling such as Open Office by governments, educational institutions and SMEs - especially since these are the same organizations that might end up as primary Jazz customers.

Therefore, building such extensions to provide an interface to the project management tooling world is technically not an issue. The real work will be to intelligently define what reports one would want that can leverage such extensions. Negin and others like her who have invaluable years of project management experience are best suited to answer that question!

Notice to Jazz developers: Feel free to tell me how you would do it - or to correct gaps in my understanding.

So Negin….when do you want me to get started on this? :)

RMC 7.2 - Missed Opportunity?

Monday, October 1st, 2007

In my view IBM is struggling to align their products and practices with the advancement in the state of around software development process automation and collaborative development environment.

In this post I am going to focus on their release of Rational Method Composer 7.2 (RMC 7.2) and specifically point out why it is difficult for me to be convinced that they have done a root cause analysis of their previous failures (with RPW or earlier versions of RMC) or have recognized the direction where software process automation is headed.

When one thinks of a product release from IBM you would obviously expect a high level of maturity, sophistication and thought leadership. IBM is universally well regarded and respected for pushing concepts like SOA and software-as-service. However, when you look at how the Rational team has implemented the tooling around creating and tailoring processes, one wonders why that thought leadership is not being put in practice here. By choosing to keep RMC 7.2 as a thick client application the rational team seems to be stuck in a time warp. I simply cannot imagine a scenario where an enterprise is told that its process assets (which in many cases have the “secret sauce” of project success) is encased in a few laptops. So I was bit surprised that even while acknowledging this problem of scalability and multi-methodology blending, the rational team has chosen to resolve it by continuing to stick to the flawed design decision of using SCM to check-in/check-out process plug-ins. But now, to make matters even more difficult, process authors (often non-programmers), are required to use the eclipse IDE environment to derive some scalability benefits. This is simply unbelievable. First of all, this still does not solve the problem of scalability (see why). Secondly, SCM is a code repository specially built for handling code and not process assets. Finally there is little logic in making process authoring so complicated that it requires a team of consultants to even setup the multi-layer environment for process authoring. Moreover in this day and age when even videos are being edited online asking a process team to work in this client-only disconnected mode is simply irresponsible. I did notice that the rational team did take note of the overwhelming negative feedback on usability of RMC and I welcome that. As in IBM partner and while exhibiting at the RSDC in June 07 we heard lot of this negative feedback. As you read this please keep in mind that if you don’t have a business need for blended methodology processes (and RUP is all you need) or if you are fine with having one or two process authors, RMC does meet your needs. In fact we have a handful of customers who are in such a situation and would simply like to move their RUP process into a collaborative development environment such as VSTS using Content Bridge for VSTS. I hope to see some improvements in the UI with RMC 7.2 and will share what I find out.

Evolve your software processes through collaboration

Thursday, September 27th, 2007

In recent years we have seen a trend of software companies, regardless of their size, realizing the benefits of having well defined software development processes in order to increase the success rate of their projects. One cannot argue that when it comes to software processes, one process does not fit all. With this understanding comes the challenge of how to ensure that an organization with a number of software development processes can ensure process selection is made properly.

At the very minimum, an organization needs to have a central place where consumers of the processes can view all available processes and search based on criteria such as process families (e.g. RUP) and process recommendations (e.g. team size). The richer the information included in this process hub, the easier it will be for interested individuals to find the appropriate process. By implementing this central place for processes, companies will see an increase in usage of their software development processes.

The next logical step is for an organization to promote its process center as a vehicle to improve processes through collaborative community input. Traditionally software processes are designed by elite group of highly skilled individuals, often in isolation. Without a feedback mechanism in place, there is no real chance for processes to evolve or survive. With the dynamic nature of software development projects and without the two way approach, processes quickly become obsolete and there will surely be resistance amongst project consumers to follow the processes. Organizations can easily over come this major issue by bringing together the process authors and consumers. Process centre can be a gateway for both parties to come together to share and collaborate on existing processes. The type of feedback can range from the most informal method such as rating system to most constructive such as recommendation on the specific process element or step. By having the wide range of options available, consumers can choose the method which suites them.

A natural way to implement this type of system is through the newly popular Web 2.0 technologies known as the second generation of web-based communities and collaboration tools. This trend in technology and industry addresses the need for collaborative way for the entire organization to work together towards evolving their software development processes and ultimately to increase the success rate of projects. I am pleased to say that we are currently working on a process portal based on Web 2.0 technology which is complimentory to IRIS Process Author. Stay tuned for more blogs regarding IRIS Process Central.

Adobe validates our approach….though a little late

Tuesday, September 11th, 2007

A sense of validation is always nice - especially when you are so far ahead of the curve. I was scanning through my Google Reader Link Blog recently and noticed the number of new applications being implemented in Flex/Flash and Apollo - Adobe’s desktop runtime for RIAs.

Microsoft recently joined the game officially with the launch of version 1 of it’s Silverlight rich interaction delivery platform and while it’s some way behind Flash/Flex as a platform, it’s gaining popularity too - and has a lot of things going for it (a topic for another post).

I want to focus on Adobe preview of a new product last week at the Photoshop World - Photoshop Express, which is an entry-level Photoshop branded product aimed at drawing customers into the world of Photoshop. What’s special about Photoshop Express is that it’s hosted and implemented using Flex (the development environment for Flash).

This is a continuation of Adobe’s recent focus on the hosted model - Adobe had put out a hosted video editing tool, Remix that has been available as part of the Photobucket tool-set for about 6 months. This video tool has other nearly identical avatars - it also exists as Adobe Premiere Express and is provided on Youtube as Youtube Remixer.

This is the best possible advertisement for the Flash platform’s power. As a developer, there is nothing that screams out a platform’s strength than a complex image/video processing software implemented in it! And there are more coming out everyday!

Flash/Flex has been rounding up some well known names in its corner. I am very impressed with the way Adobe has targeted and honed the direction of the Flex/Flash platform after it adopted Macromedia. The AIR platform (formerly known as Apollo) which has gained a lot of steam since it’s launch is another crucial step in that direction.

What direction is that? Flash is no more seen as the delivery tool of the infamous banner ads. It is now perceived as a serious platform for rich and complex application delivery used by the big boys of the internet and increasingly, the enterprise.

Which brings me to the sense of validation I was talking about :) - Long before Adobe and the others, Osellus was one of the first “serious” product companies to recognize the power and potential of Flash as a platform and employ it to develop a complex visual enterprise-class product. IRIS Process Author is an enterprise-class visual process management product currently being used by very qualified process groups in very large organizations - and its primary authoring interface is implemented in Flash and the IRIS Flash Framework!! We just happened to start 5 years ago and given our early start, we had to develop our own framework for implementing our Flash-based interface. I was involved in designing and guiding Process Author’s interface over the last few years and so felt the need to make sure Osellus’s foresight was recognized - at least in a blog posting :).

Other examples of companies waking up to the potential of Flex/Flash are Google and Salesforce.com which have been adding some Flash-based products and APIs to their catalogs.

Considering our strong enterprise focus as a company, I am especially peaked by the strong uptake of Salesforce.com’s Adobe Flex Toolkit for Apex. Apex (Salesforce AppExchange) is of course Salesforce’s applications marketplace and one of the first implementations of the SaaS model.

On the consumer-internet front, Google made available the Google Talk Gadget a few months ago which is a Flash implementation of Google Talk that can be added onto your Google Personalized Homepage. The gadget can be even be added to a blog or webpage so visitors can chat with you right there in the context of your blog. Best of all, I noticed that it has the “Call” button - so you can VoIP with your google talk contacts right there - no need for the desktop client! I chatted up a couple of friends and was pretty impressed with the implementation. The gadget has a lot of other features too - like being able to play youtube videos and recognizing picasa albums.
The reason I highlight the Google Talk gadget in particular is that I was hard pressed to find a difference in the user experience between the gadget and the Google Talk desktop application. Of course this is as much as ode to the Google developers as to the Flash platform itself.

I suspect we will see Google employing Flash more and more in their upcoming “betas”.

Another web app that I am really impressed with is Virtual Ubiquity’s Buzzword. VU is calling it “the first real word processor for the web”. It’s written in Flex 2 for Flash 9 and is extremely sophisticated and rich in features.

These are but a few of the examples out there in the enterprise and web 2.0 arenas. All in all, this trend indicates the exciting albeit late recognition of a trend that Osellus had woken up to sometime ago.

I’m pretty sure we’ll be seeing more and more of Flash/Flex and Silverlight based RIAs delivered either in the web browser or in an Apollo like delivery model in the next year or two. I itch to articulate my p.o.v. on the Flash vs. Ajax pseudo-debate that’s been on for the last couple of years but that’s a whole new post.

I am keen to know which other enterprise level products have Flash based interfaces, APIs or atleast components. If you know of any, let me know! I would also be interested in knowing about early adopters of Flash in the enterprise along with Osellus or even perhaps before us!

IRIS Plugin for Eclipse

Wednesday, June 6th, 2007

In my experience I have seldom come across large enterprise organizations that mandate the use of a specific IDE while putting a blanket ban on any other IDE. Even within the same sub-organization, different development teams may have own their favorite IDEs. Moreover, the decision to use a particular IDE is often tied to the platform on which the application is being developed. For example if building a .NET based application one is likely to use Visual Studio. If developing a J2EE application one may choose to use the eclipse as the IDE.

Having made a considerable investment of time and money in coming up with a process model – whether using COTS methodology such as RUP or your own in-house methodology – you would like all projects, irrespective of the IDE they use, to follow this process. This also includes getting access to the lessons learned across all projects enacting this process model.

All of this makes the already tough task of enacting software development processes in this mixed-technology development environment even more difficult. Rather than trying to convince developers to leave (step out to another interface) or at worse abandon (in favor of another IDE) their IDE simply to follow a process, it would make more sense to build process awareness into the tool they decide to use. The lack of a low-overhead process enactment interface should not become an excuse in not enacting the chosen process model.

The IRIS Plugin for Eclipse injects this process awareness into the eclipse IDE. Developers can now access the relevant process content without needing to leave the eclipse environment to dig through cumbersome process documentation. More importantly this information is available in a just-in-time manner when the project work items assigned to the developer are ready to be started. This means that there is zero additional overhead on part of the developer to lookup the process guidance associated with a project work item they are executing. In fact, if the process author has chosen to build a low-fidelity model prescribing a workflow based on activity state or work product state change events, the developers even get notifications when their work items are ready to be started. Developers see all project work items (with status) assigned to them and are able to distinguish pending work items. If needed they can create related work items as they progress in executing the work items assigned to them. When finished they can assign the work items to the next developer or other practioners that are part of the project being enacted using the defined process model.

IRIS Process Live acts as a unifying enactment platform across the enterprise. Here is an example of how with IRIS Process Live at the backend, the same process model can be used by developers and other practioners in disparate environments. In Figure 1a and 1b, the eclipse environment to view all project work items as well view a process links tab for one of the work items is shown. In Figure 2a and 2b, the same information is provided in a Visual Studio environment. Finally in Figure 3a and 3b, the same information is presented in a web view that may be used by practioners who don’t have desktop IDE clients on their machines.

eclipse_ui.jpg
Figure 1a - Eclipse

eclipse_ui_1.jpg
Figure 1b - Eclipse

vs_ui.jpg
Figure 2a - Visual Studio

vs_ui_1.jpg
Figure 2b - Visual Studio

ipl_ui.jpg
Figure 3a - Web view

ipl_ui_1.jpg
Figure 3b - Web view

The investments made in commercial methodologies such as RUP are realized by providing the rich method content to its intended audience. This low-impedance way to access process guidance - such as steps, guidance documents such as templates, best practices and patterns - without leaving the IDE environment increases the chances of project success.
The Osellus team is ready to share the work it has done in this area at the upcoming rational conference in Orlando. Come see us at booth 427 from 11-13 June 2007.

Content Bridge for VSTS - Official release announcement

Tuesday, April 3rd, 2007

We are officially releasing Content Bridge for VSTS ! Here is the full press release.


Here is some more information in Content Bridge for VSTS:

http://www.osellus.com/products/contentbridge/contentbridge_for_vsts.html