25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

238 lines
16KB

  1. %&tex
  2. % \begin{itemize}
  3. % \item Extend the \ac{ridm} with a preliminary design phase, focussing on the physical part of \ac{cps}.
  4. % \item Refine the \ac{ridm} to make the design steps more explicit with improved instructions.
  5. % \item Develop and perform a case study that tests and evaluates the \ac{ridm} as a design method for the physical part of \ac{cps}.
  6. % \end{itemize}
  7. % Evaluation of the \ac{ridm} as a design method is done with the results of the case study as the following objectives:
  8. % \begin{itemize}
  9. % \item Assess the influence that applying the \ac{ridm} has on the design process for \ac{cps}.
  10. % \item Describe which adaptations are required for both the \ac{ridm} and the design method to establish a competent design process for \ac{cps}.
  11. % \end{itemize}
  12. \chapter{Conclusion}
  13. \label{chap:conclusion}
  14. % Intro: end goal
  15. \section{Case Study}
  16. % Reflect: Extend the RIDM with a preliminary design phase. This makes it possible develop a system for a given problem or idea, using this design method.
  17. \emph{Extend the \ac{ridm} with a preliminary design phase, focussing on the physical part of \ac{cps}.}\newline
  18. To get from a given problem or idea, to an initial design that can be used by the \ac{ridm}, a linear set of steps was added.
  19. This set consists of a problem definition, requirements and initial design step.
  20. These steps are based on the \ac{se}-approach.
  21. % Reflect: Refine the RIDM to make the execution of the different design steps explicit and unambiguous.
  22. \emph{Refine the \ac{ridm} to make the design steps more explicit with improved instructions.}\newline
  23. To perform a reproducible evaluation of the \ac{ridm}, the method of the different design steps were defined more explicit.
  24. The \ac{ridm} specifies the development cycle and the variable-detail approach with sufficient detail, making them ready to use.
  25. How to define features and tests for the development cycle, were not as clearly defined.
  26. Two design steps were added in this thesis that describe a method to define the set of features and create a test protocol.
  27. Furthermore, a feature selection step was added to aid with the development.
  28. % Reflect: Develop and perform a case study that tests and evaluates the RIDM.
  29. \emph{Develop and perform a case study that tests and evaluates the \ac{ridm} as a design method for the physical part of \ac{cps}.}\newline
  30. The case study consisted of the development of a \emph{Tweet on a Whiteboard} writer.
  31. This development is performed according to the design plan, that was the result of the first two research objectives.
  32. The \emph{tweet on a whiteboard} writer was chosen as subject of design based on a set of requirements.
  33. The aim of these requirements is to find a subject of design that would optimize the evaluation of the \ac{ridm}.
  34. A list of questions was formed to monitor the progress of the case study.
  35. The questions are answered before and after each step of the design process.
  36. The list was created to ensure a consistent flow of information that can be used to compare the expected result with the actual result of each step.
  37. \section{\acl{ridm}}
  38. \emph{Assess the influence that applying the \ac{ridm} has on the design process for \ac{cps}.}\newline
  39. %De kern van het RIDM bestaat uit de development cycle en de variable-detail approach.
  40. %Beide hebben hun eigen specifieke invloed op het design process.
  41. The core of the \ac{ridm} consists of the development cycle and the variable-detail approach.
  42. Both of these methods have specific influence on the design process.
  43. The development cycle introduces a feature-based approach to the development process.
  44. With the development cycle the system is implemented feature by feature.
  45. This requires the development team to split the functionality of the system into features.
  46. It forces the developers to go through the design in a structured manner.
  47. Furthermore, to determine in what order the features are implemented, the developers must establish the \emph{cost of change} and \emph{chance of failure}-metric for each feature.
  48. With the \emph{chance of failure} and \emph{cost of change} metrics, the features are order with the goal to reduce the impact of a design failure.
  49. Even though the case study only applied the feature selection twice, it proved itself useful by selecting the end-effector feature first.
  50. By prioritizing the end-effector, its failure had only a minor impact on the design.
  51. During each iteration of the development cycle, the selected feature is implemented according to the variable-detail approach.
  52. However, the ability to assess the influence of the variable-detail approach is limited by the absence of tooling for model orginization and testing.
  53. Without the tooling it is difficult to switch between model versions, undo design changes or run automated testing.
  54. Furthermore, as the development did not distinct between design and model, the models used often contained more detail than strictly necessary.
  55. Both these limitations resulted in models that would surpase the minimal required level of detail; therefore, it is not possible to assess whether the minimum required level of detail can be established with passing all the tests.
  56. Nevertheless, the variable-detail approach introduces a step wise addition of detail that enforces a structered method similar to the development cycle.
  57. It is unfortunate that the development cycle did not include a structured method to define the features nor their order of implementation.
  58. The performance of the variable-detail approach is currently hindered by the absence of tooling.
  59. Consequently, this limits the accuracy of the assessment on the actual influence of the \ac{ridm}.
  60. Notwithstanding these limitations, the results of the case study suggest that the structured approach of \ac{ridm} reduces the impact of design failures and reduces the development cost for \ac{cps} design.
  61. \emph{Describe which adaptations are required for both the \ac{ridm} and the design method to establish a competent design process for \ac{cps}.}\newline
  62. At the start of this thesis it was clear that the \ac{ridm} required adaptations to make it suitable for the development of physical part of a \ac{cps}.
  63. A new design method was created by adding a preparation phase and refining the steps that \ac{ridm} provided.
  64. The case study showed that it is possible to create a set of features and implement those features with the new design method.
  65. However, the adaptations show variable degrees of success.
  66. %When designing from scratch the preparation phase fullfills a far more important role than I initialy expected.
  67. In the design method in this thesis, the goal of the preparation phase is to define the features of the system.
  68. These features stem from spliting the functionality and each of the feature is then developed using the \ac{ridm}.
  69. However, the functionality of the system is dictated by the design choices made in the system.
  70. In the case of developing systems from scratch, therefore, it seems that the design steps of the preparation phase play a critical role in the success of the design process.
  71. The \ac{ridm} must have a design process to get from the problem description to the features or the \ac{ridm} must be incorporated into an existing design model, in order to use the \ac{ridm} as a design process for \ac{cps}.
  72. In either situation, the functionality, components and requirements of the system must be incorporated together in the design.
  73. These three elements together form the features of the system that are implemented using the \ac{ridm}.
  74. The evaluation of the case study suggest that the feature selection method described in this thesis is an effective approach to establish the order of implementation.
  75. The current metrics used to establish the order leave much room for improvement.
  76. Both the \emph{cost of change} and the \emph{chance of failure} metric must be improved in order to be used more reliable.
  77. Apart from the lack of preparation phase, the \ac{ridm} has to a couple of obstacles to fully utilize the advantages that it provides.
  78. The models from the development cycle and the variable-detail approach must inherit all their properties from the design documents.
  79. To make design changes easier, there must be a machine readable database for all design parameters, where all models download the required parameters from.
  80. Especially the variable-detail approach is currently hindered by the lack of tooling.
  81. This is even more apparent when the model is correctly separated from the design, as it allows for more specific models.
  82. This results in more models that are smaller.
  83. The large set of models improves the testing results, but tooling for automated testing is required to handle the increasing amount of models.
  84. Furthermore, to deal with the large set of models, the modelling software must be compatible with version control.
  85. %Er moet een preparation phase komen
  86. %%Software en hardware mogen niet los van elkaar gezien worden.
  87. %%Meenemen dat een feature uit functie, component en requirement bestaat.
  88. %Improve feature selection
  89. %% Betere berekening van coc en cof.
  90. %Organize development cycle
  91. %%Deze moet rekening houden met het verschil tussen design en methode
  92. %%Tooling voor design parameters
  93. %%Version control
  94. %Improve testing.
  95. %% De modellen moeten automatisch te testen zijn.
  96. %Omdat het RIDM geen complete methode aandraagt om dit gestructureerd te doen is in deze thesis een lineare set aan ontwikkelings stappen gebruikt.
  97. A method to obtain the features for the system is not provided by the \ac{ridm}.
  98. Therefore, in this thesis a linear set of design steps is used instead.
  99. %Helaas boden deze stappen te weinig structuur om tot een degelijke set aan features te komen.
  100. Although the case study shows a set of features that are partially implemented, the evaluation shows that the current method is flawed.
  101. %De feature based approach kan daadwerkelijk bijdragen aan het ontwerpproces, maar dan moet het RIDM een structurele methode bevatten om volledig tot zijn recht te komen.
  102. Further research should be carried out to improve the estimation for the \emph{cost of change} and \emph{chance of failure}.
  103. %With each cycle a single feature is implemented and tested.
  104. %The most obvious finding to emerge from this study is that the \ac{ridm} without any additions is not a valid design method.
  105. %The findings of the case study suggest that a worthwhile solution is to make \ac{ridm} part of a existing design method.
  106. %The existing method provides a basis wherein the \ac{ridm} can come to its own, which is to tackle complexity.
  107. %To answer this question I must put emphasis on the difference between the design and modelling process.
  108. %The design process embodies the development of a product or system as an answer to a problem or need.
  109. %The modelling process allows the developers to gain insight of the inner workings of a product.
  110. %By creating and simulating models for the system under design, the modelling process improves the design process tremendously.
  111. %Looking at the \ac{ridm}, the fact that the first research objective is to prepend design steps to the \ac{ridm} highlights its shortcoming as a design method.
  112. %
  113. %Despite its exploratory nature, the case study offers some insight into the \ac{ridm} as a technique for rapid prototyping.
  114. %The segmentation of the design provides a structured and organized approach.
  115. %Moreover, the in this thesis proposed feature selection procedure contribute to the risk management of the development.
  116. %By implementing high risk-per-time features first, the design problems are more likely to be found in the early stage of the design.
  117. %
  118. %The variable-detail approach is promising for the implementation of individual features.
  119. %Similar to the design begin split in features, this approach implements one feature as multiple levels of detail.
  120. %One benefit is that the structured addition of detail enables intermediate testing, allowing the development to continue when all tests are satisfied.
  121. %Another benefit is that having one model available in different level of detail is that these models can be reused with the minimum detail possible.
  122. %This keeps the complexity of models to a minimum and can be useful to improve simulation speed of large systems.
  123. %The major limitation in this thesis is that the model represented the design.
  124. %Therefore, the stopping at a certain level of detail or reusing lower detail models did not occur during the case study.
  125. %Notwithstanding these limitations, the variable-detail approach does offer a structured approach providing feedback during the implementation.
  126. %This thesis was designed to assess whether the physical part of \ac{cps} can be developed using the \ac{ridm}.
  127. %Whereby the \ac{ridm} aims to reduce the complexity of a system design.
  128. %The requirement for the case study was to develop a system with sufficient complexity, to apply the \ac{ridm} as intended.
  129. %Being focused on the physical part of the design, this thesis overlooks the significance of software in a \ac{cps}.
  130. %Especially because the complexity of a system is made possible with software.
  131. %
  132. %A design method regarding the full life cycle of \ac{cps}, must therefore incorporate both the computation and physical part of \ac{cps}.
  133. %To use the advantages of the \ac{ridm} in such a design method, there must be a clear distinction between the functions, requirements and components.
  134. %Where possibly each of these three require a different design approach.
  135. %The explicit focus on physical part in the design process, caused a neglect toward the computation part of a \ac{cps}.
  136. %
  137. %The design is the specification of a system, it contains the plans, drawings, documentation, etc.
  138. %A model represent portions of that design, depending on the goal purpose of the model.
  139. %Both methods, from this thesis and the \ac{ridm}, make no adequate distinction between the design and the model.
  140. %As the case study by \autocite{broenink_rapid_2019} is performed with existing hardware, the design is already finished.
  141. %This highlights the shortcoming of the \ac{ridm} as it does model, and not design a system.
  142. %
  143. %The method in this thesis introduces additional steps to implement the design process.
  144. %Although an initial design is produced, the design is implemented as a model.
  145. %
  146. %The point is, the design and the model are two separate components of the design process.
  147. %The fact that this thesis starts with adding half a \ac{se} approach shows that the design aspect lacks in the current method.
  148. %However, both case studies suggest that the \ac{ridm} is a good approach for implementing that design.
  149. %
  150. %This brings me to the last questions:\\
  151. %It is clear that there has to be a design process added, which must implement the different elements of a feature: component, function, requirement.
  152. % Answer: Which adaptations are required to make the design method by Broenink and Broenink (2019) suitable for developing the computation and physical part of CPS?
  153. \section{Recommendations}
  154. \begin{itemize}
  155. \item To use the variable-detail approach in an optimal way, there are two issues that must be addressed.
  156. The first one is the continuous testing of dynamic models.
  157. In a similar approach to unit testing in software, it must be possible to apply changes to a model and check whether everything still works as expected.
  158. A big issue here is the two-port behavior of dynamic models in comparison with software functions.
  159. When a software function is called with given parameters, it returns a specific result.
  160. This result is independent of the program this function is part of.
  161. In contrary, a dynamic model is not independent.
  162. The step response of a electro motor is significantly different if a fly-wheel is attached or not.
  163. Unit testing on sub-models in a dynamic model is therefore not reliable, making intermediate testing of the model difficult.
  164. The second issue is the organization of model versions.
  165. The benefit of switching between different sub-models is discussed in this thesis.
  166. However, switching between different detail versions is difficult and labor intensive.
  167. \end{itemize}