<<

Available online at www.sciencedirect.com Available online at www.sciencedirect.com ScienceDirect ScienceDirect

AvailableProcedia online Manufacturing at www.sciencedirect.com 00 (2017) 000–000 Available online at www.sciencedirect.com www.elsevier.com/locate/procedia Procedia Manufacturing 00 (2017) 000–000 www.elsevier.com/locate/procedia ScienceDirectScienceDirect Procedia Manufacturing 23 (2018) 45–50 Procedia Manufacturing 00 (2017) 000–000 www.elsevier.com/locate/procedia 8th Conference on Learning Factories 2018 - Advanced Engineering Education & Training for 8th Conference on Learning FactorieManufacturings 2018 - Advanced Innovation Engineering Education & Training for Manufacturing Innovation Development of an agile development method based on for Development of an agile development method based on Kanban for Manufacturingdistributed Engineering part-time Society teams International and Conferencean introduction 2017, MESIC framework 2017, 28-30 June distributed part-time2017, teams Vigo (Pontevedra), and an introduction Spain framework Constantin Hofmanna*, Sebastian Laubera, Benjamin Haefnera, Gisela Lanzaa CostingConstantin models Hofmann for capacitya*, Sebastian optimiza Laubera, Benjamintion in Industry Haefnera, Gisela4.0: Trade-offLanzaa awbk Institute of Production Science, Karlsruhe Institute of Technology (KIT), Germany betweenawbk Institute used of Production capacity Science, Karlsruhe and Instituteoperational of Technology (KIT), efficiency Germany Abstract a a,* b b Abstract A. Santana , P. Afonso , A. Zanin , R. Wernke In the context of Industry 4.0, the development of maintainable and scalable applications becomes a core activity to master for industrialIn the context companies. of Industry To offer 4.0, tconvincinghe developmenta University trainings, of ofmaintainable Minho,learning 4800-058 factories and Guimarães,scalable have to applications Portugalcoordinate becomesthe development a core activity of IT andto master hardware for industrialsolutions withcompanies. training Toconcepts. offer convincing The development trainings,bUnochapecó, of maintainablearning 89809-000 factoriesle, Chapecó,modular have andSC, to Brazil stablecoordinate IT solutions the development in coherence of withIT and the hardwarehardware solutionsis the basis with for training good trainings. concepts. Especially The development learning offactories maintainab facele, the modular challenge and to stable work IT with solutions part-time in coherence staff that iswith unfamil the hardwiar withare islarge the ITbasis and for hardware good trainings. projects, Especially web technology learning or PLCfactories programmi face theng challenge and development to work withmethods. part-time In this staff paper that we is presentunfamil aiar model with largehow toIT introduce and hardware agile projects, methods web step-by-step technology to orteams PLC thatprogrammi have tong cope and withdevelopment the challenge methods. of a In new this project paper wepaired present with a modela new Abstracthowtechnology to introduce and developmentagile methods met step-by-stephodology withoutto teams overloadingthat have to thecope team. with Anthe adaptedchallenge teaching of a new concept project topaired introduce with a thesenew technologydevelopment and methods development has been metdeveloped.hodology For without each of overloading the maturit y thelevels, team. tools An and adapted processes teaching are presented concept as to well introduce as criteria these to Underdevelopmentindicate thewhen concept methods the team hasof is ready"Industrybeen developed.to pass 4.0", to the For production next each level. of the Theproce maturit paperssesy alsolevels, will presents toolsbe pushed and the processesresults to ofbe arean increasingly applicationpresented as of wellinterconnected, the modelas criteria to the to informationindicatedevelopment when teambased the teamat onthe isa Learni readyreal timeng to Factorypass basis to the Globalan d,next necessarily, Production level. The atpaper much wbk. also more presents efficient. the results In this of context,an application capacity of the optimization model to the goes development beyond team the traditional at the Learni aimng Factoryof capacity Global maximization, Production at wcontributingbk. also for organization’s profitability and value. Indeed, © 2018 Thelean Authors. management Published and by continuous Elsevier B.V. improvement approaches suggest capacity optimization instead of © 2018 The Authors. Published by Elsevier B.V. th maximization.Peer© 2018 review The Authors. under The study responsibility Published of capacity by ofElsevier theoptimization scientific B.V. and committee costing ofmodels the 8 is Conferencean important on research Learning topic Factories that deserves 2018 - Peer-review under responsibility of the scientific committee of the 8th Conference thon Learning Factories 2018 - Advanced Engineering contributionsAdvancedPeerEducation review & Engineering Training underfrom bothfor responsibility Manufacturing Education the practical & of Innovation. Trainingand the scientifictheoretical for Manufacturing committee perspectives. of Inn theThisovation 8 paper Conference presents onand Learning discusses Factories a mathematical 2018 - modelAdvanced for capacityEngineering management Education based & Training on different for Manufacturing costing models Inn (ABCovation and TDABC). A generic model has been Keywords: Learning Factory, and Hardware Development, Agile, Kanban, Framework developed and it was used to analyze idle capacity and to design strategies towards the maximization of organization’s Keywords: Learning Factory, Software and Hardware Development, Agile, Kanban, Framework value. The trade-off capacity maximization vs operational efficiency is highlighted and it is shown that capacity optimization1. Introduction might hide operational inefficiency. ©1. 2017Introduction The Authors. Published by Elsevier B.V. Peer-review under responsibility of the scientific committee of the Manufacturing Engineering Society International Conference Industry 4.0 is closely linked to an increasing degree of digitization in production and a high integration of hardware 2017. Industry 4.0 is closely linked to an increasing degree of digitization in production and a high integration of hardware

Keywords: Cost Models; ABC; TDABC; Capacity Management; Idle Capacity; Operational Efficiency

* Corresponding author. Tel.: +49-721-608-44153; fax: +49-721-608-45005. *1. CorrespondingE-mailIntroduction address: author. [email protected] Tel.: +49-721-608-44153; fax: +49-721-608-45005. E-mail address: [email protected] 2351-9789The cost © 2018 of idle The capacity Authors. Published is a fundamental by Elsevier informationB.V. for companies and their management of extreme importance in2351-9789Peer modern review © production 2018under The responsibility Authors. systems. Published of In the general, byscientific Elsevier it is committeeB.V. defined asof unusedthe 8th Conference capacity or on production Learning Factories potential 2018 and - can be measured inPeerAdvanced several review Engineeringways: under responsibilitytons Education of production, of & the Training scientific available for committeeManufacturing hours of themanufacturing, Inn 8thovation Conference etc.on Learning The mana Factoriesgement 2018 of -the idle capacity Advanced* Paulo Afonso. Engineering Tel.: +351 Education 253 510 761;& Training fax: +351 for 253 Manufacturing 604 741 Innovation E-mail address: [email protected]

2351-9789 © 2017 The Authors. Published by Elsevier B.V. Peer-review2351-9789 ©under 2018 responsibility The Authors. of thePublished scientific by committee Elsevier ofB.V. the Manufacturing Engineering Society International Conference 2017. Peer-review under responsibility of the scientific committee of the 8th Conference on Learning Factories 2018 - Advanced Engineering Education & Training for Manufacturing Innovation. 10.1016/j.promfg.2018.03.159

10.1016/j.promfg.2018.03.159 2351-9789 46 Constantin Hofmann et al. / Procedia Manufacturing 23 (2018) 45–50 C. Hofmann et al. / Procedia Manufacturing 00 (2017) 000–000 C. Hofmann et al. / Procedia Manufacturing 00 (2017) 000–000 and software on all levels [1]. Software is seen as key enabler for future growth [1]. Since many applications of Kanban board is not restricted to one team and one iteration but visualizes the whole workflow and enables the Industry 4.0 are based on the perfect integration of both hard and software, an adapted development framework that collaboration of multiple teams and individuals from multiple domains to build a complex product consisting of assures the simultaneous development of hard and software is needed. hardware and software aspects as well as maintenance tasks. Kanban encourages the adoption of further techniques Learning factories are training facilities where practitioners and future engineers experience Industry 4.0 borrowed from XP or Scrum [13], [7]. applications offering a unique platform for holistic learning [2]. These facilities offer the opportunity to safely test Onboarding new developers is a common challenging task in . There are multiple approaches these applications under realistic conditions and to evaluate the application in real production systems. To offer a of introducing novices to the team and real world . For instance, mentoring programs or pair convincing experience high-quality solutions both on the software as well as on the hardware side are needed. Since programming are widespread approaches to overcome the first obstacles that occur on the new job [14], [15]. Industry 4.0 applications are evolving at a very fast pace the uncertainty regarding technology is still very high [3]. This leads to the requirement of agility and flexibility of the development framework. Learning factories have to work 3. Development Framework with quickly changing, inexperienced part-time staff, often co-located that is unfamiliar with professional development. A general setting the development framework has to account for. The introduced framework has to 3.1. Background satisfy the following requirements: The framework has been developed and adapted in the course of project Planium a digital, collaborative, cloud-  Assure the joined development of software and hardware based layout planning tool integrating real-time location tracking and data from the Manufacturing Execution System.  Guarantee high process and output quality  Account for the restrictions of part-time staff 3.2. Selection of a base framework  Allow quick onboarding of new team members Scrum is, compared to Kanban, a rigid development approach with clearly defined procedures [12], [16]. The 2. State of the Art application of Scrum causes an important overhead only justifiable for teams working full time [16]. Kanban is based on lean thinking, focusing on waste reduction and requires only a low degree of formalization, leaving room for Agile practices in software development have their roots in lean production approaches [4]. The Manifesto for Agile customization and allowing a gradual introduction [17], [13]. To reflect the constraints of part-time teams, the Software Development lists a set of common values for agile development, such as valuing individuals and interactions developed framework is an implementation of Kanban combined with practices and Scrum over processes and tools. Popular examples for agile frameworks are Extreme Programming (by Kent Beck [5]), Scrum elements. (by Ken Schwaber and Mike Beedle [6]) and Kanban for IT projects, an upcoming approach to apply Kanban methodology to software engineering projects, [7]. The rules of lean software engineering are applied in all of these frameworks, namely fast delivery of high-quality products whilst eliminating waste, learning and process improving by an empowered team [8]. Extreme programming (XP) is the oldest wide-spread agile software development methodology, popularized by Kent Beck. It consists of multiple practices e.g. tight feedback loops, small releases, tests, refactoring, pair programming, and collective ownership [5]. Pair programming in particular is a popular technique to increase productivity, code quality and to train new coworkers [9]. During pair programming, two programmers share one screen and one keyboard one of them typing the code (the “driver”), supervised and guided by the other (the “navigator”). They will switch roles periodically [10]. Scrum is a highly popular agile framework to develop and maintain complex high-quality products [11], [12]. Being a lightweight framework, it consists of few rules that are strictly enforced. There are three roles in a Scrum team: Firstly, the cross-functional, self-empowered and self-organized development team consisting of 5-9 people, secondly the Product Owner (PO), who has domain knowledge and the product vision, solely responsible for the product backlog, the economic success and thus the prioritization of features and user stories and thirdly the Scrum Master, who is a leader for the team, ensuring continuous improvement, communication, and removal of impediments. Scrum follows an iterative approach to deliver early and often. A sprint in Scrum is an iteration after which a functional product increment is delivered. Before each sprint, the development team commits to a selected set of features that are implemented in the upcoming sprint. This selected set is retrieved from the backlog, a single ordered list consisting of all desired features and requirements, derived from the product vision and prioritized by business value by the Product Owner. Fig. 1. Schematic representation of the development framework Every day a time-boxed Daily Scrum Meeting is conducted to synchronize the team and to improve transparency. Concluding the sprint, a review of the completed features is conducted by the Product Owner followed by a 3.3. Fundamental structure retrospective meeting to reflect the team’s work, giving them space to express their needs. Kanban is a lean production technique originating from the Toyota Production System, adapted to software In the particular context of establishing a professional development of Industry 4.0 applications in learning engineering in the late 2000s [8]. Kanban is focused on limiting the development work in progress and visualizing the factories, new teams face challenges resulting from three different sources of uncertainty. Firstly, they are unfamiliar development value stream leading to a cycle time reduction. Other than conventional push architectures of work, with the project and the project itself is often changing. Secondly, prior experience with professional development is Kanban uses a pull approach. Compared to Scrum, it is even more lightweight, as there are no prescribed roles or hardly available and lastly the team has to learn a new technology. ceremonies. Its principles are “start with what you have” and “perform evolutionary improvements”. Furthermore, a The three streams of the framework account for these sources of uncertainty. The first stream “” Constantin Hofmann et al. / Procedia Manufacturing 23 (2018) 45–50 47 C. Hofmann et al. / Procedia Manufacturing 00 (2017) 000–000 C. Hofmann et al. / Procedia Manufacturing 00 (2017) 000–000 and software on all levels [1]. Software is seen as key enabler for future growth [1]. Since many applications of Kanban board is not restricted to one team and one iteration but visualizes the whole workflow and enables the Industry 4.0 are based on the perfect integration of both hard and software, an adapted development framework that collaboration of multiple teams and individuals from multiple domains to build a complex product consisting of assures the simultaneous development of hard and software is needed. hardware and software aspects as well as maintenance tasks. Kanban encourages the adoption of further techniques Learning factories are training facilities where practitioners and future engineers experience Industry 4.0 borrowed from XP or Scrum [13], [7]. applications offering a unique platform for holistic learning [2]. These facilities offer the opportunity to safely test Onboarding new developers is a common challenging task in software engineering. There are multiple approaches these applications under realistic conditions and to evaluate the application in real production systems. To offer a of introducing novices to the team and real world software development. For instance, mentoring programs or pair convincing experience high-quality solutions both on the software as well as on the hardware side are needed. Since programming are widespread approaches to overcome the first obstacles that occur on the new job [14], [15]. Industry 4.0 applications are evolving at a very fast pace the uncertainty regarding technology is still very high [3]. This leads to the requirement of agility and flexibility of the development framework. Learning factories have to work 3. Development Framework with quickly changing, inexperienced part-time staff, often co-located that is unfamiliar with professional development. A general setting the development framework has to account for. The introduced framework has to 3.1. Background satisfy the following requirements: The framework has been developed and adapted in the course of project Planium a digital, collaborative, cloud-  Assure the joined development of software and hardware based layout planning tool integrating real-time location tracking and data from the Manufacturing Execution System.  Guarantee high process and output quality  Account for the restrictions of part-time staff 3.2. Selection of a base framework  Allow quick onboarding of new team members Scrum is, compared to Kanban, a rigid development approach with clearly defined procedures [12], [16]. The 2. State of the Art application of Scrum causes an important overhead only justifiable for teams working full time [16]. Kanban is based on lean thinking, focusing on waste reduction and requires only a low degree of formalization, leaving room for Agile practices in software development have their roots in lean production approaches [4]. The Manifesto for Agile customization and allowing a gradual introduction [17], [13]. To reflect the constraints of part-time teams, the Software Development lists a set of common values for agile development, such as valuing individuals and interactions developed framework is an implementation of Kanban combined with Extreme Programming practices and Scrum over processes and tools. Popular examples for agile frameworks are Extreme Programming (by Kent Beck [5]), Scrum elements. (by Ken Schwaber and Mike Beedle [6]) and Kanban for IT projects, an upcoming approach to apply Kanban methodology to software engineering projects, [7]. The rules of lean software engineering are applied in all of these frameworks, namely fast delivery of high-quality products whilst eliminating waste, learning and process improving by an empowered team [8]. Extreme programming (XP) is the oldest wide-spread agile software development methodology, popularized by Kent Beck. It consists of multiple practices e.g. tight feedback loops, small releases, tests, refactoring, pair programming, continuous integration and collective ownership [5]. Pair programming in particular is a popular technique to increase productivity, code quality and to train new coworkers [9]. During pair programming, two programmers share one screen and one keyboard one of them typing the code (the “driver”), supervised and guided by the other (the “navigator”). They will switch roles periodically [10]. Scrum is a highly popular agile framework to develop and maintain complex high-quality products [11], [12]. Being a lightweight framework, it consists of few rules that are strictly enforced. There are three roles in a Scrum team: Firstly, the cross-functional, self-empowered and self-organized development team consisting of 5-9 people, secondly the Product Owner (PO), who has domain knowledge and the product vision, solely responsible for the product backlog, the economic success and thus the prioritization of features and user stories and thirdly the Scrum Master, who is a servant leader for the team, ensuring continuous improvement, communication, and removal of impediments. Scrum follows an iterative approach to deliver early and often. A sprint in Scrum is an iteration after which a functional product increment is delivered. Before each sprint, the development team commits to a selected set of features that are implemented in the upcoming sprint. This selected set is retrieved from the backlog, a single ordered list consisting of all desired features and requirements, derived from the product vision and prioritized by business value by the Product Owner. Fig. 1. Schematic representation of the development framework Every day a time-boxed Daily Scrum Meeting is conducted to synchronize the team and to improve transparency. Concluding the sprint, a review of the completed features is conducted by the Product Owner followed by a 3.3. Fundamental structure retrospective meeting to reflect the team’s work, giving them space to express their needs. Kanban is a lean production technique originating from the Toyota Production System, adapted to software In the particular context of establishing a professional development of Industry 4.0 applications in learning engineering in the late 2000s [8]. Kanban is focused on limiting the development work in progress and visualizing the factories, new teams face challenges resulting from three different sources of uncertainty. Firstly, they are unfamiliar development value stream leading to a cycle time reduction. Other than conventional push architectures of work, with the project and the project itself is often changing. Secondly, prior experience with professional development is Kanban uses a pull approach. Compared to Scrum, it is even more lightweight, as there are no prescribed roles or hardly available and lastly the team has to learn a new technology. ceremonies. Its principles are “start with what you have” and “perform evolutionary improvements”. Furthermore, a The three streams of the framework account for these sources of uncertainty. The first stream “project management” 48 Constantin Hofmann et al. / Procedia Manufacturing 23 (2018) 45–50 C. Hofmann et al. / Procedia Manufacturing 00 (2017) 000–000 C. Hofmann et al. / Procedia Manufacturing 00 (2017) 000–000 incorporates all practices linked with the content of the project as well as the staffing of the team. The second stream technology to fulfill the given tasks. Tracking of helpful frameworks, technologies and tutorials is important to ensure “development practices” addresses the way the development team works. The third stream “Operations” reflects all transparency. the technologies and tools applied. During the orientation phase the Product Owner refines the vision and organizes the backlog, breaking down epics To protect the team from information overload, the developed framework is structured in four maturity stages into user stories. Continuous backlog refinement is the core responsibility of the Product Owner. If the team is still gradually introducing new practices to the team. The first stage addresses the initiation of the development project missing competences the Product Owner searches to complete the team. including the project vision and the setup of an initial team. The second stage “Orientation/Discovery” focuses on Development at this point is only formalized by regular review meetings separating implementation phases. During technology selection and the identification of missing resources. During the third stage the newly formed team starts this transitional phase it is common that the team has the impression to be overwhelmed. It is thus important to time- the work on the actual project and the appropriation of the technology applying development practices. The last stage box this period. In the next review meeting the team presents the findings. Only if no promising technology could be “Professionalization” is dedicated to further refinement, see Fig.1. Tasks without clear acceptance criteria can be identified the team repeats this phase, otherwise the team selects a promising technology. demotivating [18] and often lead to over-processing, a waste according to lean thinking. Time-boxing is a widespread During the discovery phase of Planium different frameworks (notably React, Redux and Node.js) have been concept that defines a clear time frame to emphasize the focus on results and to prevent wasted effort. Instead of evaluated, not yielding the aspired results. During a second iteration Angular 4, Node.js combined with MongoDB determining the duration of a task, the tasks are selected to fit the given time frame [19], [12]. Second and third phase and Three.js have been identified as promising frameworks. are transitional phases and bear the danger of inefficient and demotivating work. Thus, these phases are time-boxed. 3.8. Appropriation phase 3.4. Roles Clear roles are a core pillar of Scrum. They help to clearly separate involved stakeholders from driving team The appropriation phase consists of the introduction of multiple proven software engineering techniques and the members and ensure the dedication of each role to its specific task [20]. In line with Scrum the proposed framework appropriation of the selected technology and serves the stabilization of the newly formed team. These include relies on three roles. The PO is the initial sponsor of the project, responsible for funding, staffing and the content of retrospective meetings for feedback on the development practices, the usage of a version control system and requiring code reviews for code to be merged onto the Master branch. By design, in the previous phase not every member has the project. The Development Master - Dev Master - is the equivalent of the Scrum Master driving development been working with the selected technology. Thus, Pair Programming is used to couple experienced and inexperienced practices and continuously adapting the process. The team is responsible for delivering the functionality. Within the members. Pairing less experienced developers with higher skilled ones or even novices with novices showed better boundaries of the development process the team is self-empowered and self-organized. Their main commitment is to in less time [15]. The usage of pair programming in introduction scenarios is common and declines delivering the content of the project. as the programmers and product mature [9]. 3.5. Didactic concept in the development framework Furthermore, the first backlog items that are not solely for learning purposes are pulled to the ready lane of the adapted Kanban board. The Kanban board itself is refined by the Dev Master, following the principle of visualizing Learning through experience leads to deeper understanding and better developed abilities than learning through the value stream and limiting the WIP. This phase is also time-boxed as the learning of the technology is always media such as observation or instruction [21]. Thus, the framework is developed in a way that the team experiences ongoing. If at the time of the review every team member is able to work on his own, the team may move to the next the need for a certain development practice before it is introduced. This might result in the need for corrective work stage. and constant adjustments of the framework however long term learning and deep understanding is enhanced. This Also in the development of Planium, Pair Programming was applied and has proven to be an efficient means to conceptual choice is in line with the idea of fostering practically-oriented learning and building up of social and close the performance and knowledge gap in the team. However the concept requires more coordination within the personal competencies [22]. team to schedule working sessions. During this time, the self-empowered team also selected additional team members to complete the skill-set. 3.6. Initialization phase 3.9. Professionalization phase The vision of the PO is the starting point of the product development process. It is a brief description of the customer, his needs, the resulting product attributes, and the differentiation from existing products (USP). A minimal During the professionalization phase the team will start to work individually. This requires a communication required skill set can be derived from the vision, enabling the PO to gather the right people to staff the team. The Dev mechanism. Team communication is assured by time-boxed, short, regular meetings combined with an asynchronous Master can pre-screen viable technical solutions, such as software frameworks, possibly in conjunction with the PO. communication channel. Unlike Scrum, these do not have to be daily to account for the fact that the team works part- Concluding the initialization phase, the kickoff meeting is conducted where the vision and a set of possible time. technologies for implementation is presented. An initial backlog is created from the vision, using all available skills In the appropriation phase is introduced. However no standards are established at this point. Following of the team. After the kickoff meeting, there should be a common understanding of the future product and the steps the didactic concept, the team has first to understand the necessity of coding standards. After this experience, coding necessary to build it. Aside from the backlog, a minimal Kanban board is filled with learning objectives and initial standards and , in the case of hardware e.g. wiring standards, are defined. The definition of done tasks to perform in the form of user stories. specifies all mandatory activities that have to be performed in order to terminate a . The vision for Planium was a digital twin for layout planning directly linked to the actual work stations, enabling Refactoring is a key concept of continuous improvement and modularization. Refactoring means that functionality collaborative planning and a high degree of immersion. The initial team consisted of an experienced Dev Master and is broken down into small, manageable functions [5]. The modular system is then easily adaptable, maintainable and motivated programmers with limited programming experience. errors can be located quickly. ensures that sub-functions work as intended. Continuous integration (CI) automatically verifies that changes are only integrated into the master if all test are passed, guaranteeing stable builds. 3.7. Orientation/Discovery phase While CI is relatively easy for software, in case of hardware automatic test runs have to be designed checking all functions. The described practices are introduced and adapted in a gradual and continuous process initiated and During the orientation/discovery phase, the team builds functional prototypes using different technologies to supervised by the Dev Master. evaluate the technological fit for project-critical core functions. As the team has little or no prior knowledge, it will The increased use of Planium emphasized the importance of automated testing and continuous integration. To heavily rely on tutorials at this point. The objective is not to implement clean code but to evaluate the suitability of a manage the growing team, a cloud-based customizable Kanban tool, taiga.io, has proven helpful. Standardization, e.g. Constantin Hofmann et al. / Procedia Manufacturing 23 (2018) 45–50 49 C. Hofmann et al. / Procedia Manufacturing 00 (2017) 000–000 C. Hofmann et al. / Procedia Manufacturing 00 (2017) 000–000 incorporates all practices linked with the content of the project as well as the staffing of the team. The second stream technology to fulfill the given tasks. Tracking of helpful frameworks, technologies and tutorials is important to ensure “development practices” addresses the way the development team works. The third stream “Operations” reflects all transparency. the technologies and tools applied. During the orientation phase the Product Owner refines the vision and organizes the backlog, breaking down epics To protect the team from information overload, the developed framework is structured in four maturity stages into user stories. Continuous backlog refinement is the core responsibility of the Product Owner. If the team is still gradually introducing new practices to the team. The first stage addresses the initiation of the development project missing competences the Product Owner searches to complete the team. including the project vision and the setup of an initial team. The second stage “Orientation/Discovery” focuses on Development at this point is only formalized by regular review meetings separating implementation phases. During technology selection and the identification of missing resources. During the third stage the newly formed team starts this transitional phase it is common that the team has the impression to be overwhelmed. It is thus important to time- the work on the actual project and the appropriation of the technology applying development practices. The last stage box this period. In the next review meeting the team presents the findings. Only if no promising technology could be “Professionalization” is dedicated to further refinement, see Fig.1. Tasks without clear acceptance criteria can be identified the team repeats this phase, otherwise the team selects a promising technology. demotivating [18] and often lead to over-processing, a waste according to lean thinking. Time-boxing is a widespread During the discovery phase of Planium different frameworks (notably React, Redux and Node.js) have been concept that defines a clear time frame to emphasize the focus on results and to prevent wasted effort. Instead of evaluated, not yielding the aspired results. During a second iteration Angular 4, Node.js combined with MongoDB determining the duration of a task, the tasks are selected to fit the given time frame [19], [12]. Second and third phase and Three.js have been identified as promising frameworks. are transitional phases and bear the danger of inefficient and demotivating work. Thus, these phases are time-boxed. 3.8. Appropriation phase 3.4. Roles Clear roles are a core pillar of Scrum. They help to clearly separate involved stakeholders from driving team The appropriation phase consists of the introduction of multiple proven software engineering techniques and the members and ensure the dedication of each role to its specific task [20]. In line with Scrum the proposed framework appropriation of the selected technology and serves the stabilization of the newly formed team. These include relies on three roles. The PO is the initial sponsor of the project, responsible for funding, staffing and the content of retrospective meetings for feedback on the development practices, the usage of a version control system and requiring code reviews for code to be merged onto the Master branch. By design, in the previous phase not every member has the project. The Development Master - Dev Master - is the equivalent of the Scrum Master driving development been working with the selected technology. Thus, Pair Programming is used to couple experienced and inexperienced practices and continuously adapting the process. The team is responsible for delivering the functionality. Within the members. Pairing less experienced developers with higher skilled ones or even novices with novices showed better boundaries of the development process the team is self-empowered and self-organized. Their main commitment is to software quality in less time [15]. The usage of pair programming in introduction scenarios is common and declines delivering the content of the project. as the programmers and product mature [9]. 3.5. Didactic concept in the development framework Furthermore, the first backlog items that are not solely for learning purposes are pulled to the ready lane of the adapted Kanban board. The Kanban board itself is refined by the Dev Master, following the principle of visualizing Learning through experience leads to deeper understanding and better developed abilities than learning through the value stream and limiting the WIP. This phase is also time-boxed as the learning of the technology is always media such as observation or instruction [21]. Thus, the framework is developed in a way that the team experiences ongoing. If at the time of the review every team member is able to work on his own, the team may move to the next the need for a certain development practice before it is introduced. This might result in the need for corrective work stage. and constant adjustments of the framework however long term learning and deep understanding is enhanced. This Also in the development of Planium, Pair Programming was applied and has proven to be an efficient means to conceptual choice is in line with the idea of fostering practically-oriented learning and building up of social and close the performance and knowledge gap in the team. However the concept requires more coordination within the personal competencies [22]. team to schedule working sessions. During this time, the self-empowered team also selected additional team members to complete the skill-set. 3.6. Initialization phase 3.9. Professionalization phase The vision of the PO is the starting point of the product development process. It is a brief description of the customer, his needs, the resulting product attributes, and the differentiation from existing products (USP). A minimal During the professionalization phase the team will start to work individually. This requires a communication required skill set can be derived from the vision, enabling the PO to gather the right people to staff the team. The Dev mechanism. Team communication is assured by time-boxed, short, regular meetings combined with an asynchronous Master can pre-screen viable technical solutions, such as software frameworks, possibly in conjunction with the PO. communication channel. Unlike Scrum, these do not have to be daily to account for the fact that the team works part- Concluding the initialization phase, the kickoff meeting is conducted where the vision and a set of possible time. technologies for implementation is presented. An initial backlog is created from the vision, using all available skills In the appropriation phase code review is introduced. However no standards are established at this point. Following of the team. After the kickoff meeting, there should be a common understanding of the future product and the steps the didactic concept, the team has first to understand the necessity of coding standards. After this experience, coding necessary to build it. Aside from the backlog, a minimal Kanban board is filled with learning objectives and initial standards and design patterns, in the case of hardware e.g. wiring standards, are defined. The definition of done tasks to perform in the form of user stories. specifies all mandatory activities that have to be performed in order to terminate a user story. The vision for Planium was a digital twin for layout planning directly linked to the actual work stations, enabling Refactoring is a key concept of continuous improvement and modularization. Refactoring means that functionality collaborative planning and a high degree of immersion. The initial team consisted of an experienced Dev Master and is broken down into small, manageable functions [5]. The modular system is then easily adaptable, maintainable and motivated programmers with limited programming experience. errors can be located quickly. Unit testing ensures that sub-functions work as intended. Continuous integration (CI) automatically verifies that changes are only integrated into the master if all test are passed, guaranteeing stable builds. 3.7. Orientation/Discovery phase While CI is relatively easy for software, in case of hardware automatic test runs have to be designed checking all functions. The described practices are introduced and adapted in a gradual and continuous process initiated and During the orientation/discovery phase, the team builds functional prototypes using different technologies to supervised by the Dev Master. evaluate the technological fit for project-critical core functions. As the team has little or no prior knowledge, it will The increased use of Planium emphasized the importance of automated testing and continuous integration. To heavily rely on tutorials at this point. The objective is not to implement clean code but to evaluate the suitability of a manage the growing team, a cloud-based customizable Kanban tool, taiga.io, has proven helpful. Standardization, e.g. 50 Constantin Hofmann et al. / Procedia Manufacturing 23 (2018) 45–50 C. Hofmann et al. / Procedia Manufacturing 00 (2017) 000–000 coding standards noticeably improve the maintainability. It is advisable to rely on the coding standards recommended by the used frameworks. 3.10. Introduction of new team members New team members benefit from the knowledge of the group. They start individually in the orientation phase with tutorials that have proven valuable to acquire basic knowledge. After one review phase they work together in Pair Programming with an experienced team member and take part in all development practices such as reviews and retros. During this implementation phase they familiarize themselves with the project and the technology. They are fully integrated once they can take responsibility in the development practices and master the basic technological concepts. The introduction of new team members is crucial, especially in highly fluctuating teams. Tutorial are a great starting point, however due to the frequent changes of the employed frameworks it is necessary to constantly update the on- boarding tutorials. The update is the last task of the onboarding phase for each new member. 4. Conclusion The introduction of the development practices resulted in significantly shorter release cycles than in previous projects, even though the technological complexity had increased. In contrast to previous projects that were often conducted by individuals, traceability and transparency has significantly improved. This effect strongly correlates with the use of digital tools that track user activity and project advances. The strong focus on output and process quality manifested in high software quality even in very early releases. In the context of deadlines it is crucial that the Product Owner and all other stakeholders respect the priority of quality and the autonomy of the team. Especially in the early phase a strong advocate for the project and the approach is vital. References

[1] S. Russwurm, Software: Die Zukunft der Industrie, Industrie 4.0 Springer Berlin Heidelberg (2013) 21-36 [2] D. Mavrikios, N. Papakostas, D. Mourtzis, G. Chryssolouris, On industrial learning & training for the Factories of the Future: A conceptual, cognitive & technology framework", Journal of Intelligent Manufacturing, Special Issue on Engineering Education, 24 (2013) 473-485 [3] D. Wee, et. al., Industry 4.0 - How to navigate digitization of the manufacturing sector, McKinsey & Company, 58 (2015) [4] M. Poppendieck, M.A. Cusumano, Lean software development: A tutorial, IEEE Software, 29 (2012) 26–32 [5] K. Beck, Embracing Change with Extreme Programming, Computer, 32 (1999) 70-77 [6] K. Schwaber, M. Beedle, Agile Software Development with Scrum, Upper Saddle River: Prentice Hall, (2001) [7] H. Kniberg, M. Skarin, Kanban and Scrum making the most of both, Lulu.com, (2010) [8] M. Poppendieck, T. Poppendieck, Lean Software Development: An Agile Toolkit, Addison Wesley, (2003) [9] H Hulkko, P. Abrahamsson, A multiple case study on the impact of pair programming on product quality, 27th International Conference on Software Engineering, (2005) 495–504 [10] H. Kniberg, Scrum and XP from the Trenches (2nd ed.), Lulu.com, (2015) [11] M. Paasivaara, J. Vanhanen, V.T. Heikkila, C. Lassenius, J. Itkonen, E. Laukkanen, Do high and low performing student teams use scrum differently in capstone projects? Proceedings - 2017 IEEE/ACM 39th Intern. Conf. on Software Engineering, (2017) 146–149 [12] K. Schwaber, J. Sutherland, The Scrum Guide, Scrum Alliance 21, (2017) [13] K. Leopold, Kanban in der Praxis. Kanban in der IT, Carl Hanser Verlag GmbH & Co. KG, (2016) [14] A. Begel, B. Simon, Novice Software Developers, All Over Again, Proceeding of the 4th International Workshop on Computing Education Research - ICER ’08, (2008), 3–14 [15] M. A. Poff, Pair Programming to Facilitate the Training of Newly-Hired Programmers, (2003) [16] D. Sjøberg, A. Johnsen, J. Solberg, Quantifying the effect of using Kanban versus scrum: A case study. IEEE Software, 29 (2012) 47–53 [17] M. Ikonen, E. Pirinen, F. Fagerholm, P. Kettunen, P. Abrahamsson, On the Impact of Kanban on Software Project Work: An Empirical Case Study Investigation, 16th IEEE International Conference on Engineering of Complex Computer Systems, (2011) 305-314 [18] E. Locke, K. Shaw, G. Latham, L. Saari, Goal Setting and Task Performance: 1969-1980, Psychological Bulletin, 90 (1981) 125-152 [19] P. Jalote, A Concise Introduction to Software Engineering, Springer-Verlag London Limited (2008) 9-36 [20] K. Schwaber, Agile Project Management with Scrum, Microsoft Press, (2014) [21] J. Bruner, D. Olson. Learning through experience and learning through media, Prospects, 3 (1973) 20-38 [22] L.C. Müller-Frommeyer, S.C. Aymans, C. Bargmann, S. Kauffeld, S., & C. Herrmann, Introducing competency models as a tool for holistic competency development in learning factories:Challenges, example and future application. Procedia Manufacturing, 9 (2017) 307-314