A blog by Oleg Shilovitsky
Information & Comments about Engineering and Manufacturing Software

Top 5 API Mistakes in PLM Software

Top 5 API Mistakes in PLM Software
Oleg
Oleg
13 October, 2010 | 3 min for reading

In any enterprise software, there is a point of time we are asking the following question – “what APIs are supported?” We anticipate the need of API in order be configure, customize, tailor, change, adapt, etc. Use any marketing wants, in the end you’ll need an API to be able to make the software finally works in the way you want. APIs provided by software define a level of flexibility, and this is one of the important characteristics you need to take into account.

The “10 common mistakes by API providers” article on ReadWriteCloud made me think about mistakes vendors are making when designing and providing APIs. I decided to put my top 5 lists of typical problems I’ve seen in APIs for CAD, PDM, PLM software. I believe, this list is not unique in CAD/PLM and may represent some general trends as well.

1. Complexity of data and API structures
The simplicity of API is one of the most important characteristics. When it comes to complex products like CAD or PLM, a very typical problem is a high level of complications in API functions, dependencies and data structures. The level of knowledge required to work with API is growing enormously and the potential for bugs and mistakes is growing too.

2. Late availability compared to software release
This one is representing a painful situation when APIs becomes available only in the “next version” of product. Normally, it represents a lack of maturity in product functions. It often happens in a situation when a vendor is releasing a new version and anticipate function changes in the next version.

3. Inconsistency with core product functions
Another very painful situation when a product from a user standpoint behaves differently compared to API. It normally happens when development organization is inconsistent with regards to planned functions and API. The involvement of different teams of developers , separation of user-functions and API-development may cause these situations.

4. Not Stable APIs and Lack of Backward compatibility
When you customize software for customer or develop your own application you want to minimize potential problems when new version of software is coming to a market. An ability of software to support a stable set of APIs between releases is a very important characteristic. Not stable API can jeopardize a new version deployment or a new release of your software. This is a very complicated issue causes a lot of problems.

5. Lack of tests
There are software vendors consider developers a cheap workforce to debug a new software. I can see a higer probability to see an API problem, compared to user function in the same product. It can be prevented, in my view, via increased usage of own software API for internal development. In addition, it often happens when API considered as an “addition to software” and developed separately from core functions.

There is one more thing. Availability of API. I didn’t put it in the list for several reasons. Sometimes, CAD/PLM vendors are making decision to protect some aspects of their software by restricting APIs. This practice more related to business strategy and cannot be considered as “API mistake”. This is another problem that often happens and needs to be taken into the account.

What is my conclusion? The amount of revenues in the market of engineering software related to services, and customization is very high. For different segments, it approaches 50% and even more. APIs is a core fuel behind these revenues. Consistent, stable and simple API is an important characteristic of every successful product in this market. Just my opinion.

Best, Oleg

Recent Posts

Also on BeyondPLM

4 6
17 December, 2019

I’ve been coming to Solidworks World for many years. I did it as a Dassault System employee, startup founder, and...

20 July, 2024

The discussion about PLM as a business and PLM as a software are not new. When someone asks me about...

27 May, 2013

Technology field is deeply surrounded with different type of buzzwords. The terminology is a complicated part of enterprise software and...

18 February, 2010

I’d like to put some thoughts about user identity management in the enterprise. In the beginning, you may think the topic...

27 April, 2009

In the last few posts, I wrote about how you can use Enterprise 2.0 tools to improve various processes related...

20 August, 2017

I took 3 weeks off blogging. We often take health for granted. And we should not… Health problems are stressful...

30 August, 2011

I think the world around us is about to change. A couple of weeks ago I posted PLM and Future...

1 March, 2013

What is the right PLM size? This question is continuously debated and discussed by PLM vendors. This topic remains active...

2 July, 2013

Are you in the market for enterprise system? Traditionally, the process of enterprise software selection is long, complicated and expensive....

Blogroll

To the top