Self-test time


There is no free lunch, and our class is not the exception (you might be thinking now "what do these dudes mean with 'no free lunch'?") This is an expression borrowed from science fiction literature (Robert Heinlein's The Moon Is a Harsh Mistress) that states that you cannot get something without doing or giving anything in return. In this case, we mean that this is not a boring text that expects you to read and do nothing else. Eventually, we will ask you to do some work interleaved with the reading :)

The original adage is "There is no such thing as a free lunch" and it is widely used in economics, finance and statistics.

Before starting, we would like you to think about the following concepts (in the context of software engineering). You are supposed to (i) know them and (ii) apply them when designing software systems. In a piece of paper or a text file, explain in your own words each one of the concepts. Save the paper/file because we will use it later.

  • Software architecture

  • System architecture

  • Design constraints

  • Non-functional requirement

  • Architectural style and architectural pattern

  • Tactic

  • Pipes and filters style

  • Event-driven style

  • Micro-services style

Last updated