infforum

Anforderungsanalyse / Requirements Engineering (RE)

Weichenstellung in der Voruntersuchung

Unternehmensberatung Know-how-Transfer zu Vorgehensmodellen - Methoden - Werkzeugen


Startseite Informatik Forum

Anforderungsanalyse

Prozess-Modellierung

Anwendungsentwicklung

Projektmanagement

IT Projekt workshop Anforderungsanalyse bw IT-Projekte Anforderungsmanagement computer aided requirement problem engineering Konzept CARE definition funktionelle Anforderungen element formulieren Wissen Priorität Programm funktionale Anforderung Beispiele Aufgabe Software-Entwicklung Anleitung MS Access Microsoft Office Objekt consulting Schulung Systemanforderung Lastenheft Software-System Projektdefinition Geschäftsprozess CASE-Tool Ist-Analyse Informatik Entwicklungsprozess Planung Geschäftsprozessmodellierung DV

INffORUM Leistungen

Projekt-Beispiele

Kontakt zu INffORUM

IT-Projekt extern Definition Beispiele Anforderungsmanagement Kompetenz Ziel Aufgaben Informatik Beispiele Seminar Konzeption Anforderungskatalog Fragebogen Formulierung

Ziele

Themen

SIP - Strategische Informationssystemplanung

GPM - Geschäftsprozess-Modellierung

Anforderungsanalyse /
Anforderungsmanagement

Vorgehensmodell

Methoden

Systemabgrenzung

PZR-Analyse

Problemanalyse / Schwachstellenanalyse

Zielanalyse

Restriktionsanalyse

Affinitätsanalyse

Durchführbarkeitsanalyse / Wirtschaftlichkeitsanalyse

Werkzeuge Requirements Engineering

objectiF RPM

Anwendungsentwicklung

Vorgehensmodelle

Wasserfall-Modell

Spiral-Modell

V-Modell

Evolutionäre / inkrementelle Vorgehen

RUP - Rational Unified Process

Agile Softwareentwicklung

MDA - Model Driven Architecture

Methoden

Methode SA - Strukturierte Analyse

Methode ESA - Essentielle System-Analyse

Methode SD - Strukturiertes Design

Methode ERM - Entity-Relationship-Modellierung

Methode RM - Relationen-Modellierung

Methode UML - Unified Modeling Language

Werkzeuge Software Engineering

case/4/0

Innovator

objectiF

Projekt-Management

Vorgehensmodell

Projektstrukturplanung

Aktivitätenplanung

Arbeitsplanung

Kapazitätsplanung / Ressourcenplanung

Change-Management

Konfigurations-Management

Methoden/Techniken

Netzplan-Technik

Balkenplan-Technik

Meilenstein-Trend-Analyse

Methoden Aufwandsschätzung

Methode NuWA - Nutzwertanalyse

Werkzeuge Projekt-Management

in-STEP BLUE

Primavera

Übersicht Leistungen

Organisationskonzepte

Studien, Gutachten

Auswahl Requirements Engineering (CARE) Tool

Auswahl Software Engineering (CASE) Tool

Auswahl Projekt-Management (PM) Tool

Projektleitung

Coaching IT-Projektleiter

Know-how-Transfer Projekte

Beratung und Unterstützung

Software Einsatz case/4/0

Software Einsatz Innovator

Software Einsatz ObjectiF

Projektbeispiele

Informationssystem-Planung

IV-Rahmenplanung Museum

Kommunikationsanalyse Versicherung

Organisation

ORG-BW-Gesamtmodell

Prozessmodellierung und Ablauf-Organisation Rating

Versionierung in der Logistik

Know-how-Transfer Software-Entwicklung

Vorgehensmodell Analyse
mit Einsatz case/4/0

Vorgehensmodell mit Word-Dokumentation

Werkzeug-Einführung Innovator

Simulation Tour de France (mit Download)

Cockpit - Steuerung der Simulation

Mitarbeiter-Profil

Kontakt

Impressum

Unsere Kompetenz

Anforderungsanalyse / Anforderungsmanagement

Requirements Engineering steht für das systematische Vorgehen bei der Erfassung, Beschreibung, Prüfung und Verfolgung von Anforderungen, die zum Beispiel mit einer zu entwickelnden Software umgesetzt werden sollen.

In einem Unternehmen kann die Anforderungsanalyse (Computer Aided Requirements Engineering - CARE) zwei verschiedene Aufgaben erfüllen. Zum einen ist die Anforderungsanalyse Projekt-spezifisch eine Komponente im Vorgehensmodell, zum anderen kann sie eingerichtet sein, um Anforderungen für potenzielle IV-Projekte zu sammeln und aus den Anforderungen ein Projekt-Portfolio zu gestalten.


Requirements Engineering als Phase im Software Life Cycle


Die Anforderungsanalyse kann als Start-Phase im Software Life Cycle gesehen werden.

Die Start-Phase in einem Vorgehensmodell beginnt mit der Projektidee und endet, wenn die Sammlung, Analyse, Beschreibung und Bewertung der Anforderungen an das zu realisierende IV-System abgeschlossen sind. Die Arbeitsschritte der Anforderungsanalyse sind in einem entsprechenden Software Engineering Vorgehensmodell oder Requirements Engineering Vorgehensmodell (zum Beispiel mit Systemabgrenzung, Situationsanalyse, Use Case Spezifikation) abgebildet.
Es werden Methoden in der Anforderungsanalyse (zum Beispiel Problemanalyse / Schwachstellenanalyse, Affinitätsanalyse, Durchführbarkeitsanalyse / Wirtschaftlichkeitsanalyse) eingesetzt, die sich teilweise mit den Methoden der Anwendungsentwicklung (Software Engineering Methoden) überschneiden.

Eine Anforderung (Requirement) ist in dieser Betrachtung des Requirements Engineering eine funktionale oder nicht-funktionale Vorgabe, die ein System erfüllen soll bzw. eine technische oder formale Restriktion, die von außen vorgegeben und zu beachten ist.
Die Definition der Anforderung muss als Übereinkunft zwischen Auftraggeber und Auftragnehmer formuliert sein. Eindeutigkeit ist dabei ein wesentliches Kriterium.
Besonderes Augenmerk ist in der Anforderungsanalyse auf die Verfolgung von Änderungen der Anforderung (Komponente des Change-Management im Projektmanagement-Vorgehensmodell) während der Projektarbeit zu legen, da eine Änderung einer Anforderung allgemein Aufwands- und Termin-relevant ist.
Ebenso von Bedeutung ist es, ein Requirement und alle in den Phasen der Entwicklung davon abgeleiteten Anforderungen miteinander und mit den aus dieser Anforderung entstandenen Entwicklungsobjekten (aus Analyse, Design, Implementierung und Dokumentation) in Beziehung zu setzen. Für diese Art von Anforderungsmanagement ist der Einsatz eines umfassenden Konfigurations-Management notwendig. Zusätzlich ist ein Werkzeug erforderlich, das die Beziehungen verwalten kann.

Eine funktionale Anforderung im Requirements Engineering muss präzise und für alle Beteiligten eindeutig beschrieben sein. Zusätzlich kann eine Darstellung der funktionalen Anforderungen zum Beispiel als Beschreibung von Use Cases, über Use-Case-Diagramme und in der weiteren Verfeinerung über Aktivitätsdiagramme in grafisch orientierten Analyse-Tools erfolgen. Hier ist die Unified Modeling Language (UML) das geeignete grafische Mittel für die Anforderungsanalyse.

Die nicht-funktionalen Anforderungen, zu denen die Randbedingungen (s.a. Restriktionsanalyse), Aspekte der Performance, Zuverlässigkeit, Nutzbarkeit und Wartbarkeit gehören, werden im Allgemeinen nur textlich beschrieben. Bei diesen Beschreibungen ist auf eine annähernd gleiche Granularität der Anforderungen zu achten.


Requirements Engineering als Daueraufgabe in der IT


Die Anforderungsanalyse kann auch unabhängig von einem Software-Projekt als dauerhafte Aktivität "Anforderungsmanagement" in der Informatik durchgeführt werden. Das Requirements Engineering dient dann in der IV der unternehmensweiten Sammlung und Definition von Anforderungen an die vorhandenen oder neuen Systeme. Die Anforderung wird in diesem Anforderungskatalog

  • mit einer eindeutigen Identifikation versehen,
  • klassifiziert, zum Beispiel hinsichtlich Verbindlichkeit und Dauerhaftigkeit / Stabilität,
  • in ihren Auswirkungen auf andere Komponenten untersucht,
  • gemäß der Priorität eingestuft,
  • mit ihren strukturellen Abhängigkeiten und ihrem Zustand verwaltet und
  • in ihrer Umsetzung im Projekt bzw. Zuordnung zu einem IV-System einschließlich ihrer gesamten Änderungs-Historie verfolgt (Requirement Life Cycle).

Aus zusammengehörenden Anforderungen, die sich eventuell auch auf ein bestehendes System beziehen, werden dann als weiterer Schritt im Vorgehensmodell des Requirements Engineering (eventuell in regelmäßigen Zyklen) einzelne IT-Projekte gebildet (s.a. Affinitätsanalyse).

Als Werkzeuge für die Aufgaben des Anforderungsmanagement kommen in diesem Falle spezialisierte Computer Aided Requirements Engineering (CARE) Tools zur Anwendung; in der allgemein gültigen Betrachtung aber auch ein Werkzeug der Anwendungsentwicklung (zum Beispiel case/4/0, Innovator, objectiF RPM) und des Projektmanagement, bzw. als übergreifendes Tool in-STEP BLUE.


Bei der Formulierung von Anforderungen muss darauf geachtet werden, dass

  • eine eindeutige und für alle Beteiligten klare Definition für die Anforderung gewählt wird und dabei auch für den Autor (aber nicht für jeden Leser) selbstverständliche Aspekte beschrieben werden,
  • eine positive Formulierung gefunden wird ("Was soll erreicht werden" und nicht "Was soll vermieden werden"),
  • keine Lösung für das Projekt durch die Beschreibung der Anforderung vorgegeben wird und
  • nach Möglichkeit quantitative Aussagen zur Anforderung gefunden werden.

Die Beschreibung der Anforderungen wird selbstverständlich in die Projektdokumentation aufgenommen.

Zum Thema Requirements Engineering bietet INffORUM die CARE-Tool-Auswahl und die Einrichtung der geeigneten Werkzeugumgebung für die Anforderungsanalyse, die Anpassung der Vorgehensmodelle und die Unterstützung bei der Einführung bzw. Durchführung der Anforderungsanalyse bzw. Aufbau des Anforderungsmanagement.

Zum Angebot gehört auch die Verzahnung des Requirements Engineering mit der Anwendungsentwicklung und dem Projektmanagement, die Einbettung in Vorgehensmodelle sowie den zugehörigen Know-how-Transfer zu Vorgehen, Methoden und Tools in Form von Schulungsmaßnahmen (Seminar, Workshop, Tutorial) und Coaching an.

Das Training zum Anforderungsmanagement, sowohl Seminar als auch Workshop und Tutorial, kann dabei auf den speziellen Bedarf einer Projekt-Gruppe zugeschnittenen werden. Profitieren Sie in Ihrem IT-Projekt von den langjährigen Erfahrungen der INffORUM Berater.