Requirements engineering and management for embedded systems
Embedded systems are an important component of today's technologies and enable a wide variety of applications in diverse fields such as industry, automation, medical technology, automotive, and aerospace. These systems are designed to perform specific functions while adhering to required quality standards and are frequently integrated into larger systems or products. Establishing effective processes for requirements gathering and management is crucial for the success of an embedded system project.
Article: Requirements Engineering and Management for Embedded Systems
Design for test and design for safety – Tailor-made software architecture
Our everyday lives are now seamlessly integrated with interconnected devices and systems. Whether using a smartphone to find the fastest route, reading the newspaper on a tablet while relaxing on the sofa, or controlling smart heating via a smartphone app, these systems make our lives more comfortable. However, this increased comfort also necessitates stricter security and safety requirements, which the developers of such systems must meet. This is especially true for autonomous driving – where sound safety concepts are of paramount importance.
Article: Design for Test and Design for Safety
Protecting project territories: From dogs, cats, project managers, and bosses
People claim visible and invisible territories for themselves. Those who violate these boundaries are perceived as unpleasant or even threatening. These – often unintentional – territorial violations repeatedly lead to serious conflicts or disruptive friction in project work. A certain sensitivity to the territorial claims of our fellow human beings is therefore advantageous.
Article: Protecting project territories
Why good teams don't fall from the sky
There's a key question when it comes to project success: How do successful teams emerge? This article provides answers that can be clearly derived from a systemic view of a team. It will become evident that one attitude and two skills are of particular importance. Unfortunately, these attitudes and skills don't simply appear out of thin air. Those who discover, practice, and internalize them in teamwork will be richly rewarded.
Software development reimagined
The rapid growth of the Internet of Things, the 5G network, artificial intelligence and cloud or edge computing has a major impact on the development of embedded software.
Part 1: How multicore, safety & security aspects are changing today's software projects
Part 2: Avoiding typical errors with comprehensive software requirements
Out of the dead end: More flexibility, less optimization
Why did Corona hit us so hard? How do we get out of this crisis? To find answers to these questions, a few systemic considerations about survival are worthwhile. The exciting thing about systemic considerations is that we can apply them to many of the questions we're currently racking our brains over. Now things will get a little theoretical first, and then dramatic – with hope for a happy ending.
Embedded Software Redesign Guide
Sometimes simply extending old code isn't enough: a complete overhaul is needed. This series of articles describes the process of embedded software redesign and explains the concepts of reverse engineering, refactoring, and reengineering.
Article: Embedded Software Redesign Guide
Interview: Clean Code and the ideal workflow for an embedded project
In object-oriented software architecture and design, as well as in object-oriented programming (OOP) as a structured software development methodology, similar tasks and problems repeatedly arise. The use of reusable design patterns (proven solution templates) can prevent repetitive software programming efforts.
Article: Clean Code and the ideal workflow for an embedded project
Applying Design Patterns Correctly in Practice
In object-oriented software architecture and design, as well as in object-oriented programming (OOP) as a structured software development methodology, similar tasks and problems repeatedly arise. The use of reusable design patterns (proven solution templates) can prevent repetitive software programming efforts.
Article: How to correctly apply design patterns in practice
Save development time with design patterns
In object-oriented software architecture and design, as well as in object-oriented programming (OOP) as a structured software development methodology, similar tasks and problems repeatedly arise. The use of reusable design patterns (proven solution templates) can prevent repetitive software programming efforts.
Article: Saving development time with design patterns
Quality requirements for embedded software
Capturing and managing requirements is a key to project success. Embedded software functionality is easier to describe in requirements than quality attributes. However, quality attributes cannot simply be "tested in" at the end. The more abstract they are, the more complex and time-consuming they are to define. What challenges does this pose for a project?
Article: Quality Requirements Part 1 – Requirements and Myths
Article: Quality Requirements Part 2 – The Recording Method
Article: Quality Requirements Part 3 – A Data Collection Example
Leading through process and communication competence
„"What do I do if I don't have an answer to an employee's question or a solution to a problem?" Is it acceptable for a project manager to be perplexed or without a solution? Will they still be taken seriously? My answer: Yes, of course, if… And that "if" is what we'll be discussing today.
Article: Leading through process and communication skills
Development processes as the basis of modern software development
In professional software engineering, the development and process steps prior to software implementation are essential. Terms like software analysis and software design, or high-level software design and detailed software design from development processes (for example, the V-Model XT or the industry-specific V-Model Automotive), represent precisely this.
Article: Development processes as the basis of modern software development
Discover hidden resources, uncover concealed profits
„"We don't have problems, we have challenges." You've certainly heard this sentence before, or something very similar. I'll take it a step further, because these days you have to top what's already been said to drown out the constant background noise of clever platitudes. That's why I'm writing this sentence out loud, so it goes straight to your consciousness via your optic nerves: PROBLEMS ARE HIDDEN RESOURCES. Why is that?
Article: Problems are resources
Using conflicts as an opportunity
Who likes conflict? But if we take a realistic look at the world, or even just at our relationships with others, we realize that conflict is a part of life. It's a natural phenomenon of human coexistence and stems from the simple fact that people have different—sometimes very different—experiences, sensitivities, and needs. If we look closely, we find that the problem isn't the causes of the conflict, but rather how we deal with conflict situations.
Conference proceedings script: Conflicts as an opportunity (ESE Congress 2017, PDF)
Requirements – A checklist for maturity
Capturing and managing requirements is a key to successful projects. Whether in a traditional or agile process environment, professional requirements engineering and management for embedded and real-time systems shortens your project timelines and saves on development and maintenance costs. Take on this challenge!
Presentation: Requirements – A checklist for maturity (ESE Kongress 2017, PDF)
Conference proceedings script: Requirements – A checklist for maturity (PDF)
Asking the right questions leads to project success
Today I'm going to introduce you to a miracle cure that will save you a lot of energy, time, and money in your projects. At the same time, it motivates your employees. The application of this miracle cure has a lot to do with the letter W, as in miracle. The best part? It costs nothing, and you're all familiar with it.
Article: Asking the right questions for project success
Food for thought On the topic of "The human side of project success":
Episode 51: Why good teams don't fall from the sky (12/2021)
Episode 50: Out of the dead end: More flexibility, less optimization (04/2021)
Episode 49: Managing crises through professional project management (04/2020)
Episode 48: What does project responsibility mean here? (02/2019)
Episode 47: Misunderstanding, the loyal project companion (05/2019)
Episode 46: Leading through process and communication competence (02/2019)
Episode 45: Discover hidden resources, uncover concealed profits (02/2018)
Episode 44: What is crucial in decision-making? (10/2017)
Episode 43: Needs as a source of success and failure (07/2017)
Episode 42: How differences enrich projects (05/2017)
Episode 4xAsking the right questions leads to project success (03/2017)
Episode 41: Illusions and their impact on project work (01/2017)
Episode 40: Protect project territories (10/2016)
Episode 39: The essence of good project management (08/2016)
Episode 38: Project success through emotional culture (03/2016)
Episode 37: Hi, how did your project go? (02/2016)
Episode 36: Failed projects are a matter of luck. (12/2015)
Episode 35: How to better cope with project frustration (10/2015)
Episode 34: Systemic principles in project management (02/2015)
Episode 33: Realism instead of clairvoyance (04/2015)
Episode 32: Leading through process and communication competence (10/2014)
Episode 31: Project management between naivety and self-deception (05/2014)
Episode 30: What makes a good project manager (02/2014)
All "Food for Thought" articles at a glance
