OMM WS 15/16

Kartei Details

Karten 33
Sprache Deutsch
Kategorie Informatik
Stufe Universität
Erstellt / Aktualisiert 06.02.2016 / 05.02.2017
Weblink
https://card2brain.ch/box/wirtschaftsinformatik13
Einbinden
<iframe src="https://card2brain.ch/box/wirtschaftsinformatik13/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>

Womit beschäftigt sich ein Wirtschaftsinformatiker und warum hat die IT eine wichtige Bedeutung für Unternehmen?

Ein Wirtschaftsinformatiker befasst sich mit Planung, Entwicklung, Implementierung, dem Betrieb, Weiterentwicklung und ökonomischen Einsatz von Informations- und Kommunikationssystemen.

-Realwissenschaft: Verwaltung und Umfeld

- Formalwissenschaft: Bedarf formaler Beschreibugsverfahren und Theorien

- Ingenieurswissenschaft: Konstruktionssystematik für Informationssysteme

Durch diese Aufgabe wird gewährleistet, dass der Informationsaustausch entlang der Wertschöpfungskette effizienter wird, mehr Informationen über den Markt zur Verfügung stehen und Kunden ein breiteres Informationsspektrum zur Verfügung haben.

Für Unternehmen bedeutet das einen klaren Wettbewerbsvorteil gegenüber Konkurrenten.

Was ist Wirtschaftsinformatik?

- Querschnittswissenschaft zwischen Wirtschaft und Informatik

- Informationssysteme im Unternehemen

- Kozeption, Entwicklung, Einführung, Wartung und Nutzung von Systemen der Computergestützten Informationsverarbeitung

- Betriebliche Anwendungssysteme, helfen Anwender bei Bewältigung der Aufgabe

Was ist Modellierung? Was sind die einzelnen Schritte? Wozu braucht mann sowas?

- Modelierung ist eine Methode der Wirtschaftsinformatik

- Abbildung der Realität (Ist-Modell)

- Abbildung der künftigen Möglichkeiten (Soll-Modell)

 

Schritte der Modellierung:

1. Ausschnitt aus der Realität (Ist-Zustand erfassen)

Modelierung

2. Ist-Modell (Ist-Zustand dokumentieren)

Phantasie

3. Soll-Modell (Verbesserten Zustand abbilden

konstruktion

Realität schaffen/ ändern

organisatorische Umsetzung

 

- Kreislauf, da es ständig Verbesserungsbedarf gibt

- Vereinfachte Beschreibung und Abbildung der realen Welt

- besseres Verständnis von z.B. Prozessen

Was hat Modellierung mit den Wirtschaftsinformatikaufgaben (Beschreibung, Erklärung und Gestaltung zu tun?

Beschreibung: systematische Dokumentierung der Wirklichkeit

Erklärung: Aufgabe, Zusammenhänge der Wirklichkeit von Informationssystemen mit Hilfe von Aussagen, die in einem Begründungszusammenhang stehen zu erklären -> Ermittlung von Gesetzmäßigkeiten

Gestaltung: Die Wirklichkeit so verändern, dass der angestrebte Zielzustand erreicht wird

Was sind wichtige Fragen bei der Modellierung?

- Was soll Modelliert werden?

- Warum soll etwas Modelliert werden?

- Für wen soll etwas Modelliert werden?

> Aus der Beantwortung der grundlegenden Fragen ergeben sich geeignete Modellierungsverfahren, der notwendige Detailierungsgrad, Schwerpunkte des Modells etc.

Was ist der Unterschied zwischen statischer und dynamischer Modellierung?

Statisch: Betrachtung eines Sachverhalts zu einem Zeitpunkt

> Schnappschuss, "Einfrieren", ein Zeitpunkt, keine Veränderung

 

dynamisch: Betrachtung eines Sachverhalts über die Zeit

> Film, Zeitpunkte, Veränderung von Eigenschaften über einen Zeitraum

Was ist Software-Engineering?

Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die Arbeitsteilige, ingenieurmäßige Entwicklung und Anwendung von umfangreichen Softwaresystemen

Oder: Software-Engineering beschäftigt sich mit der Herstellung bzw. Entwicklung von Software, der Organisation und Modellierung der zugehörigen Datenstrukturen und dem Betrieb von Softwaresystemen

Warum Software-Engineering?

Software schließt die Lücke zwischen Problemen in einem Anwendungsbereich und den unspezifischen Fähigkeiten von Rechnern > erfordert gleichzeitig Anwendungs- und Problemlösungswissen

Software ist einer Evolution unterworfen (Bedürfnisse und Technologien ändern sich ständig)

Arbeiten im kleinen != Arbeiten im Großen

> was im kleinen Erfolg bringt, skaliert vielfach nicth

> Viele Probleme entstehen erst bei Arbeiten im Großen

 

n * klein != 1 * groß

> Aufwand steigt überproportional mit Produktgröße

> Quantensprünge im Wachstum

 

nicht linearer Prozess

> Spezifikation, Entwurf und Realisierung sind miteinander verzahnt

Was sind Vorgehensmodelle beim Software-Engineering?

Ein Vorgehensmodell beschreibt die systematische Vorgehensweise einer Softwareentwicklung. Es legt insbesondere die zeitliche Abfolge und Wechselwirkung der Lebenszyklus-Phasen fest uns ist wie folgt charaktisiert:

+ der Softwareentwicklungsprozess wird in Phasen eingeteilt

+ eine Verbesserung von Planbarkeit und Kostenkontrolle wird erreicht

+ stets klar, in welcher Phase das Projekt steht

+ jede Phase schließt mit einem Zwischenprodukt ab (Dokiment, Programm, etc)

- Textdokument (Lastenheft, Pflichtenheft...)

- Code (Programmcode, SQL-Abfrage...)

- Diagramme/ Modelle (ERM, eEPK, UML)

 

Es lassen sich sequenzielle und nicht-sequenzielle Vorgehensmodelle unterscheiden:

- sequenzielle Modelle:

+ Wasserfallmodell

+ V-Modell

 

- nicht -sequenzielle Modelle:

+ inkrementell - iteratives Modell

+ Spiralmodell

Unterscheiden sich Software-Projekte von anderen Ingenieurprojekten? Warum? Warum nicht?

JA:

nach jeder Phase gibt es ein Zwischenprodukt, es ist nicht erforderlich, alle Phasen zu durchlaufen um ein Produkt zu erhalten

Beschreiben Sie unterschiedliche Arten der Softwarebeschaffung/ -bereitstellung. Was sind mögliche Entscheidungskriterien für eine Auswahl?

Bereitstellung von Anwendugssystemen:

BUY: Einführung von Standartsoftware

MAKE: Erstellung von Individualsoftware

+ externe DV - Spezialisten (Fremdabwicklung

+ DV - Abteilung (Eigenentwicklung)

+ Anwender ("enduser Computing")

 

Entscheidungskriterien:

Allgemein:

- Eigene Leistungsfähigkeit

- Spezialität der Aufgaben

- komplexität

 

Standartsoftware:

- Funktionalität

- Benutzerfreundlichkeit,

- systemtechnische Kriterien

- Installations- /Wartungsaufwand

- Kosten

- Anbieter

 

> geringe Spezialität/ Komplexität/ Leisutngsfähigkeit/ Individualität

- Outsourcing, Standartsoftware

> hohe Spzialität/ Komplexität/ Leistungsfähigkeit/ Individualität

- Interne Individualsoftware

BUY: Software, die für den anonymen Markt entwickelt wurde und dann an das Unternehmen angepasst wird (> Customizing) deckt ein genau beschriebenes betriebliches Problemgebiet ab

MAKE: Software, die auf Basis kundenspezifischer Anforderungen genau für ein Verwendungszweck entwickelt wird

Was versteht man unter "agilen Verfahren"?

+ agiles Verfahren basiert auf kontinuierlicher Verbesserung bzw. stetige Entwicklung

> bringt stetige Veränderung des Plans (> Arbeit in Iterationen)

> Fokus auf die Prioritäten des Planungsprozesses

+ Kontinuierliche Anpassung des Planungsprozesses

+ Merkmale:

> Planung wird wichtiger als der Plan selbst

> Änderung des Plans werden ausdrücklich begrüßt

Was ist Coloud Computing? Was ist XaaS, IaaS, PaaS, SaaS?

> möglichkeit, Softwaredienste über das Internet anzufragen

> Vormals im Unternehmen betriebende Lösungen können mittels Cloud Computing von externen Anbietern über das Internet bezogen werden

> Speicher von Daten in einem entfernten Rechenzentrum

XaaS: X as a Service > bezeichnet einen Ansatz "alles" als Service zur Verfügung zu stellen und zu konsumieren

IaaS: Infastructur as a Service (Technische IT)

> Infastrukturdienste - Ressourcen, z.B. Server mieten

PaaS: Platform as a Service (Technische IT)

> Programmierungsumgebung, Ausführungsumgebung (z.B. OS, Youtube, etc.)

SaaS: Software as a Service (Business User/ Einzelkunden)

> Fernzugriff auf Software (webbasiert)/ Anwendungen, Anwendungsdienste

Vor- und Nachteile von Cloud Computing

+ Kosten relativ gering, da hauptsächlich nach Nutzung abgerechnet wird

+ hohe Aktualität

+ immer Verfügbar

+ hohe Flexibilität

 

- Netzzugang zwingend notwendig

- Datenspeicher/ Sicherheitslocken wahrscheinlich

- ungewisse Verlässlichketi

- Arbeitstempo mittelmäßig (je nach Internetzugang & Serverauslastung)

Der Software-(Development-) Lebenszyklus - Phasenkonzepte

Phasenkonzepte (SDLC - System Development Live Cycle) sind die ältesten Ansätze zur Systementwicklung

- Beschreiben einen strukturierten sequenziellen Ablauf, der durch zunehmende Detaillierung der Ergebnisse gekennzeichnet ist

- werden häufig grafisch als Treppe dargestellt und als Wasserfallmodell bezeichnet.

Wasserfallmodell

1. Analyse:

Ist-Situation: Identifizierung von Schwachstellen, Erhebung der Benutzeranforderungen, Leistungsumfang des zu entwickelnden Systems

2. Entwurf:

Gesamtstruktur des Systems, Programme, die Funktionen realiesieren, Schnittstellen zwischen Programmen, logischen Datenstrukture der Anwendung, Benutzerschnittstelle

3. Implementierung (Umsetzung):

Entwurf wird in laufende Programme/ Datenbanken umgesetzt, Überprüfung mit Testfällen

4. Einführung

Umstellung von allem auf das neue System

Formen: Stichtagsumstellung, Parallelumstellung, Ortsumstellung, stufenweise Umstellung

5. Laufender Betrieb:

Systempflege (Beseitigung Problemgehler), Systemwartung (funktionale Anpassungen im Programm)

 

Probleme und Grenzen:

- Ungenaue Schätzung der Kosten

- Schwierigkeit für Kunden, sich das fertige System vorzustellen

- Kunden die nicht wissen was sie wollen kann man kein Pflichtheft erstellen

- Endgültige Anforderungen werden erst bei der Demonstration des Systems deutlich

- wandel von Anforderungen wird nicht berücksichtigt, stattdessen werden die Anforderungen frühzeitig eigefroren

- Dokument am Ende jeder Phase: Papierflut und Bürokratie, oft ohne Qualitätsvorteil

V-Modell

- Verfeinerung des Wasserfallmodells

- Fokussierung auf Tests, mit dem Ziel maximaler Qualität

- In Deutschland entwickelt, vorgeschriebenes Modell für den Öffentlichen Sektor

Inkrementell-iterative Modelle/ Evolutionäres Prototyping

Inkrementell: das Softwareprodukt wird nicht in eimal, sondern in Ausbaustufen (Versionen) entwickelt.

Iterativ: die Lebenszyklusphasen werden mehrere Male zyklisch durchlaufen

Prototyping

Schneller und billiger Bau einer Vorabversion (Prototyp) des Systems ohne große Analysephase, parallel Design und Anforderung, Anwender können früh testen!

Ziele:

- Unterstützung der Anforderungsdefinition durch künftige Nutzer

- Verkürzung des Entwicklungsprozesses

- Erhöhung der Flexibilität gegenüber den Anforderunge

- Erhöht die Ergebnisqualität

- Verbesserung der Akzeptanz

 

Typen:

- Horizontaler Prototyp (ausgewählter Bereich der Architektur wird erstellt)

- Vertikaler Prototyp (ausgewählte Aspekte in ihrer Gänze)

- Wegwerf - Prototyp (wenn ablauffähiges Modell)

- Wiederverwendbarer Prototyp (wesentliche Teile werden übernommen)

Vor- und Nachteile von Prototyping

+ gut für die Gestalltung der Benutzeroberfläche

+ frühe Einbindung der Nutzer in den Entwicklungsprozess

+ bessere Erfüllung der Nutzeranforderung

+ Entwicklungskosten und -zeit reduziert

 

- Große und komplexe Anwendung kaum geeignet

- teilweise wird der Prototyp dann verwendet

- keine angemessene Dokumentation des Prozesses

- hohe Anforderungen/ Wechsel der Anwender

Spiralmodell

+ Eingeteilt in 4 Einzelschritte:

1. Festlegung von Zielen, Alternativen, Begrenzungen

2. Bewertung der Alternativen/ Identifizierung und Beseitigung von Risiken

3. Entwicklung/ Prüfung des Produkts der nächsten Ebene

4. Planung der nächsten Phase

+ Ausgehend von der ersten Zielfestlegung (im Inneren der Spirale) werden die 4 Einzelschritte nacheinander durchlaufen

+ ständiger Wechsel zwischen den verschiedenen Aufgaben

Vor- und Nachteile Spiralmodell

+ Kombination der Vorteile des Prototypings un der Phasenmodelle

+ anpassungsfähige Vorgehensweise

+ Ziel: bestmögliche Mischung vorhandener Methoden

- Fehleinschätzung bei Risikobewertunge können Fehlentwicklung auslösen

- oft nicht einsetzbar aufgrund strikter Anforderungen und enger zeitlicher Restriktionen

Agile Vorgehensmodelle

Agile Planung balaciert den Planungsaufwand und die investierte Zeit mit dem Wissen, dass der Plan über die Projektlaufzeit geändert wird.

Agiles Team: arbeitet als EIN Team (aber unterschiedliche Rollen), arbeitet in kurzen Iterationen fokussiert auf die Prioritäten des Geschäfts, überprüft und adaptiert ständig.

+ Ansätze, die den Entwicklungsprozes durch einen Abbau der Bürokratisierung und die stärkere Berücksichtigung menschlicher Aspekte flexibler, schlanker und effizienter machen

+ Werte aus dem "Manifesto for Agile Software Development"

1. Menschen/ Interaktionen wichtiger als Prozesse/ Werkzeuge

2. Funktioneierende Software wichtiger als umfassende Dokumentation

3. Zusammenarbeit mit dem Kunden wichtiger als ursprünglich. Leistungsbeschreibung

4. Eingehen auf Veränderung wichtiger als Festhalten an einem Plan

+ Verschiedene Methoden:

> Test-driven Development

> Continuous Integration (Watch Code, Build, Unit Test, Publish Result, Watch Code)

> Unit-Testing

> Pair Programming (Abwechseln von zwei Personen beim Programmieren)

Extreme Programming (XP) - Pair-Programming

- Basiert auf 5 Werten (Einfachheit, Kommunikation, Feedback, Respekt, Mut)

- Pair Programming:

Quarterly Cycle (alle 3 Monate wird getestet)

Shared Code (gesammter Code gehört Team)

Vorteile: Agilität, schnelle Reaktion auf ändernde Anforderungen

Nachteil: Team muss sich mit Werten/ Technicken identifizieren können, neue Technik muss evtl. eingeübt werden.

Scum - Pair Programming

- klare Struktur/ eindeutig definierte Rollen

- Mittelpunkt des Scum bildet ein selbstorganisiertes Entwicklerteam

Projektleiter = Scum Master

Sprints = 2 - 4 wöchige Entwicklungszyklen

Vorgehensmodell ERP-Einführung Phasen

Phase 1: Projektvorbereitung

> Planung, technische Vorraussetzungen, Qualitätsprüfung

Phase 2: Business Blueprint

> Training Projektteam, Aufsetzen Systemumgebung, Definition Orga.struktur

Phase 3: Realisierung

> Fertigstellung und Feinkonfiguration, Anwendungsschnittstellen, Erweiterungen

Phase 4: Vorbereitung der produktive Phase

> Endbenutzertraining, Festlegen der Aktivitäten nach Beginn der produktivien Phase

Phase 5: Übergang in die produktive Phase

> Abschluss Projektmanagement, Einspielen des Produktivsystems, Prüfung und Freigabe

Warum werden agile Methoden in der Softwareentwicklung eingesetzt?

- Abbau der Bürokratiesierung

- Stärkere Berücksichtigung menschlicher Aspekte

- Entwicklungsprozess wird flexibler, schlanker und effizienter werden

Nennen und beschreiben Sie die Schritte des Prototyping

1. Identifizierung der Grundanforderungen

2. Entwicklung eines Arbeitsprototyps

3. Benutzung des Prototyps

Benutzer zufrieden?

4. Ja: lauffähiger Prototyp

5. Nein: Überprüfung und Weiterentwicklung des Prototyps (springt wierder zu 1.)

Nennen sie unterschiedliche Modellierungsmethoden

- Funktionsmodellierung

- Datenmodellierung (ERM, eEPK)

- Prozessmodellierung

Erläutern sie das Architekturmodell ARIS

Architektur integrierter Informationssysteme

- Gesamtzusammenhänge eines IT - Systems werden erfasst

> Relevante Elemente und Beziehungen

- Zerlegung von Beschreibungsobjekten in verschiedenen Schichten

+ Organisationsschicht (Organisationseinheit)

+ Funktionssicht (relevante Informationen)

+ Datensicht (fokussierung relevante Informationen)

+ Steuerungssicht (bildet Beziehungen ab)

- Unterteilung in drei Ebenen

+ Fachkonzept (Beschreibung)

+ DV - Konzept (Umsetzung in Datenverarbeitungssprache)

+ Technische Implementierung (Übertragung auf Hard- und Software)

Welchen Anforderungen sollten Datenbanken genügen?

- kurze Zugriffs und Übertragungszeiten zur schnellen Verarbeitung

- Minimale Redundanz

- (logisch) zusammenhängende Datenbestände (logische Integration)

- Trennung zwischen Datenorganisation und Anwendung > Datenunabhänigkeit

- Datenkonsistenz, Datensicherheit und Datenschutz

- Wirtschaftlichkeit

Erläutern Sie die Grundfunktionen der Datenverarbeitung (DV)

Daten (Input) > Transformation (& Speicherung) > Daten (Output)

Welche unterschiedlichen Einführungsstategien fpr Standartsoftware gibt es und welche Vor- und Nachteile haben sie?

Phasenweise Implementierung:

+ Funktionsorientierte (sequenzielle) Einführung:

> Ein Funktionsbereich nach dem anderen wird mit neuer Software ausgestattet.

> Nachteile:

- Geschäftsprozesse können bei deisem Vorgehen nicht vollständig von der neuen Software abgedeckt werden, da Funktionalitäten nicht verfügbar sind

-Schnittstellen zu Altsystem (Legacy-Systemen) müssen gebaut werden.

 

+ Prozessorientierte Einführung:

> Alle Module, die zu einem Geschäftsprozess gehören, werden gleichzeitig eingeführt.

Nachteile:

- Schnittstellenproblem zeigt sich an den Prozessgrenzen

- Erhöhung von Komplexität und Risiko im Vgl. zur funktionsorientierten Methode

 

Big-Bang-Implementierung: in der VL in Zusammenhang mit ERP Einführung genannt

Big Banng einführung:

- Vollständige Ablösung des Altsystams zum Stichtag

Roll Out Einführung:

- Initialeinführung in eimen dezentralen Organisationsbereich und anschließender Roll-Out des Mastersystems (als lokaler Big-Bang)