Follow our illustrated blog on Embedded Software Architecture

How to build a hybrid solar/wind energy harvester?

Some basic hands-on experience with a dump load

Introduction The dump load (already introduced here) is used to burn the excess energy of our battery charger. The excess is typically generated by the wind turbine in windy conditions. In contrast with solar energy, the battery charger must accept wind energy in order to protect the wind turbine. For that reason the dump load […]

Share

Development: a mixed top-down, bottom-up approach

Introduction In a previous post we proposed our RTOS engineering process: a lean and iterative process, which cycles between project management and development (see Figure). In this post we describe our development approach that can mitigate the risks and uncertainties of developing a new product in a new domain. But before we come to that, we introduce the two […]

Share

Charge controller system architecture

Documenting architectures Architectures are documented by views, and so that is how we proceed too. The goal of a view is to describe the system from the viewpoint of its stakeholders. Several architectural view models exist and probably the most famous one is the 4+1 model of Kruchten (see here). For the energy harvester we […]

Share

From stakeholder to system requirements

System requirements and their organization Given our stakeholder requirements and some basic domain knowledge, we can now initiate the system requirements. Instead of extending the rather informal and unstructured stakeholder requirements, we prefer to start with a brand new set of requirements which is organized in a hierarchical structure (divide and conquer!) in which: the […]

Share

Domain knowledge and application information

Introduction Building the right product requires customer input and domain knowledge. Building the product right requires a technical expertise and (possibly) a development process. In this post we focus on improving our domain knowledge. As mentioned in one of our previous blog articles, the more domain knowledge we acquire, the better we can define the […]

Share

Stakeholder requirements

Introduction End-users, developers, testers, production, project managers, business, sales… they all have their interest in the system and are called stakeholders. At first, it is the task of the system architect to collect those interests (or concerns as recent literature suggests [ref]) and to resolve (potential) conflicts. Communication is key since stakeholders do not necessarily […]

Share

The start of a €100,000 project

Scope “Yeah sure, we can fly to the moon too!”, answered a colleague once to an unreasonable customer question. Not the most diplomatic answer but – up to a certain point – he was right: sometimes you have to stop dreaming and reconsider the scope of the project. For a new product in a new […]

Share

The engineering process

Introduction Let us begin with a recap. The goal of this blog is to describe how we develop: a new product in a new domain, with a short time-to-market, and given a minimal budget. Although our product – the “energy harvester” – is only used for illustration purposes, it is well chosen because building it, […]

Share

Blog strategy

About how we work and blog post updating Building a new product in a new domain is not an easy task, and things do not happen with beautiful first-time right architectures, designs and implementations. As we want to give a true account of how it evolves into a working product, expect some mis-information, wrong conclusions […]

Share

Our at-first-sight trivial product: a hybrid solar/wind energy harvester (aka battery charger)

As long as we are going to build something, it should be awesome, hip and cool. It would have something to do with renewable energy for example. Yes, we are going green, because green is cool! Bugger if it already exists! As this is for demonstration purposes only, we don’t care. We appreciate the free […]

Share