Precautions when using purchase or free software

08/12/2017

Be careful with software made by other companies

There are various points to be aware of when using it as part of software that develops software made by other companies. Precautions and countermeasures vary depending on whether the software made by another company is purchased software, open source software , or free software . In any case, as with software developed in-house , it is necessary to guarantee quality and provide maintenance throughout the product life cycle, so it is important to note whether this can be achieved.

Do you use software made by other companies?

Do you ever incorporate software made by other companies into the software you develop ? In the development of embedded software that Gutara’s father was involved in, in the past all the software was developed in- house, but since the Internet became widespread, it has become necessary to incorporate software made by other companies. I did. Since then, as the scale of software has increased along with the improvement of hardware performance, the ratio of using software made by other companies has increased steadily. Today, over 90% is software made by other companies .

There are three main types of software made by other companies.

  • Purchased software : Purchase and obtain source code and object code from other companies
  • Open source software : Get the source code published under the OSS license
  • Free software : Sample code mainly provided by chip vendors

So what are the advantages and disadvantages of these third-party software ? If you do not pay attention to the disadvantages and incorporate them, it may cause a big problem in the software development project. So, what should be attention to what it Let’s take a look in order.

Purchased software

Best when incorporated into a product usability is good to have, other companies are selling purchase the software is purchased software to get to. Is the way of it is various by the vendor purchase, often located in the source code It is a pattern to buy the resale rights that can be sold by incorporating the execution code generated from the development license and its source code of the product. Sometimes the source code is not provided and only the object code for embedding in the executable code is sold. If you write down the advantages and disadvantages of these purchased software, it would be as follows.

merit

  • The sales company guarantees the quality (the sales company conducts some tests)
  • Receive technical support from the sales company (such as responding to inquiries or training on how to use)
  • Software maintenance is also available in some cases

Demerit

  • Initial cost at the time of introduction and royalty cost at the time of sale are incurred
  • It is necessary to conclude an annual maintenance contract to receive maintenance and it costs money (10% of the initial cost)
  • Depending on the contract, the sales range of the product may be restricted (for example, limited to Asia).

Well, in short, because it is charged, the quality is good and technical support can be obtained, so the advantage is that it is easy to incorporate into your own software . The disadvantage is that it is expensive, but another thing to keep in mind is how long maintenance will be provided . Especially when purchasing software from overseas vendors, it is important to check the maintenance conditions carefully.

What kind of maintenance service will be provided and how long will it continue? Please note that some vendors offer conditions such that maintenance will be completed as early as 3 years after the software is released. It seems that the software that sells only the object code for which the source code cannot be purchased was adopted, and the maintenance was completed three years after the adoption, and then a serious security problem was discovered. When it comes to things, it’s quite difficult.

Open source software

Recently, the number of people incorporating open source software into their products has increased. I’m happy that it doesn’t cost much unlike the purchased software, but it will hurt if you use it too easily . The advantages and disadvantages of this open source software are as follows.

merit

  • Since there are many types of functions provided, it is highly likely that you will find the source code you need.
  • Since the source code is available, you can add functions and improve quality in-house.
  • If it is a standard product, it has abundant operation results in the market and you can expect withered software.

Demerit

  • As a general rule, quality is not guaranteed, so you need to guarantee the quality in-house.
  • In many cases, the technical information required for embedding must be collected in-house.
  • There are various license conditions and it takes time to confirm
  • I don’t know how long maintenance will be provided

At first glance , open source software seems to be easy to use because the source code is open to the public, but when it comes to actually incorporating it into your company’s products, it takes a lot of time and effort. First of all, no one guarantees quality, so you have to guarantee it yourself. Thorough in-house testing is required before release. Also, if a potential bug is found after the release , it is necessary to analyze the source code and fix the bug by yourself for maintenance . It is also necessary to confirm that the license conditions are diverse and that these license conditions do not conflict with each other. We recommend that you properly estimate the work man-hours required to deal with these matters, and then make a thorough preliminary examination, such as adopting if there is a merit in hiring.

Free software

What is free software ? Actually, the name free software does not exist in the general public, so this word was coined by Father Gutara. Software that can be used freely, but does not provide quality assurance or maintenance , but is not public software such as open source software, was called free software. Specifically, in order to use some kind of chip, the driver software and SDK (Software Development Kit) provided by the chip vendor free of charge . Some vendors offer it under the name of sample software. Let’s raise the advantages and disadvantages.

merit

  • In many cases, you can get technical support from the vendor (because you want to use the tip).
  • Since it is provided as source code, you can add functions and fix bugs in-house.
  • Don’t be bound by complicated licenses

Demerit

  • Quality is often not guaranteed
  • Maintenance may be carried out for a short period of time, but basically no maintenance is provided.

In most cases, free software is provided free of charge so that chip vendors can use their own chips, and the standard functions required to use the chips are built in. Although it works for the time being , even the chip vendor does not guarantee the quality by sufficient testing, so it is important to thoroughly test it in-house when using it. If you misunderstand that the software is provided by the chip vendor and use it without sufficient testing, you may suffer from unexpected potential bugs, so be careful.

There are various points to note about software made by other companies.

I briefly wrote down what my father Gutara was careful about when developing software when using software made by other companies, but there are quite a lot of items . You may have understood a little about the outline, but I plan to write an article that introduces each content a little more concretely after this.

However, I still don’t know what time it will be, but I plan to find time and write it down. Once you have written an article, you will see a list of specific articles below, so please refer to it if you are interested.

Posted by グータラ親父