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
8 January, 2011

One of my twitting buddies, Jonathan Scott, re-twitted the link to the following article – CIO Strategies: The Private and Public Clouds...

8 December, 2024

In last week’s blog, I explored the status quo of PDM vs. PLM positioning, speaking about the challenges and the confusion...

13 May, 2009

In one of my previous posts, I discussed the topic “Should PLM develop its own process tools? “. In this...

17 October, 2011

Reporting is a very important part of product lifecycle management. Actually, without reporting it is hard to imaging how you...

28 March, 2019

ProSTEP article caught my attention by the very interesting title – How do you efficiently implement the digital integration of PLM, ALM, MES,...

22 October, 2018

I’m getting ready for PLMx in Chicago just in few weeks. Haven’t heard about PLMx? There is still time to meet...

23 November, 2018

There are roughly 6,500 spoken languages in the world today. However, about 2,000 of those languages have fewer than 1,000...

29 January, 2011

I just discovered one interesting fact. Exactly, a year ago, on Jan 28th, I published my first blog post about...

28 March, 2014

I’m following strategic visions of the major PLM vendors 2014+ publication by Jim Brown – well known analyst and my blogging...

Blogroll

To the top