SaaS oder kein SaaS, das ist hier die Frage! (Teil 2)

von Karola am 03. Juli 2011

Nun kommen wir der Antwort der Frage noch ein Stück näher. Die nachfolgenden Merkmale sind ebenfalls wichtig, wenn man SaaS unter all den Anwendungen erkennen möchte.

Serviceabrechnung basierend auf dem Verbrauch

Wie bei allen Cloud Computing Services wird auch SaaS flexibel abgerechnet. Die Software wird zum Mietpreis zur Verfügung gestellt und die tatsächliche Nutzungszeit wird erfasst. Diese Praxis macht die Abrechnung nach dem tatsächlichen Verbrauch möglich und der Kauf von Software ist nicht nötig. Der Servicegedanke steht hier im Vordergrund.

Service-on-Demand (SoD) und Skalierbarkeit

Die Skalierbarkeit bzw. Erweiterung des Service ist ein wichtiger Faktor bei SaaS. Der Anbieter managt die IT-Infrastruktur und die vorhandenen Ressourcen. Er kann sie den Kunden flexibel zur Verfügung stellen, damit jeder Kunde den optimalen Service erhält.

Datenspeicherung, Datensicherheit und Online-Collaboration

Eine Grundidee des Cloud Computing ist die komfortable Nutzung. Dazu gehört auch, dass ein SaaS-Anbieter die Datenspeicherung für den Kunden übernimmt. Der Kunde muss sich jedoch darauf verlassen, dass seine Daten sicher vom SaaS-Anbieter gespeichert werden. Im optimalen Fall macht die Anwendung auch ein paralleles Arbeiten möglich, so dass Mitarbeiter gemeinsam an Dateien arbeiten können. Ein Beispiel für die gemeinsame Nutzung von einem Dokument bzw. Online-Collaboration mit SaaS ist Google Docs.

Seid gespannt auf den nächsten und letzten Teil 3!

Mythos 1: Cloud Computing bedeutet EINE Cloud

von Karola am 18. Oktober 2011

Für Neulinge im Bereich Cloud Computing erscheint die „Cloud“ anfangs als eine große Wolke. Tatsache ist jedoch, dass es unterschiedliche Clouds gibt. Sie werden alle unter dem Begriff „Cloud“ verallgemeinert. Dies kann unter Umständen zu Missverständnissen führen.

Nach heutigem Stand werden drei Formen bzw. Servicemodelle der Cloud klar unterschieden:

  • SaaS = Software-as-a-Service
  • PaaS = Platform-as-a-Service
  • IaaS = Infrastructure-as-a-Service

Um den Mythos aufzuklären, stelle ich die drei Modelle noch einmal kurz vor.

SaaS

Software aus der Cloud wird den Anwendern ohne Installation über das Internet zur Verfügung gestellt. Dabei sind beim Anwender geringe oder gar keine Anpassungen ihrer Infrastruktur notwendig.

PaaS

Plattform aus der Cloud bedeutet, dass den Anwendern eine Entwicklungsumgebung bereitgestellt wird (APIs oder Entwicklungsplattforem). Auf diesen Plattformen entwickelt der Kunde seine Anwendungen und betreibt sie anschließend in der Cloud.

IaaS

Bei Infrastrktur aus der Cloud werden grundlegende Ressourcen einer IT-Architektur als Dienstleistung in Anspruch genommen. Solche Ressourcen sind bspw. Rechenleistung, Arbeitsspeicher und Datenspeicher. Es handelt sich meist um virtuelle Server ohne Anwendungen, die den Anwendern bereitgestellt werden.

Die Servicemodelle der Cloud sind für unterschiedliche Applikationen und Datentypen bestimmt. Deshalb gibt es nicht die EINE Cloud. Jeder Interessierte sollte sich informieren, welche Cloud für ihn die richtige ist.

Praxis in der Cloud: Hosting von Anwendungen (3)

von Karola am 08. September 2011

Ein Hauptmerkmal von Cloud Computing ist die Auslagerung von IT in unterschiedlicher Form. Es können ganze Infrastrukturen ausgelagert werden, aber auch kleinere Teile wie Datenspeicher und Anwendungen. Anwendungen werden in Form von Software-as-a-Service ausgelagert.

SaaS als Servicemodell des Cloud Computing erleichtert vielen Unternehmen den IT-Alltag. Bis zur Entstehung von SaaS waren alle Unternehmen gezwungen, ihre eigene Infrastruktur für die Nutzung von lokalen Anwendungen aufzubauen. Die Bereitstellung und Wartung nahm neben dem Kerngeschäft viel Zeit in Anspruch. SaaS macht es heutzutage möglich, dass Anwendungen online gehostet und verwendet werden können. Software wird von entsprechenden Anbietern online zur Verfügung gestellt. Die Aufgaben rund um Hosting und Updates übernehmen die Cloud-Anbieter selbst.

SaaS ist das Haupteinsatzgebiet von Cloud Computing. Das ist auch kein Wunder, denn für den Kunden ergeben sich einige Vorteile. Einerseits können Kosten gespart werden, andererseits muss sich ein Unternehmen weniger um die IT-Verwaltung kümmern. Die Erledigung der notwendigen, aber zeitraubenden Tätigkeiten ist im Service inklusive.

Aus diesem Rundumservice ergeben sich hohe Herausforderungen für die Anbieter von SaaS. Sie müssen dafür Sorge tragen, dass auch alle Serviceleistungen einwandfrei funktionieren. Damit dies gewährleistet werden kann, benötigen die Anbieter eine komplexe Infrastruktur zum Hosting aller Anwendungen. Die Infrastruktur sollte skalierbar sein und auch in hohen Performancezeiten standhalten.

Ein Vorfahre der Cloud: Grid Computing als Basis des Cloud Computing

von Karola am 13. Juli 2011

Cloud Computing ist im Trend! Doch das Rad wurde nicht neu erfunden. Wesentliche Impulse und Technologien wurden aus dem Grid Computing übernommen.

Grid Computing ist eine Form des verteilten Rechnens. Dabei wird aus einem Cluster von lose gekoppelten Computern ein „Supercomputer“ erzeugt. Ein Cluster ist übrigens ein sogenannter Rechnerverbund/Computercluster, der eine Anzahl von vernetzten Computern beschreibt. In der Regel sind die einzelnen Computer eines Clusters untereinander über ein schnelles Netzwerk verbunden.

Die Intention des Grid Computing ist es, Rechenkapazitäten und Informationen über die Gren­zen von Organisationseinheiten gemeinsam zu nutzen. Die geteilte Nutzung soll in einer sicheren und effizienten Weise funktionieren.

Grid Computing basiert auf drei Basisprinzipien:

  • Standardisierung,
  • Abstraktion von Hardware und
  • Automatisierung.

Ein Grid koordiniert dezentrale Ressourcen und stellt Rechen- und Speicherkapazitäten über das Internet bereit. Der Zugriff erfolgt wiederum über standardisierte Schnittstellen, die durch automatisierte Verteilungsmechanismen unterstützt werden. Standardisierung ist ein wichtiges Mittel, um auf die verschiedenen Ressourcen zuzugreifen, diese zu reservieren, zu überwachen und als ein virtuelles System zu betreiben.

Die gemeinsame, effektive Nutzung von IT-Ressourcen und der Zugriff über das Internet haben sich im Grid Computing etabliert und finden sich auch im Cloud Computing-Modell wieder. Die Erweiterung von Grids durch Rechen-, Speicher- und Netzwerkkapazitäten bei Bedarf ist ebenso Grundlage der Cloud-Infrastruktur.

Grid Computing hat den Weg für Flexibilisierung verfüg­barer Ressourcen und erste nutzungsabhängige Servicemodelle geebnet. Dies sind Grundlagen des Cloud Computing. Des Weiteren lierfert Grid Computing bereits erste Ansätze für Steuerung und Management durch den Anwender.

Grids und Clouds folgen dem Konzept, IT „as a Service“ zur Verfügung zu stellen. Obwohl beide Modelle viel gemeinsam haben, gibt es auch klare Unter­schiede zwischen Grid Computing und Cloud Computing:

  • Grid-Infrastrukturen sind „Langläufer“ mit Vorausplanung und definiertem Ende. Anders ist es bei Clouds – sie sind durch dynamischen Res­sourcenverbrauch ohne Vorausplanung gekennzeichnet.
  • Die Nutzeranzahl von Web-Anwendungen in der Cloud übersteigt deutlich die typische Anzahl der Grid-Nutzer.
  • Virtualisierung, Nutzerzugriff auf Betriebs­systeme und dynamische Software-Provisionierung ist kein generischer Bestandteil von Grids. Dies sind jedoch die Grundvoraussetzungen des Cloud Computings.
  • Grid Computing ist im Wesentlichen PaaS und in Teilbereichen IaaS. Beim Cloud Compu­ting liegt der Fokus auf modernen standardisierten Web-Schnittstellen und programmatische Kontrolle durch den Nutzer.
  • Grundidee des Grid Computing ist eine effi­ziente, kollaborative und freie Nutzung gemeinsamer IT-Ressourcen. Beim Cloud Computing steht der wirtschaftliche im Vordergrund Aspekt („pay-as-you-go“, „on demand“).

SaaS als Helfer der Kommunikation

von Karola am 07. August 2011

Eine verbreitete Anwendung von SaaS findet man in unterschiedlichen Prozessen der Unternehmenskommunikation. Aufgrund der Verbreitung hat sich ein spezieller Teilbereich von SaaS herausgebildet – Communication as a Service (CaaS). Sinn und Zweck des Teilbereichs ist die Nutzung von Kommunikationsdiensten über das Internet oder VPN. Der Schlüssel der Dienste liegt in „Unified Communications“. Unter dieser „vereinheitlichten Kommunikation“ ist die  Integration und Zusammenführung von Kommunikationsmedien in einer einheitlichen Anwendungsumgebung zu verstehen. Dadurch sind die unterschiedlichen Nachrichten jederzeit auf jedem Gerät unter einer Benutzeroberfläche abrufbar. Einige Beispiele für Unified Communications sind:

  • Voice over IP-Telefonie,
  • Instant Messaging
  • Webkonferenzen
  • E-Mail

Im Rahmen von CaaS lagern Unternehmen ihre Kommunikationsinfrastruktur an einen externen Anbieter aus. Der Anbieter stellt dann netzbasiert Telefonie- und Kommunikationsanwendungen (Hardware und Software) bereit. Dabei können die Services sowohl über ein Internetprotokoll (IP Centrex) als auch über Mobilfunk angeboten werden.

CaaS ist ein Schritt in die Cloud auf dem Weg der Telekommunikation. Einfache Telefonanwendungen lassen sich von einer virtuellen Telefonanlage bereitstellen. Das bedeutet, die Funktionen der Telefonanlage stehen als Software bereit. Die virtuelle Telefonanlage wird auf einem Server in der Cloud ausgeführt.

Im Vergleich zu traditionellen Telefonanlagen bietet CaaS erweiterte Funktionen, die sich in Verbindung mit weiteren Cloud-Diensten im Büroalltag optimal ergänzen. Ein Beispiel dafür ist die Integration von Telefonfunktionen in Groupware-Anwendungen sowie Unified-Communications- und Contact-Center-Funktionen. Bei erfolgreichem Einsatz von CaaS-Lösungen profitiert ein Unternehmen insbesondere von deutlichen Kosteneinsparungen und geringem Administrationsaufwand. Durch die Cloud-Charakteristik zeichnet sich das CaaS-Konzept durch Effizienz und Flexibilität gegenüber dem Eigenbetrieb und anderen externen Bereitstellungsmodellen wie Managed oder Hosted Services.

Praxis in der Cloud: High Performance Computing (4)

von Karola am 12. September 2011

Viele Unternehmen stehen heutzutage vor der Herausforderung, dass sie bei der Lösung von Problemen große Mengen an Daten verarbeiten. Sie benötigen u. a. hohe Rechenleistungen oder große Speicherkapazitäten. Solche Prozesse bzw. Rechnerleistungen werden als High Performance Computing (HPC) bezeichnet. Der Bedarf an hohen Rechnerleistungen ist in den letzten Jahren stark angestiegen. Vor allem Unternehmen aus den Bereichen der Medien, Pharma- und Medizintechnik sowie Finanzdienstleitungen sind davon betroffen.

Der hohe Bedarf betrifft jedoch oft nur Projektzeiträume und ist kein Dauerzustand. Trotzdem muss sich jedes Unternehmen an diese Umstände flexibel anpassen. Der Prozess wird erschwert durch Verwaltungsaufgaben wie Budgetabsegnung, die Festlegung der Zeit für die Rechenzentren, die Einrichtung einer neuen Server, die Verwaltung der Mitarbeiter, den Erwerb und die Bereitstellung von Geräten und vieles mehr. Es kann also passieren, dass ein Unternehmen durch die vorhandene Infrastruktur oder das Budget eingeschränkt ist. Dann reichen die Kapazitäten oder Zeitvorgaben des Projekts nicht aus, um die notwendigen Schritte einzuleiten. Für jedes einzelne Projekt werden die Kapazitäten der Infrastrukturen oftmals stark erweitert, da die bestehende Infrastruktur nicht leistungsfähig genug ist. Im schlimmsten Fall fehlen die nötigen finanziellen und zeitlichen Mittel, um das „IT-Upgrate“ gemäß den Anforderungen durchzuführen.

Ein weiterer potenzieller Störfaktor ist der nötige Aufwand zur Errichtung und dem Erweitern der Serverumgebungen. Hard- und Software beschaffen sich nicht durch Zauberhand, sondern müssen im Projektverlauf geordert werden. Die erweiterte Infrastruktur muss verwaltet werden (u.a. Zuweisung des Speichers, Konfiguration der Batchprozesse, etc.), um den Geschäftszweck zu erfüllen. Im Zuge dessen benötigen einige Mitarbeiter entsprechende Fortbildung. Dafür wird wieder zusätzliche Zeit benötigt.

Sobald das Projekt dann abgeschlossen ist, stehen neue organisatorische Aufgaben an. Um die Ressourcen nicht ungenutzt zu lassen, müssen sie verwaltet und neuen Projekten oder Aufgaben zugewiesen werden. Wird dies nicht umgehend gemacht, dann sind die verfügbaren Ressourcen ungenutzt und verursachen Kosten ohne einen Mehrwert zu leisten. Das wäre reine Verschwendung.

Viele der beschriebenen Probleme und Knackpunkte können mittels Cloud Computing minimiert werden. Cloud Computing unterstützt Projekte aus dem Bereich des HPC bedarfsgerecht und kosteneffizient. Viele Cloud-Anbieter ermöglichen es, die IT-Ressourcen eines Unternehmens bspw. in einer einzigen leistungsstarken Private Cloud zu vereinen. Dadurch können Kunden noch einfacher auf Rechenleistung zugreifen. Die unternehmensinternen Systemadministratoren werden im gleichen Zug bei der IT-Verwaltung entlasten. In der Cloud können freie Ressourcen dann je nach geschäftlichen oder technischen Anforderungen flexibel eingesetzt werden.

SaaS oder kein SaaS, das ist hier die Frage! (Teil 3)

von Karola am 04. Juli 2011

Ich war auf der Suche nach Kriterien zur Abgrenzung von SaaS zu „normaler“ Software. Auch die folgenden Punkte sollte man dabei berücksichtigen.

Softwarerelease

Viele inhaltsorientierte Webseiten werden in regelmäßigen Abständen auf den neusten Stand gebracht. Das bedeutet, dass Inhalte aktualisiert und neue Informationen online gehen, jedoch kein neues Release der Software verwendet wird. Es geschieht also unabhängig vom jeweiligen Releasestand der dahinterstehenden Software, z.B. einem Content-Management-System. Anders ist es bei SaaS – die Software wird im Hintergrund vom Anbieter gepflegt und releast.

Zielgruppe der Inhalte

Normale Webseiten und SaaS unterscheiden sich in ihrer Zielgruppe. SaaS hat zum Ziel, dass die generierten Inhalte und Daten nur intern genutzt und gesehen werden können. Bei normalen inhaltsbezogenen Webseiten dient die Veröffentlichung der Inhalte einem breiten Publikum.

Alle genannten Punkte von Teil 1 bis 3 sind nur ein erster Ansatz. Die Liste der Kriterien zur Abgrenzung von SaaS lässt sich sicherlich noch auf andere inhalts-, organisations- und rechtsbezogene Merkmale erweitern.

Mythos 2: Cloud Computing ist einfach

von Karola am 12. November 2011

Wenn man heutzutage mit auf die Cloud aufspringen möchte, bietet der Markt viele attraktive Dienstleistungsangebote. Man muss den Einstieg also nicht alleine bewerkstelligen, sondern findet viele Anbieter von Cloud-Services, die es einem anscheinend einfacher machen. Man findet viele Angebote im Sinne eines „Cloud-Komplettpaketes“ auf dem Markt. Die Schwierigkeit dabei ist, dass man den optimalen Partner findet.

Die Aussagen und Versprechen mancher Cloud-Anbieter sollte man genau unter die Lupe nehmen. Denn sie wollen Kunden und Partnern weiß machen, dass mit Cloud Computing alles einfacher wird. Man hört oft, dass es keinen Ärger mehr mit der Implementierung und dem Betrieb von Hard- und Software gibt. Ebenso wenig treten Schwierigkeiten mit Updates und Upgrades auf. Solche Sätze klingen sehr vielversprechend, doch sind sie bestenfalls Zukunftsmusik. Cloud Computing ist in der Entwicklung und Problemfälle sind noch nicht auszuschließen. Doch keiner sagt, dass aus der Vision nicht Wahrheit werden kann.

Bei der Cloud-Anbieterauswahl sollte man sich das Know-How, Erfahrungen und positive Referenzen der Anbieter genau anschauen. Die Angebote reichen vom Komplett-Service bis hin zu Beratung und Integration im Einzelnen. Die Anbieter wollen die Bedenken gegenüber Cloud Computing wett machen und ermöglichen mit ihrer Unterstützung bei der Integration von Cloud-Diensten oder -Infrastrukturen in die hauseigene IT einen leichteren Einstieg.

Doch wenn eine Standard-Cloud-Anwendung an die eigenen Bedürfnisse angepasst werden muss, ist die Integration logischerweise umfangreicher und zeitaufwendiger. Umfassende Customizing-Dienste sollten überdacht und mit Sorgfalt durchgeführt werden. Denn jede spezielle Kundenanpassung erschwert zukünftige Upgrade in der Cloud. So könnte die Arbeit in der Cloud zu einem aufwändigen Projekt werden.

Ein kleiner Exkurs: Web Services

von Karola am 29. Juli 2011

Im letzten Post sprach ich von SOA als Voraussetzung für effektives Cloud Computing. Die Teile der modularisierten SOA-Architektur kommunizieren anhand von Web Services. Deshalb möchte ich kurz erklären, was unter Web Services zu verstehen ist.

Es gibt viele Ansätze zur Definition des Begriffs. Web Services beschreibt im technischen Sinn die automatisierte Kommunikation zwischen Applikationen über Netzwerke, meistens das Internet. Web Services sind eine verteilte Middleware, die die Kommunikation zwischen „Maschine und Maschine“ auf Basis von Web-Protokollen ermöglicht. Einzelne Programme werden über das Internet zu einer Anwendung verknüpft. Die Bereitstellung eines Webservices meint sozusagen die Unterstützung zur Zusammenarbeit zwischen verschiedenen Anwendungsprogrammen, die auf unterschiedlichen Netzwerkrechnern/Plattformen betrieben werden. Genauer gesagt, tauschen die Programme Daten aus und starten ggf. auf entfernten Rechnern Funktionen. Die Interaktion bzw. der Austausch geschieht über XML-basierte Nachrichten, die über Internetprotokolle ausgetauscht werden.

Für Web Services gelten gewisse Kommunikationsstandards für die Formatierung und Bearbeitung von Nachrichten. Man kann zwei Standards unterscheiden:

  • SOAP (Simple Object Access Protocol)
  • REST (REpresentational State Transfer)

SOAP ist ein Nachrichtenstandard, der ein XML-basiertes Nachrichtenformat definiert. REST dagegen beschreibt einen Standard, der auf HTTP aufbaut. Bei beiden Ansätzen werden Services anhand von Uniform Resource Identifiers (URI) identifiziert.

Praxis in der Cloud: Optimierung der Infrastruktur (1)

von Karola am 30. August 2011

Das Cloud-Computing-Prinzip eignet sich besonders für Situationen, in denen Systeme periodischen oder nicht vorhersagbaren Einflüssen ausgesetzt sind. Die Cloud unterstützt ebenso bei stetigem Wachstum. Ich möchte eine paar Beispiele aus der Praxis vorstellen, um diese allgemeine Beschreibung etwas praxisnaher zu machen. Wo wird Cloud Computing also tatsächlich genutzt? Welche Prozesse werden unterstützt?

Die meisten Unternehmen haben eine eigene IT-Infrastruktur, mehr oder weniger komplex. Diese gilt es zu verwalten und zu aktualisieren, um den immer neuen Marktanforderungen gerecht zu werden. Die fortlaufende Aktualisierung braucht Zeit und muss neben dem Tagesgeschäft erledigt werden. Oft verlieren die Unternehmen den Fokus auf die eigenen Kernkompetenzen. Der Fortschritt im eigenen Unternehmen verlangsamt sich und es kann passieren, dass die Konkurrenten vorbeiziehen. Die Konzentration auf die Kernkompetenz ist wichtig, um sich mit von den Mitbewerbern zu abzuheben und hieraus einen Vorteil zu erzielen.

In einem vergangenen Post habe ich bereits den finanziellen Aufwand für traditionelle IT-Infrastrukturen angesprochen. Sie erfordern finanzielle und auch zeitliche Investitionen, damit die Verwaltung und Skalierung von Ressourcen und Kapazitäten in einer kritischen Situation gewährleistet werden kann. Dadurch sinkt gleichzeitig die Produktivität eines Unternehmens.

Der Einsatz von Cloud Computing vereinfacht die Situation. Ein Unternehmen kann seine IT auslagern und bspw. externe Ressourcen schneller an die eigene Situation anpassen. Der Cloud-Anbieter ist dann verantwortlich für die ständige Wartung. Das Unternehmen gewinnt nicht nur Zeit fürs eigene Kerngeschäft, sondern spart auch noch die Kosten für die firmeninterne IT-Anpassung.