Giter Site home page Giter Site logo

sea-me-course-book's Introduction

Software Engineering in Automotive and Mobility Ecosystems

Context

Why Study SEA:ME?

  • This new curriculum is a one-of-a-kind opportunity to learn about software development for all types of mobility. We help you to educate yourself - to be a part of coding & shaping the future of how we all move. Also, it is completely cost-free.

  • There is nothing like this program yet - with its broad content, with your ability to choose which parts you focus on, and with our approach to learning that is community-based without teaching.

  • In just 12 months, you are trained job-ready - to start as a software developer in companies and institutions that provide software solutions for mobility. And you will already be connected with the partners that support our program - because they want to hire our graduates. This includes anywhere from traditional automakers, to new mobility / sharing providers, and to renowned global software companies that also provide backbone mobility software.

  • Our content is shaped by experts who work in the field - and who are a part of our community. This whole program is built around our learning community - built by us with students and with the experts that volunteer to support. We all boost each other in learning and innovating together.

  • While you are in the program, you learn from each other. Groups working on projects in their own focus areas help other groups understand what they are doing, and show each other their results and solutions. In this way, each student gets a broad overview of all mobility software areas even without working on all areas personally.

  • While you are acquiring technological expertise, we also introduce you to what mobility is, how it affects our lives, what it currently looks like and how it can be changed for the better. Experts and a broad selection of learning materials will enable you to understand how different people in different places and circumstances experience mobility differently. And how you and all of us can leverage innovation and the potential of software to improve other people’s lives and to make our own everyday lives more enjoyable through new types of mobility.

  • We are building a dedicated lab for this program that we will make available to our students and to all contributors for shared learning, play, and social interaction. We are also building an online knowledge base around the program that will provide additional learning opportunities. And finally, we look forward to the input and feedback that our students provide - to learn from each other and to grow this new learning ecosystem together.

  • This program and learning community will be unique. Our goal is to later share the learning content as an Open Educational Resource, for institutions worldwide to replicate. BUT, for the near future this program is the only one of its kind, in only one location: Wolfsburg. You can be the first to train in this way, by becoming a part of our first group of students starting in 2023 and graduating in 2024.

Why Study SEA:ME in Wolfsburg?

  • Wolfsburg is the global brand name and focal point for mobility. As the hub of the global VW ecosystem and of a whole region hosting supplier and developer companies, it is at the heart of the change toward software-driven mobility both in Germany and within Europe.

  • In Wolfsburg and the larger region, there is a multitude of companies that are looking at Wolfsburg and our 42 Network campus - because we are the first institution worldwide that combines next-generation peer-to-peer learning in software development with a dedicated curriculum for mobility. These industry players are looking toward getting to know our results both in terms of innovation and in terms of SEA:ME graduates whom they can make offers to.

  • Within Germany and Europe, the brand name “Wolfsburg” creates instant attention and curiosity when anything related to mobility and innovation are discussed. This provides us and our students unrivaled opportunities to be at the heart of discussion, ideation, and joint innovation around mobility. Together with players ranging from car industry greats to software companies working on mobility solutions, to science, consultancy and advocacy around mobility. Students studying our curriculum in Wolfsburg are included in relationships and discourses that simply do not emerge in the same quick and organic way elsewhere.

  • The city, unlike larger ones, offers students ease of living, ease of renting, and a shared student community with the whole coding campus of 42 Wolfsburg. Here, it is possible to focus on study while having easy access to peers, community events and shared activities. Via 42 Wolfsburg relocation services and easy access to affordable accommodation of multiple types is provided. All in close proximity to the lab and the school’s main campus.

  • Wolfsburg is located in the geographic middle of Germany, with easy train connections to Berlin in the East (1 hour), Hamburg up north (2 hours), Cologne and “Ruhrgebiet” region (3hrs), Munich or Amsterdam (4-5 hours).

  • Wolfsburg is a city that is set apart by the quality of everyday life it offers - with easy access to all services and places of daily need, much green space and areas for sport and relaxation. And with the shape of a walkable / bikeable city in which students can move around in an atmosphere that markedly differs from the ever-growing stress, rush, and risks in everyday traffic and life that large cities are known for. Life in Wolfsburg is easy. Relocating to Wolfsburg for 12 months of study is also easy. And finding inspiration and openings for your next steps, while taking our curriculum, is also easy.

Below, we are providing in-depth information on the approach and on the modules / projects that form the new SEA:ME Curriculum.

Our students can choose which projects to focus on. In groups and individually, our students may cover as much of the content as they want and can within 12 months. They can adjust their choice while in the program, based on new impressions.

The learning model is built on the tested and proven peer-to-peer learning system that has been pioneered for software development by the 42 Network of non-profit coding campuses. This system is helping students across 47 campuses worldwide to become software developers, and to learn from experts what is needed to start a successful first or new career in IT. This learning model is successful because it focuses on what is needed in practical skills, and because it helps students learn how to learn, how to collaborate, how to evaluate themselves and their peers. All of these crucial skills that are required of software developers in the workplace. This tested system is replicated in our new mobility curriculum now - and here it is taken to another level by the community we are building with practitioners / experts in mobility development.

Overview / Current Trends in Mobility

This section provides an overview of the current state of the mobility industry, including key players, trends, and future projections.

The mobility software industry is in a state of rapid growth and transformation. The use of software is expected to increase significantly in the coming years. As advances in technology, such as autonomous driving and connected vehicles, the rise of new mobility services such as ride-sharing, and new smart city applications around mobility all drive demand for software solutions. Software will be a defining factor in what mobility will look like, how we will use and experience it - and what opportunities it will provide for us.

Some of the key players in the mobility software industry include traditional automakers, as well as technology companies, such as Microsoft, Google, or Apple. Additionally, there are many startups and smaller companies that are making significant contributions to the industry, including companies specializing in software for autonomous vehicles, connected vehicles, and smart mobility / traffic solutions.

There are several key trends that are shaping the mobility software industry, including:

  1. Autonomous driving: The development of autonomous driving technology is a major trend in the automotive software industry, as companies seek to develop self-driving vehicles that can safely transport passengers and cargo.

  2. Connected vehicles: The trend toward connected vehicles, or vehicles that are able to communicate with any other vehicles and infrastructure, is driving growth across the mobility software industry.

  3. Electric vehicles: The growth of the electric vehicle market is also fueling demand for software solutions, as companies seek to develop more efficient, cost-effective and flexible vehicles.

  4. Shared mobility: The rise of ride-sharing services is also driving growth in the mobility software industry, as these services require software solutions to manage vehicle fleets and provide a seamless user experience.

  5. Integration of the different innovation areas - connected mobility software solutions, electric vehicles, autonomous driving technology, new sharing and new flexible public transportation models, as well as smart traffic management - will shape how all of us will soon use mobility. And requires more and more skilled software developers - already now.

In terms of future projections, it is expected that the mobility software industry will continue to grow in the coming years, driven by the increasing demand for autonomous, connected, and electric vehicles as well as new mobility services. Additionally, the increasing focus on sustainability and reducing carbon emissions is also expected to drive growth in the industry, as software solutions are increasingly sought after to help improve the efficiency and sustainability of the transportation sector. Also, as smart city and smart mobility integration schemes become increasingly attractive and necessary, these provide new fields of business and work and so drive the growth in needed software developers.

Overall, the contents presented in this course book - and provided in our new curriculum - can provide students with a comprehensive understanding of software engineering in automotive and mobility ecosystems. All of the content is created for students with a focus on peer-to-peer learning - i.e. learning that is driven by community, mutual inspiration, learning from experts and each other - but not from sitting in class listening to teachers.

By incorporating hands-on projects, case studies, and direct industry insights, students develop the skills and knowledge they need to succeed in this dynamic and rapidly evolving field. Including the crucial job-related skills of a) learning how to learn, and b) learning how to work with others in order to innovate, ideate, and create.

Fundamentals of Software Development

This section covers the core principles and techniques of software engineering, including software design, testing, and maintenance.

Software engineering is a systematic and disciplined approach to developing software. It encompasses a wide range of activities - including software design, testing, and maintenance - and is based on various core principles and techniques. Some of these are:

  1. Software design: Software design involves the creation of a blueprint for the development of a software system. It typically involves several steps, including requirement gathering, architectural design, and detailed design. The goal of software design is to produce a high-level representation of the software system that can be used to guide its implementation.

  2. Testing: Testing is a critical component of software engineering and is used to validate the functionality and reliability of software systems. Testing can involve various techniques, including unit testing, integration testing, and system testing, and is used to identify and fix defects in the software system.

  3. Maintenance: Maintenance is the process of modifying an existing software system to correct faults, improve performance, or adapt to changing environments. It is an ongoing process that is critical to the longevity and success of software systems.

  4. Modularity: Modularity is a key principle of software engineering that involves dividing a software system into smaller, self-contained components. This makes it easier to understand, develop, and maintain the software system, as well as to reuse components in other systems. \

  5. Abstraction: Abstraction involves hiding the details of a software system and exposing only the most essential information. This makes it easier to understand and maintain the software system, as well as to make changes to it.

  6. Reusability: Reusability is the ability to use existing software components in multiple systems, rather than having to develop new components from scratch. This can save time and resources and improve the quality and reliability of software systems.

  7. Design patterns: Design patterns are solutions to common software design problems that can be used to guide software development. They provide a common vocabulary and understanding of software design that can be shared among developers and can help to improve the quality and maintainability of software systems.

  8. Agile methodologies: Agile methodologies are iterative and incremental approaches to software development that focus on delivering working software quickly and responding to changing requirements. They are designed to be flexible and adaptive, allowing for rapid development and delivery of software systems.

These core principles and techniques form the foundation of software engineering and are used to guide the development, testing, and maintenance of software systems. By using these principles and techniques, software engineers can ensure that their systems are reliable, maintainable, and of high quality.

Mobility Software Development

This section focuses specifically on the development of software for the mobility industry, covering topics such as embedded systems, software architecture for vehicles, and safety-critical systems.

The development of software for the mobility industry requires a specific set of principles and considerations due to the unique nature of the technical environment. Some of these core principles are:

  1. Embedded Systems: Software for use in vehicles is often developed for embedded systems, which are small computer systems integrated into other products. The software must be optimized for low power consumption, small memory footprints, and real-time performance.

  2. Software Architecture for Vehicles: The software architecture for vehicles must be designed to accommodate the specific needs of the automotive environment. This includes considerations for networked systems, the integration of sensors and actuators, and the need for high reliability and safety.

  3. Safety-Critical Systems: Safety is a top priority in the mobility industry, and software for vehicles must be designed to meet the highest safety standards. This includes implementing fail-safe mechanisms, redundant systems, and rigorous testing and validation processes.

  4. Functionality and Usability: Mobility software must provide a high level of functionality and usability for drivers and passengers. This includes considerations for human-machine interaction, navigation and infotainment systems, and advanced driver assistance systems.

  5. Interoperability: The software must be designed to work seamlessly with other systems and technologies within the vehicle. This can be achieved by integration of different communication protocols and use of open standards where possible.

  6. Security: The software must be designed to protect against hacking and other security threats, as well as ensuring the privacy and confidentiality of sensitive data.

  7. Scalability and Flexibility: The software must be designed to accommodate future updates and changes to the vehicle, as well as the ability to easily integrate new technologies and features.

  8. Robustness and Resilience: All software has to operate reliably and consistently in any conditions, including extreme temperatures, vibration, and electromagnetic interference.

  9. Certification and Compliance: The software must meet industry standards and regulations for safety, security, and environmental sustainability. This includes certification from organizations such as ISO, SAE, and the European Union.

By following these core principles, software developers in the mobility industry can ensure that their systems are safe, reliable, and meet the highest standards of performance and quality.

Peer-to-peer Learning Techniques

This section introduces students to various methods and techniques for peer-to-peer learning, including collaboration, teamwork, and mentorship.

Peer-to-peer learning is a form of education where individuals learn from each other in a collaborative and supportive environment. The goal is to create a community of learners who can share their knowledge, skills, and experiences to help each other grow and succeed. In the case of the SEA:ME Curriculum, this is further improved by including experts / practitioners who become part of the learning community and share their knowledge with students.

There are several methods and techniques for successful peer-to-peer learning, including:

  1. Collaboration: This involves working together with others on a common goal or project. Collaboration can take many forms, including group projects, study groups, and peer-reviews. This allows individuals to learn from each other's perspectives, skills, and experiences and to develop their teamwork and communication skills.

  2. Teamwork: Teamwork involves working together as a team to achieve a common goal. This can include sharing responsibilities, delegating tasks, and supporting each other. Teamwork helps individuals to learn how to work effectively with others, to develop leadership skills, and to build trust and cooperation.

  3. Mentorship: Mentorship is a relationship between an experienced individual and a less experienced individual. The mentor provides guidance, support, and advice to the mentee to help them achieve their goals. Mentorship can take many forms, including one-on-one relationships, group mentorship, and online communities. This helps individuals to learn from the experiences and insights of others and to develop their own skills and expertise.

  4. Online Communities: Online communities are virtual spaces where individuals can connect and collaborate with each other. These communities can take many forms, including discussion forums, social media groups, and online learning platforms. Online communities allow individuals to learn from a wider range of perspectives and to connect with others who share their interests and goals.

  5. Self-directed Learning: Self-directed learning involves taking responsibility for one's own learning and development. This can include setting goals, creating a learning plan, and seeking out resources and support as needed. Self-directed learning allows individuals to develop their autonomy, creativity, and critical thinking skills.

  6. Gamification: Gamification is the use of game design elements in non-game contexts to engage and motivate individuals. This can include using points, badges, and leaderboards to create a competitive and fun learning experience. Gamification can help individuals to develop their motivation and engagement with learning.

  7. Action Learning: Action learning involves applying the knowledge and skills acquired in a learning experience to a real-world problem or challenge. This helps individuals to develop their practical skills and to gain experience in solving real-world problems.

By using these methods and techniques, peer-to-peer learning can help students to develop their knowledge, skills, and confidence in a supportive and collaborative environment. It also allows individuals to take an active role in their own learning and development and to connect with others who share their interests and goals. And it also trains students in how real-life work environments of software developers function - and in how they can succeed in collaborating and knowledge-sharing with their colleagues and become successful in what they do.

A 2-week intensive workshop to introduce peer learning and collaboration among students using GitHub is a great way to help students develop valuable skills in teamwork, software development, and open-source collaboration.

Goals:

  1. Introduce students to GitHub and how it can be used for collaboration and version control.
  2. Introduce students to the Qt framework and provide an overview of how it can be used to develop GUI applications using C++/Qt/Qml.
  3. Encourage students to collaborate with each other and to help each other learn.
  4. Provide students with the opportunity to practice open-source collaboration.
  5. Foster a sense of community and teamwork among the students.

Objectives:

  • By the end of Day 1, students should be able to create their own GitHub accounts, create repositories, and make commits.
  • By the end of Day 2, students should have a basic understanding of the Qt framework and be able to create a simple C++ application.
  • By the end of Week 1, students should be able to work in pairs or small groups to develop a Qt application, and should be comfortable using GitHub to collaborate on their project.
  • By the end of Week 2, students should have joined an open-source project on GitHub that uses Qt, and should have made contributions to the project.

Throughout the workshop, students should be encouraged to communicate with each other and to help each other learn. By the end of the workshop, students should feel more comfortable collaborating with others and should have a greater appreciation for the value of peer learning.

Tech Curriculum

This section provides students with opportunities to apply their knowledge and skills in real-world scenarios through solo/group projects and case studies focused on software engineering in mobility ecosystems. Students choose which projects in which of the 3 below focus areas they want to work on. For this, students form teams, switch teams, and collaborate in and between teams from project to project. In so doing, students tailor their own learning path and what / how much they learn within 12 months.


Soft Curriculum

This section features learning content about the current state and future trends and opportunities in mobility. It explores how software can be used to help create new modes and ecosystems of mobility, to increase access to mobility, and to make mobility more useful and beneficial for everyone. It also focuses on what career paths mobility software developers can take and how our learning content can be put to work.

Expert Insights, New Perspectives and Best Practices

The SEA:ME Curriculum features a diverse range of experts from the mobility industry, science, advocacy, consultancy, and politics as guest speakers, workshops leads and individually approachable mentors / fellows. They share their knowledge and advice and engage in discussion with us - providing students with insights into how mobility is shaped and why, into innovation and new ideas, and into best practices and opportunities for software development for mobility. Guest speakers and workshop leads will introduce different perspectives on mobility, as well as different ways of thinking about and imagining mobility and the role(s) it plays in our lives and in how we live together and relate to each other. They will provide our students with opportunities to re-imagine mobility and their own career and life opportunities.

Mobility Knowledge-Base

For the SEA:ME Curriculum, we are building an online knowledge-base of learning materials around mobility, together with experts. In addition to the tech fundamentals, this learning ecosystem provides our students with multi-angle insights on what mobility is, how it has evolved, how it currently presents itself, and what are ideas for upcoming innovation and re-shaping of mobility solutions that will change how all of us use, access and benefit from mobility.

Our students will be able to access this learning ecosystem 24/7 - and they will be able to contribute by suggesting new content that would be beneficial to our learning community. We want to actively inspire and empower students to contribute to the shared learning content and to the spectrum of ideas and inspirations that makes up our community.

At the same time, any content that copyright allows will be made available open source online, so that anyone anywhere can benefit from the information and insight that we collect and share in our community.

Career Opportunities and Professional Development

Mobility ecosystems are part of a rapidly growing and evolving industry that offers a variety of career paths and opportunities for software engineers. Some of the most common career paths and opportunities include:

  1. Embedded Systems Software Engineer: Design, development, and testing of software for embedded systems in vehicles, such as infotainment systems, powertrains, and safety systems.
  2. Autonomous Vehicle Software Engineer: Design, development, and testing of software for autonomous vehicles, including perception, decision-making, and control systems.
  3. Connected Vehicle Software Engineer: Design, development, and testing of software for connected vehicles, including telematics, infotainment, and communication systems.
  4. Vehicle Cybersecurity Software Engineer: Design, development, and testing of software to ensure the security and privacy of connected vehicles.
  5. Electric Vehicle Software Engineer: Design, development, and testing of software for electric vehicles, including power management, battery management, and vehicle control systems.
  6. Software Test Engineer: Testing software for vehicles to ensure that it meets quality standards and requirements, including functional testing, performance testing, and security testing.
  7. Software Consultant: Providing expertise and advice on software development and technology to organizations in the automotive and mobility industry, including helping organizations to adopt new technologies and best practices.
  8. Software Architecture Engineer: Define the structure and organization of software systems in vehicles. These software engineers work on defining the high-level design of software systems, including the organization of components, interfaces, and data flows.
  9. Software Integration Engineer: Integrate software systems in vehicles to work seamlessly with each other. These software engineers work on integrating software systems in vehicles to ensure they function correctly and communicate effectively with other systems.
  10. Vehicle Software System Engineer: Design and develop software systems for vehicles. These software engineers work on developing software systems for functions such as infotainment, navigation, safety, and comfort.
  11. Human-Machine Interface (HMI) Software Engineer: Design and develop software systems for the interaction between vehicles and their occupants. These software engineers work on systems that allow drivers and passengers to interact with vehicles through displays, buttons, and other input devices.
  12. Advanced Driver Assistance Systems (ADAS) Software Engineer: Design and develop software systems for advanced driver assistance features in vehicles. These software engineers work on systems that assist drivers in tasks such as lane keeping, automatic braking, and adaptive cruise control.
  13. Automotive Cloud Software Engineer: Design and develop cloud-based software systems for the automotive industry. These software engineers work on systems that allow vehicles to store and process data in the cloud.
  14. In-Vehicle Infotainment (IVI) Software Engineer: Design and develop software systems for in-vehicle entertainment and information systems. These software engineers work on systems that provide drivers and passengers with audio, video, and other forms of entertainment and information.
  15. Vehicle Telematics Software Engineer: Design and develop software systems for vehicle telematics, including GPS tracking, remote diagnostics, and over-the-air updates. These software engineers work on systems that allow vehicles to communicate with remote servers for various purposes.
  16. Mobile Application Developer for Mobility: Develop mobile applications for the mobility industry. These software engineers work on developing applications that allow drivers and passengers to interact with their vehicles, access information, and perform various functions from their mobile devices.
  17. Vehicle Data Analyst: Analyze data generated by vehicles and their systems. These analysts work on analyzing data to gain insights into vehicle performance, usage patterns, and customer preferences.
  18. Vehicle Software Trainer: Train others on the use and development of software systems in vehicles. These trainers work on teaching others how to use software systems in vehicles and how to develop new systems.
  19. Vehicle Software Support Engineer: Provide technical support for software systems in vehicles. These engineers work on providing support to customers and users of software systems in vehicles, resolving issues, and answering questions.
  20. Software Development Operations (DevOps) Engineer: Ensure the efficient and effective operation of software development processes. These engineers work on automating software development processes, ensuring software quality, and managing software delivery.

These are just a few of the many career paths and opportunities available to software engineers in mobility ecosystems. The industry is constantly evolving, and new opportunities are emerging as technology advances and new business models emerge. Software engineers with a strong foundation in software engineering principles, a passion for technology, and a desire to work in a fast-paced and dynamic industry are well positioned to succeed in this field.

Emerging Technologies and Trends

There are several new developments and innovations in mobility ecosystems, including:

  1. Electric Vehicles (EVs) - The increasing focus on sustainability and reducing carbon emissions has led to a growing demand for electric vehicles (EVs). Software engineers play a crucial role in the development of EVs, working on battery management systems, charging infrastructure, and the vehicle's power electronics. They also develop software for the electric drivetrain, which includes the motor and the inverter, as well as the overall vehicle control systems.
  2. Autonomous Vehicles - Autonomous vehicles have been a hot topic in recent years, and software engineers play a critical role in their development. They work on developing the perception, decision-making, and control systems that allow the vehicle to operate autonomously. This involves developing algorithms to detect and classify objects in the environment, make decisions based on the data collected, and control the vehicle's movements.
  3. Connected Cars - The trend of connected cars is growing rapidly, and software engineers are working to develop new technologies to improve the driving experience. Connected cars use the internet to provide real-time traffic updates, entertainment systems, and other features, and software engineers work on developing the infotainment systems, the vehicle's internet connectivity, and the over-the-air update systems.
  4. Vehicle Cybersecurity - With the increasing use of software in vehicles, cybersecurity has become a major concern. Software engineers are working on developing new solutions to protect vehicles against hacking, data theft, and other cyber attacks. This includes developing secure communication systems, secure boot processes, and secure data storage systems.
  5. Advanced Driver Assistance Systems (ADAS) - Advanced Driver Assistance Systems (ADAS) are becoming increasingly common in vehicles, and software engineers play a key role in their development. ADAS systems, such as lane departure warning, adaptive cruise control, and automated emergency braking, use sensors and software algorithms to enhance safety and improve the driving experience.
  6. Vehicle-to-Vehicle (V2V) and Vehicle-to-Infrastructure (V2I) Communication - Software engineers are developing new technologies to enable communication between vehicles and between vehicles and infrastructure. This includes developing communication protocols, security solutions, and software systems for the exchange of information. The goal is to improve safety, reduce traffic congestion, and enhance the driving experience.
  7. Artificial Intelligence (AI) - Artificial Intelligence (AI) is being used in the automotive industry to enhance the driving experience, improve safety, and optimize the performance of vehicles. Software engineers work on developing AI algorithms for applications such as computer vision, natural language processing, and machine learning, as well as integrating these algorithms into the vehicle's control systems.
  8. Internet of Things (IoT) - The Internet of Things (IoT) is being used to connect vehicles and other devices, enabling new services and experiences for drivers and passengers. Software engineers play a crucial role in developing IoT-based solutions, working on developing the communication protocols, security solutions, and software systems for connecting devices.

These are just a few examples of the latest developments and innovations in mobility ecosystems. As technology continues to evolve, the role of software engineers in this field will continue to grow and change.

Societal Context, Change and Future of Mobility

This section explores the ways in which mobility affects our lives. What current mobility modes / offers / limitations look like. And what innovations, changes and improvements the future of mobility can hold. It introduces why it’s both exciting and valuable to work on the future of mobility and to help improve all of our lives in this way.

Mobility as we currently experience it is defined by long standing characteristics and continuing trends. These include, for example:

  1. A sharp divide between the availability of mobility offers / choices between urban and rural environments. With cities having been shaped around automobile traffic since the 1950s, and rural areas in many countries having been increasingly cut off from public transport offers. Smart networks of various mobility services can offer access to mobility in urban and rural environments and begin to connect these by making use of the intermodal spaces between them.
  2. Dominance of individual traffic in personally owned cars, as well as of freight transport on roads. Since the second half of the 20th Century, living environments across the globe have increasingly been shaped around individual vehicles on roads, with personal movement on roads defined along the lines of freedom. In smart software-driven environments of the 21st Century, thinking and action along the lines of freedom can be re-imagined and re-shaped as freedom of access and freedom of choice for everyone who needs or wants to consume movement options.
  3. Continued growth of car ownership in urban areas, and ongoing extension of road space. While science has identified this dynamic as one of “induced traffic”, where increased road space repeatedly leads to more vehicles and traffic - and thus to new calls for yet more road space. Innovative 21st Century thinking and planning can make use of the powers of software to create efficient models and analyses of traffic flow, predictions of which effects which mobility modes can have, and help shape traffic in ways that adapts to the needs of residents more than residents continuing to adapt to assumed needs of traffic.
  4. Preventative pricing levels and complicated booking models for public transport. Software-driven, networked public transport offers - across vehicle types / sizes, roads and rail - can boost ease of use, speed and comfort of shared transportation offers. Integrated booking, navigation, and authentication apps can help users to easily combine different mobility modes, types of vehicles, and services - by identifying what is most efficient and comfortable for each single trip from Point A to Point B.
  5. Low availability of space for non-automotive vehicles, and large amounts of space dedicated to parked vehicles that have been averaged as being parked for 96% of time per day. More choice and easier access to different mobility modes can contribute to freeing up public spaces that have been increasingly used for parking over the last decades. Smart shared vehicles can also help avoid issues around parking in spaces that are not legal, where parked cars block weakest participants in mobility such as wheelchair users, blind citizens, physically frail / limited individuals or children on bikes.
  6. Lack of barrier-free access to public transport, which leads to exclusion even where mobility choice generally exists. Modern networked and user-oriented transportation networks can offer different types of vehicles and access modes, and make these easily available and identifiable to users with special needs. They thereby can boost freedom of movement and freedom of choice for individuals that so far are strongly limited in where they can move at which time and in which ways.
  7. Globally, there remains a constant increase in levels of emissions generated by traffic on ground, in water and in air. With these emissions (fine particles) being generated not just by combustion engines, but in large part by vehicle parts such as tires and brakes, overall volume of traffic / vehicles and efficient solutions for passenger and freight traffic are of importance. Smart mobility solutions can address emission levels, for example by easing use of low emission services (shared / rail) and by making trips in higher emission vehicles (individual / road) more efficient by use of shortest possible routes and efficient driving styles.
  8. Effects of globalized supply chains and of consumer trends toward online ordering and returning of products are continuing to fuel increases in freight transport.. Innovation in mobility management can help alleviate some of the effects. For example by addressing the “last mile” where shipments are brought to final recipients after long-haul transport, or by building efficient long-haul transport networks consisting of road and rail, in which goods are easily switched between vehicle types.

Given that established characteristics and ongoing trends in mobility currently leave much to be desired, and given that traffic circumstances are getting ever more intense and difficult around us, it is only fortunate that at this point in time there is a whole set of new opportunities starting to open up. The opportunities provided by software are beginning to offer completely new ways of imagining and shaping mobility solutions. New ways of thinking about the kinds of mobility that would give more of us access, and all of us more choice. So that each one of us could choose where and when we want to personally drive a car, or to sleep or work while riding in an autonomously driving vehicle, or to connect to public transport or ride-sharing, pick up a rental cargo bike, etc. etc. And how we could easily and cheaply combine any one of these modes and vehicles in one comfortable, quick and seamless trip from Point A to Point B.

At the same time, all of us living in cities will be able to benefit from more shared and diverse mobility options also in ways that transcend our own trips. For example, where space for individual parked vehicles becomes available again to all of us for use as an enjoyable public space for leisure, sports and play. Where more mobility choice and more shared mobility evolve, our shared urban spaces increase in size and the liveability of our environments increases. And where mobility choice increases in rural areas, people have more opportunities to connect with each other and to live in environments that are still different from cities but also easily accessible anytime.

Finally, with more mobility offers and choices available, all of us will be able to move anywhere anytime - including those of us who are limited in their mobility by health status, age, disability or other circumstances. And those of us who currently have to make the choice between a type of mobility that they feel uncomfortable with or no mobility at all can receive actual choice, safety and comfort.

The future of mobility looks bright because of the new potential that is emerging now for the first time in decades - a potential that is largely driven by what software can offer. Therefore anyone who becomes a software expert for mobility today not only has plenty of choice in terms of the direction / work area to go into, but also has plenty of opportunity to be a part of something that improves their own life and the lives of us all. Makes our lives both easier and more enjoyable - by leveraging the strengths of code.

Reflective Practice and Self-assessment

This section provides students with opportunities for self-reflection and self-assessment, helping them to evaluate their own learning and progress and set goals for future growth.

Self-reflection and self-assessment are core aspects of peer-to-peer learning that allow students to evaluate their own learning and progress. These activities enable students to gain insight into their own strengths and weaknesses, identify areas for improvement, and set goals for future growth. The aim is to help students understand their own learning style, identify their individual learning needs, and develop effective strategies for meeting those needs.

Self-reflection involves taking time to think critically about one's own learning experiences and the outcomes of those experiences. It may involve asking questions like: What did I learn from this project? How did I approach this task? What could I have done differently? What worked well and what didn't? What can I learn by comparing my approach to that of other students, learning from each other?

Self-assessment, on the other hand, involves evaluating one's own performance against a set of criteria or standards. This may involve self-grading assignments, evaluating one's own work against a rubric, or using self-assessment tools like checklists or questionnaires.

The goal of self-reflection and self-assessment is to help students take ownership of their own learning and development. By critically examining their own performance, they can identify areas for improvement, set goals, and make changes that will help them achieve their goals. Additionally, these activities help students develop self-awareness, self-confidence, and self-efficacy, all of which are important skills that can be applied in various settings, both in and outside of the learning environment.

Shield: CC BY-NC-SA 4.0

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

CC BY-NC-SA 4.0

sea-me-course-book's People

Contributors

pprajapa-42 avatar alexart1995 avatar andreipurits avatar

Stargazers

Jun-Beom Jung avatar Hakan Hirca avatar Sejoon Kim avatar LBB avatar HusamAltamimi avatar Erwin Küchel avatar mohanp avatar jisookim avatar  avatar Wasabi avatar Uwa Agbai avatar  avatar Mike Haller avatar Seong Choi avatar  avatar Jong-Chan Kim avatar

Watchers

Pratik Prajapati avatar Ricardo Niepel avatar Changhyeok Bae avatar Seong Choi avatar

Forkers

timkremser

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.