Archiv für das Tag 'SCCM im Kontext'

Beitrag drucken Beitrag drucken

Martin Fowler hat seinem «Meinungsbeitrag» über die Empfehlbarkeit von Versionsverwaltungswerkzeugen (über den wir gestern berichteten),  einen «Faktenbeitrag» folgen lassen: Open-Source-Werkzeuge führen mit grossem Abstand das Feld an, die Tools grosser Hersteller belegen die Schlussränge.

Fowler berechnet eine «Akzeptanzrate»: Die Open-Source-Werkzeuge git, Mercurial und Subversion erreichen über 90 %, dann folgen Bazaar mit 82 % und Perforce mit 61 % – und dann lange nichts mehr. CVS, der Veteran aus der Open-Source-Welt erreicht 17 %, und am Schluss stehen ClearCase (5 %), VSS (3 %) und TFS (0 %).

Mit 99 befragten Personen ist die Umfrage von der Menge her befriedigend abgestützt. Antwortende waren Abonnenten der ThoughtWork-Mailings. Sicher werden da ziemlich viele Open-Source-Fans dabei sein, aber Fanatiker scheinen es keine zu sein, sonst hätten sie kommerzielle Werkzeuge wie Perforce kaum so gut eingeordnet und sie hätten ihren Veteranen CVS hochgejubelt.

Es lohnt sich, diese Liste anzusehen.

Beitrag drucken Beitrag drucken

Norbert Nigg

SCCM-Evaluationshilfe

Unter dem Titel «Version Control Tools» hat Martin Fowler einen ausgezeichneten Artikel über Software für das Versionsmanagement geschrieben, der ziemlich Beachtung gefunden hat. Wenn Sie sich gerade Gedanken machen über ein neues Versionskontrollsystem, sollten Sie sich die Zeit zum Lesen dieses Beitrags nehmen. Das wird Ihnen einigen unnützen Aufwand ersparen. Allein diese Zeichnung aus dem Artikel ist ein vielsagende Auslegeordnung, die Ihre Auswahlliste bereits verkürzt.

Unter den Reaktionen ist jene von Jay R. Wren mit dem Titel «Version control is more than just the tools» hervorzuheben, da sie weitere Aspekte in die Diskussion bringt.

Beitrag drucken Beitrag drucken

Paul Chautems

Webinare zum Thema Kosten senken

Software-Entwicklung und -wartung ist teuer und reich an Risiken. Grund genug, gerade jetzt in der Wirtschaftsflaute die Kosten und Risiken im Griff zu halten und Produktivität und Qualität zu steigern.

Da sind Ideen gefragt, man muss sie nur finden. Die meisten Firmen haben viele Möglichkeiten, die Entwicklungs- und Wartungskosten zu senken. Zum Beispiel sind geographisch verteilte Entwicklungsgruppen, die viele verschiedene Werkzeuge verwenden – was an der Tagesordnung ist – unrentabel. Oder: Automatisierte Prozesse und integrierte Entwicklungs-Umgebungen senken die Entwicklungskosten ganz beträchtlich.

Den ganzen Beitrag lesen »

Beitrag drucken Beitrag drucken

Norbert Nigg

SCCM – ein Integrationsvorhaben

Ein Praxisbericht in der Nummer 2/2009 von ObjektSpektrum zeigt, wie eng Konfigurations-, Change- und Test-Management miteinander verbunden sind.

Der Bericht stützt unsere Auffassung, dass Konfigurationsmanagement keine Insel sein darf, sondern in die Entwicklungs- und Wartungsprozesse integriert sein muss. Die Zeitspanne von zwei Jahren verdeutlicht, mit welchem Aufwand bei solchen Vorhaben in einer Entwicklungsabteilung mit 50 Mitarbeitern zu rechnen ist.

Den ganzen Beitrag lesen »

Beitrag drucken Beitrag drucken

Wir reden hier vom «Configuration Management» (Konfigurations-Management) im engeren Sinne, als organisatorische Einheit bzw. als Disziplin innerhalb des umfassenden SCCM (Software Change and Configuration Management).

Aufgabe: Das Configuration Management legt Konfigurationen fest.
Im Maschinenbau würde man von Baugruppen sprechen, dargestellt durch eine Stückliste. Es bündelt vorhandene Software-Artefakte (a bis e) zu logischen Einheiten (Konfigurationen, KO1 bis KO3), die wiederum zu grösseren logischen Einheiten bzw. Konfigurationen zusammengefasst werden können (Software-Produkt oder -Teilprodukt, Change-Paket, neuer Release usw.). Eine ganze Software-Anwendung ist auch eine Konfiguration und besteht letzten Endes auch aus einer Menge von Artefakten.

SCCM Disziplin: Configuration ManagementGrosses Bild

SCCM Disziplin: Configuration Management

Eine Konfiguration kann und muss nach Bedarf geändert werden können (KO2). Jede Änderung an einer Konfiguration wird im Versionsverwaltungs-System gespeichert und versioniert.

Diese Einheiten werden ihrerseits über das «Change Management» den Change Requests zugeordnet.

Den ganzen Beitrag lesen »

Beitrag drucken Beitrag drucken

Paul Chautems

Der Change Request als Input für SCCM

Software, wo und wie auch immer sie eingesetzt wird, unterliegt einem stetigen Wandel. Endbenutzer und Kunden stellen neue Anforderungen (Requirements), wollen zusätzliche Informationen auf Bildschirmmasken und Druck-Output haben (Enhancements), melden nicht korrekt angezeigte Informationen oder gar schwerwiegende Fehler (Problems). In jedem Fall führt dies zu einem Änderungswunsch, einem Change Request.

Je nach Endbenutzer werden Änderungswünsche manuell auf Änderungsformularen, als Word-Dokumente, als E-Mails oder im Idealfall in einem Ticket-System erfasst und per Post oder elektronisch an die IT-Abteilung weitergeleitet — und es werden immer mehr! Ein Gremium (Release Management) sichtet und beurteilt die Change Requests, lehnt sie ab oder genehmigt sie, klassifiziert sie nach Dringlichkeit und versieht sie sozusagen mit einem «Laufzettel».

Software Change and Configuration ManagementGrosses Bild

Change Request als Input für das SCCM

Ohne eine integrierte Software-Verwaltung

  • verlieren die IT-Führungskräfte spätestens ab diesem Zeitpunkt den Überblick über den Stand der Entwicklungsprojekte.
  • können Anfragen von Endbenutzern zu einem Change Request nur vom zuständigen Entwickler beantwortet werden. Aber welcher Entwickler ist zuständig?
  • ist es nicht möglich, den Zusammenhang zwischen Change Requests und den davon betroffenen Software-Artefakten nachzuvollziehen.

Den ganzen Beitrag lesen »

Beitrag drucken Beitrag drucken

Paul Chautems

Was ist SCCM?

Das Software Change and Configuration Management (SCCM) ist eine Spezialisierung des Konfigurations-Managements auf alle Aktivitäten im Bereich der Software-Entwicklung (engl. software engineering).

SCCM integriert Kernprozesse und unterstützende Prozesse. Es verwaltet Änderungsanforderungen (Change Requests[4]) ausAnforderungen[1] und Programmfehlern[2,3]. Es führt Buch über alle Zustände (Status, Änderungen) an Source-Code und Dokumenten, die während der Software-Entwicklung geändert werden. SCCM entspricht einer «Buchhaltung für Software».

Software-Verwaltung
Grosses Bild

Software Verwaltung

SCCM ist nicht nur eine lästige, jedoch unerlässliche (Neben-)Aufgabe der Entwickler, sondern SCCM-Prozesse begleiten alle am Lebenslauf der Software beteiligten Personen, das heisst: neben den Entwicklern auch Support-Leute, Projektleiter, Tester, Integratoren usw.

SCCM ist ein System von Regeln. Je besser diese Regeln in Form von Organisation, Technik, Administration, Werkzeugen und Automatismen implementiert sind, desto reibungsloser funktioniert diese Infrastruktur. Wir halten uns an das folgende Zitat:

«SCCM is first an attitude; second, a process; and only third, a set of tools.» [B. Weatherall, 1997]

SCCM ist eine Infrastruktur für die Software-Verwaltung. Je besser das SCCM-System alle Prozesse der Software-Entwicklung unterstützt, integriert und automatisiert, desto besser sind die Entwicklungsresultate.

SCCM erlaubt es, Änderungsanforderungen im Zeitverlauf und im Fertigungsgrad zu kontrollieren. Es liefert jederzeit aktuelle Reports und Kennzahlen über den aktuellen Projektstand und ermöglicht dadurch IT-, Entwicklungs- und Projektleitern sowie Anwendungsverantwortlichen wirkungsvolle Planung und Kontrolle.

SCCM garantiert durch Versionierung die Nachverfolgbarkeit aller Änderungen an Artefakten (Spezifikationen, Source-Code, Dokumentation) zu einem Änderungsauftrag. Jede Änderung an einem Auftrag wird protokolliert und historisiert.

SCCM erlaubt es, Konfigurationen (eine Menge von Änderungsanforderungen inkl. aller betroffenen Artefakte für einen neuen Release) und alle ihre Änderungen im Zeitverlauf zu kontrollieren. SCCM garantiert die Integrität und Nachverfolgbarkeit aller Konfigurationen und die Möglichkeit der Wiederherstellbarkeit einer älteren, lauffähigen Version.

SCCM hat mehrere Ziele

Beitrag drucken Beitrag drucken

Zwischen ITIL (IT Infrastructure Library) und SCCM gibt es Schnittstellen. Um effizient zu sein, müssen beide aufeinander abgestimmt sein. ITIL und SCCM sind unverzichtbare Bausteine im Puzzle des Applikationsmanagements.

ITIL (IT Infrastructure Library) ist seit einiger Zeit ein Dauerthema. Dabei wird die CMDB (Configuration Management Database) fast so oft genannt wie ITIL, und selbst wer sich nur oberflächlich mit ITIL befasst, stösst rasch auf ein Configuration Management innerhalb von ITIL. Deshalb stellen sich Fragen wie: Was hat das Configuration Management mit jenem in ITIL bzw. mit der CMDB zu tun? Ist es zwei Mal dasselbe, oder sind es zwei verschiedene Dinge? Läuft da etwas doppelt? Gibt es Berührungspunkte?

Bei ITIL geht es um IT-Services.

In ITIL geht es um das Management von IT-Services: Ein IT-Service ist eine Dienstleistung, die die IT gegenüber dem (internen) Kunden erbringt. Dienstleistung verstanden in einem umfassenden Sinn, d.h. als die Summe von Hardware, Software, Telekommunikation, Logistik, Beratung, Unterstützung, Ausführung von Verwaltungsarbeiten, Abläufen usw. Direkte Nutzniesser des ITIL sind die Benutzer oder Kunden, die einen IT-Service beanspruchen.

Bei SCCM geht es um die Software.

Management- und Verwaltungsgegenstand des SCCMSoftware Change and Configuration Management — sind alle Artefakte, die für das Entwickeln und Pflegen von Software erzeugt werden: Anforderungen, Problemmeldungen, Source-Code, Dokumentation usw. Direkte Nutzniesser sind die Software-Entwickler, Projekt- und IT-Leiter; indirekt profitieren gerade die Kunden und Benutzer von SCCM.

ITIL und SCCM haben miteinander zu tun.

Wenn innerhalb von ITIL ein IT-Service neu geschaffen oder verändert wird — in ITIL «Service Transition» genannt — dann gehört meistens auch Software dazu, die neu geschrieben oder angepasst wird: ITIL steuert den Prozess für die Veränderung des IT-Service aus der Sicht des Service-Benutzers, SCCM kümmert sich um die Software.

Die Kunst besteht darin, die Prozesse und Mittel von SCCM und ITIL aufeinander abzustimmen und zu koordinieren, so dass keine Doppelspurigkeiten und keine Redundanzen aber auch keine Lücken entstehen. Diesen Idealzustand erreicht heute wohl kaum jemand.

Die Darstellung aus unserem SCCM-Referenzmodell — ein Modell für die Praxis macht den Zusammenhang zwischen IT-Service-Management (ITIL) und SCCM sichtbar:

SCCM Kontext
Grosses Bild

SCCM Kontext

Zudem wird klar, dass weder ITIL noch SCCM das Allheilmittel sind, um alle IT-Probleme zu lösen: Es sind unverzichtbare Bausteine in einem Puzzle.