Benutzer-Werkzeuge

Webseiten-Werkzeuge


se:softwareentwicklung

Allgemeines zum Thema Softwareentwicklung

nach \cite{Cockburn2008}

  • Softwareentwicklung besteht aus
    • Handwerk
      • Disziplinen: Entscheidung, was gebaut werden soll; Personalführung; Modellierung; Design der Außensicht und der internen Struktur; Test der getroffenen Entscheidungen
      • Können, mit bestimmten Materialien zu arbeiten
      • lebenslanges Lernen
      • Anfänger, Fortgeschrittene und Experten gehen an neue Techniken unterschiedlich heran (Shu-Ha-Ri-Wegstufen: Shu: Erlernen einer Technik, Ha: Techniken sammeln, Ri: Techniken erfinden und miteinander kombinieren)
    • kooperative Spiele
      • Spielzüge: Erfinden und Kommunizieren
      • Spielnachlass: saubere Architektur, Tests, Dokumentation, Bereitschaft des Teams, sich von Mitgliedern zu verabschieden und neue aufzunehmen
      • der Kunde entscheidet, was er will
      • Lean Manufactoring: große Zwischenlager sind ungünstig. Daher: kleine Arbeitspakete (Inkremente) an nächste Stelle übergeben
  • (Software-)Ingenieure sollten ausgebildet werden in
    • Terminologie ihrer Disziplin
    • Prinzipien und Techniken von Erfindungen und Kommunikation
    • Grundlagen schlanker Fertigung
    • Strategien für den Umgang mit dem Arbeitsfluss
  • Manager sollten ausgebildet werden in
    • Reduzieren von Arbeitspaketen
    • Qualität der Kommunikation, Motivation und Gemeinschaftsgeist ihres Teams steigern
    • Unterstützung des Teams beim Verbessern ihrer Fähigkeiten
    • Motivation der Mitarbeiter, auch in anderen Bereichen Kompetenzen zu erlangen

What makes a good developer?

nach \cite{Wood2009}

  • Process: Follow a well defined process like Scrum, XP, or even Waterfall. Just follow any process! Testing should be a big part of the process.
  • Passion: If you don't love what you do, you will never be good at it.
  • Experience (language and algorithms): Experience comes with time and by learning new stuff and sharpening your skills.
  • Initiative: Be active and start new projects or learn something new.
  • Involvement in the community (blogs, conferences): Speak to other developers about your profession to get new insights.
  • Communication skills (with business people and in written documentation): You not only have to be able to program but to get your ideas across to other people.
se/softwareentwicklung.txt · Zuletzt geändert: 2014-04-05 11:42 (Externe Bearbeitung)