DI Modul 3 Flashcards
Informationssystem
können Digitales Gut sein oder technische Infrastruktur darstellen für Produktion von Digitalen Gütern
besteht aus Menschen und Maschinen, die gemeinsam Information und Daten erzeugen, verarbeiten und nutzen
PDCA Zyklus
Wie entstehen Informationssysteme?
Plan - > Do -> Check -> Act
IS-Planung -> IS-Entwicklung -> IS-Betrieb
IS-Planung
-darunter versteht man generell ein vorbereitendes Durchdenken
- umfasst die gedankliche Vorwegnahme von zukünftigen Aktivitäten, deren konzeptionelle Abfolge und die
Bereitstellung von Ressourcen
-Aktivitäten können so mit möglichst geringen Reibungsverlusten durchgeführt werden
-Strategische Softwareplanung
-IT-Governance
strategische Softwareplanung
-Software =Kernstück aller Informationssysteme dar -> verantwortlich für automatisierte Abwicklung der IT-basierten Funktionen und Prozesse
-verschiedene Möglichkeiten, um an Softwarekomponenten zu gelangen, zb Kauf, Wiederverwendung, Anpassung oder Neuentwicklung
-Software-as-a-Service (SaaS): Software nicht am Computer des Benutzers installiert, sondern beim Dienstanbieter gehostet und über Internet bereitgestellt -> keine physische Kopie, sondern nur Nutzungsrechte -> auf Servern des Dienstanbieters installiert
zwei wichtige Entscheidungen:
Standardsoftware (packaged software) ODER Individualsoftware (custom software)
Kommerzielle Software (commercial software) ODER Open-Source Software
Standardsoftware vs Individualsoftware
Standardsoftware
=vorgefertigte Programme, die
auf eine allgemeine Anwendbarkeit
und die mehrfache Nutzung
ausgelegt sind -> bei vielen ITAnwendern für ähnliche oder sich wiederholende
Aufgabenstellungen eingesetzt
+ Kostengünstigkeit (Entwicklungskosten werden von vielen Käufern getragen)
+ Zeitersparnis (Zeit für Anpassung eines ausgereiften Standardprogramms meist geringer als für Neuentwicklung)
+ Kompensierung von Engpässen (kann vorhandene Personalengpässe und Wissenslücken ausgleichen)
+ Zukunftssicherheit (ständige Weiterentwicklung)
Individualsoftware:
= Programme, die speziell für einen bestimmten Anwendungsfall entwickelt wurden und in der Regel auf konkretes Aufgabenprofil zugeschnitten sind
kommerzielle vs open source software
kommerzielle Software
= Softwareprogramme, die von
Unternehmen mit dem Ziel
entwickelt wurden, mit dem
Verkauf oder der Nutzung der
Programme Geld zu verdienen
zb Microsoft
Open-Source-Software
= Softwareprogramme, deren
Quelltext für jeden einsehbar und
frei verfügbar ist. Für Open-SourceSoftware gibt es eine Reihe
verschiedener Lizenzen, die den
Benutzern jeweils unterschiedliche Freiheitsgrade im Umgang mit
der Software und ihrer Weiterverbreitung gewähren zb Linux
+ Individualisierung (Benutzer können Quellcode beliebig an Bedürfnisse anpassen, sicherheitskritische Funktionen können persönlich begutachtet/deaktiviert weredn)
+ Transparenz (Fehler werden schneller aufgedeckt und behoben)
+ Kollaboration (gemeinschaftliche Anwendergemeinde im Internet)
+ Flexibilität (zukünftige Weiterentwicklung hängt nicht von einem einzelnen Unternehmen ab und kann von jedem übernommen werden)
IT Governance
= Maßnahmen, Strukturen und Prozesse verstanden, die IT-Leistungen
eines Betriebs transparenter und leichter steuerbar machen
- unter anderem Sichergestellung, dass die IS-Strategie mit der restlichen Unternehmensstrategie übereinstimmt
-Frameworks, Rahmenmodelle oder Standards als Richtlinien für Maßnahmen und Prozesse werden vorgeschlagen, um bestimmte Vorgaben zu erfüllen (Was kann ich alles tun?)
-Richtlinien bieten Anleitungen, wie sie entsprechend dem spezifischen Betriebskontext erfolgreich umgesetzt werden können (Wie kann ich es umsetzen?)
2 wichtige Rahmenmodelle:
ITIL = Information Technology Infrastructure Library -> Sammlung von Richtlinien für IT-Servicemanagement
COBIT = Control-Objectives for Information and Realated Technology -> Framework für IT-Governance
-> Abdeckung des gesamten Unternehmens; Trennung von Governance und Management
IS-Entwicklung
-hat die Aufgabe, die in der IS-Planung erstellten Projektaufträge umzusetzen -> Informationssysteme entwickeln, anpassen und einführen
-dabei müssen vorgegebene Termine und Kosten eingehalten, die Qualitätsstandards erfüllt und die ISArchitektur sukzessiv weiterentwickelt werden
IS-Entwicklungszyklus:
Requirements-Engineering -> Entwurf -> Implementierung -> Test -> von vorne
- Requirmenets-Engineering = umfassende Analyse der Anforderungen -> damit alle erforderlichen Funktionen und Leistungsmerkmale des Systems identifiziert und dokumentiert sind
- Entwurf = Entwurf einer Systemarchitektur, die in der Lage ist, die
Anforderungsdefinition zu erfüllen -> kontinuierlich verfeinert, bis ein detailliertes Design jedes einzelnen Systembausteins vorliegt - Implementierung = zuvor spezifizierte Design wird mithilfe konkreter Techniken in ein Hardware- und Softwaresystem umgesetzt
- Test = Prüfung, ob das entwickelte System den zuvor aufgestellten Spezifikationen entspricht -> einzelne, isolierte Betrachtung der Bestandteile des Systems + Test des Systems als Ganzes
Requirments Engineering
= Anforderungsanalyse
-möglichst vollständige Gewinnung und Aufzeichnung der Anforderungen an ein zu erstellendes oder zu erweiterndes System
-Als Resultat wird die Anforderungsspezifikation (engl.: requirements specification) erstellt
-> gesamte Systementwicklung baut darauf auf -> sollte vollständig, gut verstehbar sowie fehler- und widerspruchsfrei sein
-Prozess der Identifikation, Analyse, Dokumentation und Verwaltung der
Bedürfnisse und Erwartungen von Stakeholdern (Beteiligte) für ein bestimmtes System
funktionale Anforderungen
-von dem zu erstellenden System geforderten Funktionen
zb Online-Banking-System sollte Überweisungen durchführen können
Qualitätsanforderungen:
=nicht funktionale Anforderungen
-von erstellenden System geforderten Qualitätsattribute
-zb zuverlässiges leistungsstarkes System, dass schnell auf Anfragen reagieren kann
Entwurf als Phase des IS-Entwicklungszyklus
Arten von Entwürfen:
1. Prototype: demonstrierbare Vorabversion eines Programmsystems, Fokus auf bestimmte Aspekte, die demonstriert werden sollen
- Alpha Version: nicht alle wesentlichen Funktionen implementiert, aber System kann bereits von Entwicklern an Personen außerhalb des unmittelbaren Entwicklungsteams weitergeleitet werden
- Beta Version: alle wesentlichen Funktionen sind implementiert, aber noch nicht vollständig getestet
- Release Candidate Version: alle Funktionen vollständig implementiert und bereits ausgiebig getestet; wird vor Freigabe meist größeren Personenkreis zur Verfügung gestellt
- Release Version: entspricht der finalen Version, die an dritte weitergegeben wird
Test als Phase des IS-Entwicklungszyklus
Softwaretest = Prozess, bei dem geprüft wird, ob ein bestimmtes Softwaresystem den zugrunde liegenden Spezifikationen entspricht und ob es in der dafür
vorgesehenen Systemumgebung lauffähig ist
verschiedene Arten:
- Modultest: einzelne Softwarekomponenten werden auf korrekte Funktionalität überprüft
- Integrationstest: Konfigurationen oder Subsysteme werden gemeinsam getestet
- Systemtest: Test eines kompletten Softwaresystems
- Akzeptanztest: Funktionstest asu Sicht des Benutzers
- White-Box Test: untersuchen interne Struktur des Quellprogramms von Softwarekomponenten und überprüfen u.a. Qualität des Quellprogramms
- Black-Box Test: Prüfung von außen, ob betrachtete Komponente die festgelegten Anforderungen erfüllt ohne das Tester Komponenten kennt
- Regressionstest: soll Sicherstellen, dass ein vorher korrekt funktionierendes Programm auch nach Modifikation noch der Spezifikation entspricht
IS-Entwicklungsprozesse
Komplexität der Aufgabenbereiche -> nicht einmalige Ausführung und dann Abschluss sondern wiederholt durchlaufen
-es existiert kein allgemein gültiges Phasenschema für alle Entwicklungsprozesse
Entwicklungsprozessmodelle -> müssen in Organisationen verankert werden -> beschreiben Prozesse und Rollen
Unterscheidung in
-sequenzielle (Arbeit streng nach Phasen gegliedert, kein Zurückspringen)
-inkrementelle (verlaufen Schrittweise, am Ende jedes Schritts ein Prototyp)
-interative Entwicklungsmodelle (spiralförmig, immer wieder wiederholend -> Software wird pro Durchlauf besser)
Agile Entwicklungsprozesse
=leichtgewichtige Entwicklungsprozessmodelle, die weitgehend unbürokratisch sind
-durch kleine Teilprojektschritte mit greifbaren Ergebnissen, anpassbaren Vorgaben,
Teamwork und weitgehende Selbstorganisation charakterisiert
-Alternative zu komplexen Prozessmodellen
-Open-Source-Softwareentwicklung als Inspiration
zb SCRUM
-Fokus auf schlanke Entwicklungsprojekte und kontinuierliche Verbesserung
-weitgehend selbstorganisiertes Team und Produktverantwortlicher übernehmen gemeinsame Verantwortung für Aufgabenpakete
-legt verschiedene Arten von Besprechungen fest
-definiert 6 Rollen mit jeweiligen Verantwortlichkeiten:
Product Owner, SCRUM Master, Entwicklungsteam, Stakeholder, Management, SCRUM-Team
IS-Betrieb
-organisatorische Maßnahmen, die Gewährleistung eines laufenden Betriebs des Informationssystems in einer dynamischen Umwelt sicherstellen
Geschäftsprozesse
Prozess = besteht aus einer sachlogischen Abfolge von Aktivitäten, die durch ein Startereignis in Gang gesetzt werden und mit einem Endereignis enden
Geschäftsprozess = zielgerichtete zeitlich-logische Folge oder Vorgangskette von
Aktivitäten definiert, die für das Unternehmen einen Beitrag zur Wertschöpfung leistet
MERKMALE:
1. bildet Basis für die Wertschöpfung sowohl für Kunden als auch Unternehmen
2. jeder GP hat einen Auslöser 3. und ein Ergebnis
4. Aktivitäten werden teilweise parallel, wiederholt oder alternativ ausgeführt
5. Beteiligung von mehreren organisatorischen Einheiten des Unternehmens
6. Routineaufgaben des Unternehmens, keine einmaligen Einzelprojekte