Loading (custom)...

iSAQB CPSA-F

iSAQB® Certified Professional for Software Architecture - Foundation Level

Beschrijving

Licensed Certified Professional for Software Architecture – Foundation Level (CPSA-F) trainings will provide participants with the knowledge and skills required to design, specify and document a software architecture adequate to fulfil the respective requirements for small and medium-sized systems. Based upon their individual practical experience and existing skills participants will learn to derive architectural decisions from an existing system vision and adequately detailed requirements. CPSA-F trainings teach methods and principles for design, documentation and evaluation of software architectures, independent of specific development processes.

 

Focus is education and training of the following skills:

  • Discuss and reconcile fundamental architectural decisions with stakeholders from requirements, management, development, operations and test
  • Understand the essential activities of software architecture, and carry out those for small- to medium sized systems
  • Document and communicate software architectures based upon architectural views, architecture patterns and technical concepts.

 

Chapter 1: Basic concepts of software architecture

  • Discuss definitions of software architecture.
  • Understand and identify the benefits of software architecture.
  • Understand software architecture as part of the software life cycle.
  • Understand software architects' tasks and responsibilities.
  • Relate the role of software architects to other stakeholders.
  • Can explain the correlation between development approaches and software architecture.
  • Differentiate between short- and long-term goals.
  • Distinguish explicit statements and implicit assumptions.
  • Responsibilities of software architects within the greater architectural context.
  • Differentiate types of IT systems

 

Chapter 2: Design and development of software architectures

  • Select and use approaches and heuristics for architecture development.
  • Design software architectures.
  • Identify and consider factors influencing software architecture.
  • Design and implement cross-cutting concerns.
  • Describe, explain and appropriately apply important architectural patterns.
  • Explain and use design principles.
  • Planning dependencies between building blocks.
  • Achieve quality requirements with appropriate approaches and techniques.
  • Design and define interfaces.

 

Chapter 3: Specification and communication of software architectures

  • Explain and consider the quality of technical documentation.
  • Describe and communicate software architectures.
  • Explain and apply notations/models to describe software architecture.
  • Explain and use architectural views.
  • Explain and apply context view of systems.
  • Document and communicate cross-cutting concerns.
  • Describe interfaces.
  • Explain and document architectural decisions.
  • Use documentation as written communication.
  • Know additional resources and tools for documentation.

 

Chapter 4: Software architecture and quality

  • Discuss quality models and quality characteristics.
  • Clarify quality requirements for software architectures.
  • Qualitative analysis and asessment of software architectures.
  • Quantitative evaluation of software architectures.

 

Chapter 5: Examples of Software architectures

  • Know the relation between requirements, constraints, and solutions.
  • Know the rationale of a solution’s technical implementation.

Doelgroep publiek

This curriculum reflects the contents currently considered by the iSAQB members to be necessary and useful for achieving the learning goals of CPSA-F. It is not a comprehensive description of the entire domain of 'software architecture'.

Vereiste

Participants should have the following knowledge and/or experience. In particular, substantial practical experience from software development in a team is an important prerequisite for understanding the learning material and successful certification.

  • More than 18 months of practical experience with software development, gained through team-based development of several systems outside of formal education
  • Knowledge of and practical experience with at least one higher programming language, especially:
    • Concepts of
      • modularization (packages, namespaces, etc.)
      • parameter-passing (call-by-value, call-by-reference)
      • scope, i.e. of type- and variable declaration and definition
    • Basics of type systems (static vs. dynamic typing, generic data types)
    • Error- and exception handling in software
    • Potential problems of global state and global variables
  • Basic knowledge of:
    • modelling and abstraction
    • algorithms and data structures (i.e. Lists, Trees, HashTable, Dictionary/Map)
    • UML (class, package, component and sequence diagrams) and their relation to source code

 

Furthermore, the following will be useful for understanding several concepts:

  • Basics and differences of imperative, declarative, object-oriented and functional programming
  • Practical experience in:
    • an object-oriented programming language (i.e. Java or C#)
    • designing and implementing distributed applications, such as client-server systems or web applications
    • technical documentation, especially documenting source code, system design or technical concepts

Download de syllabi voor deze certificering of zie voorbeeldexamens.

Ga naar resources

Boek je examen:

brightest private exams

Brightest Privé

Examen

 Individuele online examens, afgenomen door een Pearson VUE-expert in realtime via webcam.

brightest-center-exam

Brightest Examen

Locatie

Je kunt examen doen in verschillende talen (5200+ testcentra). Via een eenvoudige registratieprocedure, van Brightest op de Pearson VUE website.

brightest green exam

Brightest Green

Examen

Online examens voor groepen van ten minste 6 deelnemers in zes verschillende talen, waar ook ter wereld.

brightest paper exam

Brightest Papieren

Examen

De klassieke examenervaring voor groepen van minstens 6 deelnemers in een groeiend aantal talen.