In this section, we present eight patterns that resulted from the procedure shown in the
Section 4.3.
Figure 1 shows the two categories (time structure–strategic framework and planning content) with the corresponding patterns. As already mentioned in
Section 4.2, a distinction is made between two perspectives, which are considered in the patterns. Category A, time structure–strategic framework, is composed of the following three patterns: PROJECT SPECIFIC MILESTONES, VALIDATION MILESTONES and DELIVERY DATES. The procedure selected indicates that in category A no distinction is necessary for the respective perspective and therefore category A contains patterns that are valid for both views. A distinction has been made for category B, planning content, and thus category B includes patterns that have been developed explicitly for the respective view. Category B contains the following three patterns from the HPCP’s point of view: HARDWARE STRUCTURE, BASIS-SOFTWARE STRUCTURE and SOFTWARE COMPONENTS. From SWC’s view there are the two following patterns: SOFTWARE COMPONENT STRUCTURE and PARTNER FUNCTION STRUCTURE.
5.1. Time Structure–Strategic Framework
The first category, time structure–strategic framework, consists of three patterns that all refer to different types of milestones or deadlines and that all influence the release planning process in the automotive industry and thus represent a time schedule. There are types of milestones that characterize vehicle development and each type has its significance and influence on the development process. The various milestones that form the time structure are explained below in pattern form. The three presented patterns are valid for both views, as the strategic framework is binding for all development projects and therefore no distinction is necessary.
5.1.1. Project-Specific Milestones
Context: The project-specific milestones represent key milestones that emerge from each OEM’s product development process projected on the development project. These milestones contain required targets that have to be met to pass the gates. The project-specific development procedure has to be aligned to the required content of each milestone and has to be considered accordingly in the release planning. The automotive industry is a strictly regulated domain, which has to comply with numerous standards and legislations. For this reason, several milestones characterize the vehicle development and the associated release planning. These pre-defined milestones represent general dates that have to be considered and passed during the development process.
Problem: The strategic framework forms a time structure, which has to be considered during the initial creation of the release plan. From the project-specific milestones, a selection has to be made of which milestones are relevant for release planning, since the same milestones are not required for every development project.
Solution: For the time structure required in release planning, the project-specific milestones have to be identified first and a selection has to be made. The selection of project-specific milestones will be transferred to the release plan in a further step.
Solution sketch: The following
Figure 2 shows all three patterns that are required for the transfer of the strategic framework. The activities relevant to this pattern PROJECT-SPECIFIC MILESTONES are marked in grey. Furthermore,
Figure 2 shows the difference between the two perspectives (HPCP view and SWC view) and the respective activities. The holistic representation of all three patterns and the two perspectives makes both the relationships and the classification of the patterns in the overall context visible.
Result: The project-specific milestones form a generic basis for vehicle development and always relate to a concrete vehicle project. These milestones are planned specifically for the project and represent deadlines as a time structure in the release plan. These milestones have a major influence on release planning, as they are a rigid and time-based requirement that has to be adhered to. As a result, development activities are limited in time and the time frame for flexible planning is heavily affected. On the other hand, this predefined structure is necessary in vehicle development to ensure a certain level of commitment with regard to legal requirements and quality standards. Furthermore, due to the cross-linking and interdependence of the scopes, this framework is indispensable in order to achieve an appropriate alignment and coordination of the scopes. Each vehicle OEM has its own project-specific milestones. However, there are common basic features between the OEMs, which are designed differently depending on the philosophy and circumstances, and the result can therefore vary.
Related patterns: The PROJECT-SPECIFIC MILESTONES provide a basis and a mandatory time framework for all development projects. For this reason, there is a relationship to all subsequent patterns.
Example: Project-specific milestones represent general main milestones such as the start of production (SOP), which are defined for the vehicle to be developed.
Figure 3 shows an example of various project-specific milestones with the corresponding vehicle development process divided into different phases.
These milestones are mandatory for all projects and represent the first pattern of the strategic framework.
5.1.2. Validation Milestones
Context: The development of series production vehicles is achieved by successively building various test models. These prototype vehicles or testing vehicles follow a specific purpose and are characterized by respective testing. The testing associated with these structures takes place with a different group of participants. In addition, these prototypes are available in different versions and range from aggregate carriers to pre-series vehicles. The tests associated with these vehicles take place with a different group of participants. First, there are tests with management participation, which serve an acceptance purpose. Second, tests are of a purely developmental character and are performed with developers. Some types of testing take place under different climatic conditions (e.g. hot and cold ambient testing) and are conducted under different environmental conditions depending on the requirements of development scope (e.g. squeak and rattle testing and high-altitude testing). Furthermore, the test specific milestones include testing such as test drives in urban traffic, under maximal performance operation and country-specific testing.
Problem: The tests to be carried out are linked to climatic conditions and are therefore seasonally limited. This leads to an increasing complexity in the coordination and execution of the different tests with corresponding vehicles. The dependence on seasonal climatic conditions has to be incorporated at an early stage in the planning of the development scope. In addition, dependencies on other systems with different levels of maturity, which are not the focus of the respective testing, complicate consideration in the release plan. Due to climatic conditions and the time available, tests are carried out in parallel and are anticyclical. On the one hand, this saves time and, on the other hand, makes debugging more difficult when cold and hot ambient testing take place simultaneously. The preparation and post-processing of the vehicles, as well as transport routes to the test locations or even the import and export by customs, are activities that require a certain amount of time and should also be considered in the release plan.
Solution: Both the structure of different testing vehicles and the associated test planning, including hot and cold ambient testing as well as all other testing types, are first identified and then incorporated into the release plan.
Solution sketch: The transfer of different prototypes and the validation milestones to the appropriate release plan is marked in grey in the solution sketch (see
Figure 4).
Result: On the one hand, the validation milestones represent the different testing vehicles and serve to coordinate necessary testing with activities to be implemented. The structure of the testing vehicles is project-specific and has a corresponding effect on the test planning. These milestones are a further part of the strategic framework and control the upcoming development activities accordingly. As a result of this process step, both the prototypes and the validation milestones are now included in the release plan. The validation milestones are defined for a specific vehicle project, and since each OEM has its own milestones, the result can differ.
Related patterns: The validation milestones are based on the PROJECT SPECIFIC MILESTONES and are defined accordingly.
Example:
Figure 5 sketches an example of the different testing vehicles with corresponding testing in the overall context.
5.1.3. Delivery Dates
Context: The ECU development process and its functional scope follow a release management system and it is divided into a certain number of releases, which are based on the product development process of each OEM. The integration and qualification of the ECU network with associated software is defined as an integration process that is the responsibility of release management. The number of releases and the corresponding artifact required are defined specifically for each OEM. At these specified dates, all parties involved deliver a new version of the product with the requested depth of testing. The depth of testing can vary depending on the product and may include different levels of testing. In the subsequent integration process, the delivered artifacts are subjected to further tests. Furthermore, planned release levels are observed in this release process.
Problem: The delivery dates are determined specific to the project and are already specified for the development projects by the OEM. These milestones represent a mandatory time framework that has to be considered in the development of the ECUs as well as of functions. They therefore represent dates that have to be reflected in the release plan and control the development process. The milestones therefore have a great influence on the flexible organization of the development process.
Solution: The delivery dates already set have to be procured first and transferred to the respective release plan for the corresponding development project. They represent dates when artifacts have to be provided in order to participate in the respective release.
Solution sketch: The transfer of the delivery dates with the corresponding activities to the appropriate release plan is marked in grey in the solution sketch (see
Figure 6).
Result: The delivery dates ensure the bundling of required artifacts and its integration into the overall infrastructure of the development project. These deadlines are a constraint and the development of the respective product has to be aligned accordingly in order that the overall functionality can be integrated and tested on these deadlines. This achieves an early validation of the hardware as well as software scopes in the overall network, in order to take measures in time to ensure the required quality for SOP.
Related patterns: The delivery dates are based on both PROJECT-SPECIFIC MILESTONES and VALIDATION MILESTONES and are defined accordingly.
Example:Figure 7 shows examples of different delivery dates in the context of vehicle development.
Next, category B planning content is introduced.
5.2. Planning Content
The second category,
planning content, contains an approach for structuring the content of the respective planning scope from both the hardware and software component point of view. In this section, we present one pattern, namely HARDWARE STRUCTURE, of this category (see
Figure 1). There are separate patterns for each point of view, since each perspective focuses on a different planning level, resulting in a different planning content. The scope to be planned in a release plan strongly depends on the use case and that is why a distinction in this category is made. The first pilot project (HPCP) shows the content of an ECU release plan from a hardware perspective. The software component perspective is represented by the second project and contains planning contents on a detailed level. First, the patterns for the HPCP point of view are presented. The patterns of the software functions’ perspective follow afterwards.
First, the patterns for HPCPs are presentend.
5.2.1. Hardware Structure
Context: With the use of control units, the processing of sensor signals can be carried out via control algorithms by an adapted actuation of actuators. Essentially, control units in a vehicle consist of the components hardware, software and a sensor-actuator component. The hardware consists of a microcontroller or processor with required peripherals, a power supply, and a sensor-actuator control. At the beginning of series development, the hardware is at a high level of development and is therefore presented in the form of a representative sample.
Problem: At the beginning of series development, a high level of hardware development is required since the hardware serves as the basic framework for the basic software and software components that are built on it. Nevertheless, a partial scope of development activities remains, which has to be included in the release plan.
Solution: The hardware must first be identified and can be divided into further elements that are then transferred to the release plan. The development of the hardware is well advanced at the beginning of the series development and, for this reason, only the remaining development scope is listed in the release plan.
Solution sketch: The transfer of the hardware as part of the content structure of a release plan is shown in the solution sketch (see
Figure 8).
Result: Hardware as part of the content structure of the control unit is often built on platforms provided by a supplier. Due to the high level of development at the beginning of series development, no high planning effort is required for the hardware. The scopes that are nevertheless further developed or updated have an impact on the basic software as well as on the software components. In order to attain an overview of these effects and to be able to communicate them, the remaining development scopes are listed in the plan.
Example: The following
Figure 9 provides an example of the hardware as part of an ECU in the release plan.
Related patterns: The hardware as a part of the content structure of an ECU is developed according to established project-specific milestones. For this reason, there is a relationship to PROJECT SPECIFIC MILESTONES.
5.2.2. Basis Software Structure
Context: The basic software of an ECU, similar to the associated hardware, has to have a certain software status at the beginning of series development, so that a basic functionality such as hardware-related functions like drivers and memory management are guaranteed. Furthermore, basic software includes scopes that are further developed in the process of development or represent new developments. This includes, for example, functions such as the communication connection (internal/external) and bus systems used. Further components of the basic software, listed in the release plan, are operating system functions such as diagnostic capability, safety features and update options. These basic functionalities grow with the simultaneous development of the software components and are stated in the release plan. The hardware-related scopes that have already been developed at the beginning are not included in the release plan.
Problem: The basic software has to provide a certain basic functionality similar to the hardware at the beginning of the series development, so that a basis for the software components based on it exists. Changes that affect the basic software are linked to defined milestones that are communicated to those involved.
Solution: The scope of the basic software, representing development activities in the further process of series development, has to be identified first and can be specified in more detail. The remaining development activities are then transferred to the release plan.
Solution sketch: The transfer of the basic software as an object of the content structure of a release plan is shown in grey in the solution sketch (see
Figure 10).
Result: The basic software that is used to configure a network of ECUs is another element of the planning scope of an ECU and is included in the release plan with certain scopes. The basic software forms the foundation for the software components based on it and provides the connection between hardware and software components. It is the responsibility of each OEM to decide which scope of the basic software is explicitly included in the release plan and thus planned.
Example: The following
Figure 11 shows an example of how the basic software can be listed with possible scopes in the release plan of an ECU.
Related patterns: The basic software as part of the content structure of an HPCP is the foundation for the pattern SOFTWARE COMPONENTS and is the prerequisite for the working software components. The basic software is in its functionality directly connected to the hardware and therefore has a direct relationship to the pattern HARDWARE STRUCTURE.
5.2.3. Software Components
Context: Software components are located on a control unit that perform certain functions through signal processing. They are organized in independent organizational units of the application software of an ECU. These components impose specific and different requirements on the ECU in order to be executable.
Problem: Individual software components of an ECU are listed and defined in the software architecture. These software components are developed during series development and require certain access mechanisms as well as connection specifications to the basic software. Implementing the requirements of the software components influences the subsequent release planning of an HPCP. The requirements of software components affect the content of releases and influence the integration process and the associated coordination activities.
Solution: These components as part of the content structure of an HPCP are first identified and then transferred to the release plan.
Solution sketch: The transfer of software components as part of the content structure of a release plan is shown in grey in the solution sketch (see
Figure 12).
Result: Software components encapsulate implementation details and are an important structuring element of the entire control unit software. Software components located on an ECU are listed in the release plan of the HPCP and implement the functions of an application. Software components, as a decoupled, functional-bearing application layer, have standardized interfaces and can, in principle, be relocated at any place within the ECU network.
Example: The following
Figure 13 shows an example of the listing of different software components as part of the content structure of an HPCP.
Related patterns: The software components are related to the BASIC SOFTWARE STRUCTURE pattern because they are directly based on the basic software.
Now the patterns for Software Components are presentend.
5.2.4. Software Component Structure
Context: Software components located on a control unit can be divided into further individual executable elements and detailed. Such subdivision is taken from the software architecture and is a template for subdividing the entire software components into sub functions. In planning, each sub-function should be a logical and closed unit so that they can be planned independently of one another and yet still consider the dependencies between them.
Problem: The subdivision of software components into individual sub functions has to be made for a suitable detail level. The planning effort increases immeasurably as the detail level of the sub functions increases, and there is no added value from a planning perspective. If too little detail is chosen for the sub functions, the dependencies of the sub functions on each other can no longer be displayed. For this reason, a suitable detail level of the sub functions is necessary for successful release planning.
Solution: The sub functions, representing in total the entire software component, are first checked for the required level of detail and if necessary, the level of detail of the sub functions is adjusted. Then all sub functions are transferred to the release plan.
Solution sketch: The transfer of sub functions as part of the structure of the release plan of a software component is highlighted in grey in the solution sketch (see
Figure 14).
Result: The individual elements of a software component in the form of sub functions represent the software component as a whole. The entire software component exists in the form of sub functions in the plan in the appropriate level of detail. The list of sub functions forms the basis for the subsequent detailed planning of the content. The representation of the sub function as an individually listed planning unit is a basic prerequisite for representing the dependencies of the sub function.
Example: The following
Figure 15 illustrates an example of listing various sub functions as part of the content structure of a software component.
Related patterns: The sub functions are part of the content structure of the software component. There is a relationship between the SOFTWARE COMPONENT STRUCTURE and BASIC SOFTWARE STRUCTURE patterns since the software components place requirements on the basic software.
5.2.5. Partner Function Structure
Context: In most cases, there are dependencies of software components on one ECU or dependencies to software components located on another ECU. Partner functions are sub functions of other software components that are linked to sub functions of the software component in the network and exchange or provide information during operation using this interface. They are mutually dependent on each other, meaning the development of the technical interfaces has to be incorporated in the release plan. Input and output interfaces of the sub functions are specified in the interface specification, indicating the sub functions of the partner functions.
Problem: The partner functions of a software component have to be identified in order to derive the sender-receiver communication. In agreement with both sides, a suitable detailed level of partner functions and sub functions needs to be defined. This should be a mutual exchange since the networked software components only have knowledge of its own structure but not of the other structure in detail.
Solution: The different partner functions are first identified and then transferred to the release plan.
Solution sketch: The transfer of partner functions as an element of the content structure of the release plan of a software component is marked grey in the solution sketch (see
Figure 16).
Result: The partner functions are part of the content structure of the release plan of the software component and are listed in the release plan. The existing dependencies between a software component and a partner function affect the development activities of both parties. For this reason, partner functions are part of the content structure of a software component and are included in the release plan. As a result, existing input and output values of the software component are considered in the release plan.
Example: The following
Figure 17 contains a possible listing of different partner functions of different software components.
Related patterns: Due to the dependency and existing interfaces there is a relationship to the pattern SOFTWARE COMPONENT STRUCTURE.