Skip to content
Certified Profes­sional for Software Architecture (CPSA®)

The CPSA® Advanced Level Module FUNAR – iSAQB® Training Course in Functional Software Architecture

MODULE FUNAR

Functional Software Architecture

What’s the most effective way to decouple the compo­nents of your architecture, and build powerful and flexible models at the same time? Functional Architecture does all of that and more with the help of immutable data, combi­nators, and powerful math-based abstractions.

Credit Points for FUNAR Training Courses

Techno­logical Competence
TECH

20

Methodical Compe­tence
Method

10

Commu­nicative Competence
Comm

0

FUNAR

CPSA Advanced Level module FUNAR diagram curriculum content

Content of the module Functional Software Architecture (FUNAR)

isaqb-favicon

System structure

isaqb-favicon

Technologies

isaqb-favicon

Imple­men­tation of functional requirements

isaqb-favicon

Imple­men­tation of non-functional requirements

isaqb-favicon

Architectural patterns

isaqb-favicon

Example

How to design architecture with functions, immutable data, and combinators

The module presents functional software architecture as an alter­native to object-oriented architecture. Compared to OO architecture, functional software architecture relies on immutable data, algebraic abstrac­tions, and embedded domain-specific languages. The result are flexible and robust archi­tec­tures that are less complex and have fewer hidden depen­dencies than OO.

Unlike OO archi­tec­tures, FP archi­tec­tures are entirely code. This module therefore illus­trates all architectural principles with concrete code, making them easier to learn.

After completion of the module, partic­i­pants will know the essential principles of functional architecture and will be able to apply them when designing software systems. They will know the peculiar­ities of functional programming languages and can use them effec­tively when imple­menting software systems. They can convert domain knowledge directly into executable code and system­at­i­cally use this to develop algebraic abstractions.

Related Blog Posts

iSAQB Blog FUNAR interview with curator Michael Sperber

Which audience does the module FUNAR address?  The training course is meant for all software archi­tects who are curious about approaches to software architecture that are funda­men­tally different from tradi­tional OOP-based approaches (and more effective, of course).   What is the relevance of the module for the profes­sional practice of software archi­tects? That depends: Functional…

Read More
iSAQB-blog-how-to-identify-a-good-certificate

There is a wide range of certifi­cates on offer, yet most certifi­cates and certification proce­dures are based on a similar process with some compa­rable variants…

Read More
iSAQB-blog CPSA-A Level

This blog post answers the most important questions about the written part of the iSAQB Advanced Level exam…

Read More
iSAQB Blog Functional Architecture Is Better

Wittgen­stein wrote, “The limits of my language mean the limits of my world.” Moritz Nähr, Public domain, via Wikimedia Commons And functional architecture works best with functional programming languages. Functional Software Architecture (“FUNAR”) is one of the most advanced curricula in the iSAQB Advanced canon. It’s about the specific techniques for domain modelling and struc­turing software…

Read More

Additional Information

Frequently Asked Questions

There are currently no FAQs for this topic. Please check out our FAQ page for more FAQs.

Downloads

Advanced Level – Sample task for the CPSA‑A exami­nation task

Sample task “BigSpender” / Topic – Information System

Deutsche Version [pdf]

English Version [pdf]

Curriculum Module FUNAR – Functional Software Architecture

Curriculum of the Advanced Level Module FUNAR with all learning goals and terms for the individual chapters.

English Version [pdf]

Deutsche Version [pdf]

Stay Up-to-Date with the iSAQB® Newsletter!

Scroll To Top