Sprache

CAS Software Engineering Essentials

Um komplexe Softwareprojekte strukturiert und nachhaltig umsetzen zu können, ist eine fundierte ingenieurwissenschaftliche Grundlage notwendig. Diese vermittelt der CAS Software Engineering Essentials. Sie erwerben darin ein vertieftes Verständnis für Software-Engineering-Prinzipien, moderne Programmiersprachen und Entwicklungswerkzeuge. 

In der Praxis stehen viele Entwicklerinnen und Entwickler vor der Herausforderung, robuste, skalierbare und gut wartbare Software zu entwerfen. Oft fehlt jedoch eine solide ingenieurwissenschaftliche Basis.

Der Zertifikatskurs (CAS) Software Engineering Essentials vermittelt essenzielle Konzepte von Betriebssystemen, objektorientierter Programmierung, Algorithmen & Datenstrukturen, Softwaremodellierung und modernen Entwicklungsmethoden. Damit stärkt er die Fähigkeit, komplexe Softwarelösungen effizient zu entwickeln und bewährte Techniken in der Praxis anzuwenden.

Auf einen Blick

Abschluss

Certificate of Advanced Studies CAS in Software Engineering Essentials (15 ECTS-Punkte)

Schwerpunkte

  • Objektorientierte Programmierung
  • Algorithmen und Datenstrukturen
  • Systemnahe Programmierung
  • Betriebssysteme
  • Versionskontrolle («Version Control») und Projektautomatisierung
  • Frontend Engineering Grundlagen
  • Anforderungsanalyse und Modellierung

Nutzen

Dieser Kurs hebt Ihre Fähigkeiten in der Softwareentwicklung auf ein neues Niveau. Sie erwerben ein tiefgehendes Verständnis für Software-Engineering-Prinzipien, moderne Programmiersprachen und Entwicklungswerkzeuge, was ihnen mehr Sicherheit und Effizienz in ihrem Arbeitsalltag gibt.  Beruflich eröffnet der CAS neue Karrieremöglichkeiten, sei es durch den Einstieg in anspruchsvollere technische Rollen oder die Weiterentwicklung in Richtung Architektur und Engineering. Zudem stärkt die Weiterbildung die Problemlösungskompetenz und ermöglicht es, komplexe Softwareprojekte strukturiert und nachhaltig umzusetzen.

Dauer

21 Präsenztage, berufsbegleitend während 8 Monaten

Die Anzahl der Präsenztage variiert je nach Lehr- und Lernform. Es gilt der aktuelle Terminplan.

Kosten

CHF 9800.– inkl. Unterlagen, Leistungsnachweisen und Zertifikat (Preisänderungen vorbehalten)

2 Monate vor Anmeldeschluss bzw. 4 Monate vor Kursstart wird ein Rabatt von CHF 500.– gewährt.

Zulassung

Anerkannter Tertiärabschluss, mehrjährige qualifizierte Berufserfahrung, Tätigkeit in einem entsprechenden Arbeitsfeld

Hinweis

Dieser CAS kann als in sich geschlossene Weiterbildung oder als Teil des MAS Software Engineering absolviert werden. 

Dieser Kurs umfasst folgende Inhalte:

Objektorientierte Programmierung

  • Objektorientierte Konzepte und deren Umsetzung/Anwendung mit Java
  • Datentypen, Operatoren und Kontrollstrukturen in Java
  • Programmstruktur: Methoden, Klassen, Objekte, Packages
  • Vererbung, Schnittstellen, Polymorphismus
  • Exception Handling, Input/Output (IO), Lambdas, Stream API

Systemnahe Programmierung

  • Systemnahe Programmierung mit C (Vorbereitung Betriebssysteme)
  • Konzepte und Eigenschaften der Programmiersprache C++
  • Anwendung dieser Programmiersprachen in hardwarenahen Applikationen
  • Grundlagen Embedded- und IoT-Systeme

Algorithmen und Datenstrukturen

  • Rekursion
  • Sortierung: Selection-, Insertion-, Merge-, Quick-Sort
  • Collections: Array-List, Linked-List, Stack, Queue, Priority-Queue, Hash-Table, Map und Multimap, Bäume, Graphen
  • Analyse von Algorithmen: O-Notation, Arithmetische Progression

Web-Engineering-Grundlagen

  • Grundlagen in JavaScript und TypeScript
  • HTML & CSS für Single-Page-Applications (SPA)
  • Einführung in React mit JSX/TSX

Betriebssysteme

  • Systemprogrammierung
  • Prozesse unter Unix und Windows, Input/Output (IO)
  • Threads, Adressraum und CPU-Scheduling
  • Parallelverarbeitung, Synchronisation und Deadlocks
  • Funktionsweise der Shell, Shell-Skriptsprache
  • Interprozesskommunikation mit Unix Signalen und Pipes
  • POSIX Message Queues und Shared Memory

Version Control and Project Automation

  • Versionskontrolle mit Git
  • Grundverständnis von DevOps, Continous Deployment und Continuous Delivery
  • Sicherstellung der Qualität durch Automatisierung von Continuous Integration
  • Moderne Werkzeuge zur Automatisierung von Build-, Release- und Deploymentprozessen
  • Praktische Umsetzung von Continuous Deployment mittels Containerization-Technologien wie Docker

Anforderungsanalyse und Modellierung

  • Requirements-Engineering-Methoden (Quellen und Erhebungstechniken)
  • Use Cases für funktionale Anforderungen
  • Qualitätsmodell für nichtfunktionale Anforderungen
  • Requirements Management: Verwalten, Priorisieren, Changemanagement
  • Domänenmodellierung
  • Objektorientierte Analyse und Design (unter anderem mit UML)
  • Modellierung mit UML Klassen-, Zustands-, Use Case- und Sequenzdiagrammen

Zielgruppe

Dieser CAS richtet sich an Fachkräfte im Bereich der Softwareentwicklung, die ihre Programmierfähigkeiten vertiefen und auf eine fundierte ingenieurwissenschaftliche Grundlage stellen möchten.

Zulassung

Zugelassen sind Personen

  • mit einem anerkannten Tertiärabschluss (Universität, Fachhochschule, Höhere Fachschule sowie Technikerschule oder Höhere Fachprüfung);
  • mit qualifizierter Berufserfahrung;
  • mit einer Tätigkeit in einem Arbeitsfeld, in dem sie das Gelernte umsetzen können (Prinzip Transferorientierung).

Bewerberinnen und Bewerber, die über vergleichbare Abschlüsse und entsprechende Berufserfahrung verfügen, können auf Basis einer individuellen Prüfung des Dossiers aufgenommen werden. 

Nach Abschluss dieses Kurses

  • verstehen Sie essenzielle Konzepte von Betriebssystemen, objektorientierter Programmierung, Algorithmen & Datenstrukturen, Softwaremodellierung und modernen Entwicklungsmethoden;
  • können Sie komplexe Softwareprojekte strukturiert und nachhaltig umsetzen;
  • sind Sie qualifiziert für anspruchsvollere technische Rollen;
  • besitzen Sie eine solide Basis für weiterführende Spezialisierungen in Cloud Computing, Microservices, Big Data oder KI-gestützter Softwareentwicklung.

Kursleitung

Stefan Kapferer

IFS Institut für Software Dozent für Software Engineering

+41 58 257 16 87 stefan.kapferer@ost.ch

Prof. Dr. Farhad D. Mehta

IFS Institut für Software Professor in Computer Science for Programming Languages and Software Engineering

+41 58 257 46 16 farhad.mehta@ost.ch

Studienkoordination

Olivia Rüedi

WBO Weiterbildungsorganisation TL Administration / Stv. Leiterin WBO OST

+41 58 257 12 01 olivia.rueedi@ost.ch