Technologies for Connectivity

According to the course description of Technologies for Connectivity, the course teaches us how to pick and validate technologies for any type of project to avoid last-minute surprises and re-designs (“Technologies for Connectivity”, n.d.). As an industrial designer, I am very familiar with last-minute surprises, which is why this course appealed to me.

The two challenges of the course were as follows:

Challenge 1:

Design and develop a module that is connected and does one thing very well, for instance, provide communicate a signal, let someone trade information against information, send a message, control a light or sound etc. The difficulty is in providing and communicating valuable functionality such that it can be reused by others. In the end, you need to build a module that has a clear API and is directly usable in the context of a larger product or system.

Challenge 2:

Design and develop a connected system for the course context that makes use of at least three modules that have been developed by other groups in the first challenge. You will need to connect all modules, perhaps even develop additional ones and design how users use this system. If your system is part of a larger system, we expect that you still present your module first and then show its integration into the larger system. Also, it might very well be that a group uses a module and finds a problem, a bug or an inconsistency between specification and implementation. In this case, the group that provided this module needs to provide support.

The finalized design for the first challenge can be found on the created poster:

The finalized design for the second challenge can be found in the following document:

One of my goals for this course was to be able to quickly and reliably create something that can integrate into a larger system. I learned that a reliable backbone is very important to achieve that. This is not only the case for software systems, but also for teams split into smaller teams. This means figuring out a consistent way of writing code, one vision and an open communication channel. This is valuable information and helped me in achieving my first goal.

I also wanted to learn how to create an API that other developers will be able to use. My second goal was completed in the first challenge by creating the documentation for the database. Since most of the top Smart Home systems rely on open source code heavily influenced by the community, I expect knowledge about this will be beneficial.

My last personal goal was to be able to properly identify and validate suitable technologies for the smart home, which incidentally is also one of the learning objectives for this course.  Since I noticed that a large amount of “connected” devices integrate sensors or technologies that are not necessarily needed for the wanted purpose, I feel like being able to identify these unnecessary sensors would a great help in creating useful “things”. Unfortunately, the course did not dive far enough into technologies useful for home automation.