Die Grundlagen für eine schrittweise Lösung aus der IBM-Abhängigkeit legen:

Japaner entdecken den SW-Bereich für sich

23.01.1987

Wenig Sensationelles hatten die Japaner bisher im Softwarebereich zu bieten. Inzwischen haben die Verantwortlichen in Tokio jedoch erkannt, daß genau in diesem bisher vernachlässigten Markt die Zukunft liegt. Am Beispiel des Sigma-Projektes gibt Heinz-Peter Renkel einen Überblick über die Aktivitäten in Nippon.

Hintergrund der Durchführung des Sigma-Projektes (Software Industrialized Generator und Maintenance Aids) ist die im Vergleich zur Hardwaretechnologie relativ schwache Stellung der japanischen Softwareindustrie. Kennzeichnend für die Situation der SW-Branche ist ihre starke Abhängigkeit von Aufträgen der Computerhersteller, die Konzentration auf Spezial- statt auf Standardanwendungen und der große Anteil ausländischer Softwarepakete im japanischen Markt.

Alle japanischen Computerhersteller mit Ausnahme von NEC bauen IBM-kompatible Systeme. Das Sigma-Projekt zielt darauf, durch die Konzentration auf Unix als Betriebssystem die Grundlagen für eine schrittweise Lösung aus der IBM-Abhängigkeit zu legen. Sollte das Projekt zu einem Erfolg führen, rechnet man damit, daß auch IBM den dann neu definierten Quasi-lndustriestandard auf Unix-Basis nicht ignorieren kann.

Das Sigma-Projekt begann im Oktober 1985 mit der Zielsetzung, die Produktivität im Softwareentwicklungszyklus um den Faktor 4 zu steigern, und damit die Softwarefirmen in die Lage zu versetzen, mit den ausländischen Produkten konkurrieren zu können. Im einzelnen werden folgende Subziele angestrebt:

- Verbesserung von Softwarequalität und Engineering-Produktivität,

- Vermeidung von Doppelentwicklungen,

- Verbesserung der Ausbildung von Softwareentwicklern,

- Bereitstellung von Softwareentwicklungshilfen und Know-how.

Um diese Ziele zu erreichen, will die l.P.A., die für die Ausrichtung des Projektes verantwortlich zeichnet, eine Standardentwicklungsumgebung unabhängig von speziellen Hardwarekonfigurationen sowie ein Netz zum Austausch von Programmen und technischer Information aufbauen.

Die Projektrealisierung soll in zwei aufeinanderfolgenden Schritten erfolgen. Während in der Phase 1 die ersten Version des Sigma-Operating-Systems und der Software-Engineering-Werkzeuge entwickelt werden sowie Datenbanksystem und Sigma-Netz in einer Prototypversion lauffähig sein sollen, wird man sich in der zweiten Phase auf die Erweiterung und Verbesserung der Funktionen sowie die Erhöhung des Datenschutzes konzentrieren. Auch gilt es als nicht ausgeschlossen, daß "Ada" neben "C" zum Ende des Projektes eine Rolle spielen kann, da NTT, eine der wichtigsten Teilnehmerfirmen, erhebliche Forschungserfahrungen auf diesem Gebiet vorzuweisen hat und diese gerne in das Sigma-Projekt einbringen möchte.

Ende Dezember 1985 waren 125 Firmen als Projekt-Teilnehmer registriert. Neuere Zahlen liegen leider nicht vor. Es ist jedoch davon auszugehen, daß die Zahl auf 150 angewachsen ist, im Jahre 1990 rechnet man mit 1000 Sigma-Benutzern. Von den 125 Firmen sind 96 der Gruppe der Software- und Systemhäuser und 21 den einheimischen Computer- und Elektronikherstellern zuzuordnen. Weiterhin sind acht ausländische Firmen als Teilnehmer eingeschrieben. Interessant ist auch, daß IBM entgegen einer Zeitungsmeldung der Nihon Keizai Shinbun vom 7. Oktober 85, nicht als Mitglied des Sigma-Projektes registriert ist. Dieser Umstand wurde durch I.P.A. bestätigt und damit begründet, daß es Probleme mit der einheimischen Industrie in dieser Frage gegeben habe.

Die Projektleitung des Sigma-Projektes läßt sich von drei verschiedenen Komitees beraten. Das System Developement Committee berät im Hinblick auf die organisatorische Abwicklung des Gesamtvorhabens das Technical Committee konzentriert sich dagegen auf die Formulierung von Spezifikationen für die Hardwareausrüstung der Sigma-Teilnehmer (Workstations und Netzanschlüsse), die Funktionsbeschreibung des Sigma-Operating Systems und den Serviceumfang des Sigma-Centers. Schließlich kümmert sich ein Managementkomittee um Faktoren wie Softwareeigentumsrechte, Preisgestaltung für das Serviceangebot und rechtliche Beziehungen zwischen der I.P.A., den Produktentwicklern und Nutzern.

Das Sigma-System vereinigt folgende Komponenten:

- Sigma-Center mit F&E-Aufgaben und Serviceangebot,

- Workstations der Projektteilnehmer,

- Sigma-Operating-System.

Der F&E-Plan zum Projekt sieht vor, daß im sogenannten Sigma-Center, der eigentlichen Forschungszentrale des Projektes, Software-Engineering-Tools entwickelt werden, die dann den Projektteilnehmern, die über die notwendige Infrastruktur in Form von Workstations verfügen, über ein Netz zur Unterstützung ihrer Softwareentwicklungs-Arbeiten angeboten werden.

Das Sigma-Center besteht aus fünf Untereinheiten:

- einem Network-Service-Subsystem,

- einem Database-Service-Subsystem,

- einem Development-Service-Subsystem,

- einem Demonstration-Center-Subsystem und

- einem EDP-Center-Subsystem.

Während die ersten vier Subzentren in Akihabara untergebracht sind, befindet sich das Rechenzentrum in Harumi. Derzeitig haben 35 Firmen insgesamt 42 Forscher in die fünf Unterzentren entsandt. Es existiert eine Arbeitsteilung zwischen den Hauptteilnehmern des Projektes. NTT ist maßgeblich verantwortlich für den Netzwerkservice, Hitachi für das Datenbankmanagement, Fujitsu für die Entwicklungsarbeiten und das Demonstrationssystem und Nichiden für den Rechenbetrieb. Die in Akihabara untergebrachten Abteilungen verfügen derzeit über eine VAX 11/785s von DEC und eine MV/1000SX von Fujitsu. Die fünf Subzentren haben die im folgenden beschriebenen Aufgaben.

Das Network Service Subsystem

Diese Arbeitseinheit fungiert als Front-end-Prozessor für die vier anderen Subsysteme. Das bereitzustellende Telekommunikationsnetz soll das Sigma-Center mit den Projektteilnehmern sowie externen Netzwerken verbinden. Es wird sich um ein DDX-P-basiertes Paketvermittlungsnetz von NTT handeln. Das Angebot umfaßt Electronic-Mail-Funktionen, Electronic-Bulletin-Board-Services, Electronic Newsletters, File-Transfer und Remote-Job-Entry. Eine Reihe von Protokollen soll unterstützt werden. In erster Linie denkt man dabei jedoch an ein X.25- und ein TCP/IP-lnterface. OSI-Fähigkeit ist erst für einen späteren Projektabschnitt geplant. Gateways sollen geschaffen werden zu "Csnet", "Usnet", "Junet".

Das Database-Service-Subsystem

Die zentrale Datenbank, die den Projektteilnehmern zur Verfügung stehen wird, soll fünf verschiedene Informationsarten enthalten und damit den Softwareentwicklungsprozeß unterstützen. Für ein bestimmtes DBMS hat man sich bisher noch nicht entscheiden können. Folgende Subdatenbanken sind geplant:

- Programm-DB

In ihr sollen Softwaretools, Module und Softwarepakete verfügbar gehalten werden.

- Agency-DB

Hier sollen Informationen über externe Netzwerke, externe DB und anwählbare Rechner abgespeichert werden.

- Educational-DB

Sie wird Hinweise zur Benutzung des Sigma-Systems enthalten.

- Technical-DB

In dieser DB wird der Benutzer auf Informationen zu neuen Softwareentwicklungen und Literatur in diesem Bereich zugreifen können.

- Case-DB

An Beispielen dargestellt finde man hier Daten zu Kosten-, Quali täts- und Produktivitätsberechnungen für den Bereich Softwareentwicklung.

Das Development-SeIvice-Subsystem

Die Arbeitseinheit stellt die verschiedensten Softwarewerkzeuge zur Verfügung. Die Struktur der Software-Engineering-Tools ist in Abbildung 1 wiedergegeben. Die Werkzeuge können in hierarchischer Weise klassifiziert werden mit dem Sigma-Operating-System als Nukleus und dem Benutzerinterface auf der Anwenderseite.

Bei den Werkzeugen wird eine Einteilung in Basic- und Application-Tools vorgenommen. Zu den Basic-Tools gehören zunächst die Common-Tools für Dokumentations- und Projektmanagementzwecke. Bei der Dokumentation sollen Kanji/Kana-Eingabe, Grafik, mathematische Terme und die Eingabe alphanumerischer Zeichen sowie Sonderzeichen möglich sein. Unter Projektmanagement-Tools versteht man Werkzeuge zur Datengenerierung und -analyse. Weiterhin zählen dazu das Software-Database-Management-System und die Network-Application-Tools, die für bestimmte Anwendungsgebiete, wie Business, Wissenschaft und Technik sowie Mikroprozessortechnologie, entworfen werden. Sie werden in "C" programmiert sein.

Benutzerfreundlichkeit steht im Mittelpunkt

Das Schwergewicht ist nicht auf funktionelle Neuheiten, sondern auf Benutzerfreundlichkeit und Einheitlichkeit ausgerichtet. Die Werkzeuge sollen alle Phasen des Softwareentwicklungszyklus von der Requirement-Analyse bis zur Maintenance unterstützen. Neben einer Programmierung in "C" werden die Business-Application-Tools in Cobol, die Werkzeuge für wissenschaftliche und technische Anwendungen in Fortran 77 und die Tools zur Unterstützung der Mikroprozessor-Softwareentwicklungsumgebung in Assembler-Sprachen abgefaßt.

Das Demonstration-Center-Subsystem

Das Demonstration-Center ist dafür zuständig, die jeweils verfügbaren Dienste des Sigma-Centers interessierten, potentiellen Projektteilnehmern oder späteren Nutzern zu präsentieren.

Das EDP-Center-Subsystem

Dieses Subsystem wird den Rechenbetrieb zum Zeitpunkt des kommerziellen Operation des Sigma-Centers übernehmen.

Voraussetzung für die Mitwirkung am Sigma-Projekt wird die Anschaffung von Workstations seitens der Teilnehmer nach festgelegten Spezifikationen der Projektleitung sein. Die Installationen bei den Teilnehmern werden von einer Workstation in kleinen Organisationen bis zu LAN-vernetzten Workstation-Systemen in größeren Firmen reichen. Als Mindestanforderung betrachtet man eine Workstation pro Softwareentwickler, was für japanische Verhältnisse ein enormer Fortschritt wäre, wo sich zur Zeit etwa fünf Entwickler eine Workstation teilen müssen. Alle Workstations werden das Sigma-Betriebssystem als Programmierumgebung benutzen.

Die Entscheidung über das dem Sigma-Projekt zugrundeliegende Betriebssystem als Softwareentwicklungsumgebung kann ohne Zweifel als die zentrale Entscheidung im Projekt bezeichnet werden. Lange Zeit hat man sich nach einem geeigneten Operating-System umgesehen. Die Entscheidung war aber, wenn auch die Diskussion um das derzeitig weltweit führende System längst nich abgeschlossen ist, eigentlich voraus zusehen. Ein japanisches Produkt kam von Anfang an nicht in Betracht, weil die Neutralität zwischen den einheimischen Projektteilnehmern gewahrt werden mußte. An ein von IBM entwickeltes Sytem war ebenfalls nicht zu denken, da man ja gerade durch das Projekt der IBM-Bindung und -Kompatibilität entwachsen wollte. Die Entscheidung fiel deshalb für Unix als Grundlage für das Sigma-Betriebssystem. Unix wurde aus den folgenden Gründen gewählt:

- Im Hinblick auf seine Funktionen und Performance bleiben wenige Wünsche offen.

- Der Markt für Unix wächst schnell und das Betriebssystem wird an zahlreichen Universitäten und Forschungseinrichtungen zu Forschungszwecken eingesetzt.

- Auch in der Praxis wird es zunehmend für Entwicklungsaufgaben verwandt; das Know-how steigt deshalb zusehends.

- Unix ist sehr kompakt und auch auf die verschiedensten Workstations portierbar.

- Unix ist auf dem besten Wege, sich zu einem Industriestandard zu entwickeln.

Angesichts dieser Argumente erscheint die Entscheidung für Unix ökonomisch und technologisch als sinnvoll. Unix wird aber nicht, so wie es von AT&T oder Berkeley angeboten wird, implementiert, sondern in einer angepaßten und erweiterten Version, die auf die japanischen Bedürfnisse abgestimmt ist. Bis zur Standardisierung der Sprache "C" soll das Sigma-Betriebssystem AT&T System V als Sigma-Einheits-C-Sprache verwenden. Für die Funktionsspezifikation des Sigma-Betriebssystems wurden eine Planungsgruppe, bestehend aus Vertretern von 15 Firmen, und eine Revisionsgruppe, bestehend aus 59 Gesellschaften, gebildet. Im Juli 1986 wurde eine Spezifikation vorgelegt. Demnach wird das einzusetzende Betriebssystem maßgeblich auf der Grundlage von System V basieren, wobei einige Features, wie die Command Library oder der System Call, der Berkeley-Version von Unix entnommen sind. Die Integration von AT&T-Unix und Berkeley-Unix soll Ende 1989 fertig sein, eine erste Version jedoch bereits 1987 verfügbar sein. Zusätzlich ist geplant, japanische Schriftzeicheneingabe und -verarbeitung, Multi-Window, Grafik, DB und Telekommunikation zu ermöglichen.

Wert gelegt werden soll auch auf Aufwärtskompatibilität im Sigma-System und Kompatibilität mit derzeitigen und späteren Unix-Versionen. Die Verantwortlichen gehen von einem Entwicklungszeitraum von fünf Jahren aus. Das Sigma-Betriebssystem wird aus mehreren Subeinheiten bestehen:

Das Basis-Subsystem

Das Basis-Subsystem baut auf den gesamten Funktionen von System V auf und fügt einige ausgewählte Funktionen des Berkeley Unix 4.2 bsd hinzu. Berkeley-Unix wird in erster Linie für die Kommunikationsfähigkeit des Sigma-Betriebssystems gebraucht.

Das japanische Sprachverarbeitungs-Subsystem

Um in Japan eine effiziente Softwareentwicklungsumgebung zur Verfügung zu haben, bedarf es der Ausstattung der Workstations mit einem japanischen Language-Interface. Diese Funktionserweiterung soll bei voller Erhaltung der Kompatibilität mit Unix erfolgen. Art und Menge der zu verwendenden Schriftzeichen werden mit dem EUC (Extended Unix Code Set) und entsprechen somit der japanischen Industrienorm (JIS).

Das Multi-Window-Subsystem

Die Multi-Window-Technik ist notwendig, wenn auf einer Workstation im Multitasking-Betrieb gearbeitet oder wenn auf verschiedene Dateien einer Task gleichzeitig zugegriffen werden soll. Die Multi-Window-Funktion wird auf hochauflösenden Rasterdisplays mit 1000 mal 1000 Bildpunkten implementiert werden und soll über eine Maus bedienbar sein.

Das Grafik-Subsystem

Grafikfunktionen werden gewünscht, um Grafik und Text in die verschiedensten Softwaredokumente zu integrieren. Man verspricht sich davon bessere Visualisierungsmöglichkeiten. Die zu entwickelnde Software wird zu einem Teil hardwareunabhängig und zu einem gewissen Grad hardwareabhängig sein. Unabhängig von der Hardware wird die Software zur Realisierung eines Grafikinterfaces auf CGI/VDI- und auf GKS-Basis sowie für CAD/CAM-Anwendungen sein.

Das Sigma-Projekt ist ein typisches Beispiel dafür, wie in Japan technologische Schwächen erkannte definiert und in Projektvorhaben umgesetzt werden. Man darf mit Recht gespannt darauf sein, ob die Japaner es schaffen, Software, ähnlich wie schon den Hardwarebereich, in eine internationale Führungsposition hineinzubringen. Sicher ist jedenfalls schon heute, daß die nächsten Jahre genutzt werden, um bisher vernachlässigtes Terrain äufzuarbeiten. Das Sigma-Projekt ist im Gegensatz zu den meisten anderen japanischen Forschungsvorhaben offen für ausländische Teilnehmer.

*Dr. Heinz-Peter Renkel ist Mitarbeiter der Gesellschaft für Mathematik und Datenverarbeitung, Sankt Augustin, und stellvertretender Leiter der GID/GMD-Außenstelle in Tokio.