# Minimum Viable Products for Internet of Things Applications: Common Pitfalls and Practices
## 4 Results
### RQ2: What Are the Challenges Associated with MVP Engineering in Internet of Things Start-Ups?
\begin{table}
\begin{tabular}{c l l} \hline \hline \multirow{3}{*}{**Management**} & C01 - Evaluation and selection of third party vendors & \\  & C03 - Acquiring suitable hardware engineers & \\  & C06 - Insufficient funding for full-scale prototyping & C04 - Marketing the product with limited budget \\  & C07 - Pressure of time to market & C09 - Underestimating manufacturing cost \\  & C08 - Delay due to late shipping from third-party vendors & \\ \hline
**Teamwork** & C05 - Team communication & \\ \hline
**Requirement** & C02 - Finding actual needs and demands & \\  & C24 - Fuzzy and evolving domain-specific constraints & \\ \hline \multirow{3}{*}{**Design**} & C10 - Choosing right hardware platforms & C11 - Manufacturing cost effective design \\  & C13 - Openness and access to external support of the design & C17 - Finding the right balance between \\  & C14 - Compliance with quality standards & profitable and reliable hardware modules \\  & C15 - Dependence on third-party quality & \\ \hline \multirow{3}{*}{**Implementation**} & C12 - Dealing with complex hardware design & \\  & C18 - Complexity of integrating software and hardware & \\  & C19 - Unavailability of hardware components & \\  & C20 - Finding the right open-source software components & \\ \hline \multirow{3}{*}{**Testing**} & C21 - Testing non-functional attributes & C23 - Quality assurance of evolving hardware, \\  & C22 - Real-world environment for beta testing & firmware and software parts \\ \hline \multicolumn{3}{c}{Early stages} & Later stages \\ \hline \hline \end{tabular}
\end{table} 
Table 4: Classifying challenges with Internet of Things MVPs. **Requirements** are typically challenging when hardware product in nature is quality-focused but the start-up context requires also the product development change-prone under multiple influences. Ensuring hardware products comply with regulatory requirements is a complex and ever-changing process. The process implies a significant administrative component that affects the design, development and testing of a hardware component. Requirement management might involve domain experts, as in the healthcare sector in Case E:  
_\"Since this is a medical company, there are very strong requirements for ISO certification and standards. So we will now introduce a process management tool to describe and create processes. Now it's very ad-hoc. We are not so many either, so there is no need to have a rigid system or system at all. Because of the medical/regulatory, we must follow certain processes that must be in place\"_ (Case E)  
In a start-up context, the uncertainty in start-ups' environment probably requires them to be more agile than is suggested in existing Agile approaches and frameworks. Uncertainty could come from market factors, that is uncertainty about customers' demands and level of satisfaction with products and from technological factors, that is requests to upgrade products due to new technologies. In most of our cases, start-ups defined what features to include using market-driven approaches. Hence, a set of requirements became more or less clear after performing market research. **Design**: Internet of Things applications often involve much upfront design. In the context of a start-up, the design of a hardware-based product involves consideration of both its hardware and software components. A relevant design issue can be, for instance, the time required to choose a suitable hardware platform (C10). Complexity might arise from the fact that start-ups need to provide a product with more advanced features than the existing products in the market (C12). In Case A, the engineers took a long time to discuss and select an Internet of Things solution among available platforms, that is Arduino, Raspberry, ESP8266, Beaglebone Black, Particle.io and Intel Edison. This selection is made even more difficult by the fast rate of change in hardware technology. For start-ups that build their products from scratch, the complexity of design is much more daunting.