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 August, 2009

I’d like to follow few very interesting discussions that happened last week. Few blog posts you probably want to read...

23 March, 2009

I’ve seen a growing number of publications related to Cloud Computing and all variations of SaaS / PaaS / IaaS...

13 February, 2018

How to build reliable PLM system? For long time, this topic is among the most often demanded requirement in engineering...

1 April, 2012

Note, this is NOT 1st April post :). Multi-CAD and PLM. Endless story… Few weeks ago, I published my post The...

6 February, 2015

Cloud computing is changing a world around us. CAD and engineering applications are not exception. It has been already five...

1 March, 2010

I found interesting that nobody speaks much about PLM platforms these days. It seems to me PLM vendors and service...

14 March, 2017

To implement PLM isn’t an easy project. Especially when it comes to large PLM implementations going beyond document management control...

26 June, 2015

Startup company and process management. These are probably two most conflicting definitions you might think about. Everyone is familiar with...

7 March, 2020

The big innovation is usually crisis-driven. Many researchers suggest we need to have a bit of kick to start changing...

Blogroll

To the top