Agile Lifecycle

Agile ist für uns ein Mindset. Agile als Grundeinstellung prägt unser Denken und Handeln. Wir orientieren uns am «Manifesto for Agile Software Development».

Wir erschließen bessere Wege, Software zu entwickeln, indem wir es selbst tun und anderen dabei helfen. Durch diese Tätigkeit haben wir diese Werte zu schätzen gelernt:

  • Individuen und Interaktionen mehr als Prozesse und Werkzeuge
  • Funktionierende Software mehr als umfassende Dokumentation
  • Zusammenarbeit mit dem Kunden mehr als Vertragsverhandlung
  • Reagieren auf Veränderung mehr als das Befolgen eines Plans

Quelle: https://agilemanifesto.org

Vorgehensmodell (Methodology)

Wir leben die Grundwerte der Agilen Softwareentwicklung. Unser Vorgehensmodell setzt stark auf Agile Werte, Methoden und Praktiken.

  • User Stories
  • Prototyping
  • Iterations
  • Test Driven Development
  • Refactoring
  • Continuous Integration

Je nach Projekt arbeiten wir nach Agilen Vorgehensmodellen wie Extreme Programming (XP), SCRUM oder KANBAN.

Software Stack

Wir entwickeln ausschliesslich mit Open Source Software. Den Software Stack passen wir je nach Anforderung des Projektes an.

  • Python als Programmiersprache
  • Postgres als Datenbank
  • Pyramid / morepath als leichtgewichtige Web Frameworks
  • Puppet für DevOps

DevOps

Alle unsere Server werden mit Konfigurationsmanagement Tools (u.a. Puppet und Ansible) verwaltet. Damit ist sichergestellt, dass die Konfiguration eines jeden Servers explizit gemacht und dokumentiert ist. 

Auch ermöglichen die Konfigurationsmanagement Tools, dass alle Teammitglieder Software selbstständig und kontrollierbar ausrollen können (Continuous Delivery).

https://www.seantis.ch/services

Tools

Ein guter Handwerker braucht das richtige Werkzeug. Sein Werkzeugset hegt und pflegt er und erweitert es um neue und bessere Tools. Wir setzen auf die besten Tool für Entwickler und probieren auch immer wieder Neues aus.

Open Source

Wenn immer möglich geben wir unsere Software als Open Source frei und sind aktiv an Open Source Projekten beteiligt.

Arbeitsumfeld

Wir ermöglichen unserern «Hackern» ein optimales Arbeitsumfeld und unterstützen den «Hacker Pledge»:

  1. Initiative & curiosity
  2. High-productivity working conditions
  3. Openness & freedom of speech
  4. Giving back to the community

https://www.seantis.ch/blog/we-support-the-hacker-pledge

Empfohlene Literatur

  • Robert C. Martin (2019): Clean Agile: Back to Basics
  • Robert C. Martin (2017): Clean Architecture: A Craftsman's Guide to Software Structure and Design
  • Robert C. Martin (2011): The Clean Coder: A Code of Conduct for Professional Programmers
  • Sandro Mancuso (2014): The Software Craftsman: Professionalism, Pragmatism, Pride
  • Fred Brooks (1995): The Mythical Man-Month: Essays on Software Engineering
  • Fred Brooks (1986): No Silver Bullet — Essence and Accidents of Software Engineering
  • Andrew Hunt, David Thomas (1999): The Pragmatic Programmer: From Journeyman to Master
  • Kent Beck (2002): Test Driven Development: By Example
  • Erich Gamma , Richard Helm (1994): Design Patterns. Elements of Reusable Object-Oriented Software
  • Kent Beck und Cynthia Andres (2004): Extreme Programming Explained: Embrace Change
  • Eric J. Evans (2003): Domain-Driven Design: Tackling Complexity in the Heart of Software
  • Martin Fowler (1996): Analysis Patterns: Reusable Object Models
  • Martin Fowler (2002): Patterns of Enterprise Application Architecture
  • Martin Fowler (2018): Refactoring: Improving the Design of Existing Code