ArticleslgStudy

science

Fundamental modeling concepts

Fundamental modeling concepts is a science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Fundamental modeling concepts rather than just read about it. In short: Fundamental modeling concepts (FMC) provide a framework to describe software-intensive systems. It strongly emphasizes the communication about software-intensive systems by using a semi-formal graphical notation that can easily be understood.

Fundamental modeling concepts — main illustration
Fundamental modeling concepts — illustration

Key takeaways

  • Fundamental modeling concepts belongs to science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Fundamental modeling concepts to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Fundamental modeling concepts from memory before moving on to harder problems.

Reference excerpt

Fundamental modeling concepts (FMC) provide a framework to describe software-intensive systems. It strongly emphasizes the communication about software-intensive systems by using a semi-formal graphical notation that can easily be understood.

Introduction FMC distinguishes three perspectives to look at a software system:

Structure of the system Processes in the system Value domains of the system FMC defines a dedicated diagram type for each perspective. FMC diagrams use a simple and lean notation. The purpose of FMC diagrams is to facilitate the communication about a software system, not only between technical experts but also between technical experts and business or domain experts. The comprehensibility of FMC diagrams has made them famous among its supporters. The common approach when working with FMC is to start with a high-level diagram of the compositional structure of a system. This “big picture” diagram serves as a reference in the communication with all involved stakeholders of the project. Later on, the high-level diagram is iteratively refined to model technical details of the system. Complementary diagrams for processes observed in the system or value domains found in the system are introduced as needed.

Diagram Types FMC uses three diagram types to model different aspects of a system:

Compositional Structure Diagram depicts the static structure of a system. This diagram type is also known as FMC Block Diagram Dynamic Structure Diagram depicts processes that can be observed in a system. This diagram type is also known as FMC Petri-net Value Range Structure Diagram depicts structures of values found in the system. This diagram type is also known as FMC E/R Diagram All FMC diagrams are bipartite graphs. Each bipartite graph consists of two disjoint sets of vertices with the condition that no vertex is connected to another vertex of the same set. In FMC diagrams, members of one set are represented by angular shapes, and members of the other set are represented by curved shapes. Each element in an FMC diagram can be refined by another diagram of the same type, provided that the combined graph is also bipartite. This mechanism allows modeling all relevant layers of abstraction with the same notation.

Compositional Structure Diagram

Compositional structure diagrams depict the static structure of a system, and the relationships between system components. System components can be active or passive. Agents are active system components. They perform activities in the system. Storages and channels are passive components which store or transmit information. The image to the right is an example of a compositional structure diagram. It contains the agents Order Processor, Supplier Manager, Supplier, Online Shop and an unnamed human agent. Agents are represented by rectangles. The dots and the shadow of the agent Supplier indicate that this agent has multiple instances, i.e. the Supplier Manager communicates with one or many suppliers. The so-called human agent represents a user interacting with the system. The diagram contains the storages Orders, Purchase Order and Product Catalog. Storages are represented by curved shapes. Agents can read from storages, write to storages or modify the content of storages. The directions of the arrows indicate which operation is performed by an agent. In the diagram, the Supplier Manager can modify the content of the Product Catalog, whereas the Order Processor can only read the content of the Product Catalog. Agents communicate via channels. The direction of information flow is either indicated by arrows (not shown in the picture), by a request-response-symbol (e.g. between Supplier Manager and Supplier) or omitted (e.g. between Order Processor and Supplier Manager).

Dynamic Structure Diagram Dynamic structures are derived from petri nets.

"They are used to express system behavior over time, depicting the actions performed by the agents. So they clarify how a system is working and how communication takes place between different agents."

Value Range Structure Diagram Value range structure diagrams (also known as FMC Entity Relationship Diagrams) can be compared with the Entity-relationship model.

"[They] are used to depict value range structures or topics as mathematical structures. Value range structures describe observable values at locations within the system whereas topic diagrams allow a much wider usage in order to cover all correlations between interesting points."

References

Knoepfel, Andreas; Bernhard Groene; Peter Tabeling (2005). Fundamental Modeling Concepts - Effective Communication of IT Systems. Wiley. 0-470-02710-X.

External links FMC home page FMC-Stencils for MS-Visio FMC-Coaching & Training [1]

Worked examples

Example 1 — a first encounter with Fundamental modeling concepts

Start with the simplest possible case. Write down what Fundamental modeling concepts claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Fundamental modeling concepts before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Fundamental modeling concepts ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Fundamental modeling concepts

In research
Fundamental modeling concepts appears in science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Fundamental modeling concepts in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Fundamental modeling concepts is common in secondary-school and first-year university syllabi. It links to neighbouring topics Data modeling, Data modeling languages, Modeling languages, so understanding it makes those chapters shorter.
In everyday life
Look for Fundamental modeling concepts outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.
Ask Teacher Smith questions about this articleOpens your AI tutor with a question about “Fundamental modeling concepts” →

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Fundamental modeling concepts in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Fundamental modeling concepts means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Fundamental modeling concepts out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Fundamental modeling concepts in simple terms?

Fundamental modeling concepts (FMC) provide a framework to describe software-intensive systems. It strongly emphasizes the communication about software-intensive systems by using a semi-formal graphical notation that can easily be understood.

Why does Fundamental modeling concepts matter?

Because it connects several science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Fundamental modeling concepts?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Fundamental modeling concepts.

Tags

  • Data modeling
  • Data modeling languages
  • Modeling languages
  • Specification languages

Keep exploring