Lebenszyklus von Informationssystemen. Lebenszyklus eines Informationssystems

Lebenszyklus von Informationssystemen.  Lebenszyklus eines Informationssystems
Lebenszyklus von Informationssystemen. Lebenszyklus eines Informationssystems

Wie ein lebender Organismus hat jedes Produkt (Ware oder Dienstleistung) seine eigene Lebenszyklus , die mit dem Moment ihrer „Geburt“ (oder vielleicht mit dem Ursprung der Idee) beginnt und mit ihrem „Tod“ oder dem Rückzug aus dem Gebrauch endet.

Lebenszyklus EIS Eine Reihe von Phasen, die ein EIS in seiner Entwicklung durchläuft, von dem Moment an, in dem die Entscheidung getroffen wird, es zu erstellen, bis es nicht mehr funktioniert.

Lebenszyklus der wirtschaftlichen Informationssystem umfasst die folgenden Schritte:

1) Vorentwurf;

2) logisches und technisches Design;

3) funktionierendes (physisches) Design;

4) Umsetzung;

5) Betrieb;

6) Anfall.

Vorauslegung Die Phase umfasst die Recherche und Analyse des Managementsystems des Unternehmens sowie die Identifizierung vorhandener Informationskonsumenten. Das Ziel dieser Phase besteht darin, IS-Anforderungen zu formulieren, die die Ziele und Vorgaben der Kundenorganisation korrekt und genau widerspiegeln. Um den Prozess der Erstellung eines Informationssystems zu spezifizieren, das den Bedürfnissen der Organisation entspricht, ist es notwendig, diese Bedürfnisse herauszufinden und klar zu formulieren. Dazu ist es notwendig, Kundenanforderungen an IS zu ermitteln und diese modellsprachlich in Anforderungen für die Entwicklung eines IS-Projekts abzubilden, um sicherzustellen, dass die zukünftige IS mit den Zielen und Vorgaben der Organisation übereinstimmt.

Die Aufgabe, Anforderungen an Informationssysteme zu formulieren, ist eine der wichtigsten, am schwierigsten zu formalisierenden und im Fehlerfall teuersten und am schwierigsten zu korrigierenden Aufgaben.

Moderne Tools und Softwareprodukte ermöglichen Ihnen die schnelle Erstellung von IP nach vorgefertigten Anforderungen. Doch oft stellen diese Systeme die Kunden nicht zufrieden und erfordern zahlreiche Modifikationen, was zu einem starken Anstieg der tatsächlichen Kosten des IP führt. Der Hauptgrund für diese Situation ist die falsche, ungenaue oder unvollständige Definition IS-Anforderungen in der Analysephase.

In dieser Phase sollten Probleme im Zusammenhang mit der Entwicklung technischer Spezifikationen und eines Aktionsplans für die Vorbereitung der Anlage, einschließlich Personalschulung und Finanzierung, gelöst werden. In dieser Phase wird auch eine Analyse der Machbarkeit des IP durchgeführt, und zwar wird Folgendes berücksichtigt:

· betriebliche Machbarkeit – ist es möglich, dieses IS zu erstellen, wie bequem wird es zu verwenden sein und die spezifizierten Anforderungen erfüllen?

· Wirtschaftlichkeit – Kosten, Wirksamkeit aus Sicht des Benutzers;

Design logisch und technisch – das ist die Entwicklung entsprechend den formulierten Anforderungen und identifizierten Informationsbedürfnissen der System- und Funktionsarchitektur des EIS.

In der Entwurfsphase werden zunächst Datenmodelle gebildet. Als erste Information erhalten Konstrukteure Analyseergebnisse. Der Aufbau logischer und physischer Datenmodelle ist ein grundlegender Bestandteil des Datenbankdesigns. Das im Analyseprozess gewonnene Informationsmodell wird zunächst in ein logisches und dann in ein physikalisches Datenmodell umgewandelt.

Parallel zum Entwurf des Datenbankschemas wird ein Prozessentwurf durchgeführt, um Spezifikationen (Beschreibungen) aller IS-Module zu erhalten. Beide Entwurfsprozesse sind eng miteinander verbunden, da ein Teil der Geschäftslogik normalerweise in der Datenbank implementiert ist (Einschränkungen, Trigger, gespeicherte Prozeduren). Das Hauptziel des Prozessdesigns besteht darin, die in der Analysephase gewonnenen Funktionen in Modulen des Informationssystems abzubilden. Beim Entwerfen von Modulen werden Programmschnittstellen festgelegt: Menülayout, Fensterdarstellung, Hotkeys und zugehörige Aufrufe.

Darüber hinaus erfolgt in der Entwurfsphase auch die Entwicklung der IS-Architektur, einschließlich der Auswahl der Plattform(en) und des Betriebssystems(Betriebssysteme). In einem heterogenen IS können mehrere Computer auf unterschiedlichen Hardwareplattformen und mit unterschiedlichen Betriebssystemen laufen.

Neben der Auswahl einer Plattform werden in der Entwurfsphase auch die Architekturtypen festgelegt:

· „Datei-Server“- oder „Client-Server“-Architektur;

· zentralisierte oder verteilte Datenbank. Wenn die Datenbank verteilt ist, welche Mechanismen werden dann verwendet, um die Datenkonsistenz und -relevanz aufrechtzuerhalten?

· Server, parallel oder einzeln für Datenbanken (um die erforderliche Leistung zu erreichen) usw.

Die Designphase endet mit der Entwicklung technisches Projekt IST.

Design Arbeiten (physisch) umfasst das Erstellen und Konfigurieren von Programmen, das Befüllen von Datenbanken und das Erstellen von Arbeitsanweisungen für das Personal. Der Entwurf endet mit der Erstellung eines Arbeitsentwurfs.

Ein Arbeitsprojekt ist eine in vorgeschriebener Weise genehmigte technische Dokumentation, die aktualisierte Daten und detaillierte systemweite Entwurfslösungen, Programme und Anweisungen zur Problemlösung sowie eine aktualisierte Bewertung enthält Wirtschaftlichkeit automatisiertes Kontrollsystem und ein aktualisierter Maßnahmenkatalog zur Vorbereitung der Anlage auf die Umsetzung.

Während der Pilot- und Industriephase Implementierung Eine umfassende Installation des Systems und eine Schulung des Personals werden durchgeführt.


Die Systemimplementierung ist ein Prozess des schrittweisen Übergangs von einem bestehenden EIS zu einem neuen, der in der detaillierten Entwurfsdokumentation für das gesamte System vorgesehen ist. Die Umsetzung einzelner Aufgaben und Subsysteme kann parallel zur Entwicklung eines funktionierenden Designs für das Gesamtsystem erfolgen.

Die Hauptphasen der Systemimplementierung sind:

· Vorbereitung der Anlage für die Systemimplementierung;

· Lieferung von Aufgaben und Subsystemen für den Probebetrieb;

· Durchführung eines Probebetriebs;

· Aufgaben, Subsysteme und das System als Ganzes in den kommerziellen Betrieb überführen.

Der Probebetrieb des IS besteht aus dem Testen von Algorithmen, Programmen und Verknüpfungen technologischer Prozess Datenverarbeitung unter realen Bedingungen. Es wird für Folgendes durchgeführt:

· abschließendes Debuggen von Programmen und Testen des technologischen Prozesses zur Problemlösung;

· Überprüfung der Bereitschaft der Informationsbasis;

· Erarbeitung der Zusammenhänge von Systemaufgaben;

· Erwerb von Arbeitsfähigkeiten durch das Unternehmenspersonal;

· Einrichtung des gesamten Systems und Beseitigung festgestellter Mängel.

Nach Abschluss des Probebetriebs der Anlage wird ein Umsetzungsbericht erstellt. Bei positivem Ergebnis des Probebetriebs wird die Anlage in den kommerziellen Betrieb überführt.

Ausbeutung EIS – seine Verwendung unter realen Bedingungen. Während des Betriebs werden außerdem Support, Analyse des Systembetriebs, Behebung von Fehlern und Mängeln, Erfassung von Anforderungen und Entwicklung von Plänen zur Modernisierung und Erweiterung des Systems durchgeführt.

Beschlagnahme Unter der Stilllegung des EIS versteht man die vollständige Außerbetriebnahme des EIS oder eine wesentliche Modernisierung, was es uns ermöglicht, über die Schaffung eines grundlegend neuen Informationssystems zu sprechen.

Bestehende Lebenszyklusmodelle bestimmen die Reihenfolge der Ausführung von Phasen während der Entwicklung sowie die Kriterien für den Übergang von Phase zu Phase. Dementsprechend sind die folgenden drei Lebenszyklusmodelle am weitesten verbreitet:

1) Kaskadenmodell, das den Übergang zu beinhaltet nächste Stufe nach vollständigem Abschluss der Arbeiten an der vorherigen Etappe;

2) Stufenmodell mit Zwischensteuerung, d.h. Iteratives Entwicklungsmodell mit Feedbackschleifen zwischen den Phasen. Der Vorteil dieses Modells besteht darin, dass stufenübergreifende Anpassungen im Vergleich zum Kaskadenmodell eine geringere Arbeitsintensität mit sich bringen, die Lebensdauer jeder Stufe sich jedoch über die gesamte Entwicklungsperiode erstreckt;

3) Das Spiralmodell betont die Anfangsphasen des Lebenszyklus: Anforderungsanalyse, Spezifikationsentwurf, vorläufiger und detaillierter Entwurf. In diesen Phasen wird die Machbarkeit technischer Lösungen überprüft und durch die Erstellung von Prototypen begründet. Jede Windung der Spirale entspricht einem schrittweisen Modell zur Erstellung eines Fragments oder einer Version eines Softwareprodukts, in dem die Ziele und Merkmale des Projekts geklärt, seine Qualität bestimmt und die Arbeit der nächsten Windung festgelegt wird Spirale ist geplant. Dadurch werden die Details des Projekts vertieft und konsistent spezifiziert und im Ergebnis eine sinnvolle Option ausgewählt, die zur Umsetzung gebracht wird.

In allen Phasen des EIS-Lebenszyklus spielen Wirtschaftsspezialisten eine wichtige Rolle, die:

· Anforderungen an ein zukünftiges Informationssystem oder einen Plan für dessen Modernisierung formulieren;

· die Begründung und Berechnung der Wirtschaftlichkeit einzelner Lösungen im Rahmen des IS und des Gesamtsystems durchführen;

· direkt am Prozess der Erstellung eines elektronischen Informationssystems teilnehmen und dabei helfen, Geschäftsprozesse und die ihnen entsprechenden Informationsprozesse zu modellieren, einschließlich der Mitarbeiter des Unternehmens, für das das Informationssystem erstellt wird, gemäß einem der Grundsätze der Erstellung eines Informationssystem.

· an der Fehlerbehebung des Systems bei der Inbetriebnahme mitwirken;

· (Experten) nutzen ihr Wissen und ihre Erfahrung, um Datenbanken und Wissen zu füllen;

· In der Umsetzungsphase entwickeln sie Anweisungen und schulen das Personal und wenden dabei ihr Wissen und ihre praktische Erfahrung an.

Untersuchungen der letzten Jahre haben gezeigt, dass die Produktivität durch den Einsatz von steigt Informationstechnologien sehr selten erreicht. Hauptgrund ist, dass neue Informationstechnologien oft Spiegelbilder bisheriger Methoden und Prozesse sind. Diese Erkenntnis führte dazu

die Entstehung einer neuen Richtung im Bereich Management - Umgestaltung Unter Geschäftsprozessen versteht man die Verbesserung bzw. Verbesserung eines bestehenden Geschäftsprozesses durch den Einsatz von Informationstechnologie mit einem parallelen grundlegenden Umdenken und einer radikalen Neuausrichtung von Geschäftsprozessen, um dramatische Verbesserungen bei wichtigen Kennzahlen (Steigerung der Produktivität, Verbesserung der Qualität, Senkung der Kosten) zu erreichen.

Das Konzept des Lebenszyklus ist eines der Grundkonzepte der Entwurfsmethodik von Informationssystemen. Der Lebenszyklus eines Informationssystems ist ein kontinuierlicher Prozess, der beginnt! ab dem Zeitpunkt der Entscheidung zur Schaffung eines Informationssystems und endet mit der vollständigen Außerbetriebnahme.

Der ISO/IEC 12207-Standard definiert eine Lebenszyklusstruktur, die die Prozesse, Aktivitäten und Aufgaben enthält, die während der Erstellung eines Informationssystems ausgeführt werden müssen. Nach dieser Norm basiert die Lebenszyklusstruktur auf drei Gruppen von Prozessen:

1. Hauptlebenszyklusprozesse (Kauf, Lieferung, Entwicklung, Betrieb, Support);

2. Hilfsprozesse, die die Umsetzung der Hauptprozesse sicherstellen (Dokumentation, Konfigurationsmanagement, Qualitätssicherung, Verifizierung, Zertifizierung, Bewertung, Audit, Problemlösung);

3. Organisationsprozesse (Projektmanagement, Aufbau der Projektinfrastruktur, Definition, Bewertung und Verbesserung des Lebenszyklus selbst, Schulung).

Unter den wichtigsten Lebenszyklusprozessen sind Entwicklung, Betrieb und Wartung die wichtigsten. Jeder Prozess zeichnet sich durch bestimmte Aufgaben und Methoden zu deren Lösung, Ausgangsdaten aus; die in der vorherigen Phase erhaltenen Informationen und die Ergebnisse.

1. Entwicklung

Die Entwicklung eines Informationssystems umfasst alle Arbeiten zur Entwicklung von Informationen Software und seiner Komponenten gemäß den festgelegten Anforderungen. Die Entwicklung von Informationssoftware umfasst außerdem:

1. Erstellung der Entwurfs- und Betriebsdokumentation;

2. Vorbereitung von Materialien, die zum Testen geheimer Softwareprodukte erforderlich sind;

3. Entwicklung von Materialien, die für die Organisation der Personalschulung erforderlich sind.

Die Entwicklung ist einer der wichtigsten Prozesse im Lebenszyklus eines Informationssystems und umfasst in der Regel die strategische Planung, Analyse, Gestaltung und Umsetzung (Programmierung).

2. Betrieb

Die operative Arbeit kann in vorbereitende und grundlegende Arbeiten unterteilt werden. Zu den vorbereitenden gehören:

1. Konfiguration der Datenbank und der Benutzerarbeitsplätze;

2. Bereitstellung der Betriebsdokumentation für Benutzer;

3. Personalschulung.

Zu den wichtigsten operativen Aktivitäten gehören:

1. Direktbetrieb;

2. Lokalisierung von Problemen und Beseitigung der Ursachen ihres Auftretens;

3. Softwareänderung;

4. Ausarbeitung von Vorschlägen zur Verbesserung des Systems;

5. Weiterentwicklung und Modernisierung des Systems.

3. Begleitung

Dienstleistungen technische Unterstützung spielen im Leben eines jeden Unternehmensinformationssystems eine sehr wichtige Rolle. Verfügbarkeit von qualifizierten Wartung in der Betriebsphase des Informationssystems ist eine notwendige Voraussetzung für die Lösung der ihm übertragenen Aufgaben. Darüber hinaus können Fehler des Servicepersonals zu offensichtlichen oder versteckten finanziellen Verlusten führen, die mit den Kosten des Informationssystems selbst vergleichbar sind.



Lebenszyklusmodelle

Ein Lebenszyklusmodell ist eine Struktur, die die Reihenfolge der Ausführung und Beziehungen von Prozessen, Aktivitäten und Aufgaben definiert, die während des gesamten Lebenszyklus ausgeführt werden. Das Lebenszyklusmodell hängt von den Besonderheiten des Informationssystems und den spezifischen Bedingungen ab, unter denen dieses erstellt und betrieben wird

Bisher haben sich folgende Hauptlebenszyklusmodelle am weitesten verbreitet:

1. Aufgabenmodell;

2. Kaskadenmodell (oder System) (70-85);

3. Spiralmodell (Präsens).

Problemmodell

Bei der Entwicklung eines Systems „bottom-up“ von einzelnen Aufgaben zum Gesamtsystem (Aufgabenmodell) geht zwangsläufig ein einheitlicher Entwicklungsansatz verloren und es entstehen Probleme bei der Informationsanbindung einzelner Komponenten. In der Regel steigen mit zunehmender Aufgabenanzahl die Schwierigkeiten und es ist notwendig, bestehende Programme und Datenstrukturen ständig zu ändern. Die Entwicklungsgeschwindigkeit des Systems verlangsamt sich, was die Entwicklung der Organisation selbst verlangsamt. In manchen Fällen kann diese Technologie jedoch ratsam sein:

Extreme Dringlichkeit (die Probleme müssen irgendwie gelöst werden; dann muss alles noch einmal gemacht werden);

Experimentieren und Anpassen an den Kunden (Algorithmen sind nicht klar, Lösungen werden durch Versuch und Irrtum gefunden).

Die allgemeine Schlussfolgerung lautet, dass es auf diese Weise unmöglich ist, ein ausreichend großes und effektives Informationssystem zu schaffen.

Kaskadenmodell

In frühen homogenen Informationssystemen, deren Umfang nicht sehr groß war, war jede Anwendung ein einzelnes Ganzes. Um diese Art von Anwendung zu entwickeln, wurde die Wasserfallmethode verwendet. Sein Hauptmerkmal ist die Einteilung der gesamten Entwicklung in Etappen, wobei der Übergang von einer Etappe zur nächsten erst erfolgt, nachdem die Arbeiten an der aktuellen vollständig abgeschlossen sind (Abb. 2). Jede Phase endet mit der Veröffentlichung Komplett-Set ausreichende Dokumentation, damit die Entwicklung von einem anderen Entwicklungsteam fortgesetzt werden kann.

Positive Seiten Die Anwendungen des Kaskadenansatzes sind wie folgt:

In jeder Phase wird ein vollständiger Satz gebildet Projektdokumentation, die Kriterien der Vollständigkeit und Konsistenz erfüllen;

Die in einer logischen Reihenfolge durchgeführten Arbeitsschritte ermöglichen es, den Zeitpunkt der Fertigstellung aller Arbeiten und die entsprechenden Kosten zu planen.

Reis. . Wasserfall-Entwicklungsplan

Beim Aufbau von Informationssystemen hat sich der Kaskadenansatz bewährt, bei dem bereits zu Beginn der Entwicklung alle Anforderungen recht genau und vollständig formuliert werden können, um Entwicklern die Freiheit zu geben, diese bestmöglich umzusetzen technischer Punkt Vision. In diese Kategorie fallen komplexe Berechnungssysteme, Echtzeitsysteme und ähnliche Aufgaben. Bei der Anwendung dieses Ansatzes wurden jedoch einige seiner Mängel entdeckt, die vor allem darauf zurückzuführen sind, dass der eigentliche Prozess der Systemerstellung nie vollständig in ein so starres Schema passt. Während des Erstellungsprozesses bestand ständig die Notwendigkeit, zu früheren Phasen zurückzukehren und früher zu klären oder zu überarbeiten getroffene Entscheidungen. Im Ergebnis gestaltete sich der eigentliche Softwareerstellungsprozess wie folgt (Abb. 3):

Reis. 3. Echter Softwareentwicklungsprozess unter Verwendung eines Wasserfallschemas

Der Hauptnachteil des Kaskadenansatzes ist die erhebliche Verzögerung bei der Erzielung von Ergebnissen. Die Abstimmung der Ergebnisse mit den Nutzern erfolgt nur an geplanten Stellen nach Abschluss jedes Arbeitsschrittes; die Anforderungen an Informationssysteme werden in Form von technischen Spezifikationen für die gesamte Zeit ihrer Erstellung „eingefroren“. Daher können Benutzer ihre Kommentare erst dann abgeben, wenn die Arbeiten am System vollständig abgeschlossen sind. Wenn Anforderungen ungenau formuliert sind oder sich über einen längeren Zeitraum der Softwareentwicklung ändern, stehen Anwender am Ende vor einem System, das ihren Bedürfnissen nicht entspricht. Modelle (sowohl funktionale als auch informative) des automatisierten Objekts können gleichzeitig mit ihrer Genehmigung veraltet sein. Das Wesen eines systematischen Ansatzes zur IS-Entwicklung liegt in seiner Zerlegung (Aufgliederung) in automatisierte Funktionen: Das System wird in funktionale Subsysteme unterteilt, die wiederum in Unterfunktionen unterteilt, in Aufgaben unterteilt usw. werden. Der Partitionierungsprozess wird bis zu bestimmten Prozeduren fortgesetzt. Gleichzeitig behält das automatisierte System eine ganzheitliche Sicht bei, in der alle Komponenten miteinander verbunden sind. Daher liegt der Hauptvorteil dieses Modells in seiner systematischen Entwicklung, während seine Hauptnachteile darin bestehen, dass es langsam und teuer ist.

Spiralmodell

Um diese Probleme zu überwinden, wurde ein spiralförmiges Lebenszyklusmodell vorgeschlagen (Abb. 4), das sich auf die Anfangsphasen des Lebenszyklus konzentriert: Analyse und Design. In diesen Phasen wird die Machbarkeit technischer Lösungen durch die Erstellung von Prototypen getestet. Jede Windung der Spirale entspricht der Erstellung eines Fragments oder einer Version der Software, in der die Ziele und Merkmale des Projekts geklärt, seine Qualität bestimmt und die Arbeit der nächsten Windung der Spirale geplant wird. Dadurch werden die Details des Projekts vertieft und konsistent spezifiziert und im Ergebnis eine sinnvolle Option ausgewählt, die zur Umsetzung gebracht wird.

Die Entwicklung durch Iterationen spiegelt den objektiv existierenden Spiralzyklus der Systemerstellung wider. Der unvollständige Abschluss der Arbeiten in jeder Phase ermöglicht es Ihnen, mit der nächsten Phase fortzufahren, ohne auf den vollständigen Abschluss der Arbeiten in der aktuellen Phase warten zu müssen. Mit einer iterativen Entwicklungsmethode können die fehlenden Arbeiten in der nächsten Iteration erledigt werden. Die Hauptaufgabe besteht darin, den Systembenutzern schnellstmöglich ein funktionsfähiges Produkt zu zeigen und so den Prozess der Bedarfsklärung und -ergänzung anzustoßen.

Das Hauptproblem des Spiralzyklus besteht darin, den Zeitpunkt des Übergangs zur nächsten Stufe zu bestimmen. Um dieses Problem zu lösen, ist es notwendig, für jede Phase des Lebenszyklus zeitliche Beschränkungen einzuführen. Der Übergang verläuft wie geplant, auch wenn nicht alle geplanten Arbeiten abgeschlossen sind. Der Plan wird auf der Grundlage statistischer Daten aus früheren Projekten und der persönlichen Erfahrung der Entwickler erstellt.

Abbildung 4. Spiralmodell des Lebenszyklus eines IC

Einer der möglichen Ansätze zur Softwareentwicklung im Rahmen des Spiral-Life-Cycle-Modells ist der in In letzter Zeit weit verbreitete Verwendung der RAD-Methodik (Rapid Application Development). Dieser Begriff bezieht sich normalerweise auf einen Softwareentwicklungsprozess, der drei Elemente enthält:

ein kleines Team von Programmierern (von 2 bis 10 Personen);

kurz, aber sorgfältig recherchiert Produktionsplan(von 2 bis 6 Monaten);

ein sich wiederholender Zyklus, in dem Entwickler, während die Anwendung Gestalt annimmt, die durch die Interaktion mit dem Kunden erhaltenen Anforderungen anfordern und in das Produkt umsetzen.

Der Software-Lebenszyklus nach der RAD-Methodik besteht aus vier Phasen:

1. Anforderungsdefinitions- und Analysephase;

2. Entwurfsphase;

3. Umsetzungsphase;

4. Umsetzungsphase.


Vorlesung 6. Klassifizierung von Informationssystemen

Informationssystem- ein miteinander verbundener Satz von Mitteln, Methoden und Personal, der zur Speicherung, Verarbeitung und Ausgabe von Informationen im Interesse der Erreichung eines bestimmten Ziels verwendet wird

Klassifizierung nach Maßstab

Informationssysteme werden je nach Maßstab in die folgenden Gruppen eingeteilt:

1. Single;

2. Gruppe;

3. Unternehmen.

Einzelne Informationssysteme werden in der Regel autonom umgesetzt persönlicher Computer(Netzwerk nicht verwendet). Ein solches System kann mehrere einfache Anwendungen enthalten, die durch einen gemeinsamen Informationsfonds verbunden sind, und ist für die Arbeit eines Benutzers oder einer Gruppe von Benutzern konzipiert, die sich einen Arbeitsplatz teilen. Solche Anwendungen können mithilfe sogenannter Desktop- oder lokaler Datenbankverwaltungssysteme (DBMS) erstellt werden. Unter den lokalen DBMS sind Clarion, Clipper, FoxPro, Paradox, dBase und Microsoft Access die bekanntesten.

Gruppeninformationssysteme konzentrieren sich auf die kollektive Nutzung von Informationen durch Mitglieder einer Arbeitsgruppe und basieren meist auf einem lokalen Computernetzwerk. Bei der Entwicklung solcher Anwendungen werden Datenbankserver (auch SQL-Server genannt) für Arbeitsgruppen verwendet. Es gibt eine ganze Reihe verschiedener SQL-Server, sowohl kommerzielle als auch frei erhältliche. Unter ihnen sind die bekanntesten Datenbankserver Oracle, DB2, Microsoft SQL Server, InterBase, Sybase, Informix.

Unternehmensinformationssysteme sind eine Entwicklung von Systemen für Arbeitsgruppen, sie richten sich an große Unternehmen und können geografisch verteilte Knoten oder Netzwerke unterstützen. Grundsätzlich haben sie eine hierarchische Struktur aus mehreren Ebenen. Solche Systeme zeichnen sich durch eine Client-Server-Architektur mit Spezialisierung der Server oder eine mehrstufige Architektur aus. Bei der Entwicklung solcher Systeme können dieselben Datenbankserver verwendet werden wie bei der Entwicklung von Konzerninformationssystemen. In großen Informationssystemen sind die am häufigsten verwendeten Server jedoch Oracle, DB2 und Microsoft SQL Server.

Bei Konzern- und Unternehmenssystemen steigen die Anforderungen an zuverlässigen Betrieb und Datensicherheit deutlich. Diese Eigenschaften werden durch die Aufrechterhaltung der Integrität von Daten, Links und Transaktionen in Datenbankservern bereitgestellt.

Einteilung nach Anwendungsgebiet

Je nach Anwendungsbereich werden Informationssysteme üblicherweise in vier Gruppen eingeteilt:

1. Transaktionsverarbeitungssysteme;

2. Entscheidungssysteme;

3. Informations- und Referenzsysteme;

4. Büroinformationssysteme.

Transaktionsverarbeitende Systeme wiederum werden je nach Effizienz der Datenverarbeitung in Paketinformationssysteme und Betriebsinformationssysteme unterteilt. In Informationssystemen des Organisationsmanagements wird die Art und Weise der betrieblichen Transaktionsverarbeitung reflektiert relevant Der Status des Themengebiets ist jederzeit erkennbar, und die Stapelverarbeitung nimmt nur einen sehr begrenzten Teil ein.

Entscheidungsunterstützungssysteme - DSS (Decision Support Systeq) – stellen eine andere Art von Informationssystemen dar, bei denen mithilfe recht komplexer Abfragen Daten in verschiedenen Kontexten ausgewählt und analysiert werden: Zeit, Geographie und andere Indikatoren.

Umfangreicher Unterricht Informations- und Referenzsysteme basierend auf Hypertextdokumenten und Multimedia. Solche Informationssysteme haben im Internet die größte Entwicklung erfahren.

Klasse Büroinformationssysteme zielt auf die Umwandlung von Papierdokumenten in elektronische Form, Büroautomation und Dokumentenmanagement ab.

Klassifizierung nach Organisationsmethode

Je nach Organisationsmethode werden Konzern- und Unternehmensinformationssysteme in folgende Klassen eingeteilt:

1. Systeme, die auf einer Dateiserver-Architektur basieren;

2. Systeme, die auf einer Client-Server-Architektur basieren;

3. Systeme, die auf einer mehrstufigen Architektur basieren;

4. Systeme, die auf Internet-/Intranet-Technologien basieren.

In jedem Informationssystem ist es möglich, die notwendigen Funktionskomponenten zu identifizieren, die dabei helfen, die Grenzen verschiedener Informationssystemarchitekturen zu verstehen.

Dateiserverarchitektur Extrahiert nur Daten aus Dateien, sodass zusätzliche Benutzer und Anwendungen nur eine vernachlässigbare CPU-Last verursachen. Jeder neue Client fügt dem Netzwerk Rechenleistung hinzu.

Client-Server-Architektur wurde entwickelt, um die Probleme von Dateiserveranwendungen zu lösen, indem Anwendungskomponenten getrennt und dort platziert werden, wo sie am effizientesten funktionieren. Ein Merkmal der Client-Server-Architektur ist die Verwendung dedizierter Datenbankserver, die Abfragen in der Structured Query Language (SQL) verstehen und Suchen, Sortieren und Aggregieren von Informationen durchführen.

Gegenwärtig hat die Client-Server-Architektur Anerkennung und weit verbreitete Verwendung als Möglichkeit zur Organisation von Anwendungen für Arbeitsgruppen und Informationssysteme auf Unternehmensebene erlangt. Diese Arbeitsorganisation erhöht die Effizienz der Anwendungsausführung, indem sie die Funktionen des Datenbankservers nutzt, das Netzwerk entlastet und die Kontrolle der Datenintegrität gewährleistet.

Mehrschichtige Architektur wurde eine Weiterentwicklung der Client-Server-Architektur und besteht in ihrer klassischen Form aus drei Ebenen:

1. Die untere Ebene stellt Clientanwendungen dar, die über eine Programmierschnittstelle zum Aufrufen der Anwendung auf der mittleren Ebene verfügen.

2. Durchschnittsniveau ist ein Anwendungsserver;

3. Die oberste Ebene ist ein entfernter, spezialisierter Datenbankserver.

Die dreistufige Architektur gleicht die Last weiter auf verschiedene Knoten und das Netzwerk aus, fördert die Werkzeugspezialisierung für die Anwendungsentwicklung und beseitigt die Mängel des zweistufigen Client-Server-Modells.

In Entwicklung Internet-/Intranet-Technologien Der Schwerpunkt liegt bisher auf der Entwicklung von Softwaretools. Gleichzeitig mangelt es an ausgereiften Werkzeugen zur Entwicklung von Anwendungen, die mit Datenbanken arbeiten. Eine Kompromisslösung zur Schaffung praktischer und einfach zu bedienender und zu wartender Informationssysteme, die effektiv mit Datenbanken zusammenarbeiten, war die Kombination von Internet-/Intranet-Technologie mit einer mehrstufigen Architektur. In diesem Fall nimmt die Struktur der Informationsanwendung folgende Form an: Browser – Anwendungsserver – Datenbankserver – dynamischer Seitenserver – Webserver.

Basierend auf der Art der gespeicherten Informationen werden Datenbanken unterteilt in sachlich Und Dokumentarfilm. Wenn wir eine Analogie zu den oben beschriebenen Beispielen von Informationsspeichern ziehen, dann sind Sachdatenbanken Karteien und Dokumentationsdatenbanken Archive. Faktendatenbanken speichern Brief Information in einem streng definierten Format. Dokumentationsdatenbanken enthalten alle Arten von Dokumenten. Darüber hinaus kann dies nicht nur sein Textdokumente, aber auch Grafik, Video und Ton (Multimedia).

Ein automatisiertes Steuerungssystem (ACS) ist ein Komplex aus Hardware und Software Organisationsstrukturen(Einzelpersonen oder Teams), die die Verwaltung eines Objekts (Komplexes) in einem industriellen, wissenschaftlichen oder öffentlichen Umfeld übernehmen.

Es gibt Informationssysteme für das Bildungsmanagement (z. B. Personal-, Bewerber-, Studenten-, Bibliotheksprogramme). Automatisierte Systeme für wissenschaftliche Forschung(ASNI), das sind Software- und Hardwaresysteme, die Daten verarbeiten, die von verschiedenen Arten experimenteller Installationen stammen und Messgeräte und basierend auf ihrer Analyse die Entdeckung neuer Effekte und Muster erleichtern. Computergestützte Designsysteme und geografische Informationssysteme.

Ein System der künstlichen Intelligenz, das auf der Grundlage von hochwertigem Fachwissen zu einem bestimmten Fachgebiet (von Experten – Spezialisten auf diesem Gebiet) aufgebaut ist, wird als Expertensystem bezeichnet. Expertensysteme – eine der wenigen Arten von Systemen der künstlichen Intelligenz – haben eine weite Verbreitung gefunden praktischer Nutzen. Es gibt Expertensysteme in den Bereichen Militärwissenschaft, Geologie, Ingenieurwesen, Informatik, Weltraumtechnologie, Mathematik, Medizin, Meteorologie, Industrie, Landwirtschaft, Management, Physik, Chemie, Elektronik, Recht usw. Und nur die Tatsache, dass Expertensysteme nach wie vor sehr komplex, teuer und vor allem hochspezialisierte Programme sind, hemmt ihre noch größere Verbreitung.

Expertensysteme (ES) sind Computerprogramme, geschaffen, um die Arten von Aktivitäten auszuführen, die ein menschlicher Experte ausführen kann. Sie funktionieren auf eine Weise, die das Verhalten eines menschlichen Experten nachahmt und sich deutlich von den präzisen, gut durchdachten Algorithmen und mathematischen Verfahren der meisten herkömmlichen Designs unterscheidet.

Aus dem Arbeitslehrplan:

Thema 2. Standards und regulatorische Richtlinien für System- und Software-Engineering.

ISO/IEC 15288 „Systems Engineering – Lebenszyklusprozesse von Systemen“.

GOST 34: Normensatz für automatisierte Systeme.

Schlüsselideen des Systems Engineering: Systemansatz, Systemlebenszyklus, Anforderungsengineering, Architekturdesign, Prozessansatz, Projektansatz.

2.1. ISO 15288 „Systems Engineering – Lebenszyklusprozesse von Systemen“.

2.2. Systemlebenszyklus.

2.3. Ansichten des Systemlebenszyklus.

2.4. Lebenszyklus eines Informationssystems

2.5. Lebenszyklusmodelle

2.6. Auswahl eines Lebenszyklusmodells

2.1. ISO 15288 Systemtechnik – Lebenszyklusprozesse von Systemen.

Systems Engineering wird zur Lösung von Problemen eingesetzt, die mit der zunehmenden Komplexität menschengemachter Systeme verbunden sind. Die Norm ISO 15288, die Systemtechnikpraktiken beschreibt, erfordert eine Beschreibung des Systemlebenszyklus und seiner Praktiken. Eine solche Beschreibung ist für den erfolgreichen Verlauf des Systemlebenszyklus erforderlich. Der Standard spezifiziert jedoch nicht die Methoden, mit denen eine solche Beschreibung erstellt werden muss.

Ziele des Standards:

    Um es Organisationen (externen und internen Auftragnehmern) zu ermöglichen, sich auf die Kombination von Ideen, Entwurfs-, Erstellungs-, Betriebs- und Stilllegungsprozessen einer Vielzahl von künstlichen Systemen zu einigen – von Zahnstochern bis zu Kernkraftwerken, von Standardisierungssystemen bis hin zu Unternehmen

    Implementieren Sie eine Reihe wichtiger systemtechnischer Ideen in die Praxis der Organisation:

    • systematischer Ansatz

      Lebenszyklus

      Anforderungsengineering

      Architekturdesign

      Prozessansatz

      Projektansatz

      Vertragskultur

IstTOriyaSchaffung

    Gemeinsame Entwicklung von ISO und IEC, aktive Beteiligung von INCOSE

    Arbeitsbeginn 1996, Versionen 2002, 2005 (GOST R ISO/IEC 15288-2005), 2008

    Entwickelt, um den sogenannten „Sumpf von Standards“ der Systemtechnik zu harmonisieren (zahlreiche Standards, die von verschiedenen Militärabteilungen, Staaten und Industriübernommen wurden).

An der Entwicklung des Standards waren Experten aus verschiedenen Bereichen beteiligt: ​​Systemtechnik, Programmierung, Qualitätsmanagement, Personalwesen, Sicherheit usw. Dabei wurden praktische Erfahrungen bei der Erstellung von Systemen in staatlichen, kommerziellen, militärischen und akademischen Organisationen berücksichtigt. Der Standard ist auf eine breite Klasse von Systemen anwendbar, aber Sein Hauptzweck besteht darin, die Schaffung computergestützter Systeme zu unterstützen.

2.2. Systemlebenszyklus

Russische Abkürzung: J C

Englische Abkürzung: L.C. (LebenZyklus)

Russisch: "Lebenszyklus". Der englische Begriff „Life Cycle“ in der Technik bedeutete und wurde früher auch so übersetzt: „Service Life“, manchmal sogar „Service Life bis zur ersten Generalüberholung“. „Lebenszyklus“ ist eine relativ neue Übersetzung. Manchmal wird „Zyklus“ mit „Zeitraum“ übersetzt, aber diese Übersetzung ist nicht etabliert (obwohl sie in diesem Fall genauer ist: die „Lebensdauer“ des Systems). Das Wort „Zyklus“ sollte nicht verwirren – es gibt nichts Zyklisches im Lebenszyklus. Das Wort „Zyklus“ hat die Bedeutung von „Typizität“ und legt nahe, dass das Gleiche auch bei anderen Systemen geschieht.

Formal: Der Lebenszyklus ist eine Veränderung der Zustände eines Systems (Evolution des Systems) im Zeitraum von der Konzeption bis zum Ende seiner Existenz.

Das System und der Lebenszyklus sind Zwillingsbrüder. Wir sagen System – wir meinen den Lebenszyklus, wir sagen Lebenszyklus – wir meinen das System.

Definitionen.

    Definition der Norm ISO/IEC 15288:2008 (Definition: Lebenszyklus – Entwicklung eines Systems, Produkts, einer Dienstleistung, eines Projekts oder einer anderen von Menschen geschaffenen Einheit von der Konzeption bis zur Stilllegung (ISO 15288, 4.11):

Lebenszyklus (Lebenszyklus) ist die Entwicklung eines Systems, Produkts, einer Dienstleistung, eines Projekts oder eines anderen von Menschen geschaffenen Objekts von der Konzeption bis zur Beendigung der Nutzung.

    Definition des ISO 15704-Standards (Industrielle Automatisierungssysteme – Anforderungen an unternehmensweite Referenzarchitekturen und -methoden)

Lebenszyklus (Lebenszyklus) ist eine endliche Reihe von Hauptphasen und -schritten, die ein System während seiner gesamten Existenzgeschichte durchläuft.

Jedes System, unabhängig von seiner Art und Größe, durchläuft gemäß einer Beschreibung seinen gesamten Lebenszyklus. Der Fortschritt des Systems durch Teile dieser Beschreibung ist der Lebenszyklus des Systems. Die Beschreibung des Lebenszyklus lautet somit: Hierbei handelt es sich um eine konzeptionelle Segmentierung nach Stufen, die die Planung, den Einsatz, den Betrieb und den Support des Zielsystems erleichtern.

Phasen (Tabelle 2.1) stellen die größten Zeiträume des mit einem System verbundenen Lebenszyklus dar und entsprechen den Zuständen der Systembeschreibung oder der Implementierung des Systems als eine Reihe von Produkten oder Dienstleistungen. Die Phasen beschreiben die wichtigsten Meilensteine ​​für den Fortschritt und Erfolg eines Systems während seines gesamten Lebenszyklus. Solche Segmente sorgen für einen geordneten Fortschritt des Systems durch etablierte Überarbeitungen der Ressourcenzuteilung, was Risiken reduziert und einen zufriedenstellenden Fortschritt gewährleistet. Der Hauptgrund für die Verwendung von Lebenszyklusbeschreibungen ist die Notwendigkeit, Entscheidungen auf der Grundlage bestimmter Kriterien zu treffen, bevor das System in die nächste Phase übergeht.

Tabelle 2.1

Phasen der Systementwicklung (ISO/IEC 15288)

p./p.

Bühne

Beschreibung

Bildung des Konzepts

Bedarfsanalyse, Auswahl von Konzept- und Designlösungen

Entwicklung

System-Design

Implementierung

Systemfertigung

Ausbeutung

Inbetriebnahme und Nutzung des Systems

Unterstützung

Sicherstellung der Funktionsfähigkeit des Systems

Stilllegung

Nutzungsbeendigung, Demontage, Archivierung der Anlage

Zyklus (LC).

ZCIS ist der Zeitraum der Erstellung und Nutzung von Informationssystemen, beginnend mit der Entstehung des Bedarfs an Informationssystemen und endend mit dem Zeitpunkt ihrer vollständigen Stilllegung.

Der Lebenszyklus ist ein Modell für die Erstellung und Nutzung von Software, das deren verschiedene Zustände widerspiegelt, beginnend mit dem Moment, in dem ein Bedarf für ein bestimmtes Softwareprodukt entsteht, und endet mit dem Moment, in dem es für alle Benutzer völlig außer Gebrauch ist.

Traditionell werden die folgenden Hauptphasen des Software-Lebenszyklus unterschieden:

  • Anforderungsanalyse;
  • Design;
  • Kodierung (Programmierung);
  • Testen und Debuggen;
  • Betrieb und Instandhaltung.

Phasen des Lebenszyklus eines Informationssystems

  1. Umfrage vor dem Projekt
    • 1.1. Sammlung von Materialien für Design; Gleichzeitig werden die Formulierung von Anforderungen, die Untersuchung des Automatisierungsobjekts beleuchtet und vorläufige Schlussfolgerungen der Vorentwurfsversion des IS gegeben.
    • 1.2. Analyse von Materialien und Entwicklung von Dokumentationen; eine Machbarkeitsstudie mit technischen Spezifikationen für IC-Design.
  2. Design
    • 2.1. Vorläufiger Entwurf:
      • Auswahl von Designlösungen zu Aspekten der IS-Entwicklung;
      • Beschreibung realer IS-Komponenten;
      • Registrierung und Genehmigung des technischen Projekts (TP).
    • 2.2. Detailliertes Design:
      • Auswahl oder Entwicklung mathematischer Methoden oder Programmalgorithmen;
      • Aktualisierung von Datenbankstrukturen;
      • Erstellung von Dokumentationen für die Lieferung und Installation von Softwareprodukten;
      • Auswahl einer Reihe technischer Mittel mit Dokumentation für deren Installation.
    • 2.3. Entwicklung eines technischen und Arbeitsprojekts von IP (TRP).
    • 2.4. Entwicklung einer Methodik zur Umsetzung von Managementfunktionen mittels IS und Beschreibung der Regelungen für das Handeln des Managementapparates.
  3. IP-Entwicklung
    • Beschaffung und Installation von Hardware und Software;
    • Testen und Feinabstimmen des Softwarepakets;
    • Entwicklung von Bedienungsanleitungen für Soft- und Hardware.
  4. Inbetriebnahme des IS
    • Einführung technischer Mittel;
    • Eingabe von Software;
    • Personalschulung und -zertifizierung;
    • Probebetrieb;
    • Übergabe und Unterzeichnung der Arbeitsabnahmebescheinigungen.
  5. IP-Betrieb
    • täglicher Gebrauch;
    • allgemeine Betreuung des gesamten Projektes.

Der Lebenszyklus wird nach dem Prinzip gestaltet Top-Down-Design und ist in der Regel iterativer Natur: Die umgesetzten Stufen, beginnend mit den frühesten, werden zyklisch wiederholt, entsprechend sich ändernden Anforderungen und äußeren Bedingungen, der Einführung von Beschränkungen usw. In jeder Phase des Lebenszyklus wird ein bestimmter Satz an Dokumenten und technischen Lösungen generiert; Darüber hinaus sind für jede Phase die in der vorherigen Phase erhaltenen Dokumente und Entscheidungen der Ausgangspunkt. Jede Phase endet mit der Überprüfung der generierten Dokumente und Lösungen, um deren Übereinstimmung mit den Originaldokumenten zu überprüfen.

Das wichtigste Regulierungsdokument, das den Lebenszyklus von Software regelt, ist die internationale Norm ISO/IEC 12207 (ISO – International Organization of Standardization, IEC – International Electrotechnical Commission). Es definiert die Lebenszyklusstruktur mit den Prozessen, Aktivitäten und Aufgaben, die während der Softwareerstellung ausgeführt werden müssen.

Die Struktur des Software-Lebenszyklus nach der Norm ISO/IEC 12207 basiert auf drei Gruppen von Prozessen:

  • Hauptprozesse des Software-Lebenszyklus (Kauf, Lieferung, Entwicklung, Betrieb, Support);
  • Hilfsprozesse, die die Umsetzung der Hauptprozesse sicherstellen (Dokumentation, Konfigurationsmanagement, Qualitätssicherung, Verifizierung, Zertifizierung, Bewertung, Audit, Problemlösung);
  • Organisationsprozesse (Projektmanagement, Aufbau der Projektinfrastruktur, Definition, Bewertung und Verbesserung des Lebenszyklus selbst, Schulung).

Unter Entwicklung versteht man alle Arbeiten zur Erstellung von Software und deren Komponenten entsprechend vorgegebener Anforderungen. Dies umfasst die Erstellung der Entwurfs- und Betriebsdokumentation, die Vorbereitung der für die Prüfung der Funktionsfähigkeit erforderlichen Materialien und der entsprechenden Materialien Qualität von Softwareprodukten, Materialien, die für die Organisation der Personalschulung usw. erforderlich sind. Die Softwareentwicklung umfasst typischerweise Analyse, Design und Implementierung (Programmierung).

Der Betrieb umfasst Arbeiten zur Inbetriebnahme von Softwarekomponenten. Dieser Prozess umfasst die Konfiguration der Datenbank und der Benutzerarbeitsplätze, die Bereitstellung von Betriebsdokumentationen, die Durchführung von Personalschulungen usw. sowie den direkten Betrieb, einschließlich der Lokalisierung von Problemen und der Beseitigung der Ursachen ihres Auftretens, der Änderung der Software im Rahmen der festgelegten Vorschriften, der Ausarbeitung von Verbesserungsvorschlägen, der Entwicklung usw Modernisierung des Systems.

Projektmanagement ist mit Fragen der Arbeitsplanung und -organisation, der Bildung von Entwicklungsteams und der Überwachung des Zeitplans und der Qualität der durchgeführten Arbeiten verbunden. Die technische und organisatorische Unterstützung des Projekts umfasst die Auswahl von Methoden und Werkzeugen zur Projektdurchführung, die Festlegung von Methoden zur Beschreibung von Entwicklungszwischenständen, die Entwicklung von Methoden und Werkzeugen für Softwaretests, die Schulung des Personals usw. Die Sicherstellung der Projektqualität ist mit Problemen der Softwareverifizierung, -verifizierung und -prüfung verbunden.

Bei der Verifizierung handelt es sich um den Prozess, bei dem festgestellt wird, ob der aktuelle Entwicklungsstand, der in einer bestimmten Phase erreicht wurde, den Anforderungen dieser Phase entspricht. Durch die Verifizierung können Sie die Übereinstimmung von Entwicklungsparametern mit den ursprünglichen Anforderungen beurteilen. Die Verifizierung überschneidet sich mit dem Testen, bei dem es darum geht, Unterschiede zwischen tatsächlichen und erwarteten Ergebnissen zu identifizieren und zu beurteilen, ob Softwaremerkmale den ursprünglichen Anforderungen entsprechen. Während der Projektumsetzung wichtiger Platz befassen sich mit der Identifizierung, Beschreibung und Steuerung der Konfiguration einzelner Komponenten und des Gesamtsystems.

Das Konfigurationsmanagement ist einer der Hilfsprozesse, die die Hauptprozesse des Software-Lebenszyklus unterstützen, vor allem die Prozesse der Softwareentwicklung und -wartung. Bei der Erstellung komplexer IS-Projekte, die aus vielen Komponenten bestehen, von denen jede Variante oder Version haben kann, stellt sich das Problem, deren Zusammenhänge und Funktionen zu berücksichtigen, eine einheitliche Struktur zu schaffen und die Entwicklung des gesamten Systems sicherzustellen. Mit dem Konfigurationsmanagement können Sie Änderungen an Software in allen Phasen des Lebenszyklus organisieren, systematisch berücksichtigen und steuern. Allgemeine Grundsätze Empfehlungen für Konfigurationsabrechnung, Planung und Softwarekonfigurationsmanagement sind im Normentwurf ISO 12207-2 enthalten.

Jeder Prozess zeichnet sich durch bestimmte Aufgaben und Methoden zu deren Lösung, in der vorherigen Phase gewonnene Ausgangsdaten und Ergebnisse aus. Ergebnisse der Analyse sind insbesondere Funktionsmodelle, Informationsmodelle und die dazugehörigen Diagramme. Der Software-Lebenszyklus ist iterativer Natur: Die Ergebnisse der nächsten Phase führen oft zu Änderungen an Designlösungen, die in früheren Phasen entwickelt wurden.

VORTRAG 10

LEBENSZYKLUS DES SYSTEMS

Lebenszyklusmodelle und ihre Hauptphasen

Bei der Beschreibung des Systemlebenszyklus werden folgende Konzepte verwendet:

Prozess – eine Kette nacheinander ausgeführter Arbeiten;

Phasen – aufeinanderfolgende Zeiträume, in denen Arbeit ausgeführt wird . Während der Phase können Arbeiten im Zusammenhang mit verschiedenen Prozessen durchgeführt werden. Die Tätigkeit der Erstellung und Nutzung eines automatisierten Unternehmensmanagementsystems (EMS) basiert auf dem Konzept seines Lebenszyklus (LC). Der Lebenszyklus ist ein Modell für die Erstellung und Nutzung automatisierter Kontrollsysteme, das deren verschiedene Zustände widerspiegelt, beginnend mit der Entstehung des Bedarfs an einem bestimmten Produkt und endend mit dem Moment seiner völligen Obsoleszenz für alle Benutzer ausnahmslos.

Traditionell werden die folgenden Hauptphasen des Lebenszyklus automatisierter Steuerungssysteme unterschieden:

Anforderungsanalyse;

Design;

Programmierung/Implementierung;

Testen und Debuggen;

Betrieb und Instandhaltung.

Der Lebenszyklus wird nach dem Prinzip des Top-Down-Designs gebildet und ist in der Regel iterativer Natur: Die implementierten Phasen, beginnend mit den frühesten, werden entsprechend sich ändernden Anforderungen und äußeren Bedingungen zyklisch wiederholt Einführung von Beschränkungen usw. In jeder Phase des Lebenszyklus wird ein bestimmter Satz von Dokumenten und technischen Lösungen generiert, und für jede Phase werden die in der vorherigen Phase erhaltenen Ausgangsdokumente und Entscheidungen verwendet. Jede Phase endet mit der Überprüfung der generierten Dokumente und Lösungen, um deren Übereinstimmung mit den Originaldokumenten zu überprüfen.

Bestehende Lebenszyklusmodelle bestimmen die Reihenfolge der Ausführung von Phasen während der Entwicklung sowie die Kriterien für den Übergang von Phase zu Phase. Dementsprechend sind die folgenden drei Lebenszyklusmodelle am weitesten verbreitet:

1. Kaskadenmodell(in den 70-80er Jahren) - beinhaltet einen Übergang zur nächsten Stufe nach vollständigem Abschluss der Arbeiten an der vorherigen Stufe und zeichnet sich durch eine klare Trennung von Daten und deren Verarbeitungsprozessen aus.

2. Stufenmodell mit Zwischensteuerung(in den 80er-85er Jahren) – ein iteratives Entwicklungsmodell mit Rückkopplungsschleifen zwischen den Phasen. Der Vorteil dieses Modells besteht darin, dass stufenübergreifende Anpassungen im Vergleich zum Kaskadenmodell zu einer geringeren Arbeitsintensität führen. Andererseits erstreckt sich die Lebensdauer jeder Stufe über den gesamten Entwicklungszeitraum.

3. Spiralmodell(in den 86-90er Jahren) – konzentriert sich auf die Anfangsphasen des Lebenszyklus: Anforderungsanalyse, Spezifikationsentwurf, vorläufiger und detaillierter Entwurf. In diesen Phasen wird die Machbarkeit technischer Lösungen überprüft und durch die Erstellung von Prototypen begründet. Jede Windung der Spirale entspricht einem Schritt-für-Schritt-Modell zur Erstellung eines Fragments oder einer Version des Systems; die Ziele und Merkmale des Projekts werden darauf geklärt, seine Qualität bestimmt und die Arbeit der nächsten Windung des Spirale ist geplant. Auf diese Weise werden die Details des Projekts vertieft und konsistent spezifiziert und im Ergebnis eine sinnvolle Option ausgewählt, die zur Umsetzung gebracht wird.

Experten weisen auf folgende Vorteile des Spiralmodells hin:

Ansammlung und Wiederverwendung von Software, Modellen und Prototypen;

Orientierung an der Entwicklung und Modifikation des Systems im Prozess seiner Gestaltung;

Risiko- und Kostenanalyse während des Designprozesses

. Beachten Sie, dass das Hauptmerkmal der Branche der automatisierten Steuerungssysteme die Konzentration der Komplexität in den Anfangsphasen des Lebenszyklus (Analyse, Design) bei relativ geringer Komplexität und Arbeitsintensität in den nachfolgenden Phasen ist. Darüber hinaus führen ungelöste Probleme und Fehler in der Analyse- und Entwurfsphase zu schwierigen, oft unlösbaren Problemen in späteren Phasen und können letztendlich den Erfolg zunichtemachen.

Anforderungsanalyse

Die Anforderungsanalyse ist die erste Phase der Entwicklung automatisierter Steuerungssysteme, in der Kundenanforderungen geklärt, formalisiert und dokumentiert werden. Tatsächlich ist in dieser Phase die Antwort auf die Frage gegeben: „Was soll das zukünftige System tun?“ Hier liegt der Schlüssel zum Erfolg des gesamten Projekts. In der Praxis des Schaffens große Systeme Gerade wegen der Unvollständigkeit und Unbestimmtheit der Definition gibt es viele Beispiele für eine erfolglose Projektumsetzung. System Anforderungen.

Die Liste der Anforderungen an automatisierte Kontrollsysteme sollte Folgendes umfassen:

Die Reihe von Bedingungen, unter denen das zukünftige System voraussichtlich betrieben wird (dem System bereitgestellte Hardware- und Softwareressourcen; äußere Bedingungen seines Funktionierens; Zusammensetzung der damit verbundenen Personen und Arbeiten);

Beschreibung der vom System ausgeführten Funktionen;

Einschränkungen im Entwicklungsprozess (Richtlinienfristen für die Erledigung einzelner Phasen, verfügbare Ressourcen, organisatorische Abläufe und Maßnahmen zur Gewährleistung der Informationssicherheit).

Ziel der Analyse ist es, allgemeines, unklares Wissen über die Anforderungen an das zukünftige System in möglichst präzise Definitionen zu überführen. Das Ergebnis der Phase sollte ein Modell der Systemanforderungen sein (mit anderen Worten, ein Systemprojekt). , definierend:

Die Architektur des Systems, seine Funktionen, äußere Bedingungen, Funktionsverteilung zwischen den Hardware- und Softwareteilen (FC);

Schnittstellen und Funktionsverteilung zwischen Mensch und System;

Anforderungen an Software- und Informationskomponenten des Frequenzumrichters , notwendige Hardwareressourcen, Datenbankanforderungen, physikalische Eigenschaften der Wechselrichterkomponenten, deren Schnittstellen. Das Anforderungsmodell sollte Folgendes umfassen:

Ein vollständiges Funktionsmodell der Anforderungen an das zukünftige System mit einer detaillierten Ausarbeitung bis hin zur Ebene jeder Tätigkeit jedes Beamten;

Betriebsspezifikationen auf niedriger Ebene;

Ein Paket von Berichten und Dokumenten zum Funktionsmodell, einschließlich Merkmalen des Modellierungsobjekts, einer Liste von Subsystemen, Anforderungen an Methoden und Kommunikationsmittel für den Informationsaustausch zwischen Komponenten, Anforderungen an die Merkmale der Beziehungen des Systems zu angrenzenden Systemen, Anforderungen an Systemfunktionen;

Konzeptionelles Informationsmodell von Anforderungen;

Paket von Berichten und Dokumenten zum Informationsmodell;

Systemarchitektur unter Bezug auf das konzeptionelle Informationsmodell;

Vorschläge für eine Organisationsstruktur zur Unterstützung des Systems.

Somit enthält das Anforderungsmodell Funktions-, Informations- und ggf. Ereignismodelle (sofern es sich bei dem Zielsystem um ein Echtzeitsystem handelt). Bietet eine Reihe von Vorteilen gegenüber dem herkömmlichen Modell:

1. Die traditionelle Entwicklung zeichnet sich durch die Umsetzung der Anfangsphasen mit handwerklichen, nicht formalisierten Methoden aus. Dadurch können Kunden und Anwender das System erstmals sehen, nachdem es bereits weitgehend implementiert ist. Natürlich wird dieses System anders sein als erwartet. Daher werden mehrere weitere Iterationen seiner Entwicklung oder Modifikation folgen, was zusätzliche (und erhebliche) Kosten an Geld und Zeit erfordert. Der Schlüssel zur Lösung dieses Problems liegt in einem Anforderungsmodell, das Ihnen Folgendes ermöglicht:

Beschreiben, „sehen“ und passen Sie das zukünftige System an, bevor es physisch implementiert wird;

Reduzieren Sie die Kosten für die Systementwicklung und -implementierung;

Bewerten Sie die Entwicklung im Hinblick auf Zeit und Ergebnisse.

Erreichen Sie gegenseitiges Verständnis zwischen allen an der Arbeit Beteiligten (Kunden, Benutzer, Entwickler, Programmierer usw.);

Verbessern Sie die Qualität des entwickelten Systems, indem Sie dessen funktionale Zerlegung durchführen und die optimale Struktur der integrierten Datenbank entwerfen.

2. Das Anforderungsmodell ist völlig unabhängig und von bestimmten Entwicklern trennbar, erfordert keine Wartung durch seine Ersteller und kann problemlos auf andere übertragen werden. Wenn ein Unternehmen aus irgendeinem Grund nicht bereit ist, ein auf einem Anforderungsmodell basierendes System zu implementieren, kann es außerdem „auf Eis gelegt“ werden, bis der Bedarf entsteht.

3. Das Anforderungsmodell kann zur eigenständigen Entwicklung oder Anpassung bereits auf seiner Basis implementierter Software durch Programmierer aus der Untergenutzt werden.

4. Das Anforderungsmodell kann zur automatisierten und schnellen Schulung neuer Mitarbeiter in einem bestimmten Tätigkeitsbereich des Unternehmens verwendet werden, da seine Technologie im Modell enthalten ist.

Die Phase der Anforderungsanalyse ist die wichtigste aller Lebenszyklusphasen. Es hat erhebliche Auswirkungen auf alle nachfolgenden Phasen und ist gleichzeitig der am wenigsten untersuchte und verstandene Prozess. In dieser Phase ist es erstens notwendig zu verstehen, was getan werden soll, und zweitens, es zu dokumentieren, denn wenn die Anforderungen nicht erfasst und den Projektbeteiligten zur Verfügung gestellt werden, dann scheinen sie nicht zu existieren. Gleichzeitig muss die Sprache, in der die Anforderungen formuliert werden, möglichst einfach und für den Kunden verständlich sein.

Andererseits ist die betrachtete Lebenszyklusphase der schwierigste Teil der Entwicklung. Die folgenden Probleme, mit denen ein Systemanalytiker konfrontiert ist, hängen miteinander zusammen (und dies ist einer der Hauptgründe, warum sie schwer zu lösen sind):

Der Analyst verfügt nicht immer über umfassende Informationen, um die Systemanforderungen aus Kundensicht einzuschätzen;

Der Kunde wiederum verfügt nicht über ausreichende Informationen über das Datenverarbeitungsproblem, um beurteilen zu können, was machbar ist und was nicht;

Der Analyst wird mit einer übermäßigen Menge an detaillierten Informationen sowohl zum Themenbereich als auch zum Thema konfrontiert neues System;

Die herkömmliche (Text-)Systembeschreibung ist aufgrund der Fülle an Fachbegriffen für den Kunden oft unverständlich;

Wenn eine solche Spezifikation für den Kunden klar ist, reicht sie für die Designer und Programmierer, die das System erstellen oder anpassen, nicht aus.

Natürlich werden durch den Einsatz bekannter Analysemethoden einzelne Analyseprobleme beseitigt, eine akzeptable Lösung für die Gesamtheit dieser Probleme kann jedoch nur durch den Einsatz moderner Methoden des System- und Software-Engineerings gefunden werden, unter denen eine Schlüsselstellung einnimmt durch die Methoden der strukturellen und objektorientierten Analyse.

Methoden der Strukturanalyse

Strukturanalyse wird üblicherweise als Methode zur Untersuchung eines Systems bezeichnet, die mit beginnt Gesamtübersicht Es wird dann detailliert und erhält eine hierarchische Struktur mit zunehmender Anzahl von Ebenen . Diese Methoden zeichnen sich aus durch:

Unterteilung in Abstraktionsebenen mit einer Begrenzung der Anzahl der Elemente auf jeder Ebene (normalerweise zwischen 3 und 7, wobei die Obergrenze der Wahrnehmungsfähigkeit des menschlichen Gehirns entspricht). eine bestimmte Menge von miteinander verbundene Objekte, und das unterste wurde aus Gründen des gesunden Menschenverstandes ausgewählt);

Eingeschränkter Kontext, der nur relevante Details auf jeder Ebene enthält;

Verwendung strenger formeller Aufzeichnungsregeln;

Konsequente Annäherung an das Endergebnis.

Strukturanalysemethoden ermöglichen es, die Komplexität großer Systeme zu überwinden, indem man sie in Teile („Black Boxes“) zerlegt und diese Black Boxes hierarchisch organisiert . Der Vorteil der Verwendung einer Blackbox besteht darin, dass der Benutzer nicht wissen muss, wie sie funktioniert, sondern nur ihre Ein- und Ausgänge und ihren Zweck (d. h. die Funktion, die sie ausführt). In der Welt um uns herum gibt es Black Boxes große Mengen: Tonbandgerät und Fernseher auf Haushaltsebene, ein Unternehmen aus Sicht des Kunden usw. Lassen Sie uns die Vorteile daraus bestehender Systeme am Beispiel eines Musikcenters veranschaulichen.

Der Aufbau eines Black-Box-Systems wird stark vereinfacht. Es ist viel einfacher, ein Tonbandgerät oder einen Plattenspieler zu entwerfen, wenn Sie sich nicht um den Einbau einer Verstärkereinheit kümmern müssen.

Dies erleichtert das Testen solcher Systeme. Wenn der Ton aus einem der Lautsprecher schlecht ist, können Sie die Lautsprecher austauschen. Wenn sich der Fehler mit der Säule verschoben hat, muss die Säule repariert werden; Wenn nicht, liegt das Problem am Verstärker, Tonbandgerät oder deren Anschlusspunkten.

Es ist möglich, das Black-Box-System einfach umzukonfigurieren. Wenn der Lautsprecher defekt ist, können Sie ihn in eine Reparaturwerkstatt bringen und die Aufnahmen im Mono-Modus weiterhören.

Erleichtert das Verstehen und Beherrschen. Es ist möglich, Tonbandgerät-Spezialist zu werden, ohne über fundierte Sprecherkenntnisse zu verfügen.

Verbessert die einfache Änderung. Sie können hochwertigere Lautsprecher und einen leistungsstärkeren Verstärker kaufen, aber das bedeutet nicht unbedingt, dass Sie einen größeren Plattenspieler benötigen.

Daher besteht der erste Schritt zur Vereinfachung eines komplexen Systems darin, es in Black Boxes zu zerlegen (das „Teile-und-Herrsche“-Prinzip – das Prinzip, schwierige Probleme zu lösen, indem man sie in viele unabhängige Aufgaben aufteilt, die leicht zu verstehen und zu lösen sind) und eine solche Aufteilung muss folgende Kriterien erfüllen:

Jede Blackbox muss eine einzelne Funktion des Systems implementieren;

Die Funktion jeder Black Box sollte leicht verständlich sein, unabhängig von der Komplexität ihrer Implementierung (z. B. kann ein Raketensteuerungssystem über eine Black Box zur Berechnung seines Landeorts verfügen: Trotz der Komplexität des Algorithmus ist die Funktion der Black Box nicht erkennbar Es ist offensichtlich - Landepunktberechnung);

Der Zusammenhang zwischen Blackboxen sollte nur dann eingeführt werden, wenn ein Zusammenhang zwischen den entsprechenden Funktionen des Systems besteht (z. B. wird in der Buchhaltung eine Blackbox zur Berechnung der Summe benötigt). Löhne Arbeitnehmer und zum anderen – zur Berechnung der Steuern ist ein Zusammenhang zwischen diesen Black Boxes notwendig: Zur Berechnung der Steuern ist die Höhe des Lohns erforderlich);

Die Verbindungen zwischen Blackboxen sollten so einfach wie möglich sein, um die Unabhängigkeit zwischen ihnen zu gewährleisten.

Die zweite wichtige Idee, die strukturellen Methoden zugrunde liegt, ist die Idee der Hierarchie. Um ein komplexes System zu verstehen, reicht es nicht aus, es in Teile zu zerlegen; es ist notwendig, diese Teile auf eine bestimmte Weise zu organisieren, nämlich in Form hierarchischer Strukturen. Alle komplexen Systeme des Universums sind in Hierarchien organisiert. Und es selbst umfasst Galaxien, Sternensysteme, Planeten, Moleküle, Atome, Elementarteilchen. Bei der Schaffung komplexer Systeme ahmt der Mensch auch die Natur nach. Jede Organisation hat einen Direktor, Stellvertreter in den Bereichen, eine Hierarchie von Abteilungsleitern und normale Mitarbeiter. Das zweite Prinzip der Strukturanalyse (das Prinzip der hierarchischen Ordnung) besagt also, dass neben der Tatsache, dass es einfacher ist, ein Problem zu verstehen, wenn es in Teile zerlegt wird, auch die Anordnung dieser Teile für das Verständnis von wesentlicher Bedeutung ist. Die Verständlichkeit eines Problems erhöht sich dramatisch, wenn seine Teile in baumartigen hierarchischen Strukturen organisiert werden, das heißt, das System kann in Ebenen verstanden und aufgebaut werden, die jeweils neue Details hinzufügen.

Zum Schluss noch das dritte Prinzip: Strukturelle Methoden nutzen in großem Umfang grafische Notationen. Sie dient auch dazu, das Verständnis komplexer Systeme zu erleichtern. Es ist bekannt, dass „ein Bild mehr sagt als tausend Worte“.

Die Einhaltung dieser Grundsätze ist bei der Organisation der Arbeit in den Anfangsphasen des Lebenszyklus erforderlich, unabhängig von der Art des zu entwickelnden Systems und den verwendeten Methoden. Geleitet von allen Prinzipien in einem Komplex ermöglicht es mehr frühe Stufen Entwicklung, um zu verstehen, wie das erstellte System aussehen wird, um Fehler und Mängel zu erkennen, was wiederum die Arbeit in späteren Phasen des Lebenszyklus erleichtert und die Entwicklungskosten senkt.

Für die Zwecke der Strukturanalyse werden traditionell drei Gruppen von Werkzeugen verwendet, die Folgendes veranschaulichen:

Funktionen, die das System ausführen muss,

Beziehungen zwischen Daten

zeitabhängiges Verhalten des Systems (Echtzeitaspekte).

Unter den verschiedenen grafischen Notationen, die zur Lösung der aufgeführten Probleme verwendet werden, werden die folgenden am häufigsten und effektivsten in Strukturanalysemethoden verwendet:

DFD(Datenflussdiagramme) - Datenflussdiagramme zusammen mit Datenwörterbücher und Prozessspezifikationen (Minispezifikationen);

ERD(Entity-Relationship-Diagramme) - Diagramme"Wesen-Verbindung»;

STD(Zustandsübergangsdiagramme) - Zustandsübergangsdiagramme.

Ein klassisches DFD zeigt Datenquellen und -senken (Ziel) außerhalb des Systems an, identifiziert logische Funktionen (Prozesse) und Gruppen von Datenelementen, die eine Funktion mit einer anderen verknüpfen (Threads), und identifiziert auch Datenspeicher (Laufwerke), auf die zugegriffen wird. Datenflussstrukturen und Definitionen ihrer Komponenten werden in einem Datenwörterbuch gespeichert und analysiert. Jede logische Funktion (Prozess) kann mithilfe eines DFD auf niedrigerer Ebene detailliert beschrieben werden. Wenn weitere Details nicht mehr sinnvoll sind, fahren Sie mit dem Ausdrücken der Logik der Funktion mithilfe einer Prozessspezifikation (Minispezifikation) fort. Der Inhalt jedes Repositorys wird auch in einem Datenwörterbuch gespeichert, das Datenmodell des Repositorys wird mithilfe von ERD verfügbar gemacht. Im Fall von Echtzeit wird DFD durch die Beschreibung des zeitabhängigen Verhaltens des Systems ergänzt, das mithilfe von STD ermittelt wird. Diese Beziehungen sind in Abb. dargestellt. 20.

Es ist zu beachten, dass für die funktionale Modellierung neben DFD häufig eine andere Notation verwendet wird – SADT (genauer gesagt seine standardisierte Teilmenge IDEFO). Im Folgenden wird eine vergleichende Analyse dieser beiden Ansätze zur Modellierung von Systemfunktionen gegeben.

Mit den oben aufgeführten Tools können Sie dies tun Gesamte Beschreibung Systeme, unabhängig davon, ob sie bereits vorhanden sind oder von Grund auf neu entwickelt werden. Diese detaillierte Beschreibung dessen, was das System tun soll, weitestgehend frei von der Betrachtung von Implementierungspfaden, wird als Anforderungsspezifikation bezeichnet und gibt dem Designer, der die nächste Phase des Lebenszyklus implementiert, eine klare Vorstellung davon, welche Endergebnisse erzielt werden müssen erreicht.

Die oben aufgeführten grafischen Notationen werden (in der einen oder anderen Menge) in fast allen verwendet moderne Methoden Strukturelle Systemanalyse. Die Rolle dieser Methoden besteht darin, die Grundlagen der Entwicklung komplexer Systeme zu regeln. Sie beschreiben die Abfolge von Schritten, Modellen und

Reis. 20

Ansätze, die, wenn sie sorgfältig befolgt werden, zu gut funktionierenden Systemen führen. Obwohl Methoden im Allgemeinen keine Garantie für die Qualität gebauter Systeme sind, tragen sie dennoch dazu bei, alle wichtigen Phasen, Schritte und Momente der Entwicklung abzudecken und zu berücksichtigen, helfen bei der Bewältigung von Dimensionsproblemen und letztendlich bei der Bewertung des Fortschritts. Darüber hinaus bieten Methoden organisatorische Unterstützung, die es großen Entwicklungsteams ermöglicht, koordiniert zu arbeiten.

Mit anderen Worten definiert die Strukturanalysemethodik die Richtlinien für die Erstellung und Bewertung des Anforderungsmodells des zu entwickelnden Systems, die durchzuführenden Arbeitsschritte, deren Reihenfolge sowie die Regeln für die Verteilung und Zuordnung der Operationen und Methoden gebraucht.

Derzeit werden fast alle bekannten Strukturanalysemethoden erfolgreich eingesetzt, aber die am weitesten verbreiteten Methoden sind SADT (Structured Analysis and Design Technique), Gane-Sarson-Struktursystemanalyse, Yourdon-DeMarko-Strukturanalyse und -Design), Entwicklung von Jackson-Systemen, Entwicklung von Struktursystemen von Warmer-Orr, Analyse und Design von Echtzeitsystemen von Ward-Mellor und Hatley, Informationsmodellierung von Martin.

Die aufgeführten Strukturmethoden regeln streng die Phasen der Anforderungsanalyse und des Spezifikationsentwurfs und spiegeln einen „Kochbuch“-Ansatz für die Systementwicklung wider. Zu den Anforderungsspezifikationen gehören Merkmale des Zielsystems und seine vorhergesagten Eigenschaften, Benutzeroberflächendesigns (Menüs, Bildschirme und Formulare), Systemleistungskriterien sowie Software- und Hardwareumgebung. Das resultierende Anwird weiter in Designspezifikationen umgewandelt, in denen die beabsichtigte Implementierung des Antriebs detailliert beschrieben wird. Designspezifikationen identifizieren die Hauptmodule, Kommunikations- und Steuerwege zwischen Modulen, Hauptroutinen innerhalb jedes Moduls, Datenstrukturen und Spezifikationen für Eingabe- und Ausgabedateiformate. Für Schlüsselprozesse enthalten Designspezifikationen häufig Algorithmusdetails in einer Minispezifikations-Designsprache. Zukünftig bieten strukturelle Methoden eine Technik zur Übersetzung von Designspezifikationen in Programmcodes. Die Codegenerierung setzt die Existenz von Codestandards voraus, die das Format von Unterprogrammüberschriften, das gestaffelte Erscheinungsbild verschachtelter Blöcke, die Nomenklatur zur Angabe von Variablen und Namen von Unterprogrammen usw. festlegen.

Moderne Strukturmethoden werden nach den folgenden drei Merkmalen klassifiziert:

VonAttitüdeZuSchulen - Software Engineering (SE) undInformationstechnik (IE);

in der Reihenfolge der Konstruktion des Modells – verfahrensorientiert und informationsorientiert;

nach Art der Zielsysteme - für Echtzeitsysteme (RTS) und Informationssysteme (IS).

SE ist eine universelle Disziplin in der Entwicklung von Softwaresystemen aller Art (IS, SRV). IE ist die Disziplin des Aufbaus von IS im Allgemeinen und nicht nur ihrer Softwarekomponenten, sondern umfasst auch Phasen weiterer Aspekte hohes Level(zum Beispiel strategische Planung), jedoch sind diese Disziplinen in der Phase der Analyse der Anforderungen für den Softwareteil ähnlich.

Der traditionelle verfahrensorientierte Ansatz regelt den Vorrang des Entwurfs funktionaler Komponenten gegenüber dem Entwurf von Datenstrukturen: Datenanforderungen werden durch funktionale Anforderungen offengelegt. Bei einem informationszentrierten Ansatz sind Eingabe und Ausgabe am wichtigsten – zunächst werden Datenstrukturen definiert und aus den Daten werden prozedurale Komponenten abgeleitet.

Das Hauptmerkmal von Echtzeitsystemen besteht darin, dass sie externe Ereignisse überwachen und durch diese gesteuert werden. Die rechtzeitige Reaktion auf diese Ereignisse ist die Hauptfunktion solcher Systeme. Die grundlegenden Unterschiede zwischen Informationssystemen und Echtzeitsystemen sind in der Tabelle aufgeführt. 2;

Tabelle 2

Die Mittel zur Unterstützung dieser Merkmale unterscheiden die entsprechenden Strukturmethoden. Es ist zu beachten, dass zur Analyse der Anforderungen an Echtzeitsysteme spezielle Arten von Strukturdiagrammen verwendet werden: Kontrollflussdiagramme, Zustandsübergangsdiagramme, Zustands-/Ereignismatrizen, Entscheidungstabellen usw. Viele davon sind jedoch Variationen von Strukturdiagrammen zur Analyse von Anforderungen an Informationssysteme. Darüber hinaus basieren bekannte Methoden zur Analyse und zum Entwurf von ICs (insbesondere die Methoden von Hutley und War da Mellor) auf den aufgeführten Methoden zur Analyse und zum Entwurf von ICs und erweitern diese um entsprechende Diagrammtechniken.

In der Tabelle Abbildung 3 zeigt die Klassifizierung der am häufigsten verwendeten Methoden gemäß den oben genannten Kriterien (Daten zur Häufigkeit der Verwendung wurden basierend auf einer Analyse der Informationen zu 127 CASE-Paketen ermittelt).

Wie bereits erwähnt, liegt der bedeutendste Unterschied zwischen den Arten der Strukturanalyse in den Methoden und Werkzeugen der funktionalen Modellierung. Unter diesem Gesichtspunkt lassen sich alle Arten der strukturellen Systemanalyse in zwei Gruppen einteilen: diejenigen, die DFD-Methoden und -Technologie (in verschiedenen Notationen) verwenden, und diejenigen, die die SADT-Methodik verwenden. Nach Angaben des maßgeblichsten Forschungsunternehmens in diesem Bereich, der CASE Consulting Group, beträgt das Verhältnis der Verwendung dieser beiden Arten der Strukturanalyse in der Praxis 90 % für DFD und 10 % für SADT.

Tisch 3

Methoden

Häufigkeit der Nutzung

Die Schule

Bauauftrag

Art der Zielsysteme

Yodan-De Marco

verfahrensorientiert

Gain-Sarson

verfahrensorientiert

Konstantin

verfahrensorientiert

informationsorientiert

Varnier-Orr

informationsorientiert

informationsorientiert

verfahrensorientiert

Vorwegnehmen vergleichende Analyse von DFD- und SADT-Ansätzen Betrachten Sie als Beispiel die oberste Ebene des Anforderungsmodells an ein Management-Automatisierungssystem für ein Unternehmen, das an der auftragsgemäßen Warenverteilung beteiligt ist (Abb. 21 bzw. Abb. 22). Bestellungen unterliegen der Eingangskontrolle und -sortierung. Sollte die Bestellung nicht dem Sortiment entsprechen oder falsch aufgegeben werden, wird sie mit entsprechender Mitteilung an den Kunden storniert. Sofern die Bestellung nicht storniert wird, wird ermittelt, ob das entsprechende Produkt vorrätig ist. Bei positiver Antwort wird eine Rechnung zur Zahlung ausgestellt und dem Kunden vorgelegt; nach Zahlungseingang wird die Ware an den Kunden versandt. Wenn der Bestellung keine Lagerbestände zur Verfügung gestellt werden, wird eine Anfrage für das Produkt an den Hersteller gesendet. Nachdem die benötigte Ware im Lager des Unternehmens eingetroffen ist, wird die Bestellung gesichert und der oben beschriebene Weg wiederholt sich.


Eine vergleichende Analyse dieser beiden Arten von Methoden wird gemäß durchgeführt die folgenden Parameter:

Angemessenheit der Mittel für das betrachtete Problem;

Konsistenz mit anderen Strukturanalysetools;

Integration mit nachfolgenden Entwicklungsphasen (und vor allem mit der Designphase).

1) Angemessenheit. Die Wahl der einen oder anderen Strukturmethodik hängt direkt vom Themenbereich ab, für den das Modell erstellt wird. In unserem Fall werden die Methoden auf automatisierte Unternehmensmanagementsysteme angewendet und nicht auf Systeme im Allgemeinen, wie in SADT angenommen. Für die betrachteten Probleme ist DFD konkurrenzlos.

Erstens sind SADT-Diagramme viel weniger aussagekräftig und für die Modellierung automatisierter Steuerungssysteme geeignet (vergleiche Abb. 21 und Abb. 22). Daher sind Bögen in SADT streng typisiert (Eingabe, Ausgabe, Steuerung, Mechanismus). Gleichzeitig wird in Bezug auf automatisierte Steuerungssysteme die semantische Unterscheidung zwischen Eingaben und Ausgaben einerseits und Kontrollen und Mechanismen andererseits aufgehoben: Eingaben, Ausgaben, Mechanismen und Kontrollen sind Datenflüsse und/oder oder Kontrolle und die Regeln für ihre Transformation. Die Systemanalyse anhand von Datenflüssen und den sie transformierenden Prozessen ist transparenter und eindeutiger.

bestimmte Systeme (zum Beispiel sind Data Warehouses Prototypen von Dateien oder Datenbanken, externe Entitäten spiegeln die Interaktion des modellierten Systems mit der Außenwelt wider).

Zweitens gibt es in SADT keine Ausdrucksmittel zur Modellierung der Merkmale automatisierter Steuerungssysteme. DFDs wurden von Anfang an als Mittel zur Gestaltung von Informationssystemen entwickelt, die den Kern automatisierter Steuerungssysteme bilden und über einen umfangreicheren Satz von Elementen verfügen, die die Besonderheiten und drittens das Vorhandensein von Minispezifikationen von DFD auf niedrigerer Ebene angemessen widerspiegeln Prozesse ermöglichen es, die logische Unvollständigkeit von SADT zu überwinden (nämlich den Bruch des Modells auf einer ausreichend niedrigen Ebene, wenn weitere Details bedeutungslos werden) und eine vollständige funktionale Spezifikation des zu entwickelnden Systems zu erstellen.

2) Konsistenz. Der Hauptvorteil jedes Modells ist die Möglichkeit, es in andere Modelltypen zu integrieren. In diesem Fall sprechen wir von Konsistenz Funktionsmodelle mit Mitteln der Informations- und Ereignis(zeit)modellierung. Die Vereinbarkeit des SADT-Modells mit ERD und/oder STD ist nahezu unmöglich oder trivial. DFD, ERD und STD ergänzen sich wiederum und sind im Wesentlichen konsistente Darstellungen verschiedener Aspekte desselben Modells (siehe Abb. 20). In der Tabelle Abbildung 4 zeigt die Möglichkeit einer solchen Integration für DFD- und SADT-Modelle.

Tabelle 4

Name

Strukturkarten

Beachten Sie, dass die Integration von DFD-STD durch die Erweiterung des klassischen DFD um spezielle Tools zum Entwerfen von Echtzeitsystemen (Steuerungsprozessen, Threads, Datenspeichern) erfolgt und STD eine Detaillierung des Steuerungsprozesses ist, die über alle Steuerungsthreads hinweg konsistent ist Shops. Die Integration von DFD-ERD erfolgt über ein Objekt, das in SADT fehlt – einen Datenspeicher, dessen Struktur mit ERD beschrieben wird und mit den entsprechenden Flüssen und anderen Speichern auf DFD übereinstimmt.

3) Integration mit nachfolgenden Stufen. Wichtiges Merkmal Methodik – ihre Kompatibilität mit den nachfolgenden Phasen der Anwendung der Analyseergebnisse (und vor allem mit der Entwurfsphase, die unmittelbar auf die Analyse folgt und sich auf ihre Ergebnisse verlässt). DFDs lassen sich leicht in Entwurfsmodelle (Strukturkarten) umwandeln – das sind ähnliche Modelle. Darüber hinaus sind eine Reihe von Algorithmen bekannt, die die DFD-Hierarchie automatisch in Strukturkarten umwandeln verschiedene Arten, was einen logischen und reibungslosen Übergang von der Anforderungsanalysephase zum Systemdesign gewährleistet. Andererseits sind formale Methoden zur Umwandlung von SADT-Diagrammen in Lösungen für den Entwurf automatisierter Steuerungssysteme unbekannt.

Dennoch ist zu beachten, dass es sich bei den betrachteten Arten der Strukturanalyse im Wesentlichen um zwei Sprachen mit annähernd gleicher Leistungsfähigkeit zur Vermittlung von Verständnis handelt. Und eines der Hauptauswahlkriterien ist Folgendes: Wie gut spricht der Berater oder Analyst jede dieser Sprachen, wie kompetent kann er seine Gedanken in dieser Sprache ausdrücken?