Serpentines of the Julier Pass road

What are the Advantages and Disadvantages of Various Development Strategies?

Embedded Development Strategies: The Details

Time to Read 11 min

Modified

Working with an engineering service provider for complete projects or having them join the client's team is not necessarily the best choice for everyone. Sometimes freelancing, developing together with an assembler, off-shoring or hiring your own developers are better choices. In this post, we want to take an honest look at the different options for product and embedded software development.

In addition to the summary, you find a detailed comparison of the available strategies and partners here:

External Project: What are the Advantages and Disadvantages in Detail?

An embedded engineering company covers both software and hardware development. This can take two forms:

  1. as a classic external project, which outside of the specification phase and the integration and validation phases considerably frees up the customer resources
  2. as a co-development or co-creation project in a mixed team as below

Advantages External Project

  • Minimal management effort: planning, project management and quality assurance are included in the project
    • through the project managers and processes of the engineering company the client's resources are relieved of these tasks
    • management work is limited to a few interfaces to the project, especially when using classic project execution
  • No cost and deadline risks: fixed price is possible
    • the customer has no risk that the effort or the deadline will not be met (engineering companies that do not have their estimates under control disappear relatively quickly...)
  • No lock-in
    • since all intellectual property goes back to the customer, he is free to choose the partners
  • Access to expertise of the entire engineering office
    • as the team can always call in other experts within the engineering office, the customer gets not only the knowledge of the project team, but that of the whole engineering office
  • Innovation/ external ideas
    • an external view of possible solutions and the transfer of fundamental ideas from other industries results in a high degree of innovation
  • Fluctuations in demand
    • a development team of almost any size can be established and dissolved rapidly, even with the same engineers who have already carried out the last project
  • Maintenance and upgrades during the entire life cycle of the project are ensured
    • engineering companies have long-term employees, who are still there after ten years: the customer "rents" a team of developers, so to speak
    • good engineering companies have clear processes and tools for clean documentation and for efficient training of the client's staff when transferring the project back

Disadvantages External Project

  • Familiarization with domain knowledge
    • the external partner's engineers usually have to acquire the knowledge of the industry, but typically this is one of the engineers' core competencies (practice makes perfect), so it happens efficiently
  • Specification and back transfer
    • the project must be specified in sufficient detail for a project award
      unless the customer uses full agile execution or a a mixed team
    • if desired, the transfer back to the customer at the end of the project requires some effort
  • The whole team is not always on site
    • this aspect is strongly put into perspective by digitalization and remote access, especially in post-COVID times
    • clear intermediate goals and intermediate results can have more impact than on-site control

Mixed Team: What are the Advantages and Disadvantages in Detail?

An embedded engineering company covers as service provider both software and hardware development. The shared team is the second form of collaboration:

  1. as a classical external project as above
  2. as a co-development or co-creation project, where one to several engineers of the engineering office work together in the mixed team of the customer and also with other service providers

Advantages Mixed Team

  • No lock-in
    • as all intellectual property remains with the customer
  • Access to expertise of the entire engineering office
    • as the team within the engineering office can always call on other experts, the customer gets not only the knowledge of the project team, but that of the entire engineering office
  • Innovation/ external ideas
    • an external view of possible solutions and the transfer of basic ideas from other industries results in a high degree of innovation
  • Fluctuations in demand
    • a development team of almost any size can be established and dissolved rapidly, even with the same engineers who have already carried out the last project
  • Maintenance and upgrades during the entire life cycle of the project are ensured
    • engineering companies have long-term employees, who are still there after ten years

Often it is also seen as an advantage that for mixed teams "the work must not be precisely specified", i.e. that there is no effort for specifications. This is a misconception in that the effort to define the work typically happens permanently and in an unstructured way and thus simply vanishes into the project work.

Disadvantages Mixed Team

  • Management effort from planning, project management and quality assurance
    • project managers and processes must be available
  • Familiarization with domain knowledge
    • engineers have to acquire industry knowledge, but typically this is one of the engineers' core competencies (practice makes perfect), so it happens efficiently
  • The whole team is not always on site
    • this aspect is strongly put into perspective by digitalization and remote access, especially in post-COVID times
  • Cost and deadline risks: no fixed price possible
    • the customer bears the risk himself if the cost or deadline is not met

Own Development Team: What are the Advantages and Disadvantages in Detail?

For many companies, this is seen as the ideal way, but it is also not free of potholes.

Advantages In-House Development Team

  • The evident cost are lower
    • the cost for own engineers are lower, if you can really use them to full capacity (maybe not by as much as you think)
  • The domain knowledge does not have to be acquired
    • as long as there is no fluctuation, the acquired industry knowledge is retained from one development project to another
  • Maintenance and upgrades throughout the lifecycle of the project are ensured
    • with own processes for clean documentation
    • however, this documentation often becomes a victim of the time pressure at the start of production

Disadvantages In-House Development Team

  • Management effort from planning, project management and quality assurance
    • project managers and processes must be available
  • Enough work for the necessary specialists
    • embedded development has become a very broad field in recent years, which can no longer be mastered in its entirety by one or two developers
  • Legacy projects delay development
    • as soon as the production or service department calls, current product development projects tend to get put on the backburner
  • Cost and deadline risks (time-to-market)
    • the incentive to meet effort and deadline targets is often smaller internally than with external partners
  • Fluctuations in demand
    • are difficult to balance with a fixed team
  • Company myopia
    • it happens that internal, closed teams lose their creativity and ability to innovate over time

An in-house development team is the best solution for covering the core competencies, if these really lie in the embedded area. Here, as in IT, it is necessary to check whether a strategic partnership is not an even better solution. With the product development executed as an external project or in mixed teams .

EEMS (Electronic Engineering and Manufacturing Services): What are the Advantages and Disadvantages in Detail?

Many EMS (Electronic Manufacturing Services) also offer development services.

Advantages EEMS

  • Low management effort due to getting development and production from a single source
    • however, engineering companies can also act as prime contractors, which has the advantage that the optimal partner for production can be selected depending on the product
  • No cost and deadline risks: fixed price is possible
    • the customer has no risk that the effort or the deadline will not be met
  • Maintenance and enhancements during the entire life cycle of the project are ensured
    • EEMS have long-term employees, who are still there after ten years

Disadvantages EEMS

  • Lock-in, directly or indirectly
    • directly by keeping the intellectual property with the contractor, indirectly by optimizing the product to the contractor's own production capabilities and thus making it more difficult to transfer to another producer
  • Development is sometimes only a stopgap or a means of utilizing the company's own production capacity
    • it happens that development is not taken seriously enough
    • also in the depth and breadth of the required knowledge
  • Familiarization with domain knowledge
    • engineers have to acquire industry knowledge
  • in addition, most of the disadvantages of external projects apply

University of Applied Sciences (Fachhochschule): What are the Advantages and Disadvantages in Detail?

Many universities of applied sciences offer development services, mostly labeled as "applied research", which in the specific case does not have to differ from normal development.

Advantages University of Applied Sciences

  • Evident cost can be lower
    • cost is often very low, because the universities of applied sciences incl. their infrastructure are financed by the state
  • Access to expertise of the institute
    • as the team within the institute can consult other experts, the customer gets not only the knowledge of the project team, but the knowledge of the whole institute, possibly the whole university of applied sciences
  • Innovation/ external ideas
    • an external view on possible solutions and the transfer of basic ideas from other industries results in a high degree of innovation
  • No lock-in
    • since all intellectual property remains with the customer
  • Employment of engineers
    • it can be an advantage if the assistants are willing to move to the company afterwards

Disadvantages University of Applied Sciences

  • Maintenance and upgrades during the entire life cycle of the project are difficult
    • the assistants who carry out the project are usually leaving within a short time
  • Industrialization & professionalism is usually only a second thought, the same can apply to deadlines
    • the assistants who carry out the projects are graduates with no experience of how to bring a product to production maturity
    • the professors themselves often have an academic background, where this knowledge is also missing
  • Expertise
    • the real expertise and performance of the assistants is often only visible after a few months
  • Familiarization with domain knowledge
    • the engineers usually have to acquire the domain knowledge
  • Specification and back transfer
    • the project must be sufficiently well specified for a project award
    • if desired, the transfer back to the customer at the end of the project requires some effort

Freelancer: What are the Advantages and Disadvantages in Detail?

To compensate for the disadvantages of not being able to adapt to peaks in demand, and to obtain additional knowledge, freelancers can be brought in (body leasing).

Advantages Freelancer

  • Evident costs can be lower
    • the costs are lower depending on the hourly rate, with full cost accounting maybe not as much as you think
  • Fluctuations in demand
    • a development team of almost any size can be established and dissolved rapidly, even with the same engineers who have already carried out the last project
  • On site and in our IT system
    • visibility and control are at least theoretically given: "He does exactly what I want"; this aspect is strongly put into perspective by digitalization and remote access, especially in post-COVID times
    • clear intermediate goals and intermediate results can have more impact than on-site control

Disadvantages Freelancer

  • Cost and deadline risks (time-to-market)
    • effort and deadline targets are not part of the contract (attendance is charged)
  • Expertise
    • the true expertise and performance often is only apparent after a few months
  • Familiarization with domain knowledge
    • engineers have to acquire industry knowledge, but typically this is one of the freelancers' core competencies (practice makes perfect), so it happens efficiently
  • Maintenance and upgrades can be difficult
    • if good documentation and knowledge transfer is not taken care of during the project, the knowledge leaves the company together with the freelancer without documentation
    • in two years another engineer comes from the same contractor

Near-Shoring/ Off-Shoring: What are the Advantages and Disadvantages in Detail?

Mainly to avoid the cost, projects are outsourced nearby (typically Eastern Europe) or worldwide (typically East Asia).

Advantages Near-Shoring/ Off-Shoring

  • The evident cost are lower to even massively lower
    • the long-term costs (TCO: Total Cost of Ownership) including support and quality assurance at a distance and product maintenance can again eat away at these short-term advantages

Disadvantages Near-Shoring/ Off-Shoring

  • Distance, also cultural
    • different understandings of e.g. quality and time can render such projects interesting
  • Maintenance and upgrades during the entire life cycle of the project
    • in two years, there is a big chance that no one will be there for queries anymore, sometimes whole teams change already during the project
  • Expertise
    • it is not always easy to ensure that the required embedded knowledge and seniority are available for the project
  • Familiarization with domain knowledge
    • engineers have to acquire industry knowledge
  • The whole team is not always on site
    • this aspect is strongly put into perspective by digitalization and remote access, especially in post-COVID times

The development strategy you choose has a major impact on the success and lifecycle costs of your product development.

Solcept develops electronics and software using several of these models. If you have questions about the different strategies, join us for a workshop.

Andreas Stucki

Do you have additional questions? Do you have a different opinion? If so, email me or comment your thoughts below!

Author

Comments

No Comments

What is Your Opinion?

Projects? Ideas? Questions? Let's do a free initial workshop!