DE19900500B4 - Verfahren und System zum Spezifizieren eines Computersystems für seine Herstellung - Google Patents

Verfahren und System zum Spezifizieren eines Computersystems für seine Herstellung Download PDF

Info

Publication number
DE19900500B4
DE19900500B4 DE19900500A DE19900500A DE19900500B4 DE 19900500 B4 DE19900500 B4 DE 19900500B4 DE 19900500 A DE19900500 A DE 19900500A DE 19900500 A DE19900500 A DE 19900500A DE 19900500 B4 DE19900500 B4 DE 19900500B4
Authority
DE
Germany
Prior art keywords
computer system
list
options
selection
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE19900500A
Other languages
English (en)
Other versions
DE19900500A1 (de
Inventor
Alan E. Austin Beelitz
Paul J. Cedar Park Maia
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dell USA LP
Original Assignee
Dell USA LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=21757587&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE19900500(B4) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Dell USA LP filed Critical Dell USA LP
Publication of DE19900500A1 publication Critical patent/DE19900500A1/de
Application granted granted Critical
Publication of DE19900500B4 publication Critical patent/DE19900500B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99934Query formulation, input preparation, or translation

Abstract

Verfahren zum Spezifizieren eines Computersystems für seine Herstellung mit den folgenden Schritten:
Präsentieren einer Liste einer ersten Vielzahl von Optionen über ein Anwenderinterface für einen Anwender, die auf dem Computersystem bei seiner Herstellung implementiert werden können;
Aufnehmen einer Anzeige einer getroffenen Auswahl durch den Anwender aus der ersten Vielzahl von Optionen, die dem Anwender über das Anwenderinterface präsentiert worden sind;
Erzeugen einer Liste einer zweiten Vielzahl von Optionen, die auf dem Computersystem bei seiner Herstellung implementiert werden können, wobei jede Option der zweiten Vielzahl von Optionen mit der ersten getroffenen Auswahl kompatibel ist;
Präsentieren der Liste der zweiten Vielzahl von Optionen für den Anwender über das Anwenderinterface, wobei
das Verfahren ferner folgende Schritte aufweist
Schreiben einer Teilnummer für die getroffenen Auswahl in eine computerlesbare Datei; und
Zuordnen einer ausführbaren Datei zu der Teilnummer der getroffenen Auswahl zur Verwendung bei der Herstellung des Computersystems,...

Description

  • Hintergrund der Erfindung
  • Die Erfindung bezieht sich auf das US-Patent 5,963,743 A das am 29. August 1997 eingereicht worden ist, mit dem Titel "Data Base for Facilitating Software Installation and Testing for a Build-To-Order Computer System" mit den Erfinder Richard D. Amberg, Roger W. Wong, und Michael A. Brundridge. Das Patent ist hiermit in seiner Gesamtheit durch Referenz mit aufgenommen.
  • Die Erfindung bezieht sich auf das US-Patent 5,991,543 A das am 29. August 1997 eingereicht worden ist, mit dem Titel "Software Installation and Testing for a Build-To-Order Computer System" der Erfinder Richard D. Amberg, Rodger W. Wong und Michael A. Brundridge. Das Patent wird hiermit durch Referenz in seiner Gesamtheit mit aufgenommen.
  • Die Erfindung bezieht sich auf das US-Patent 5,995,757 A das am 29. August 1997 eingereicht worden ist, mit dem Titel "Software Installation and Testing for a Build-To-Order Computer System" mit den Erfindern Richard D. Amberg, Roger W. Wong und Michael A. Brundridge als Erfinder. Das Patent ist hiermit durch Referenz in seiner Gesamtheit mit aufgenommen.
  • Bereich der Erfindung
  • Die vorliegende Erfindung betrifft ein Verfahren und ein System zum Spezifizieren eines Computersystems für seine Herstellung.
  • Beschreibung des Standes der Technik
  • Computersysteme sind Systeme zur Handhabung von Informationen, die konstruiert werden können, um unabhängige Rechenleistungen einem Anwender oder einer Vielzahl von Anwendern zu geben. Computersysteme können in vielen Formen gefunden werden, beispielsweise als Mainframe-Rechner, Minicomputer, Workstations, Server, Personalcomputer, Internetterminals, Notebooks, und eingebaute Systeme. Personalcomputer-(PC)Systeme wie z. B. International Business Machines (IBM) kompatible PC-Systeme umfassen Tischrechner, auf dem Boden stehende Rechner oder tragbare Versionen. Ein typisches PC-System umfasst Hardware-Komponenten wie einen Prozessor, zugeordneten Speicher wie beispielsweise RAM, Kontrollogik, und eine Anzahl von Umgebungsgeräten, die die Eingabe und die Ausgabe für das System erzeugen. Solche Umgebungsgeräte umfassen häufig Diskettenlaufwerke und Festplatten, CD-ROM-Laufwerke, Netzwerkkarten, Terminalvorrichtungen, Modems, Soundvorrichtungen, Spracherkennungsvorrichtungen, elektronische Stiftvorrichtungen und andere Massenspeichervorrichtungen, wie z. B. Bandlaufwerke und DVDs.
  • Es ist bekannt, Softwareprogramme zu installieren und Tests auf Computersystemen durchzuführen bevor sie an Unternehmen oder einzelne Kunden versandt werden. Das Ziel der Softwareinstallation und des Testens ist es. effizient ein nützliches, zuverlässiges Computersystem herzustellen, das frei von Fehlern und startbereit an Unternehmen und Einzelpersonen geliefert werden kann. Im allgemeinen entdeckt und analysiert das Testen Fehler, die sowohl in den Hardwareals auch in den Softwareteilen des Computersystems auftreten. Ein Auszug von Computersystem-Hardwaretests kann Diagnose von Hardwarekomponenten enthalten, wie z. B. des Prozessors des Speichers, einer Speichervorrichtung, einer Audiovorrichtung, einer Grafikvorrichtung, einer Tastatur, einer Maus und eines Druckers. Das Installieren der Software umfaßt häufig das Laden eines gewünschten Paketes von Softwareprogrammen in das Computersystem, das Vorbereiten von geeigneten Umgebungsvariablen für den Computer und das Vorbereiten von geeigneten Initialisierungdateien für die geladenen Softwareprogramme. Das Softwaretesten umfaßt häufig das Sicherstellen, daß eine gewünschte Version eines Softwareprogramms auf dem Computersystem installiert worden ist und daß geeignete Treiber auf dem Computersystem vorhanden sind.
  • Aus der GB 2 301 206 A ist ein automatisiertes System bekannt, das eine erleichterte Bestellung von Hardwarekomponenten eines in einem Gestell montierten Computers ermöglicht. Das System ermöglicht einem Anwender, gewünschte Hardwarekomponenten auszuwählen und evaluiert am Ende des Auswahlvorgangs die ausgewählten Hardwarekomponenten im Hinblick auf ihre Kompatibilität, ihren Leistungsverbrauch, den Platz, die Verbindungsanforderungen, ihre Gewichtsverteilung und die Wärmeabgabe der Komponenten.
  • Aus der US 5,665,951 A ist ein System bekannt, das einen Kunden beim Einkaufen unterstützen soll. Das System umfasst eine maschinenlesbare Speichervorrichtung und ein Subsystem zur Überprüfung der Kompatibilität. Dieses System wird insbesondere zur Erleichterung der Auswahl von Kleidung durch einen Kunden verwendet, um sicherzustellen, dass ausgewählte Kleidungsstücke kompatibel sind zu Kleidungsstücken, die der Kunde bereits besitzt.
  • Die US 4,984,155 A offenbart ein System, mit dem ein Kunde über ein Terminal Bestellungen für Waren oder Dienstleistungen über ein Computernetzwerk elektronisch abwickeln kann.
  • Die EP 0 474 578 A1 lehrt, schließlich, ein Verfahren zur Installation einer komplexen mehrstufigen Softwareanwendung anhand eines Installationsprofils, das basierend auf Eingaben durch einen Installationsexperten erzeugt wird.
  • Es ist bekannt, Softwareprogramme, die auf einem Computersystem installiert werden sollen, zu spezifizieren. Eine Computerdatei kann erzeugt werden, um die ausgewählten Softwareprogramme anzuzeigen. Typischerweise wird die erzeugte Datei von einem Programm oder Programmen überprüft, um festzustellen, ob die ausgewählten Softwareprogramme mit dem Zielcomputersystem kompatibel sind. Wenn die ausgewählten Programme inkompatibel sind, liefert das Programm einen Fehler, der die Erzeugung einer neuen Datei verlangt. Solch ein System trägt zu der Unannehmlichkeit des Bestellen und des Spezifizierens eines Computersystems bei.
  • Zusammenfassung der Erfindung
  • Es hat sich herausgestellt, daß einem Anwender eine Liste von Optionen zu präsentieren, die zu einer früheren Auswahl des Anwenders kompatibel sind, ein System vorteilhaft in die Lage versetzt, zur Spezifizierung von Softwareprogrammen und Hardwarekomponenten für ein Computersystem in eine kompatible Datendatei eine Anzeige von diesen Auswahlen zu schreiben.
  • In einem Aspekt umfaßt die Erfindung ein Verfahren zum Spezifizieren eines Computersystems. Das Verfahren umfaßt dem Anwender über ein Anwenderinterface eine Liste von einer ersten Vielzahl von Optionen zu präsentieren, die in einem Computersystem implementiert werden können und das Aufnehmen einer Anzeige der getroffenen Auswahl durch den Anwender aus der ersten Vielzahl von Optionen, die dem Anwender über das Anwenderinterface präsentiert worden sind. Das Verfahren umfaßt ferner das Erzeugen einer Liste einer zweiten Vielzahl von Optionen, die in einem Computersystem implementiert werden können. Jede der zweiten Vielzahl von Optionen ist mit der getroffenen Auswahl kompatibel. Das Verfahren umfaßt ferner dem Anwender über ein Anwenderinterface die Liste der zweiten Vielzahl von Optionen zu präsentieren.
  • Gemäß einem weiteren Aspekt der Erfindung umfaßt ein Computersystem einen Prozessor und einen Speicher, der betriebsbereit mit dem Prozessor verbunden ist. Der Speicher umfaßt ein Softwareprogramm, das auf ihm installiert worden ist. Das Softwareprogramm ist ausgewählt, um aus einer Liste von Optionen installiert zu werden. Jede Option der Liste ist mit einem Betriebssystem kompatibel, das auf dem Speicher installiert worden ist. Das Betriebssystem wird vor der Wahl des Softwareprogramms ausgewählt. Die Liste wird erzeugt durch das Zugreifen auf eine Datenbank, die vom Computersystem gelesen werden kann und die eine Vielzahl von Einträgen umfaßt. Die Datenbank umfaßt einen Eintrag für jede Option der Liste. Der Eintrag für jede Option der Liste umfaßt eine Anzeige der Kompatibilität mit dem ausgewählten Betriebssystem.
  • Gemäß einem weiteren Aspekt der Erfindung umfaßt ein Verfahren zum Spezifizieren eines Computersystems das Zuverfügungstellen einer ersten Liste von Optionen an einem Anwenderinterface, das Aufnehmen einer Anzeige einer getroffenen Auswahl vom Anwenderinterface aus der ersten Liste von Optionen, die dem Anwender über das Anwenderinterface präsentiert worden ist und das Erzeugen einer zweiten Liste von Optionen. Das Erzeugen umfaßt das Zugreifen auf eine Datenbank, die von einem Computersystem gelesen werden kann. Jede Option der zweiten Liste ist mit der getroffenen Wahl kompatibel. Das Verfahren umfaßt ferner das Zuverfügungstellen der zweiten Liste von Optionen an das Anwenderinterface und das Aufnehmen einer Anzeige von zumindest einer getroffenen Auswahl vom Anwenderinterface aus der zweiten Liste von Optionen, die dem Anwender über das Anwenderinterface präsentiert worden sind. Das Verfahren umfaßt ferner das Schreiben einer Anzeige der getroffenen Auswahl aus der erste Liste in eine computerlesbare Datei und das Schreiben einer Anzeige der zumindest einen getroffenen Auswahl aus der zweiten Liste in eine computerlesbare Datei.
  • Gemäß einem weiteren Aspekt der Erfindung umfaßt ein System zum Erzeugen einer Bestellung für ein Computersystem eine computerlesbare Datenbank, die eine Vielzahl von Einträgen umfaßt. Jeder Eintrag repräsentiert eine Option, die in der Lage ist, auf dem Computersystem implementiert zu werden. Das System umfaßt ferner Mittel zum Erzeugen einer Liste von Optionen an einem Anwenderinterface, die einem Anwender über das Anwenderinterface präsentiert wird, Mittel zum Aufnehmen einer Anzeige von zumindest einer vom Anwender aus einer Liste von Optionen getroffenen Auswahl vom Anwenderinterface, die dem Anwender über das Anwenderinterface präsentiert worden ist, und Mittel zum Erzeugen einer Liste von kompatiblen Optionen, die auf einem Computersystem implementiert werden können. Jede der kompatiblen Optionen ist kompatibel mit einer vorangegangenen getroffenen Auswahl durch den Anwender. Die Mittel zum Erzeugen der Liste von kompatiblen Optionen lesen die Vielzahl von Einträgen, um festzustellen, ob ein Eintrag eine Option darstellt, die kompatibel mit der vorangegangenen getroffenen Auswahl ist. Das System umfaßt ferner Mittel zum Schreiben einer Anzeige einer getroffenen Auswahl in eine Datendatei, die von einem Computersystem gelesen werden kann. Die Mittel zum Erzeugen erzeugen eine Liste von kompatiblen Optionen für das Anwenderinterface. Die Mittel zum Aufnehmen nehmen vom Anwenderinterface eine Anzeige von zumindest einer getroffenen Auswahl auf, aus der Liste der kompatiblen Optionen, die dem An wender über das Anwenderinterface präsentiert worden ist. Die Mittel zum Schreiben schreiben eine Anzeige der zumindest einen getroffenen Auswahl aus der Liste der kompatiblen Optionen in eine Datendatei, die von einem Computersystem gelesen werden kann. Solch ein System oder Verfahren präsentiert dem Anwender vorteilhafterweise eine Liste von Optionen, wobei jede Option kompatibel oder gültig zu einer vorangegangenen getroffenen Auswahl ist. Ein weiterer Vorteil ist, daß die Datendatei, die durch die Spezifizierung oder Bestellsitzung erzeugt worden ist, nur kompatible Auswahlen umfaßt. Indem dem Anwender über das Anwenderinterface nur kompatible Auswahlen präsentiert werden, muß der Anwender nicht erfahren in der Sprache des Computerausrüstung oder von Computersoftwareprogrammen sein, um in der Lage zu sein, ein gemäß einer Bestellung gebautes Computersystem zu spezifizieren und/oder zu bestellen. Ein Händler, der die vorliegende Erfindung nutzt, muß daher nicht hochqualifiziertes Verkaufspersonal beschäftigen. Ferner erlaubt solch ein System einem Computersystemhändler, ein automatisches System zu verwenden, um gemäß einer Bestellung gebaute Computersysteme über ein Kommunikationsnetzwerk zu verkaufen, wie z. B. ein Drucktastentelefonsystem oder das Internet.
  • Kurze Beschreibung der Zeichnungen
  • Die vorliegende Erfindung kann besser verstanden werden und ihre zahlreichen Objekte, Merkmale und Vorteile für den Fachmann deutlich gemacht werden durch den Bezug auf die beiliegenden Zeichnungen.
  • 1 ist ein Blockdiagramm einer Ausführungsform eines Systems zum Erzeugen einer kompatiblen Bestellung für ein Computersystem und zum Bauen des Computersystems gemäß der kompatiblen Bestellung.
  • 2 bis 6 ist ein Flußdiagramm, das die Schritte zum Erzeugen einer kompatiblen Bestellung für ein Computersystem zeigt und zum Bauen des Computersystems gemäß der kompatiblen Bestellung.
  • 7 ist ein Blockdiagramm einer Ausführungsform eines System zum Erzeugen einer kompatiblen Bestellung für ein Computersystem und zum Konfigurieren des Computersystems gemäß der kompatiblen Bestellung.
  • 8a ist eine alpha-numerische Darstellung einer Ausführungsform von Einträgen in einer computerlesbaren Datenbank.
  • 8b ist eine alpha-numerische Darstellung einer Ausführungsform einer Datendatei, die vom einem Computer gelesen werden kann.
  • 8c ist eine alpha-numerische Darstellung einer Ausführungsform einer computerlesbaren Datei, die zum Implementieren von ausgewählten Auswahlen verwendet wird.
  • Die Verwendung der gleichen Bezugszeichen in verschiedenen Zeichnungen zeigt ähnliche oder identische Objekte an.
  • Detaillierte Beschreibung
  • Das Folgende enthält eine detaillierte Beschreibung der für am besten erachteten Weise zur Durchführung der Erfindung. Die Beschreibung ist dazu beabsichtigt, die Erfindung zu erläutern und sollte nicht begrenzend verstanden werden.
  • 1 ist ein Blockdiagramm einer Ausführungsform eines Systems zum Erzeugen einer kompatiblen Bestellung für ein Computersystem und zum Bauen eines Computersystems gemäß der kompatiblen Bestellung. Das System umfaßt ein Kontrollcomputersystem 103 mit einem zugeordneten Kontrollspeicher 107. Das Kontrollcomputersystem 103 (Kontrolle) führt ein Computerprogramm oder -programme, die dazu angelegt sind, eine computerlesbare Datendatei zu erzeugen, die dazu verwendet wird, ein Zielcomputersystem gemäß der Spezifikationen eines Einkäufers oder Konstrukteur des Zielcomputersystems herzustellen. In der gezeigten Ausführungsform gibt ein Anwender, wie z. B. ein Einkäufer oder ein Konstrukteur eine Bestellung auf, um ein Computersystem über ein Anwenderinterface zu kaufen, das in der gezeigten Ausführungsform ein Computerterminal 105 ist. Das Terminal 105 greift auf das Kontrollcomputersystem 103 über ein Computernetzwerk 110 zu, das in der gezeigten Ausführungsform ein Wide Area Network (WAN) ist, wie z. B. das Internet oder ein Intranet. In einer Ausführungsform, führt das Terminal 105 ein Internet-Browser-Programm aus. In einer anderen Ausführungsform kann das Terminal 105 mit dem Kontrollcomputersystem 103 über ein lokales Netzwerk (local area network, LAN) verbunden sein. In anderen Ausführungsformen wird das Terminal von einem Vertreter (Angestellten oder Mittelsmann) des Computersystemhändlers bedient, der Instruktionen vom Verbraucher entweder in Person oder über das Telefon aufnimmt. In anderen Ausführungsformen ist das Kontrollcomputersystem ein Personalcomputersystem und das Anwenderinterface ist das Keyboard, der Display oder Monitor, und die Maus des Personalcomputersystems. In anderen Ausführungsformen kann ein Anwender, wie z. B. ein Einkäufer seine Auswahlen über ein Anwenderinterface, wie z. B. ein Telefon eingeben, das betriebsbereit mit Kontrolle über ein Telefonnetzwerk verbunden ist.
  • Nach dem Empfangen einer Anzeige, daß ein Käufer ein Computersystem kaufen möchte, über die Netzwerkverbindung 110 vom Terminal 105, greift Kontrolle 103 auf eine Hauptdatenbank 125 über eine Netzwerkverbindung 120 zu, um eine Liste von Optionen zu erzeugen, die für ein gemäß einer Bestellung gebautes Computersystem erhältlich sind, wie es vom Hersteller oder Computersystemhändler angeboten wird. Das Kontrollcomputersystem 103 liefert dann die Liste über die Netzwerkverbindung 110 an das Terminal 105, wo in der gezeigten Aus führungsform die Liste auf dem Bildschirm des Terminals angezeigt wird. Nachdem der Anwender eine Auswahl aus der Liste getroffen hat, wird eine Anzeige der getroffenen Auswahl an das Kontrollcomputersystem 103 zurückgeschickt. Das Kontrollcomputersystem 103 greift dann auf die Hauptdatenbank 125 zu, um eine zweite Liste von Optionen zu erzeugen, wobei jede Option der zweite Liste mit der vorangegangenen Auswahl kompatibel ist. Das Kontrollcomputersystem liefert dann die zweite Liste an das Terminal 105 über die Netzwerkverbindung 110, um den Anwender in die Lage zu versetzen, aus einer Liste von Optionen auszuwählen, die mit der vorangegangenen Auswahl kompatibel sind.
  • Dem Anwender eine Liste von Optionen zu präsentieren, die mit einer vorangegangenen ausgewählten Auswahl kompatibel ist, erlaubt in vorteilhafter Weise dem Anwender, nur aus solchen Gegenständen auszuwählen, die mit der vorangegangenen Auswahl kompatibel sind. Dies erleichtert in vorteilhafter Weise die Bequemlichkeit des Bestellens und Spezifizierens eines Computersystems für den Anwender insoweit, als der Anwender nicht erneut eine Auswahl treffen muß, für den Fall einer vorangegangenen Auswahl inkompatibel ist. Es spart dem Anwender ferner Zeit, da er sich nicht mit anderen Optionen abquälen muß, die nicht mit der vorangegangenen Auswahl kompatibel sind. Darüber hinaus sind die erzeugten Bestellungen kompatibel im Hinblick auf die Vervollständigung der Bestell- oder Spezifizierungssitzung mit dem Einkäufer. Daher muß ein Computersystemhändler nicht eine Spezifizierungssitzung erneut beginnen, wenn später festgestellt wird, daß die ursprüngliche Bestellung inkompatibel ist.
  • Nachdem das Kontrollcomputersystem 103 eine Liste von kompatiblen Optionen an das Anwenderinterface 105 geliefert hat und nachdem der Anwender eine Auswahl aus der Liste der kompatiblen Optionen getroffen hat, zeigt das Kontrollcomputersystem 103 in einer von einem Computersystem lesbaren Datendatei oder Systemdeskriptorenrekorddatei im Kontrollspeicher 107 die Auswahlen an, die der Anwender am Terminal 105 getroffen hat. In einer Ausführungsform ist die Datendatei eine Textdatei. In manchen Ausführungsformen umfaßt die Daten datei eine Anzeige des Namens des Einkäufers und der Adresse wie sie über das Anwenderinterface 105 geliefert wird.
  • Das Kontrollcomputersystem 103 liefert die Datendatei über eine Netzwerkverbindung 130 zur Herstellung 135. Die Herstellung 135 befindet sich typischerweise in einer Fabrik oder einer Herstellungseinrichtung, wo die Computersysteme zusammengebaut werden. Die Datendatei wird dazu verwendet, ein Zielcomputersystem nach den Auswahlen, die der Anwender getroffen hat, herzustellen, wie sie in der Datendatei angezeigt werden. In einer Ausführungsform wird die Datendatei, die durch das Kontrollsystem 103 erzeugt worden ist, dazu verwendet, um andere Dateien zu erzeugen, die bei der Herstellung des Zielcomputersystems verwendet werden. Siehe beispielsweise "Software Installation and Testing for a Build-To-Order Computer System", US-Patent 5,995,757 A eingereicht am 29. August 1997 der Erfinder Richard D. Amberg, Roger W. Wong und Michael A. Brunbridge, das hiermit durch Referenz in seiner Gesamtheit mit aufgenommen ist. In einer anderen Ausführungsform wird die Datendatei direkt auf einen Datenserver bei der Herstellung 135 geladen. Wenn das Zielcomputersystem 137 zum ersten Mal startet, lädt es Software und führt andere Operationen und Instruktionen gemäß der Datendatei aus.
  • In einer Ausführungsform umfasst die Herstellung 135 ein Computerprogramm, das "Parser" genannt wird, das die Anzeigen oder Einträge in der Datendatei liest und ausführbare Shell-Script-Dateien den Anzeigen oder Einträgen in der Datendatei zuordnet, die sich in der Herstellung 135 befinden. Der Parser kann ebenfalls die Shell-Script-Programme ausführen, um die Installation der Softwarebetriebssystem-Anwendungsprogramme oder anderer Anwendungsprogramme auf dem Zielcomputersystem 137 auszuführen. In einer Ausführungsform werden die Shell-Script-Dateien in der Hauptdatenbank gespeichert, wobei das Computersystem, das das Parser-Programm ausführt, Zugriff auf die Hauptdatenbank 125 hat.
  • In einer Ausführungsform würde die Datendatei elektronisch über eine Netzwerkverbindung 130 zur Herstellung 135 gesendet werden. In anderen Ausführungsformen würde die Datendatei ausgedruckt werden, wobei eine Person bei der Herstellung 135 per Hand die Auswahlen während des Herstellungsprozesses eingeben würde.
  • In der dargestellten Ausführungsform befindet sich die Hauptdatenbank auf einem Server, der eine Vielzahl von Laufwerken umfaßt. In einer Ausführungsform ist die Datenbank 125 eine computerlesbare Datenbank, die einen Eintrag für jede Softwareprogramm- oder Hardwarekomponentenoption enthält, die von dem Computersystemhersteller oder -händler für ein gemäß einer Bestellung gebautes Computersystem angeboten wird. In einigen Ausführungsformen enthält die Hauptdatenbank 125 ferner einen Eintrag für jede Implementierunsoperation, wie z. B. die Installation eines Programms, die Formatierungsvorgänge für eine Festplatte und Testvorgänge für das Implementieren der Hardwarekomponenten und der Softwareprogramme auf einem Computersystem. Diese Einträge können sich in verschiedenen Dateien in der Hauptdatenbank 125 befinden. In einer Ausführungsform ist die Hauptdatenbank als eine zweidimensionale Datei realisiert.
  • Jeder Eintrag in der Hauptdatentabelle 125 umfaßt eine herstellerspezifische Teilenummer oder ein Identifikationsfeld, wobei jede individuelle Hardwarekomponente, Softwareprogramm oder Installationsvorgang eine spezielle Nummer hat. Jeder Eintrag kann ferner ein Beschreibungsfeld umfassen, das Text anzeigt, der auf dem Anwenderinterface des Terminals 105 angezeigt werden soll, wenn der Eintrag dem Anwender präsentiert wird. 8a ist eine alpha-numerische Darstellung einer Ausführungsform von Einträgen in einer Teiledatei, die sich in der Hauptdatenbank befindet.
  • Jeder Eintrag in der Hauptdatenbank umfaßt ferner zumindest ein „tag" oder „tag-Feld". Ein tag oder tag-Feld ist eine Anzeige, die dazu verwendet wird, um eine Eigenschaft zu definieren, die mit einer speziellen Teilnummer eines Datenban keintrages verbunden ist. Diese tags werden dazu verwendet, um jeden Eintrag einzuteilen und um die Kompatibilität mit anderen Hardwarekomponenten und Softwareprogrammen anzuzeigen, die in der Hauptdatenbank 125 aufgelistet sind. Das Kontrollcomputersystem 103 liest tags, um eine Liste von Optionen zu erzeugen, um sie dem Anwenderinterface zu präsentieren, die kompatibel mit einer früheren Auswahl oder Auswahlen ist. Beispielsweise enthält jeder Softwareprogrammanwendungseintrag ein tag-Feld, das die Kompatibilität mit einer speziellen Version und Sprache eines Betriebssystemtyps anzeigt. In anderen Ausführungsformen enthält jeder Betriebssystemtyp einen tag, der seine Kompatibilität mit einem speziellen Prozessor anzeigt. In einigen Ausführungsformen können die Einträge für das Betriebssystem einen tag umfassen, der die Größe des RAM anzeigt, der für das Betriebssystem gebraucht wird. In einigen Ausführungsformen kann jeder Eintrag für eine Softwareprogrammanwendung einen tag haben, der anzeigt, daß das Programm ein spezielles Teil als Voraussetzung für seine Implementierung benötigt.
  • Die tags in der Hauptdatenbank können ferner dazu verwendet werden, der Kontrolle anzuzeigen, daß andere Operationen von der Kontrolle auf der Basis einer zuvor ausgewählten Auswahl des Anwenders durchgeführt werden müssen. Ferner kann ein tag oder ein tag-Feld dazu verwendet werden, um anzuzeigen, daß der Computersystemhändler eine Vielzahl von Optionen für einen speziellen Eintrag (entweder ein Softwareprogramm oder eine Hardwarekomponente oder eine Implementierungsoperation) anbietet. Wenn das Kontrollsystem den tag liest, kann es daher eine Liste von Optionen für den speziellen Eintrag erzeugen, wenn der Eintrag ausgewählt ist. Beispielsweise kann der Eintrag für ein Betriebssystem einen tag umfassen, der anzeigt, daß der Händler ein Standardfestplattenformat oder ein alternatives Festplattenformat mit dem Betriebssystem anbietet. Um diese Liste zu erzeugen, scannt das Kontrollcomputersystem die Hauptdatenbank auf der Suche nach anderen tags eines bestimmten Typs, um eine Liste von alternativen Festplattenformaten zu konstruieren. Daher zeigt der tag dem Kontrollcomputersystem an, daß andere Optionen dem Anwender über das Anwenderinterface präsentiert werden müssen und das der Anwender eine Option auswählen muß. In anderen Ausführungsformen würden die tags anzeigen, welche Hardwarekomponenten, Softwareprogramme, Installationsinstruktionen oder Operationen, Tests oder andere Implementationsoperationen für die Implementation des Eintrags auf einem Computersystem benötigt werden. In einer Ausführungsform würde ein spezieller tag der Kontrolle anzeigen, zu einer Datenbank zu gehen, um eine spezielle Funktion durchzuführen, wie z. B. das Laden von Text in die Datendatei aus einer anderen Datenbank. tags können ebenfalls dazu verwendet werden, um anzuzeigen, daß ein Eintrag inkompatibel mit anderen Einträgen ist.
  • Obwohl in 1 nur ein Kontrollcomputersystem 103 gezeigt ist, das auf die Hauptdatenbank 125 zugreift, können in anderen Ausführungsformen viele Kontrollcomputersysteme auf die Datenbank 125 zugreifen, um Bestell- oder Spezifizierungssitzungen mit einer Vielzahl von Anwendern durchzuführen. In einer Ausführungsform sind die Kontrollcomputersysteme Personalcomputer des Innendienstverkaufspersonals eines Computersystemshändlers. Ein Vorteil einer zentralen Hauptdatenbank ist, daß die Listen, die von den Kontrollcomputersystemen erzeugt werden, kompatibel und aktuell sind. Darüber hinaus erlaubt eine Hauptdatenbank eine leichte Aktualisierung des Systems beim Anbieten von neuen Computerhardwarekomponenten und Softwareprogrammanwendungen. Wenn ein Händler neue Softwareprogramme oder Hardwarekomponenten anbieten will, wird ein neuer Eintrag inklusive tags zur Anzeige der Kompatibilität mit anderen Einträgen in der Hauptdatenbank erzeugt. Das Spezifizierungsprogramm, das von den Kontrollcomputersystemen ausgeführt wird, muß nicht aktualisiert werden, um eine neue Komponente, Operation oder ein Programm anzubieten.
  • In einer anderen Ausführungsform ist das Kontrollprogramm in der Hauptdatenbank gespeichert oder einer anderen Datenbank und wird in den RAM des Kontrollcomputersystems heruntergeladen vor dem Beginn einer Bestellsitzung oder einer Gruppe von Bestellsitzungen.
  • In der dargestellten Ausführungsform ist das Ziel – oder spezifizierte Computersystem 137 ein Computersystem, auf dem die Auswahlen, die durch den Anwender gemacht worden sind, wie durch das Anwenderinterface 105 angezeigt, implementiert worden sind. In der gezeigten Ausführungsform ist das Computersystem ein Personalcomputersystem. In anderen Ausführungsformen können andere Typen, Formen oder Versionen eines Computersystems spezifiziert werden und gebaut werden, wie z. B. Laptop-Computers, Server, Internetterminals, eingebauten Systeme oder Workstations.
  • Das System aus 1 ist ein bequemes System, um es einem Einkäufer zu ermöglichen, ein gemäß einer Bestellung gebautes Computersystem zu bestellen und für einen Hersteller, um das Computersystem so, wie es spezifiziert worden ist, zu bauen.
  • Die 2 bis 5 sind Flußdiagramme, die die Schritte zur Erzeugung eines kompatiblen Bestellung für ein Computersystem und zum Bauen des Computersystems gemäß dieser Bestellung zeigen. Diese Flußdiagramme werden vom Kontrollcomputersystem 103 ausgeführt und sind in einer Ausführungsform im Kontrollspeicher 107 gespeichert. In einer Ausführungsform sind die Flußdiagramme durch ein Computerprogramm implementiert, das in der Programmiersprache C geschrieben ist. Im Schritt 201 empfängt das Kontrollcomputersystem 103 eine Anzeige von einem Anwenderinterface 105, die den Wunsch, ein Computersystem zu kaufen, anzeigt. Dies geschieht beispielsweise, wenn ein Einkäufer auf die Website eines Computersystemhändlers über das Internet zugreift und einen Button aktiviert, um eine Spezifizierungs- oder Bestellsitzung zu beginnen.
  • Im Schritt 204 greift Kontrolle 103 auf die Hauptdatenbank 125 zu, um eine Liste von Betriebssystemtypen zu erzeugen oder generieren, die für das Zielcomputersystem erhältlich sind. Um eine Liste von Betriebssystemtypen zu generieren, liest Kontrolle die tags der Einträge der Hauptdatenbank 125 und sucht nach Einträgen mit einem Anfangstag. Dieser Anfangstag zeigt an, daß diese Einträge im Spezifi zierungsprozeß zuerst ausgewählt werden sollen. In der Ausführungsform, die in 2 gezeigt ist, hat jeder Eintrag für ein Betriebssystem einen Anfangstag, da das Programm aus 2 den Spezifizierungsvorgang mit der Auswahl eines Betriebssystems beginnt. Für diese Einträge mit dem Anfangstag liest Kontrolle den Gruppen- oder Typtag, um eine Liste der Typen oder Gruppen zu erzeugen. In der Ausführungsform von 2 liest Kontrolle den Betriebssystemtyptag und erzeugt oder generiert eine Liste von jedem Typ von Betriebssystem, das in der Hauptdatenbank erscheint. Daher wird ein bestimmter Typ von Betriebssystem in der ersten Liste auftauchen, solange die Hauptdatenbank zumindest einen Eintrag hat mit einem tag, der anzeigt, daß das dargestellte Betriebssystem von diesem speziellen Typ ist.
  • Im Schritt 207 liefert Kontrolle 103 eine Liste der erhältlichen Betriebssystemtypen an das Anwenderinterface 105. Wenn der Anwender die Liste sieht, die auf dem Terminalscreen präsentiert wird, wählt er einen Typ eines Betriebssystems aus. Im Schritt 210 empfängt Kontrolle 103 vom Anwenderinterface 105 eine Anzeige des ausgewählten Typs des Betriebssystems aus der Liste, die im Schritt 204 erzeugt worden ist. Im Schritt 213 greift Kontrolle auf die Hauptdatenbank 125 zu, um eine Liste von Versionen oder Sprachen zu erzeugen, die für den ausgewählten Betriebssystemtyp erhältlich sind. In einer Ausführungsform enthält diese Liste jedes Betriebssystem, dessen Eintrag den tag des ausgewählten Betriebssystemtyps hat.
  • In einer anderen Ausführungsform umfassen die Einträge für alle Betriebssysteme, die in der Hauptdatenbank aufgeführt sind, einen Versionstag. In dieser Ausführungsform würde die zweite Liste, die dem Anwender präsentiert, alle Versionen enthalten, die für den ausgewählten Betriebssystemtyp angeboten werden. Diese Versionen auf der zweiten Liste werden durch die Versionstags der Eintrage bestimmt, die den ausgewählten Betriebssystemstyptag haben. In dieser Ausführungsform würde daher eine spezielle Version in der zweiten Liste erscheinen, wenn zumindest ein Eintrag vorhanden ist, der sowohl den tag des aus gewählten Betriebssystemtyps als auch tag einer speziellen Version hat. Nachdem vom Anwenderinterface eine Anzeige empfangen worden ist, welche Version ausgewählt worden ist, würde Kontrolle auf die Hauptdatenbank zugreifen, um eine dritte Liste (dieser Schritt ist nicht gezeigt) zu erzeugen. Diese dritte Liste würde alle Betriebssysteme enthalten, die den tag des ausgewählten Betriebssystemtyps und den tag der ausgewählten Version haben. Diese dritte Liste würde alle Sprache darstellen, die vom Computersystemhändler angeboten werden für die ausgewählte Version des ausgewählten Betriebssystemtyps.
  • Beispiele von Versionen und Sprachen und von Betriebssystemtypen sind die Versionen ORS2 und ORS2.1 und die Sprachen ENG (Englisch) und KOR (Koreanisch) für die Betriebssysteme, die unter der Markenbezeichnung WINDOWS95 von der MICROSOFT CORPORATION angeboten werden.
  • Im Schritt 216 liefert Kontrolle 103 eine Liste der Versionen und Sprachen, die für den ausgewählten Betriebssystemtyp angeboten werden, an das Anwenderinterface 105. Der Anwender wählt aus der Liste, die über das Anwenderinterface 105 präsentiert wird, die gewünschte Sprache und Version des ausgewählten Betriebssystemtyps aus und zeigt die gewünschte Auswahl auf dem Anwenderinterface an. In einer Ausführungsform umfaßt das Anwenderinterface eine Maus oder einen anderen Typ von Zeigerkontrollgerät, um die gewünschte Wahl zu markieren und auszuwählen. In einer anderen Ausführungsform würde der Anwender die gewünschte Auswahl mit einer Tastatur Eintippen. In anderen Ausführungsformen präsentiert das Anwenderinterface die Liste über ein Menüsystem. In anderen Ausführungsformen werden die Listen unter der Verwendung eines textbasierten Fenstersystems präsentiert. Das Anwenderinterface liefert dann die getroffene Auswahl über die Netzwerkverbindung 110 an Kontrolle 103.
  • Nach der Aufnahme der Anzeige der ausgewählten Version und Sprache des ausgewählten Betriebssystemtyps (des ausgewählten Betriebssystems) vom Anwenderinterface 105, erzeugt Kontrolle 103 im Schritt 220 eine Anzeige der ausge wählten Version und Sprache des ausgewählten Betriebssystemtyps und schreibt sie in eine von einem Computersystem lesbare Datendatei, die sich im Kontrollspeicher 107 befindet. In einer Ausführungsform ist diese Datendatei eine Systemdeskriptorenrekord-(SDR)Datei. In einer Ausführungsform umfaßt die Anzeige, die in die Datendatei geschrieben, die spezielle Teilnummer für die ausgewählte Version und Sprache des ausgewählten Betriebssystemtyps. Der Teilnummer ist ein Präfix zugeordnet, das anzeigt, daß die Auswahl ein Betriebssystem ist. In einer Ausführungsform kann ein Identifizierungstag der Teilnummer zugeordnet werden. Dieses Indentifizierungstag würde dazu verwendet werden, um die Version und/oder die Sprache des Betriebssystems anzuzeigen. 8b ist eine alpha-numerische Darstellung einer Ausführungsform einer SDR-Datei.
  • Im Schritt 238 stellt Kontrolle 103 fest, ob es irgendwelche „immer durchzuführenden Teile" („always run parts") gibt, die der ausgewählten Version und Sprache des ausgewählten Betriebsystemtyps zugeordnet sind. Zugeordnete „always run parts" für eine getroffene Auswahl sind Softwareprogramme, Installationsoperationen, Testoperationen oder andere Implementationsoperationen, die benötigt werden oder die der Hersteller mit der Implementierung der getroffenen Auswahl auf einem Zielcomputersystem jeweils durchführen oder implementieren muß. Beispiele von solchen zugeordneten „always run parts” für die ausgewählte Version und Sprache des ausgewählten Betriebssystemtyps umfassen benötigte Patches, benötigte Festplattenvorbereitungsprogramme und Tests, die auf dem Zielcomputersystem ausführt werden müssen bevor und/oder nachdem das ausgewählte Betriebssystem installiert worden ist. In einer Ausführungsform erzeugt Kontrolle eine Liste von „always run parts" durch das Lesen der tags in der Hauptdatenbank 125. In einer Ausführungsform würden die Einträge für jede Version und Sprache eines Betriebssystems ein tag oder ein tagfeld enthalten, das anzeigt, daß ein „always run part" einer speziellen Version und Sprache des Betriebssystems zugeordnet ist. In anderen Ausführungsformen haben die Einträge in der Hauptdatenbank für jeden der „always run parts" einen tag, der anzeigt, daß der „always run Part" dem ausgewählten Betriebssystem zugeordnet ist. In ande ren Ausführungsformen enthält der Eintrag für jedes Betriebssystem einen tag, der anzeigt, daß Kontrolle auf eine andere Datenbank oder einen anderen Bereich der Hauptdatenbank 125 zugreifen soll, um eine Liste von „always run parts" für dieses spezielle Betriebssystem zu erhalten.
  • In anderen Ausführungsformen wird die Liste von „always run parts" durch Kontrolle durch das Zugreifen auf eine Abhängigkeitsdatei erzeugt. Eine Abhängigkeitsdatei ist eine von einem Computersystem lesbare Datei, die „Ausdrücke" umfaßt, die Teilnummern beinhalten und/oder Präfixe, die Instruktionen oder Operationen identifizieren, die ausgeführt werden sollen, Information, die von einer Instruktion oder Operation verlangt wird, oder Programme, die installiert werden, wenn ein Eintrag in einem SDR die Teilnummer und Präfixe, die in dem Ausdruck enthalten sind, enthält. Kontrolle vergleicht die Teilnummer, Präfixe, und/oder Identifizierungstags von jeder Auswahl, die in der Datendatei angezeigt ist, mit den Ausrücken in dem Abhängigkeitsfile, um eine Liste von „always run parts" zu generieren, die der ausgewählten Version und Sprache des ausgewählten Betriebssystemtyps zugeordnet ist. In manchen Ausführungsformen kann das Zugreifen auf die Abhängigkeitsdatei Kontrolle dazu veranlassen, zusätzliche Listen von Optionen zu erzeugen und an das Anwenderinterface zu liefern, auf der Basis von einer oder mehreren früheren Auswahlen. Die Abhängigkeitsdatei kann sich in der Hauptdatenbank oder in anderen Datenbanken befinden.
  • Im Schritt 241 schreibt Kontrolle eine Anzeige der Liste, die in Schritt 238 erzeugt worden ist, in die Datendatei im Speicher 107. Durch das Schreiben einer Anzeige in die Datendatei ordnet Kontrolle ferner Präfixe Teilnummern zu und schreibt die Präfixe und Teilnummer in die Datendatei.
  • Obwohl die Ausführungsform aus 2 zeigt, daß die Schritte 238 und 241 nach dem Schritt 220 ausgeführt werden, können sie in anderen Ausführungsformen durchgeführt werden, nachdem der Anwender die gesamte Bestell- oder Spezifiziersitzung abgeschlossen hat, beispielsweise nach Schritt 513 in 5. In anderen Ausführungsformen kann die Liste der „always run parts" durch die Ausführung eines anderen Programms generiert werden, beispielsweise des Parserprogramms, das sich in der Herstellung befindet. Der Parser würde die Teilnummer und die Präfixe von jedem Eintrag in der Datendatei lesen, um eine Liste von „always run parts" zu erzeugen, die mit jedem Eintrag verbunden sind.
  • Unter Bezug auf 3 schreitet Kontrolle nach dem Schritt 220 in 2 fort zum Schritt 302, wo Kontrolle eine Liste von Festplattenvorbereitungsoperationen erzeugt, die für die ausgewählte Version und Sprache des ausgewählten Betriebssystemtyp erhältlich sind. Beispielsweise kann dem Anwender die Option des Implementierens einer „suspend-to-disk" Operation oder die Option des Implementierens einer Dienstpartition auf der Festplatte in dem Zielcomputersystem präsentiert werden. In einer Ausführungsform erzeugt Kontrolle die Liste der Festplattenvorbereitungsoperationen durch das Lesen der Einträge in der Hauptdatenbank 125. Die Einträge in der Hauptdatenbank für die Festplattenvorbereitungsoperationen umfassen jeweils zumindest einen tag, der anzeigt, daß es ein Eintrag für eine Festplattenvorbereitungsoperation ist und zumindest einen tag, der seine Beziehung zu verschiedenen Betriebssystemen anzeigt. Diese Liste wird durch Kontrolle erzeugt, indem die Beziehungstags der Einträge gelesen werden, um festzustellen, ob die Vorbereitungsoperation optional oder notwendig für die ausgewählte Version und Sprache des ausgewählten Betriebssystemtyps ist. Wenn jedoch die Festplattenvorbereitungsoperation notwendig für die ausgewählte Version und Sprache des ausgewählten Betriebssystemtyps ist, wird die Operation als ein „always run part" betrachtet und eine Anzeige der Operation wird automatisch in der Datendatei im Schritt 241 gemacht, ohne den Anwender zu informieren. Nachdem die Liste, die im Schritt 302 erzeugt worden ist, an das Anwenderinterface geliefert worden ist, wählt der Anwender aus der Liste, die ihm über das Anwenderinterface präsentiert wird, die gewünschten Festplattenvorbereitungsschritte aus. Kontrolle nimmt die Anzeigen dieser Auswahlen im Schritte 306 auf. Diese Auswahlen werden dann in der Datendatei im Schritt 308 angezeigt, indem Kontrolle die Teilenummer und das geeignete Präfix der Operation in die Datendatei schreibt.
  • In einer anderen Ausführungsform wird die Liste von optionalen Festplattenvorbereitungsoperationen von Kontrolle erzeugt, indem auf eine Abhängigkeitsdatei zugegriffen wird, nachdem die Auswahl der Sprache und der Version des Betriebssystemtyps vom Anwender getroffen worden ist. Kontrolle vergleicht den Eintrag für das ausgewählte Betriebssystem (inklusive Teilnummer, tags und Präfix) mit den Ausdrücken in der Abhängigkeitsdatei, um eine Liste von optionalen Vorbereitungsoperationen zu erzeugen, die an das Anwenderinterface geliefert werden, um den Anwender präsentiert zu werden.
  • Im Schritt 310 erzeugt Kontrolle eine Liste von Patches, die für die ausgewählte Version und Sprache des ausgewählten Betriebssystemtyps erhältlich sind. Patches sind Softwareprogramme, die für eine getroffene Auswahl erhältlich sind, die ein Problem mit einer speziellen Wahl korrigieren oder die Performance einer getroffenen Auswahl erhöhen. Wenn beispielsweise ein Betriebssystemhersteller ein Betriebssystem mit einem deaktivierten Direct Memory Access (DMA) liefert, kann der Computersystemhersteller einen Patch anbieten, um den DMA zu aktivieren, um die Performance zu verbessern. In anderen Ausführungsformen können Patches dazu verwendet werden, um die ausgewählte Version und Sprache des ausgewählten Betriebssystemtyps mit einer speziellen Hardwarekomponente zu implementieren, die vom Anwender in einer vorangegangenen Auswahl ausgewählt worden ist. Wenn jedoch der Patch notwendig ist, dann würde er als ein „always run part" betrachtet und eine Anzeige des Patchs würde in die Datendatei im Schritt 241 aus 2 geschrieben.
  • In einer Ausführungsform erzeugt Kontrolle die Liste der Patchs durch das Lesen der Einträge in der Hauptdatenbank 125. In einer Ausführungsform umfaßt der Eintrag für das ausgewählte Betriebssystem einen tag, der anzeigt, daß ein Patch-Softwareprogramm bei dem ausgewählten Betriebssystem optional ist. In anderen Ausführungsformen würde jeder Patch einen Eintrag in der Hauptdatenbank haben, wodurch jeder Patch-Eintrag zumindest einen tag umfaßt, der das Betriebssystem oder die Betriebssysteme anzeigt, für die das Patch-Programm eine Option ist. In manchen Ausführungsformen enthält der Eintrag für jeden Patch ein Beschreibungsfeld. Dieses Beschreibungsfeld zeigt dem Kontrollcomputersystem an, daß eine Textnachricht auf dem Schirm des Anwenderinterface mit dem Patch erscheinen soll, um den Anwender über den Zweck des Patchs zu informieren. In manchen Ausführungsformen kann das Beschreibungsfeld Kontrolle anweisen, auf eine andere Datei an einem speziellen Ort in der Hauptdatenbank zuzugreifen, um den Text, der dargestellt werden soll, zu erhalten.
  • In einer anderen Ausführungsform wird die Liste der optionalen Patches für das ausgewählte Betriebssystem erzeugt, indem Kontrolle auf eine Abhängigkeitsdatei zugreift und die Ausdrücke der Abhängigkeitsdatei mit dem Eintrag in dem SDR für das ausgewählte Betriebssystem vergleicht.
  • In manchen Ausführungsformen erzeugt Kontrolle eine Liste von „always run parts" (entweder durch das Zugreifen auf Einträge in der Hauptdatenbank 125 oder durch das Zugreifen auf eine Abhängigkeitsdatei), die den ausgewählten Festplattenvorbereitungsoperationen zugeordnet sind und schreibt eine Anzeige der Liste von „always run parts" in die Datendatei.
  • Nachdem eine Liste von Patches an das Anwenderinterface im Schritt 312 geliefert worden ist, wählt der Anwender die gewünschten Patches aus der Liste der Patches, die durch das Anwenderinterface präsentiert werden, aus. Danach wird im Schritt 314 eine Anzeige der ausgewählten Patches vom Anwenderinterface an Kontrolle geliefert. Im Schritt 316 schreibt Kontrolle eine Anzeige der ausgewählten Patches in die Datendatei, wo die Teilnummern der ausgewählten Patches und geeignete Präfixe in die Datendatei geschrieben werden.
  • Im Schritt 318 erzeugt Kontrolle eine Liste von „always run parts", die den ausgewählten Patches zugeordnet sind. Im Schritt 320 schreibt Kontrolle diese Liste in die Datendatei. Kontrolle erzeugt die Liste von „always run parts" durch das Zugreifen auf die Einträge in der Hauptdatenbank 125 oder durch Zugreifen auf ein Abhängigkeitsfile. In anderen Ausführungsformen kann Kontrolle 103 die Schritte 318 und 320 nach der Beendigung der Spezifizierungssitzung mit dem Anwender beenden. In anderen Ausführungsformen können die Schritte 318 und 320 durch andere Computersysteme in der Herstellung beendet werden.
  • Unter Bezugnahme auf 4 greift Kontrolle 103 in Schritt 405 auf die Hauptdatenbank zu, um eine Liste von Computersoftwareprogrammen zu erzeugen, die mit der ausgewählten Version und Sprache des ausgewählten Betriebssystemtyps kompatibel sind. Kontrolle erzeugt diese Liste durch das Lesen der zugeordneten tags der Softwareprogrammeinträge in der Hauptdatenbank. In einer Ausführungsform enthält ein Eintrag für ein kompatibles Softwareprogramm einen speziellen tag, der die Kompatibilität mit der ausgewählten Betriebssystemversion oder dem ausgewählten Betriebssystemtyp anzeigt. Nachdem die Liste im Schritt 408 an das Anwenderinterface geliefert worden ist, wählt der Anwender aus der Liste, die ihm durch das Anwenderinterface präsentiert wird, die Softwareprogramme aus, die auf dem Zielcomputersystem installiert werden sollen.
  • In manchen Ausführungsformen werden die Softwareprogramme, die an das Anwenderinterface geliefert werden, in verschiedene Unterlisten oder Untermenüs aufgeteilt. Beispielsweise kann eine erste Unterliste eine Liste von kompatiblen Textverarbeitungsprogrammen, wie z. B. MICROSOFT WORDTM oder WORDPERFECTTM enthalten. Eine weitere Unterliste würde Computerspiele enthalten, die von dem Computersystemhändler angeboten werden. Es versteht sich, daß eine Vielzahl von Untermenüs präsentiert werden kann, die verschiedene Softwareprogramme klassifiziert. Beispielsweise, können Internetzugangsprogramme, Tabellenkalkulationsprogramme und Malprogramme in verschiedenen Untermenüs präsentiert werden. Das Aufteilen der Liste von erhältlichen Pro grammen in Untermenüs erleichtert dem Anwender die Auswahl der Softwareprogramme. In einer Ausführungsform würde jeder Eintrag für ein Softwareprogramm ein tag-Feld oder einen tag enthalten, der den Typ des Softwareprogramms anzeigt. Kontrolle würde diese tags lesen und Untermenülisten gemäß der Softwaretyptags erzeugen. In einer anderen Ausführungsform würde jede verschiedene Gruppe von Softwareprogrammen in einem unterschiedlichen logischen Abschnitt der Datenbank gespeichert sein. Kontrolle würde jede Untermenüliste erzeugen durch das Lesen von nur einem logischen Abschnitt der Datenbank zu einem gewissen Zeitpunkt. In dieser Ausführungsform würde jeder Eintrag in einem logischen Abschnitt der Hauptdatenbank mit einem tag, der die Kompatibilität mit dem ausgewählten Betriebssystem anzeigt, in der Untermenüliste präsentiert werden.
  • Nachdem der Anwender die Softwareprogramme ausgewählt hat, die auf dem Zielcomputer installiert werden sollen, gibt das Anwenderinterface 105 eine Anzeige von diesen Auswahlen an Kontrolle im Schritt 411. Im Schritt 414 schreibt Kontrolle eine Anzeige dieser Auswahlen in die Datendatei, indem sie die Teilnummer und die zugeordneten Präfixe der ausgewählten Softwareprogramme in die Datendatei schreibt. Im Schritt 417 erzeugt Kontrolle eine Liste von „always run parts", die den ausgewählten Softwareprogrammen zugeordnet sind. Im Schritt 420 schreibt Kontrolle diese Liste in die Datendatei. Kontrolle erzeugt die Liste der „always run parts" durch das Zugreifen auf Einträge der Hauptdatenbank 125 oder durch das Zugreifen auf eine Abhängigkeitsdatei. In anderen Ausführungsformen kann Kontrolle 103 die Schritte 417 und 420 nach dem Abschluß der Spezifizierungssitzung mit dem Anwender zu Ende bringen. In anderen Ausführungsformen können die Schritte 417 und 420 durch andere Computersysteme in der Herstellung zu Ende geführt werden.
  • Im Schritt 424 greift Kontrolle auf die Hauptdatenbank zu, um eine zweite Liste von Computersoftwareprogrammen zu erzeugen, die sowohl mit der ausgewählten Version und Sprache des ausgewählten Betriebssystemtyps kompatibel sind und mit allen zuvor ausgewählten Softwareprogrammen. In einer Ausführungsform würden die tags von jedem dieser Programme zumindest ein tag enthalten, um die Kompatibilität mit dem ausgewählten Betriebssystemtyp und dem ausgewählten Softwareprogramm anzuzeigen. Kontrolle 103 liefert die Liste, die im Schritt 425 erzeugt worden ist, an das Anwenderinterface im Schritt 428. Der Anwender wählt die Softwareprogramme aus der zweite Liste aus, die ihm durch das Anwenderinterface präsentiert wird. Die zweite Liste kann Korrekturpatches für die individuellen Softwareprogramme umfassen, die aus der ersten Liste von Softwareprogrammen ausgewählt worden sind oder sie kann optionale Computerprogramme enthalten zum Upgraden oder Verbessern der Performance der ausgewählten Programme. Beispielsweise kann ein Filterprogramm für ein spezielles Textverarbeitungsprogramm angeboten, das Dokumente, die von einem anderen Typ von Textverarbeitungsprogramm erzeugt worden sind, in das Format des speziellen Textverarbeitungsprogramms konvertiert. Wenn jedoch ein ausgewähltes Softwareprogramm von einem zuvor ausgewählten Softwareprogramm verlangt wird, dann werden diese benötigten Anwendungen als „always run parts" für das ausgewählte Softwareprogramm betrachtet und eine Anzeige dieses Programms wird in die Datendatei im Schritt 420 geschrieben.
  • Im Schritt 431 empfängt Kontrolle vom Anwenderinterface eine Anzeige der ausgewählten Softwareprogramme für die zweite Liste, die im Schritt 425 erzeugt worden ist. Kontrolle schreibt eine Anzeige dieser Auswahlen in die Datendatei im Schritt 434, wo die Teilnummern und die zugeordneten Präfixe in die Datendatei geschrieben werden. Im Schritt 436 erzeugt Kontrolle eine Liste von ways run parts", die den ausgewählten Softwareprogrammen der zweiten Liste zugeordnet sind. Im Schritt 439 schreibt Kontrolle diese Liste von „always run parts" in die Datendatei. Kontrolle erzeugt die Liste von „always run parts" durch das Zugreifen auf Einträge in der Hauptdatenbank 125 oder durch das Zugreifen auf eine Abhängigkeitsdatei. In anderen Ausführungsformen kann Kontrolle 103 die Schritte 436 und 439 nach dem Abschluß der Spezifizierungssitzung mit dem Anwender zu Ende bringen. In anderen Ausführungsformen können die Schritte 436 und 439 durch andere Computersysteme in der Herstellung zu Ende geführt werden.
  • Unter Bezugnahme auf 5 schreitet Kontrolle fort zum Schritt 505, nachdem die Softwareprogrammauswahlen in 4 getroffen worden sind, wo Kontrolle auf die Datendatei zugreift, um eine Liste von allen zuvor getroffenen Auswahlen zu erzeugen, wie sie durch die Datendatei angezeigt werden. Diese Liste spiegelt alle Auswahlen wieder, die vom Einkäufer oder Anwender getroffen worden sind und gibt den Typ des Computersystems wieder, der vom Hersteller gebaut werden wird. Im Schritt 507 liefert Kontrolle die Liste an das Anwenderinterface 107, das die Liste dem Anwender präsentiert, woraufhin der Anwender den getroffenen Auswahlen zustimmen oder nicht zustimmen kann. Wenn der Anwender einer Auswahl nicht zustimmt, kann er eine Anzeige an Kontrolle senden „rückwärts" im Programm zu der Auswahl zu gehen, gegen die der Anwender Einwendungen hat und nach einer Neuauswahl dieses Teiles fragen. Sobald Kontrolle eine Anzeige für eine erneute Auswahl eines speziellen Teiles aufgenommen hat, präsentiert Kontrolle erneut die Liste, in der das ausgewählte Teil enthalten ist, entweder durch das Auffinden der gespeicherten Liste im Kontroll-Memory 107 oder durch das Lesen der früheren Auswahlen aus der Datendatei, um zu dem früheren Schritt, der die Liste erzeugt hat, zurückzukehren. Alle auf die beanstandete Auswahl nachfolgende Auswahlen wären nichtig. Kontrolle würde von dem Punkte im Programm weiter fortfahren, an dem die neue Auswahl getroffen wird, um sicherzustellen, daß alle folgenden Auswahlen kompatibel mit der neuen Auswahl sind.
  • Wenn der Anwender den Auswahlen zustimmt, wählt der Anwender einen Bestätigungsbutton auf dem Terminalbildschirm des Anwenderinterfaces. Danach, im Schritt 513, sendet das Anwenderinterface eine Anzeige, daß der Anwender das spezifizierte Computersystem kaufen möchte oder das Kauf durchgeführt worden ist. In einer Ausführungsform würde dies umfassen, daß der Anwender eine Kre ditkartennummer in das Anwenderinterface eingibt. Zu diesem Zeitpunkt ist die Spezifizierungssitzung mit dem Anwender abgeschlossen.
  • Im Schritt 513 greift Kontrolle auf eine Abhängigkeitsdatei zu, um eine Kreuzanalyse der getroffenen Auswahlen durchzuführen. Während dieser Kreuzanalyse vergleicht Kontrolle die Ausdrücke in der Abhängigkeitsdatei, um zu entscheiden, ob irgendwelche „always run parts" der Kombination von getroffenen Auswahlen zugeordnet ist. Wenn der Anwender beispielsweise ein FAT32 Dateisystem auswählt und ein elektronisches Siegel und noch keine Dienstpartition ausgewählt hat, würde Kontrolle nach dem Lesen der Abhängigkeitsdatei in die SDR-Datei eine Anzeige schreiben, eine Dienstpartition auf dem Computersystem zu installieren, aufgrund der Auswahl sowohl eines FAT32 Dateisystems und eines elektronischen Siegels. In diesem Beispiel enthält der Ausdruck, der die Implementierung der Dienstpartition anzeigt, die Teilnummern und/oder Präfixe sowohl für das FAT32 Dateisystem als auch das elektronische Siegel.
  • In einigen Ausführungsformen kann die Kreuzanalyse eine Liste von Optionen erzeugen, die dem Anwender präsentiert werden, basierend auf der Kombination der getroffenen Auswahlen. In diesen Ausführungsformen würde der Schritt der Kreuzanalyse vor dem Schritt 505 ausgeführt werden. In diesen Ausführungsformen würde Kontrolle die Liste an das Anwenderinterface liefern. Nachdem der Anwender über das Anwenderinterface bestimmte Optionen, die die Kreuzanalyse erzeugt hat, ausgewählt hat, würde das Anwenderinterface eine Anzeige dieser Auswahlen zurück an Kontrolle schicken, wobei Kontrolle eine Anzeige der Auswahlen in die SDR-Datei schreiben würde.
  • In anderen Ausführungsformen kann Kontrolle einige der Schritte, die in den 2 bis 4 gezeigt sind, durchführen, nachdem die Spezifizierungs- oder Bestellsitzung mit dem Anwender zu Ende gebracht worden ist (nach dem Schritt 513). In einer Ausführungsform erzeugt Kontrolle die „always run parts" (Schritte 238, 318, 417 und 436) für jede Auswahl oder Eintrag, nachdem die Spezifizierungssitzung zu Ende gebracht worden ist.
  • In einigen Ausführungsformen erzeugt Kontrolle eine Liste der „always run parts", die in jedem Computersystem implementiert sind, das ein Computerhändler herstellt, und schreibt sie in die SDR-Datei. In einer Ausführungsform enthält der Eintrag für jedes dieser „always run parts" einen tag, der anzeigt, daß dieses Teil automatisch in einem Computersystem implementiert wird.
  • Obwohl in den 2 bis 5 nur zwei Listen von kompatiblen Softwareprogrammen erzeugt werden, versteht es sich, daß mehrere Listen von kompatiblen Softwareprogrammen und andere Listen von kompatiblen Optionen erzeugt und dem Anwender während der Spezifizierungssitzung präsentiert werden können.
  • In den in den 2 bis 5 gezeigten Ausführungsformen ist die Datendatei, die von Kontrolle erzeugt wird, eine SDR-Datei. Eine SDR-Datei ist eine Textdatei, die von einem Computer gelesen werden kann, die Einträge oder Linien für jede Hardwarekomponente, Softwarekomponente, Patch oder andere Operationen umfaßt, die auf dem Zielcomputersystem 137 implementiert werden sollen. Jeder Eintrag der SDR-Datei umfaßt die herstellerspezifische Teilenummer und zugeordnete Präfixe für den repräsentierten Gegenstand. In einigen Ausführungsformen identifizieren die zugeordneten Präfixe den Typ des Teils, Programms oder der Komponente, den der Eintrag repräsentiert. In einigen Ausführungsformen kann jeder Eintrag ein Identifizierungstag umfassen. Eine SDR-Datei wird formatiert, um an ein anderes Computersystem in der Herstellung 135 übertragen zu werden und vom ihm gelesen zu werden, das ein Parser-Computerprogramm ausführt, um das Computersystem entsprechend der Datendatei zu bauen. Die SDR-Datei würde ferner kundenspezifische Information, wie z. B. den Namen und die Adresse des Computereinkäufers enthalten.
  • In einer anderen Ausführungsform ist die Datendatei, die von Kontrolle während der Spezifizierungssitzung erzeugt wird, eine BAR-Datei. Eine BAR-Datei enthält Anzeigen der getroffenen Auswahlen und der „always run parts", die diesen Auswahlen zugetroffen sind. Sie hat jedoch ein anderes Format als eine SDR-Datei. Dieses unterschiedliche Format versetzt Kontrolle in die Lage, die Spezifizierungssitzung schneller durchzuführen. Nachdem die Spezifizierungssitzung abgeschlossen ist, wird das BAR-Programm in ein SDR-Programm von Kontrolle konvertiert oder von einem anderen Computersystem, das ein Softwarekonvertierungsprogramm ausführt, wie z. B. ein SDR-Erzeugungsprogramm.
  • In einer anderen Ausführungsform gibt Kontrolle eine BAR-Datei ein, die Spezifizierungen für ein spezielles Computersystem enthält und gibt diese Spezifizierungen in die SDR-Datendatei während der Spezifizierungssitzung ein. Beispielsweise kann Kontrolle Zugriff auf mehrere BAR-Dateien haben (die in einem anderen Abschnitt der Hauptdatenbank 125 oder in einer anderen Datenbank sich befinden), wobei jede BAR-Datei, die Standardhardwarespezifizierungen für ein bestimmtes Modell eines Computersystems enthält, das der Computersystemhersteller anbietet. Der Anwender kann anfangs aufgefordert werden, ein Modell aus der Liste von erhältlichen Modellen auszuwählen. Nach der Aufnahme einer Anzeige des ausgewählten Modelles über das Anwenderinterface 105, greift Kontrolle auf die entsprechende BAR-Datei für dieses Modell zurück und wandelt diese Spezifizierungen in die SDR-Datei um. Danach führt Kontrolle das Spezifizierungsprogramm der 2 bis 4 durch, worin der Anwender das Betriebssystem und die Softwareprogramme spezifiziert. Da jedoch die SDR-Datei Einträge für die Hardwarekomponenten enthält, die in der BAR-Datei spezifiziert worden sind, sind die Auswahlen, die dem Anwender in den 2 bis 4 präsentiert werden, ebenfalls mit den Hardwarekomponenten, wie sie in der BAR-Datei spezifiziert worden sind, kompatibel. In einigen Ausführungsformen präsentiert Kontrolle die Komponenten so wie sie in der BAR-Datei spezifiziert sind als Standardauswahlen und ermöglicht dem Anwender, Veränderungen an den Standardauswahlen durchzuführen.
  • In einigen Ausführungsformen erzeugt Kontrolle aus der Datendatei eine alpha-numerische Textdatei, die von Menschen gelesen werden kann wie z. B. einer Einkaufsbestellung, die an die Herstellungsfabrik gesandt und per Hand in den Herstellungsprozeß eingegeben wird. Da eine kompatible oder gültige Systembeschreibungsdatei oder Datendatei erzeugt wird, müssen in der Herstellung 135 keine besonderen Programme durchgeführt werden, um festzustellen, ob die spezifizierten Komponenten oder Programme legal oder kompatibel sind.
  • Im Schritt 516 liefert Kontrolle die Datendatei an die Herstellung 135, die im Schritt 520 die Datendatei dazu verwendet, um die Auswahlen entsprechend der Datendatei zu implementieren. In einer Ausführungsform führt ein anderes Computersystem in der Herstellung (innerhalb der Herstellung 135) ein Parser-Softwareprogramm aus, das eine ausführbare Shell-Script-Datei jedem Eintrag der SDR-Datei zuordnet und die Shell-Script-Datei beim Implementieren des Eintrags auf dem Zielcomputersystem 137 ausführt. Auf diese Weise werden das ausgewählte Betriebssystem, die ausgewählten Softwareprogramme, die ausgewählten Patches, die ausgewählten Festplattenoperationen, die festgelegten „always run parts" und andere Auswahlen durch die Auswahl der zugeordneten Shell-Script-Dateien installiert, implementiert und getestet. Das Parser-Programm scannt durch den Systemdescriptorenrecord Zeile für Zeile und ordnet jeder Teilnummer eine Shell-Script-Datei zu. Das Parser-Programm führt die Shell-Script-Dateien aus, indem es die Shell-Script-Dateien an ein Script-Verarbeitungsprogramm liefert oder übergibt. Das Script-Verarbeitungsprogramm interpretiert die Anweisungen der Shell-Script-Dateien und handelt nach diesen Instruktionen, um die tatsächlichen Instruktionen für die Installation oder Implementierung der Teile des Computersystems durchzuführen. In einer Ausführungsform kann das Parserprogramm ferner ein Suffix für eine bestimmte Teilenummer erzeugen und an diese Teilenummer dranhängen. Das Parserprogramm erzeugt das Suffix, indem es den Identifizierungstag des SDR-Eintrags liest und durch das Zugreifen auf Tabellen mit der Teilnummer. 8c ist eine alpha-numerische Darstellung einer Datei, die von einem Computer gelesen werden kann, die eine Liste von Shell-Script-Dateien enthält.
  • In einer Ausführungsform umfaßt die Datendatei, die an die Herstellung geliefert wird, die tatsächlichen Instruktionen zum Implementieren der ausgewählten Version und Sprache des ausgewählten Betriebssystemtyps, der ausgewählten Patches, der ausgewählten Softwareprogramme und ferner Instruktionen zum Installieren der Softwareprogramme. Die Datendatei enthält ferner die Instruktionen zum Durchführen der Installationsoperationen. Diese zusätzlichen Instruktionen werden zu der Dateidatei durch Kontrolle nach der Spezifizierungssitzung hinzugefügt.
  • In einer Ausführungsform ist das Zielcomputersystem über eine Netzwerkkarte mit einem Server in der Herstellung verbunden. Das Zielcomputersystem 137 wird anfangs gestartet, um die Operationen und Instruktionen durchzuführen gemäß der zugeordneten Shell-Script-Dateien, um die ausgewählten Programme auf die Festplatte zu laden und die Tests durchzuführen. In einer Ausführungsform können die ausgewählten Softwareprogramme und das Betriebssystem auf das Zielcomputersystem über das Internet heruntergeladen und installiert werden.
  • In anderen Ausführungsformen kann die Datendatei dazu verwendet werden, eine Diskette zu erzeugen, die dazu verwendet werden würde, das Zielcomputersystem im Herstellungsprozeß zu starten und die ausgewählten Programme und Komponenten auf dem Zielcomputersystem zu installieren.
  • In anderen Ausführungsformen würde die Herstellung 135 die Datendatei dazu verwenden, eine Kopie der ausgewählten Softwareprogramme auf eine Diskette oder eine CD-ROM zu schreiben. Diese Diskette würde auch die Installationsinstruktionen und -operationen beinhalten, um die Programme von der CD-ROM auf die Festplatte zu laden. Solch ein Merkmal würde in vorteilhafter Weise eine Sicherungskopie der Festplatte des Zielcomputersystems schaffen und im Falle eines Festplatten-Crashes ein bequemes System zum Reprogrammieren der Festplatte gemäß der spezifizierten Auswahlen.
  • In den Ausführungsformen, die in den 2 bis 4 gezeigt sind, würde der Anwender oder Einkäufer die Hardware für das Zielcomputersystem während der Bestellsitzung spezifizieren. In einigen Ausführungsformen ist die Ausführung der Listen für die Softwareoptionen nicht von der spezifizierten Hardware abhängig.
  • 6 ist ein Flußdiagramm, das die Schritte zeigt, die den Anwender in die Lage versetzen, sowohl kompatible Hardwarekomponenten als auch Softwarekomponenten für das Zielcomputersystem zu spezifizieren. Im Schritt 601 nimmt Kontrolle 103 eine Anzeige vom Anwenderinterface auf, daß ein Einkäufer ein gemäß einer Bestellung gebautes Computersystem kaufen möchte. Im Schritt 604 greift Kontrolle auf die Hauptdatenbank 125 zu, um eine Liste von Hauptprozessoreinheiten (Central Processor Units, CPU) zu erzeugen, die vom Hersteller des Computersystem im Zielcomputersystem angeboten werden. Diese Liste wird durch das Kontrollcomputersystem 103 durch das Lesen der tags in der Hauptdatenbank 125 erzeugt. Jede CPU, die vom Computersystemhändler angeboten wird, hat einen Eintrag in der Hauptdatenbank, der eine herstellerspezifische Teilenummer umfaßt und zugeordnete tags. In der Ausführungsform aus 6 würden die tags für jeden Prozessor einen Anfangstag umfassen. Jede CPU, deren Eintrag einen Anfangstag umfaßt, würde in der ersten Liste präsentiert werden. In anderen Ausführungsformen umfaßt jeder Prozessoreintrag einen Typentag, wobei die erste Liste, die dem Anwender präsentiert wird, die Liste der Typen von CPUs wäre, die vom Computersystemhändler angeboten werden. Im Schritt 607 liefert Kontrolle die Liste an das Anwenderinterface 105. Der Anwender wählt eine gewünschte CPU aus der auf dem Terminalscreen angezeigten Liste aus. Beispielsweise kann der Händler eine Vielzahl von X86-kompatiblen Prozessoren anbieten, wie z. B. die Prozessoren, die unter der Handelsbezeichnung PentiumTM, Pentium 2TM oder Pentium ProTM der Intel Corporation. Nachdem der Anwender eine CPU ausgewählt hat, liefert das Anwenderinterface 105 eine Anzeige der ausgewählten CPU an Kontrolle. Im Schritt 613 greift Kontrolle auf die Hauptdatenbank 125 zu, um eine Liste von RAM-Größen und -Typen zu erzeugen, die erhältlich sind und kompatibel sind mit der ausgewählten CPU. Die Einträge für jeden RAM umfassen zumindest einen tag, der die Kompatibilität mit einer CPU anzeigt. Die erzeugte Liste würde jeden RAM umfassen, dessen Einträge einen tag umfassen, der die Kompatibilität mit der ausgewählten CPU anzeigt. In anderen Ausführungsformen würden die Einträge für die RAMs andere tags umfassen, wie z. B. einen Größen-tag. Dieser Größen-tag wird dazu verwendet, um dem Anwender eine Liste von kompatiblen RAM-Größen zu präsentieren, die vom Computersystemhändler angeboten werden.
  • Im Schritt 616 liefert Kontrolle die Liste an das Anwenderinterface 105, die dem Anwender über das Anwenderinterface präsentiert wird. Nachdem eine Auswahl getroffen ist, liefert das Anwenderinterface eine Anzeige des ausgewählten RAMs an Kontrolle. Sobald die Anzeige einer auswählten RAM-Größe und des ausgewählten Typs aufgenommen worden ist, greift Kontrolle auf die Hauptdatenbank 125 zu, um eine Liste von Betriebssystemtypen zu liefern, die kompatibel mit dem ausgewählten Prozessor und der ausgewählten Größe und dem Typ des RAM sind. Beispielsweise wird Kontrolle nur Betriebssystemtypen an das Anwenderinterface 105 liefert, die mit der ausgewählten CPU arbeiten und für die der ausgewählte RAM genug Kapazität hat, um das ausgewählte Betriebssystem zu implementieren. In dieser Ausführungsform umfaßt der Eintrag für jedes Betriebssystem zumindest einen Prozessorkompatibilitätstag und zumindest einen RAM-Größe- und Typ-tag, um die Kompatibilität anzuzeigen. Die Liste wird einen bestimmten Betriebssystemtyp umfassen, wenn zumindest ein Betriebssystemeintrag in der Hauptdatenbank einen tag umfaßt, der die Kompatibilität mit der ausgewählten CPU, einen tag, der die Kompatibilität mit dem ausgewählten RAM anzeigt und einen tag, der anzeigt, daß das Betriebssystem von diesem speziellen Typ ist.
  • Im Schritt 626 wird die Liste der kompatiblen Betriebssystemtypen an das Anwenderinterface geliefert, um dem Anwender über das Anwenderinterface präsentiert zu werden. Im Schritt 629 nimmt Kontrolle eine Anzeige des ausgewählten Betriebssystemtyps vom Anwenderinterface auf. Von diesem Punkt an schreitet Kontrolle zum Schritt 213 fort, wo es auf die Hauptdatenbank zugreift, um eine Liste von Versionen oder Sprachen, die für den ausgewählten Betriebssystemtyp erhältlich sind, erzeugt, die kompatibel mit der ausgewählten CPU und dem ausgewählten RAM sind. In anderen Ausführungsformen kann ein Anwender andere Hardwarekomponenten auswählen, die auf dem Zielcomputersystem installiert werden sollen. Beispielsweise wird dem Anwender in einer Ausführungsform eine Liste von Festplatten präsentiert, die mit der CPU und dem ausgewählten Betriebssystem kompatibel sind. In anderen Ausführungsformen wird dem Anwender eine Liste oder Listen von kompatiblen Peripheriegeräten präsentiert. Beispielsweise kann die vorliegende Erfindung auch von einem Einkäufer dazu verwendet werden, um kompatible Typen eines Modems auszuwählen, das auf dem Zielcomputersystem installiert werden soll, ebenso wie der Typ oder die Typen von Festplattenlaufwerken oder CD-ROM-Laufwerken. Andere Optionen, die dem Anwender mit der vorliegenden Erfindung präsentiert werden können, umfassen verschiedene Typen von Computergehäusen, Tastaturen und Displays. Jede Hardwarekomponente und jedes Softwareprogramm, das dem Anwender präsentiert wird, würde mit der vorhergehenden Auswahl oder Auswahlen, die vom Anwender getroffen worden sind, kompatibel sein. In einige Ausführungsformen würde jeder Typ von Hardwarekomponente in Untermenüs oder Unterlisten präsentiert werden. Jeder Eintrag für die zusätzlichen Hardwaregegenstände würde zugeordnete tags umfassen, die die Kompatibilität mit vorangegangenen Auswahlen anzeigt.
  • Wenn der Anwender eine Auswahl trifft, um eine spezielle Hardwarekomponente, wie beispielsweise den Typ oder die Familie von Displays zu implementieren, greift Kontrolle auf die Hauptdatenbank zu, um eine Liste von spezifischen Modellen zu erzeugen, die für diesen Displaytyp erhältlich sind. In dieser Ausfüh rungsform hat jedes Modell einen Eintrag in der Hauptdatenbank, der eine Teilnummer und ein tag umfaßt, der anzeigt, daß der Eintrag ein Display darstellt. Kontrolle liefert die Liste der Modelle an das Anwenderinterface. In anderen Ausführungsformen werden dem Anwender Mehroptionenlisten für eine ausgewählte Hardwarekomponente präsentiert. Um eine Mehrfachliste in einer Ausführungsform zu präsentieren, umfaßt der Eintrag für die Komponente mehrere korrespondierende tagfelder. In einigen Ausführungsformen würde Kontrolle ferner auf die Hauptdatenbank zugreifen, um eine Liste von „always run parts", wie z. B. Patches, Softwareprogrammen, Hardwarekomponenten oder Implementationsoperationen, die einer getroffenen Auswahl zugeordnet sind, zu erzeugen. Eine Anzeige von diesen Gegenständen oder Instruktionen würde in die Datendatei geschrieben. Die Gegenstände, die für die getroffene Auswahl optional sind, würden dem Anwender zur Auswahl präsentiert.
  • In anderen Ausführungsformen können andere Schritte zwischen den Schritten in 6 durchgeführt werden, wie z. B. das Schreiben einer Anzeige einer Auswahl in die Datendatei, das Erzeugen und das Schreiben einer Liste von „always run parts" für jede Auswahl in die Datendatei und das Erzeugen und Präsentieren einer Liste von optionalen Patches und Installationsoperationen, die für die getroffene Auswahl angeboten werden. Die Liste der „always run parts" kann entweder durch den Zugriff auf die Einträge in der Hauptdatenbank 125 erzeugt werden oder durch das Zugreifen auf eine Abhängigkeitsdatei.
  • Das System aus 1 lenkt in vorteilhafter Weise die Aufmerksamkeit des Anwenders auf die Notwendigkeit, spezielle Optionen auf der Basis einer früheren Auswahl oder Auswahlen zu treffen. Wenn beispielsweise ein ausgewählter Monitor in zwei verschiedenen Farben kommt, kann der Anwender gefragt werden, welche Farbe er bevorzugt. Dies stellt in vorteilhafter Weise sicher, daß eine vollständige Bestellung am Ende der Bestellsitzung erzeugt wird. In anderen Ausführungsformen kann dem Anwender eine Standardauswahl präsentiert werden (wie durch einen tag in der Hauptdatenbank oder in einer Abhängigkeitsdatei angezeigt) und eine Wahl, ob der Anwender die Standardauswahl ersetzen möchte.
  • In einigen Ausführungsformen legt die Reihenfolge der Einträge in der Hauptdatenbank 125 die Reihenfolge der Präsentationen der Listen von Optionen am Anwenderinterface 105 fest. Beispielsweise würde in einem System, das dazu verwendet wird, um nur Softwareprogramme auszuwählen, die Einträge des Betriebssystems am Beginn der Hauptdatenbank sein, indem die erste Liste von Optionen, die an das Anwenderinterface geliefert wird, eine Liste von Betriebssystemtypen ist. In einem System, daß das Flußdiagramm aus 7 implementiert, würden die Einträge für die CPUs am Beginn der Hauptdatenbank sein, um sicherzustellen, daß die Liste der CPU-Typen zuerst präsentiert wird. In anderen Ausführungsformen kann die Hauptdatenbank ein Reihenfolgefeld oder tag umfassen, wie z. B. ein Anfangstag, der erlaubt, die Reihenfolge der Listen, die präsentiert werden, nach Bedarf zu verändern.
  • In anderen Ausführungsformen legt die Reihenfolge der Einträge für die Implementationsoperationen die Reihenfolge fest, in der diese Operationen in die Datendatei durch Kontrolle geschrieben werden, und daher auch ihre Reihenfolge in der Datendatei. In anderen Ausführungsformen bestimmt die Reihenfolge, in der diese Operationen an die Datendatei geschrieben werden, die Reihenfolge, in der sie während der Herstellung durchgeführt werden. Die Reihenfolge der Operationen, die während der Herstellung durchgeführt werden, ist daher durch die Reihenfolge ihrer Einträge in der Hauptdatenbank bestimmt. In anderen Ausführungsformen umfassen die Einträge für die Implementationsoperationen in der Hauptdatenbank 125 ein Reihenfolgetag, um ihre Reihenfolge der Durchführung in dem Herstellungsprozeß anzuzeigen. In anderen Ausführungsformen kann jedoch das Parserprogramm oder ein anderes Programm die Reihenfolge der Implementationsoperationen verändern.
  • In anderen Ausführungsformen kann die Hauptdatenbank Informationstags oder Beschreibungsfelder umfassen, die vom Kontrollcomputersystem dazu verwendet werden, Text an das Anwenderinterface 105 zu liefern, damit er vom Anwender gelesen wird. Beispielsweise kann jeder Eintrag ein Kostenfeld umfassen. Das Kontrollcomputersystem 103 würde dieses Feld lesen und an das Anwenderinterface eine Anzeige des Preises von jeder auf dem Anwenderinterface dargestellten Option schicken. Kontrolle würde eine „laufende Rechnung" der Gesamtkosten der ausgewählten Gegenstände halten und würde die Gesamtkosten an das Anwenderinterface zur Anzeige liefern. Andere mögliche Typen von Informationstags umfassen Vorlaufzeittags, die die Vorlaufzeit für einen Teil anzeigen und Lageranzahltags, die die Anzahl des Teils im Lagerbestand anzeigen.
  • Die Datendatei oder Systemdescriptorrecorddatei, die durch das Flußdiagramm, das in 6 anfängt, erzeugt wird, würde an den Hersteller gesandt, wobei ein Parser die Datendatei liest und die Information gemäß des Präfixes verarbeitet. In einer Ausführungsform würde die Softwareprogramminformation in einen Bereich der Herstellung geschickt werden und die Hardwarekomponenteninformation in einen anderen Bereich der Herstellung, wobei diese Information dazu verwendet würde, ein automatisches Programm oder Programme zur Planung und/oder Kontrolle des Zusammenbaus der Hardwarekomponenten zu erzeugen.
  • 7 ist ein Blockdiagramm einer zweiten Ausführungsform eines Systems zur Erzeugung einer kompatiblen Bestellung für ein Computersystem und zum Konfigurieren eines Computersystems gemäß der kompatiblen Bestellung. In dieser Ausführungsform ist das Zielcomputersystem das Computersystem, das das Auswahlprogramm durchführt, ähnlich zu dem Flußdiagramm in den 2 bis 5.
  • In 7 wird das Zielcomputersystem mit einem Betriebssystem auf einer Diskette 615 gestartet, die in der gezeigten Ausführungsform ein fabrikinstalliertes DOS-Anwendungsprogramm (FIDA) auf einer Diskette ist. Dieses FIDA-Programm ermöglicht dem Zielcomputersystem 605, das Softwareauswahlpro gramm aufzurufen (ähnlich zu dem in den 2 bis 5 gezeigten), das anfänglich in der Herstellung 610 gespeichert ist. Während dieses Softwareprogramms ist der Zielcomputer 605 auch das Kontrollcomputersystem. Das Zielcomputersystem 605 greift über eine Netzwerkverbindung 620 auf die Hauptdatenbank gemäß des Softwareauswahlprogramms zu, um eine Liste von Softwareprogrammen zu präsentieren, die mit den vorherigen Auswahlen, die der Bediener des Zielcomputersystems 605 getroffen hat, kompatibel sind. In dieser Ausführungsform würde die Liste auf einem Bildschirm oder einem anderen Typ von Anwenderinterface auf dem Zielcomputersystem 605 angezeigt werden und der Anwender würde seine Auswahlen über eine Tastatur, Maus oder einen anderen Typ eines Anwenderinterfaceeingabegerätes anzeigen.
  • Nach dem Beenden der Sitzung zum Auswählen und Bestellen der Software und dem Erzeugen einer Datendatei, wie z. B. einer Systemdescriptordatei, wird die Datendatei zur Herstellung 610 geliefert. In einer Ausführungsform umfaßt die Herstellung andere Computerprogramme, wie z. B. einen Parser. Das Zielcomputersystem, das das Parserprogramm ausführt, ordnet jedem Eintrag in der SDR das geeignete Shell-Script zu und ruft das Shell-Script-Programm auf, um die ausgewählten Programme und/oder Operationen auf dem Zielcomputersystem 605 zu implementieren und auszuführen. Das Parserprogramm und die ausführbaren Shell-Script-Dateien sind ursprünglich in einer Datenbank in der Herstellung 620 gespeichert. In einer Ausführungsform kann ein anderes Computersystem das Parserprogramm ausführen, um die Softwareprogramme auf eine Festplatte zu laden. Die Festplatte wird dann an einen Kunden zur Verwendung in dem Zielcomputersystem versandt.
  • In anderen Ausführungsformen würden die Softwareauswahlprogramme (ähnlich zu den 2 bis 5), die von der ersten FIDA-Diskette aufgerufen werden, ein Hardwareaufspürprogramm oder -feature umfassen. Dieses Hardwareaufspürprogramm stellt, wenn es auf dem Zielcomputersystem 605 ausgeführt wird, die Parameter der Hardwarekomponenten auf dem Zielcomputersystem fest, wie z. B. die Bestimmung der Größe des RAM des Zielcomputersystems und den Typ des Prozessors des Zielcomputersystems. In einer Ausführungsform ist dieses Aufspürprogramm des Softwareauswahlprogramms in Assembler programmiert. Die Information, die durch das Aufspür-Feature erhalten worden ist, ermöglicht es, spezielle Aspekte in den Softwareprogrammen gemäß der Konfiguration der Hardware einzustellen. Beispielsweise können spezielle Einstellungen in einem installierten Betriebssystem gemäß der Größe des RAMs des Zielcomputersystems eingestellt werden.
  • In einer Ausführungsform fährt das Zielcomputersystem das Softwareaufspür-Feature aus, um die Hardwarekonfiguration des Zielcomputersystems 605 zu bestimmen, so daß die Liste von Softwareprogrammoptionen oder anderen Optionen, die dem Anwender präsentiert werden, kompatibel mit den Hardwarekomponenten des Zielcomputersystems 605 sind, wie sie von dem Aufspürprogramm festgestellt worden sind. In einem Beispiel würde das Aufspür-Feature feststellen, daß der RAM eines Zielcomputersystems von einer bestimmten Größe ist. Dem Anwender würden nur Betriebssysteme präsentiert, die mit der Größe des RAMs kompatibel sind, sowie er vom Aufspürprogramm festgestellt worden ist.
  • In anderen Ausführungsformen würde das Computersystem, das das Softwareauswahlprogramm ausführt, das das Aufspür-Feature umfaßt, sich auf einem anderen Computersystem als dem Zielcomputersystem befinden. Beispielsweise wäre in 1 das Kontrollcomputersystem 103, das das Spezifizierungsprogramm mit dem Aufspür-Feature ausführt, in der Lage sein, zu einer „Fernaufspürung" des Zielcomputersystems 137 über ein Computernetzwerk, wie z. B. ein LAN oder WAN. Dies erlaubt dem Spezifizierungsprogramm in vorteilhafter Weise Auswahlen zu präsentieren, die mit der Hardware des Zielcomputersystems 137 kompatibel sind. In anderen Ausführungsformen wird das Aufspür-Feature dazu verwendet, um auch kompatible Hardwarekomponenten auszuwählen. Nachdem das Aufspür-Feature die existierende Basishardwarekonfiguration des Zielcomputersystems bestimmt hat, wird dem Anwender eine Liste von zusätzli chen Hardwarekomponenten präsentiert, die mit der vorhandenen Hardwarekonfiguration, so wie sie das Aufspür-Feature festgestellt hat, kompatibel sind.

Claims (42)

  1. Verfahren zum Spezifizieren eines Computersystems für seine Herstellung mit den folgenden Schritten: Präsentieren einer Liste einer ersten Vielzahl von Optionen über ein Anwenderinterface für einen Anwender, die auf dem Computersystem bei seiner Herstellung implementiert werden können; Aufnehmen einer Anzeige einer getroffenen Auswahl durch den Anwender aus der ersten Vielzahl von Optionen, die dem Anwender über das Anwenderinterface präsentiert worden sind; Erzeugen einer Liste einer zweiten Vielzahl von Optionen, die auf dem Computersystem bei seiner Herstellung implementiert werden können, wobei jede Option der zweiten Vielzahl von Optionen mit der ersten getroffenen Auswahl kompatibel ist; Präsentieren der Liste der zweiten Vielzahl von Optionen für den Anwender über das Anwenderinterface, wobei das Verfahren ferner folgende Schritte aufweist Schreiben einer Teilnummer für die getroffenen Auswahl in eine computerlesbare Datei; und Zuordnen einer ausführbaren Datei zu der Teilnummer der getroffenen Auswahl zur Verwendung bei der Herstellung des Computersystems, die geeignet ist zur automatischen Ausführung durch ein Computerprogramm, welches die Einträge aus der computerlesbaren Datei während der Herstellung des Computersystems ausliest, um automatisch Instruktionen für die Installation oder Implementierung der ausgewählten Optionen durchzuführen.
  2. Verfahren nach Anspruch 1, wobei die getroffene Auswahl ein spezieller Betriebssystemtyp ist.
  3. Verfahren nach Anspruch 1, wobei jede Option der zweiten Vielzahl von Optionen eine Option darstellt, die von einem Computersystemhändler für die getroffene Auswahl angeboten wird.
  4. Verfahren nach Anspruch 3, wobei die getroffene Auswahl ein Betriebssystemtyp ist und jede der zweiten Vielzahl von Optionen eine spezielle Version des Betriebssystemtyps ist.
  5. Verfahren nach Anspruch 1, wobei zumindest eine Option der zweiten Vielzahl von Optionen ein Computersoftwareprogramm ist, das auf einem Computersystem installiert werden kann.
  6. Verfahren nach Anspruch 1, wobei zumindest eine Option der zweiten Vielzahl von Optionen ein Patch ist.
  7. Verfahren nach Anspruch 1, wobei zumindest eine Option der zweiten Vielzahl von Optionen ein Textverarbeitungsprogramm ist, das auf einem Computersystem installiert werden kann.
  8. Verfahren nach Anspruch 1, wobei die getroffene Auswahl ein Softwareprogramm ist, und wobei das Verfahren ferner folgenden Schritt aufweist: Installieren des Softwareprogramms auf einem Computersystem unter Verwendung der Datei.
  9. Verfahren nach Anspruch 1, ferner aufweisend: Anzeigen zumindest einer Implementierungsoperation in der von einem Computer lesbaren Datei, die für die Implementierung der getroffenen Auswahl auf dem Computersystem notwendig ist.
  10. Verfahren nach Anspruch 1, ferner aufweisend: Anzeigen von zumindest einem „always run part", der der getroffenen Auswahl zugeordnet ist, in einer computerlesbaren Datei.
  11. Verfahren nach Anspruch 10, ferner aufweisend: Zugreifen auf eine von einem Computersystem lesbare Datenbank, die eine Vielzahl von Einträgen umfasst, wobei jeder Eintrag eine Teilnummer und zumindest einen assoziierten Tag umfasst; wobei zumindest ein Tag für zumindest einen Eintrag in der Datenbank anzeigt, dass der "always run part" der getroffenen Auswahl zugeordnet ist.
  12. Verfahren nach Anspruch 10, ferner aufweisend: Zugreifen auf eine Abhängigkeitsdatei, wobei die Abhängigkeitsdatei anzeigt, dass der "always run part" der getroffenen Auswahl zugeordnet ist.
  13. Verfahren nach Anspruch 1, wobei das Präsentieren der Liste der zweiten Vielzahl für den Anwender umfasst: Anzeigen der Liste der zweiten Vielzahl von Optionen auf einem Bildschirm des Anwenderinterfaces.
  14. Verfahren nach Anspruch 1, ferner aufweisend: Aufnehmen der Anzeige von zumindest einer durch den Anwender getroffenen Auswahl aus der zweiten Vielzahl von Optionen.
  15. Verfahren nach Anspruch 14, weiter aufweisend: Zugreifen auf einer Abhängigkeitsdatei um festzustellen, ob sowohl der getroffenen Auswahl aus der ersten Vielzahl als auch der zumindest einen getroffenen Auswahl aus der zweiten Vielzahl ein "always run part" zugeordnet ist.
  16. Verfahren nach Anspruch 14, weiter aufweisend: Anzeigen der durch den Anwender getroffenen Auswahl aus der ersten Vielzahl und der zumindest einen durch den Anwender getroffenen Auswahl aus der zweiten Vielzahl in der computerlesbaren Datei.
  17. Verfahren nach Anspruch 1, wobei das Erzeugen ferner umfasst: Zugreifen auf eine von einem Computersystem lesbare Datenbank, die eine Vielzahl von Einträgen umfasst, um eine Liste der zweiten Vielzahl der Optionen zu erzeugen.
  18. Verfahren nach Anspruch 17, wobei: jeder der Vielzahl von Einträgen zumindest einen zugeordneten Tag umfasst; und der zumindest eine zugeordnete Tag anzeigt, ob der Eintrag mit der getroffenen Auswahl kompatibel ist.
  19. Verfahren nach Anspruch 18, wobei: die von einem Computersystem lesbare Datenbank einen Eintrag für jede Option der zweiten Vielzahl umfasst; und der zumindest eine zugeordnete Tag jedes Eintrags für jede Option der zweiten Vielzahl anzeigt, dass der Eintrag der getroffenen Auswahl kompatibel ist.
  20. Verfahren nach Anspruch 17, wobei: die Datenbank einen Eintrag für die getroffene Auswahl umfasst; der Eintrag für die getroffene Auswahl zumindest einen Tag umfasst; die Liste der zweiten Vielzahl in Antwort auf den Eintrag für die getroffene Auswahl inklusive eines speziellen Tags erzeugt wird.
  21. Verfahren nach Anspruch 1, wobei das Aufnehmen der Anzeige vom Anwenderinterface, das Aufnehmen der Anzeige über ein Computernetzwerk umfasst.
  22. Verfahren nach Anspruch 21, wobei das Computernetzwerk ein weiträumiges Netzwerk (wide area network, WAN) ist.
  23. Verfahren nach Anspruch 1, wobei die getroffene Auswahl einer Hardwarekomponente ist.
  24. Verfahren nach Anspruch 1, wobei die getroffene Auswahl ein spezieller Prozessor ist.
  25. Verfahren nach Anspruch 1, wobei die getroffene Auswahl in das Anwenderinterface über ein Individuum eingegeben wird, das eine Anzeige der Auswahl von einem Einkäufer des Computersystems aufnimmt.
  26. Verfahren nach Anspruch 1, weiter aufweisend: Erzeugen einer Liste einer dritten Vielzahl von Optionen, wobei jede Option der dritten Vielzahl mit der getroffenen Auswahl kompatibel ist; Präsentieren der Liste der dritten Vielzahl von Optionen für den Anwender über ein Anwenderinterface.
  27. Verfahren nach Anspruch 26, weiter aufweisend: Aufnehmen einer Anzeige von zumindest einer getroffenen Auswahl der zweiten Vielzahl von Optionen; wobei jede Option der dritten Vielzahl von Optionen mit der zumindest einen getroffenen Auswahl der zweiten Vielzahl von Optionen kompatibel ist.
  28. Verfahren nach Anspruch 1, wobei das Anwenderinterface ein Telefon umfasst.
  29. Verfahren nach Anspruch 1, weiter aufweisend: Aufspüren eines ersten Computersystems zum Feststellen von zumindest einem Parameter des ersten Computersystems; wobei jede der zweiten Vielzahl von Optionen kompatibel ist mit dem zumindest einem Parameter, der durch das Aufspüren bestimmt worden ist.
  30. Verfahren nach Anspruch 29, wobei der zumindest eine Parameter den Typ des Prozessors im ersten Computersystem umfasst.
  31. Verfahren nach Anspruch 21, wobei das Computernetzwerk ein lokales Netzwerk ist.
  32. Verfahren nach Anspruch 1, wobei das Anwenderinterface von einem Einkäufer des Computersystems bedient wird.
  33. Verfahren nach Anspruch 1, wobei das Anwenderinterface durch einen Vertreter des Händlers des Computersystems bedient wird.
  34. Verfahren nach Anspruch 1, weiter aufweisend: Zuordnen einer ersten ausführbaren Datei zu der Anzeige der getroffenen Auswahl aus der ersten Liste; Zuordnen einer zweiten ausführbaren Datei zu der Anzeige in der Datei der zumindest einen getroffenen Auswahl aus der zweiten Liste.
  35. Verfahren nach Anspruch 34, weiter aufweisend: Ausführen der ersten ausführbaren Datei, um in dem Computersystem die getroffene Auswahl aus der ersten Liste zu implementieren; Ausführen einer zweiten ausführbaren Datei, um in dem Computersystem die zumindest eine getroffene Auswahl der zweiten Liste zu implementieren.
  36. Verfahren nach Anspruch 1, ferner aufweisend: Ausführen einer Kreuzanalyse der getroffenen Auswahlen aus der ersten Liste und der zumindest einen getroffenen Auswahl aus der zweiten Liste, wobei die Durchführung der Kreuzanalyse das Zugreifen auf eine Abhängigkeitsdatei umfasst.
  37. System zum Spezifizieren eines Computersystems für seine Herstellung aufweisend: eine computerlesbare Datenbank, die eine Vielzahl von Einträgen umfasst, wobei jeder Eintrag eine Option darstellt, die auf dem Computersystem bei seiner Herstellung implementiert werden kann; Mittel zum Liefern einer Liste von Optionen an ein Anwenderinterface, um dem Anwender über das Anwenderinterface präsentiert zu werden; Mittel zur Aufnahme einer Anzeige von dem Anwenderinterface von zumindest einer durch den Anwender getroffenen Auswahl aus der Liste von Optionen, die dem Anwender über das Anwenderinterface präsentiert worden sind; Mittel zum Erzeugen einer Liste von kompatiblen Optionen, die auf dem Computersystem bei seiner Herstellung implementiert werden können, wobei jede der kompatiblen Optionen mit einer zuvor getroffenen Auswahl durch den Anwender kompatibel ist, wobei die Mittel zur Erzeugung der Liste der kompatiblen Optionen die Vielzahl der Einträge lesen, um zu entscheiden, ob ein Eintrag eine Option darstellt, die mit der zuvor getroffenen Auswahl kompatibel ist; Mittel zum Schreiben einer Anzeige der Getroffenen Auswahl in eine computerlesbare Datei, wobei die Mittel zum Liefern die Liste der kompatiblen Optionen an das Anwenderinterface liefern, wobei die Mittel zum Aufnehmen vom Anwenderinterface eine Anzeige aufnehmen von zumindest einer getroffenen Auswahl aus der Liste der kompa tiblen Optionen, die dem Anwender über das Anwenderinterface präsentiert worden sind; wobei die Mittel zum Schreiben eine Anzeige von zumindest einer getroffenen Auswahl aus der Liste von kompatiblen Optionen in die computerlesbare Datei schreiben, wobei das System ferner umfasst Mittel zum Schreiben einer Teilnummer für die getroffene Auswahl in eine computerlesbare Datei; und Mittel zum Zuordnen einer ausführbaren Datei zu der Teilnummer der getroffenen Auswahl zur Verwendung bei der Herstellung des Computersystems, die geeignet ist zur automatischen Ausführung durch ein Computerprogramm, welches die Einträge aus der computerlesbaren Datei während der Herstellung des Computersystems ausliest, um automatisch Instruktionen für die Installation oder Implementierung der ausgewählten Optionen durchzuführen.
  38. System nach Anspruch 37 weiter aufweisend: Mittel zum Implementieren der zumindest einen getroffenen Auswahl auf einem Computersystem unter Verwendung der von einem Computersystem lesbaren Datei.
  39. System nach Anspruch 33, wobei die Mittel zum Implementieren Mittel umfassen, mit denen eine ausführbare Datei der Anzeige der zumindest einen getroffenen Auswahl zugeordnet wird, und Mittel zur Ausführung der ausführbaren Datei, um die zumindest eine getroffene Auswahl auf dem Computersystem zu implementieren.
  40. System nach Anspruch 37, wobei die zumindest eine getroffene Auswahl ein Softwareprogramm umfasst.
  41. System nach Anspruch 37, weiter aufweisend: Mittel zum Vergleichen der Anzeige der zumindest einen getroffenen Auswahl, die in eine von einem Computersystem lesbare Datei geschrieben ist, mit einer Abhängigkeitsdatei, um festzustellen, ob der zumindest einen getroffene Auswahl ein "always run part" zugeordnet ist.
  42. System nach Anspruch 37, wobei die Liste der kompatiblen Optionen an das Anwenderinterface über ein weiträumiges Computernetzwerk (wide area network, WAN) geliefert wird.
DE19900500A 1998-01-26 1999-01-08 Verfahren und System zum Spezifizieren eines Computersystems für seine Herstellung Expired - Lifetime DE19900500B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/012,962 US6182275B1 (en) 1998-01-26 1998-01-26 Generation of a compatible order for a computer system
US09/012,962 1998-01-26
DE19964588.4A DE19964588B4 (de) 1998-01-26 1999-01-08 Verfahren und System zum Herstellen eines Zielcomputersystems

Publications (2)

Publication Number Publication Date
DE19900500A1 DE19900500A1 (de) 1999-07-29
DE19900500B4 true DE19900500B4 (de) 2009-01-08

Family

ID=21757587

Family Applications (2)

Application Number Title Priority Date Filing Date
DE19900500A Expired - Lifetime DE19900500B4 (de) 1998-01-26 1999-01-08 Verfahren und System zum Spezifizieren eines Computersystems für seine Herstellung
DE19964588.4A Expired - Lifetime DE19964588B4 (de) 1998-01-26 1999-01-08 Verfahren und System zum Herstellen eines Zielcomputersystems

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE19964588.4A Expired - Lifetime DE19964588B4 (de) 1998-01-26 1999-01-08 Verfahren und System zum Herstellen eines Zielcomputersystems

Country Status (14)

Country Link
US (1) US6182275B1 (de)
JP (1) JPH11213038A (de)
KR (1) KR100563823B1 (de)
CN (1) CN1245692C (de)
AU (1) AU765962B2 (de)
BR (1) BR9803223B1 (de)
DE (2) DE19900500B4 (de)
FR (1) FR2778252B1 (de)
GB (1) GB2335768B (de)
IE (1) IE980561A1 (de)
IT (1) IT1314764B1 (de)
MY (1) MY116264A (de)
SG (1) SG72842A1 (de)
TW (1) TW403873B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7970722B1 (en) 1999-11-08 2011-06-28 Aloft Media, Llc System, method and computer program product for a collaborative decision platform

Families Citing this family (214)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11175322A (ja) * 1997-12-17 1999-07-02 Sony Corp 情報処理装置および情報処理方法、並びに提供媒体
US6615406B1 (en) * 1998-04-08 2003-09-02 Dell Usa, L.P. Apparatus for use in the manufacture of a computer system
US6327706B1 (en) * 1998-04-08 2001-12-04 Dell Usa, L.P. Method of installing software on and/or testing a computer system
US6775829B1 (en) * 1998-06-04 2004-08-10 Gateway, Inc. Method for configuring software for a build to order system
US6922831B1 (en) * 1998-06-04 2005-07-26 Gateway Inc. Method and system for providing software utilizing a restore medium and a network
US6735757B1 (en) * 1998-06-04 2004-05-11 Gateway, Inc. Apparatus and method for checking component compatibility in a build to order computer system
US6370641B1 (en) * 1999-01-26 2002-04-09 Dell Usa, L.P. Method and apparatus for determining the drive letter assignment of a CD-ROM drive during initial system setup of a computer system
US6694320B1 (en) * 1999-03-01 2004-02-17 Mitel, Inc. Branding dynamic link libraries
US7016864B1 (en) * 1999-04-09 2006-03-21 Dell Usa, L.P. Interactive upsell advisor method and apparatus for internet applications
US6466836B1 (en) * 1999-04-28 2002-10-15 Toshiba America Information Systems, Inc. Method and apparatus for encoding or decoding a human readable representation of options differentiating products or services
US6543047B1 (en) * 1999-06-15 2003-04-01 Dell Usa, L.P. Method and apparatus for testing custom-configured software/hardware integration in a computer build-to-order manufacturing process
US6760708B1 (en) * 1999-08-19 2004-07-06 Dell Products L.P. Method and system for migrating stored data to a build-to-order computing system
US6560726B1 (en) 1999-08-19 2003-05-06 Dell Usa, L.P. Method and system for automated technical support for computers
US6606716B1 (en) 1999-10-06 2003-08-12 Dell Usa, L.P. Method and system for automated technical support for computers
US6938058B2 (en) * 1999-08-23 2005-08-30 Eisenworld, Inc. Apparatus and method for transferring information between platforms
US7949691B1 (en) 1999-09-02 2011-05-24 Cbs Interactive Inc. Methods of catalog data maintenance, storage, and distribution
US6556431B1 (en) 1999-10-06 2003-04-29 Dell Usa, L.P. System and method for converting alternating current into direct current
US6563698B1 (en) 1999-10-06 2003-05-13 Dell Usa, L.P. System and method for providing a computer system with a detachable component
US6598223B1 (en) * 1999-10-06 2003-07-22 Dell Usa, L.P. Method and system for installing and testing build-to-order components in a defined configuration computer system
US6564220B1 (en) 1999-10-06 2003-05-13 Dell Usa, L.P. System and method for monitoring support activity
US6574615B1 (en) 1999-10-06 2003-06-03 Dell Usa, L.P. System and method for monitoring support activity
US6539499B1 (en) 1999-10-06 2003-03-25 Dell Usa, L.P. Graphical interface, method, and system for the provision of diagnostic and support services in a computer system
US7047228B1 (en) * 1999-10-19 2006-05-16 Dell Products L.P. Engineering process for procuring components/peripherals
WO2001039418A2 (en) * 1999-11-22 2001-05-31 Diversified High Technologies, Inc. Network security data management system and method
US6530081B1 (en) * 1999-11-30 2003-03-04 International Business Machines Corporation Methods, systems and computer program products for controlling applications/preferences of a pervasive computing device
US6957425B1 (en) * 1999-11-30 2005-10-18 Dell Usa, L.P. Automatic translation of text files during assembly of a computer system
US6631606B2 (en) * 2000-01-18 2003-10-14 Dell Products L.P. System and method for accommodating atypical customer requirements in a mass customization manufacturing facility
US6892104B2 (en) * 2000-01-18 2005-05-10 Dell Products L.P. System and method for manufacturing products according to customer orders
US6711798B2 (en) 2000-01-18 2004-03-30 Dell Products L.P. Method for manufacturing products according to customer orders
US6772192B1 (en) * 2000-02-29 2004-08-03 Hewlett-Packard Development Company, L.P. Software download and distribution via image building and multicast
US6535782B1 (en) * 2000-03-13 2003-03-18 General Electric Company Automatic optioning method for printed circuit boards
JP2001283067A (ja) * 2000-03-29 2001-10-12 Seiko Epson Corp 在庫引き当て管理方法および在庫引き当て管理システム
US7424445B1 (en) 2000-04-06 2008-09-09 Apple Inc. Virtual bundles
US7526437B1 (en) * 2000-04-06 2009-04-28 Apple Inc. Custom stores
US6823508B1 (en) * 2000-04-27 2004-11-23 Microsoft Corporation Automatic computer program customization based on a user information store
US7155713B1 (en) * 2000-04-27 2006-12-26 Microsoft Corporation Componentized operating system
JP3529127B2 (ja) * 2000-06-07 2004-05-24 本田技研工業株式会社 価格自動補正システム
EP1174786A3 (de) * 2000-07-20 2006-07-12 International Business Machines Corporation Verfahren, System und Programm zur Wiederverwendung von Software-Lizenzen bei einer neuen Computervorrichtung
US7082521B1 (en) 2000-08-24 2006-07-25 Veritas Operating Corporation User interface for dynamic computing environment using allocateable resources
US7278142B2 (en) * 2000-08-24 2007-10-02 Veritas Operating Corporation Dynamic computing environment using remotely allocable resources
US7065637B1 (en) 2000-08-24 2006-06-20 Veritas Operating Corporating System for configuration of dynamic computing environments using a visual interface
WO2002023328A2 (en) * 2000-09-12 2002-03-21 Infolibria, Inc. Managing distribution and local execution of computing resources
US7376489B1 (en) * 2000-09-14 2008-05-20 Entegris, Inc. Method of identifying fluid purification equipment which is optimized for individual fluid purification systems
US7043724B2 (en) 2000-09-14 2006-05-09 Veritas Operating Corporation System and services for handling computing environments as documents
JP2002092354A (ja) * 2000-09-18 2002-03-29 Nec Corp 電子資材調達方法
US7113900B1 (en) 2000-10-24 2006-09-26 Microsoft Corporation System and method for logical modeling of distributed computer systems
US7606898B1 (en) * 2000-10-24 2009-10-20 Microsoft Corporation System and method for distributed management of shared computers
US6907395B1 (en) * 2000-10-24 2005-06-14 Microsoft Corporation System and method for designing a logical model of a distributed computer system and deploying physical resources according to the logical model
US7032015B1 (en) * 2000-10-31 2006-04-18 General Electric Company System and method for integrating a power system over a network
US6487522B1 (en) * 2000-11-01 2002-11-26 Dell Products, L.P. System and method for selectively executing a computer program based on the presence of associated hardware
US7027412B2 (en) * 2000-11-10 2006-04-11 Veritas Operating Corporation System for dynamic provisioning of secure, scalable, and extensible networked computer environments
US20020059377A1 (en) * 2000-11-14 2002-05-16 Jagadish Bandhole Collaborative computing systems using dynamic computing environments
US20020120528A1 (en) * 2000-11-17 2002-08-29 Hutten Curt A. Method for inserting promotional messages into an internet purchase transaction
US7185334B2 (en) * 2000-11-29 2007-02-27 Microsoft Corporation Method and software tool for intelligent operating system installation
US6996815B2 (en) * 2000-11-29 2006-02-07 Microsoft Corporation Method and software tools for intelligent service pack installation
US7054836B2 (en) 2000-11-30 2006-05-30 Novo Nordisk A/S Method for assisting a customer in building a build-to-order medical device
WO2002044955A1 (en) * 2000-11-30 2002-06-06 Novo Nordisk A/S Method and system for customising build-to-order products
JP2004515008A (ja) * 2000-11-30 2004-05-20 ノボ ノルディスク アクティーゼルスカブ カスタマイズされたビルドトゥーオーダアセンブリのためのシステムおよび方法
US8140683B2 (en) * 2000-12-07 2012-03-20 International Business Machines Corporation Method and system for selecting an operating system at user login on a target device
US7631054B2 (en) * 2000-12-07 2009-12-08 International Business Machines Corporation Method and system for generating list of operating systems for a target device
US7831692B2 (en) * 2000-12-07 2010-11-09 International Business Machines Corporation Method and system for automatically associating an address with a target device
JP2002236590A (ja) * 2000-12-08 2002-08-23 Seiko Epson Corp ソフトウェアのインストール方法
WO2002054305A1 (fr) * 2000-12-28 2002-07-11 Kabushiki Kaisha Toshiba Technique de mise en oeuvre d'achat d'articles et systeme d'etablissement automatique de liste d'articles
US7213231B1 (en) 2001-01-11 2007-05-01 Cisco Technology, Inc. Cross-spectrum application model for dynamic computing environments in software lifecycle
US7072950B2 (en) * 2001-01-23 2006-07-04 Sony Corporation Method and apparatus for operating system and application selection
US6853978B2 (en) * 2001-02-23 2005-02-08 Power Measurement Ltd. System and method for manufacturing and configuring intelligent electronic devices to order
US7085824B2 (en) * 2001-02-23 2006-08-01 Power Measurement Ltd. Systems for in the field configuration of intelligent electronic devices
US7207031B2 (en) * 2001-03-01 2007-04-17 Wind River Systems, Inc. System and method for utilization of a command structure representation
US6634506B2 (en) 2001-03-05 2003-10-21 Dell Products L.P. Reusable container management system and method
US6529797B2 (en) 2001-03-05 2003-03-04 Dell Products L.P. System and method for automatically releasing collections of goods for shipment
US6560509B2 (en) 2001-03-05 2003-05-06 Dell Products L.P. System and method for automated management of a distribution facility
US20020123918A1 (en) * 2001-03-05 2002-09-05 Dell Products L.P. System and method for manufacturing and shipping products according to customer orders
US6611727B2 (en) 2001-03-05 2003-08-26 Dell Products L.P. Method and system for simulating production within a manufacturing environment
US6615092B2 (en) 2001-03-05 2003-09-02 Dell Products L.P. Method, system and facility for controlling resource allocation within a manufacturing environment
US6505094B2 (en) 2001-03-05 2003-01-07 Dell Products L.P. System and method for shipping items from a distribution facility
US6816746B2 (en) 2001-03-05 2004-11-09 Dell Products L.P. Method and system for monitoring resources within a manufacturing environment
US7761397B2 (en) * 2001-03-21 2010-07-20 Huelsman David L Rule processing method and apparatus providing automatic user input selections
US20010027419A1 (en) * 2001-03-21 2001-10-04 Sands Gerald Keith Methods and apparatus for fulfilling electronic book orders on demand
US7188091B2 (en) * 2001-03-21 2007-03-06 Resolutionebs, Inc. Rule processing system
US7458074B2 (en) * 2001-03-30 2008-11-25 International Business Machiens Corporation Method and apparatus for installing and upgrading an application in a computer system
JP2002312648A (ja) * 2001-04-17 2002-10-25 Nec Corp 注文生産システム及び方法並びに注文生産用プログラム
US6643600B2 (en) * 2001-04-26 2003-11-04 General Electric Company Method and system for assessing adjustment factors in testing or monitoring process
US7036006B2 (en) * 2001-05-17 2006-04-25 Veritas Operating Corporation System to provide computing as a product using dynamic computing environments
JP2003015722A (ja) * 2001-07-02 2003-01-17 Toshiba Corp 受注組立生産システム及び受注組立生産方法
US20030014137A1 (en) * 2001-07-16 2003-01-16 Stephanus Saputro Method and system for selecting a set of filter coefficients in a build-to-order computer system
US20030018746A1 (en) * 2001-07-18 2003-01-23 Boesch S. Christopher Method, computer program program product, and system for selecting and migrating information and device drivers to a computer system
US6931575B2 (en) * 2001-07-27 2005-08-16 Dell Products L.P. Method and system for testing hardware and software configurations in a computer system
US20030058471A1 (en) * 2001-09-21 2003-03-27 Hiromi Okubo Method and apparatus for image processing capable of automatically adding/upgrading image processing functions, and a computer readable data medium containing computer instructions for performing the method
US20030109509A1 (en) * 2001-10-11 2003-06-12 Alcon, Inc. Methods for treating dry eye
US7188333B1 (en) * 2001-12-28 2007-03-06 Sprint Communications Company L.P. Product incompatibility system
CA2369228A1 (en) * 2002-01-24 2003-07-24 Alcatel Canada Inc. System and method for managing configurable elements of devices in a network element and a network
US7062478B1 (en) * 2002-03-20 2006-06-13 Resolutionebs, Inc. Method and apparatus using automated rule processing to configure a product or service
US20030200149A1 (en) * 2002-04-17 2003-10-23 Dell Products L.P. System and method for facilitating network installation
US7610583B2 (en) * 2002-04-23 2009-10-27 Gateway, Inc. Personalized software installation method for computer manufacturers
US20030216950A1 (en) * 2002-05-20 2003-11-20 Chun-Chen Chen System and method for production after receiving a purchase order
US20030236707A1 (en) * 2002-06-19 2003-12-25 Cheney Douglas A. Configuring a product with user settings during a network purchase
AU2003247799A1 (en) * 2002-07-11 2004-02-02 Thomson Licensing S.A. Application level gateway and firewall rule set download validation
US6962306B2 (en) * 2002-07-15 2005-11-08 West Ronald R Units for storing flexible elongated objects
US7069428B2 (en) * 2002-09-10 2006-06-27 Veritas Operating Corporation System for managing boot-up of target computers
US6986033B2 (en) 2002-09-10 2006-01-10 Veritas Operating Corporation System for automated boot from disk image
US20040054674A1 (en) * 2002-09-13 2004-03-18 Carpenter Keith A. Enabling a web application to access a protected file on a secured server
US6813531B2 (en) 2002-09-20 2004-11-02 International Business Machines Corporation Method, system, and article of manufacture for product configuration
KR100481130B1 (ko) * 2002-11-08 2005-04-07 주식회사 웨어밸리 데이터베이스 시스템에 접속하지 않고 데이터베이스시스템을 모니터링하는 방법
US7437432B2 (en) * 2002-12-12 2008-10-14 International Business Machines Corporation Client device configuration with configuration services providers
US7962581B2 (en) * 2002-12-12 2011-06-14 International Business Machines Corporation Client device configuration with vendor association of configuration parameters
JP2004220375A (ja) * 2003-01-15 2004-08-05 Fujitsu Ltd 活用情報提供装置、活用情報提供方法および活用情報提供プログラム
US20040148223A1 (en) * 2003-01-28 2004-07-29 Junaid Ghaffar Targeted direct marketing system and process for distributing coupons to information handling systems
US7398305B2 (en) * 2003-02-06 2008-07-08 International Business Machines Corporation Client device configuration with hooks
US7890543B2 (en) * 2003-03-06 2011-02-15 Microsoft Corporation Architecture for distributed computing system and automated design, deployment, and management of distributed applications
US7072807B2 (en) * 2003-03-06 2006-07-04 Microsoft Corporation Architecture for distributed computing system and automated design, deployment, and management of distributed applications
US20040210623A1 (en) * 2003-03-06 2004-10-21 Aamer Hydrie Virtual network topology generation
US7689676B2 (en) * 2003-03-06 2010-03-30 Microsoft Corporation Model-based policy application
US8122106B2 (en) * 2003-03-06 2012-02-21 Microsoft Corporation Integrating design, deployment, and management phases for systems
US20040205009A1 (en) * 2003-04-10 2004-10-14 Noto Gary Patrick System for calculating and identifying unique orders
US20040210676A1 (en) * 2003-04-19 2004-10-21 Noto Gary Patrick System for Calculating minimum images to service customer orders
GB2403303B (en) * 2003-06-23 2005-08-17 Matsushita Electric Ind Co Ltd Embedded device with software registry
US7606929B2 (en) * 2003-06-30 2009-10-20 Microsoft Corporation Network load balancing with connection manipulation
US7613822B2 (en) 2003-06-30 2009-11-03 Microsoft Corporation Network load balancing with session information
US7636917B2 (en) * 2003-06-30 2009-12-22 Microsoft Corporation Network load balancing with host status information
US7590736B2 (en) * 2003-06-30 2009-09-15 Microsoft Corporation Flexible network load balancing
US7360211B2 (en) * 2003-06-30 2008-04-15 Dell Products L.P. System for automated generation of config to order software stacks
US7567504B2 (en) 2003-06-30 2009-07-28 Microsoft Corporation Network load balancing with traffic routing
GB2404464A (en) * 2003-07-29 2005-02-02 Sendo Int Ltd Administration of a manufacturing process
US20050049932A1 (en) * 2003-09-03 2005-03-03 Howell James A. Process for managing subscription service purchases
US20050055688A1 (en) * 2003-09-08 2005-03-10 Barajas Gaston M. Integrated rapid install system for generic software images
US20050071270A1 (en) * 2003-09-26 2005-03-31 Ramirez Christopher W. Process for remote recovery and creation of machine specific authentication keys for systems
US7552102B2 (en) * 2003-09-29 2009-06-23 Huelsman David L Rule processing method, apparatus, and computer-readable medium to provide improved selection advice
US7587380B2 (en) * 2003-09-29 2009-09-08 Huelsman David L Rule processing method, apparatus, and computer-readable medium to generate valid combinations for selection
US7565337B2 (en) * 2003-09-29 2009-07-21 Huelsman David L Batch validation method, apparatus, and computer-readable medium for rule processing
US20050171969A1 (en) * 2003-10-24 2005-08-04 Kathy Maida-Smith Computer network security data management system and method
KR20050048320A (ko) * 2003-11-19 2005-05-24 삼성전자주식회사 네트워크를 통하여 소프트웨어를 설치하는 장치 및 방법
DE10356348A1 (de) * 2003-11-28 2005-06-23 Abb Patent Gmbh System und Verfahren zum automatischen Erstellen, Installieren und Konfigurieren von Funktionalitäten in einem verteilten Netzwerk
US7778422B2 (en) 2004-02-27 2010-08-17 Microsoft Corporation Security associations for devices
US20050228678A1 (en) * 2004-04-07 2005-10-13 Howell James A Jr Proactive after point of sale qualified subscription product presentation
US20050240815A1 (en) * 2004-04-13 2005-10-27 Sony Corporation Modular imaging of computer software for system install and restore
US7430592B2 (en) 2004-04-21 2008-09-30 Dell Products L.P. Method for heterogeneous system configuration
US20050246529A1 (en) 2004-04-30 2005-11-03 Microsoft Corporation Isolated persistent identity storage for authentication of computing devies
US20050267815A1 (en) * 2004-06-01 2005-12-01 Howell James A Jr Customized support experiences based on POS choices
US8260893B1 (en) 2004-07-06 2012-09-04 Symantec Operating Corporation Method and system for automated management of information technology
US7424719B2 (en) * 2004-08-02 2008-09-09 Hewlett-Packard Development Company, L.P. Application with multiple embedded drivers
US20060074761A1 (en) * 2004-09-21 2006-04-06 Dandekar Shree A Tracking after point of sale (APOS) related sales for peripherals
US7734559B2 (en) * 2004-09-28 2010-06-08 Huelsman David L Rule processing method and apparatus providing exclude cover removal to simplify selection and/or conflict advice
US8972545B2 (en) * 2004-11-02 2015-03-03 Dell Products L.P. System and method for information handling system image network communication
US20060106682A1 (en) * 2004-11-12 2006-05-18 Van Dyck Jeffery J Web based configuration tool
US20060122894A1 (en) * 2004-12-03 2006-06-08 Mcgary Jon User configured order status updates
US7271996B2 (en) 2004-12-03 2007-09-18 Electro Industries/Gauge Tech Current inputs interface for an electrical device
US7882317B2 (en) * 2004-12-06 2011-02-01 Microsoft Corporation Process isolation using protection domains
US8020141B2 (en) * 2004-12-06 2011-09-13 Microsoft Corporation Operating-system process construction
US7600232B2 (en) 2004-12-07 2009-10-06 Microsoft Corporation Inter-process communications employing bi-directional message conduits
US7451435B2 (en) * 2004-12-07 2008-11-11 Microsoft Corporation Self-describing artifacts and application abstractions
US8082541B2 (en) * 2004-12-09 2011-12-20 Advantest Corporation Method and system for performing installation and configuration management of tester instrument modules
US20070055707A1 (en) * 2004-12-16 2007-03-08 Dandekar Shree A Control of Policies for Setting File Associations When Configuring Information Handling Systems
US20060193462A1 (en) * 2005-02-28 2006-08-31 Gregg Hansen System for optimizing configurable information handling systems
US8214800B2 (en) * 2005-03-02 2012-07-03 Advantest Corporation Compact representation of vendor hardware module revisions in an open architecture test system
US8151258B2 (en) * 2005-03-09 2012-04-03 Ipass Inc. Managing software patches
US7516452B1 (en) * 2005-03-31 2009-04-07 Emc Corporation Method and system for managing installation of software on a computer system platform
US20060229951A1 (en) * 2005-04-11 2006-10-12 Timothy Abels System and method for information handling system build-to-order packaging
US7797147B2 (en) * 2005-04-15 2010-09-14 Microsoft Corporation Model-based system monitoring
US8489728B2 (en) * 2005-04-15 2013-07-16 Microsoft Corporation Model-based system monitoring
US7802144B2 (en) * 2005-04-15 2010-09-21 Microsoft Corporation Model-based system monitoring
US20060235664A1 (en) * 2005-04-15 2006-10-19 Microsoft Corporation Model-based capacity planning
US8140816B2 (en) * 2005-05-12 2012-03-20 International Business Machines Corporation Utilizing partition resource requirements from workload estimation to automate partition software configuration and validation
US7386698B2 (en) * 2005-05-12 2008-06-10 International Business Machines Corporation Apparatus and method for automatically defining, deploying and managing hardware and software resources in a logically-partitioned computer system
US20060291645A1 (en) * 2005-06-08 2006-12-28 Vasu Mekala Needs based offer
US8849968B2 (en) * 2005-06-20 2014-09-30 Microsoft Corporation Secure and stable hosting of third-party extensions to web services
US20070016393A1 (en) * 2005-06-29 2007-01-18 Microsoft Corporation Model-based propagation of attributes
US20070005320A1 (en) * 2005-06-29 2007-01-04 Microsoft Corporation Model-based configuration management
US8549513B2 (en) 2005-06-29 2013-10-01 Microsoft Corporation Model-based virtual system provisioning
US7623684B2 (en) * 2005-07-19 2009-11-24 Dell Products, L.P. System and method for information handling system software registration code management
US20070078721A1 (en) * 2005-09-07 2007-04-05 Dandekar Shree A Process of auto-renewing limited time software and services agreement
US8065204B2 (en) * 2005-09-29 2011-11-22 Sony Corporation System and method for software integration and factory deployment
US20070094495A1 (en) * 2005-10-26 2007-04-26 Microsoft Corporation Statically Verifiable Inter-Process-Communicative Isolated Processes
US8074231B2 (en) * 2005-10-26 2011-12-06 Microsoft Corporation Configuration of isolated extensions and device drivers
WO2007053521A1 (en) * 2005-10-28 2007-05-10 Ntt Docomo, Inc. Method and apparatus for handset customizing
US7941309B2 (en) * 2005-11-02 2011-05-10 Microsoft Corporation Modeling IT operations/policies
US20070168904A1 (en) * 2005-12-20 2007-07-19 Wei Yuan Architecture to simplify development of out of box experience (OOBE) modules
WO2007072310A1 (en) 2005-12-22 2007-06-28 Shapiro Alan J System and method for software delivery
US8286159B2 (en) * 2005-12-22 2012-10-09 Alan Joshua Shapiro Method and apparatus for gryphing a data storage medium
JP2007265235A (ja) * 2006-03-29 2007-10-11 Nec Commun Syst Ltd 携帯電話機注文システム、携帯電話機注文方法、携帯電話機受注サーバおよび携帯電話機受注プログラム
US7308330B2 (en) * 2006-03-31 2007-12-11 Dell Products L.P. Dynamic order swapping in BTO environment
US8032898B2 (en) 2006-06-30 2011-10-04 Microsoft Corporation Kernel interface with categorized kernel objects
US7729952B1 (en) * 2006-08-01 2010-06-01 Just Because Baskets, Llc Method and system for custom gift basket assembly
US20080059321A1 (en) * 2006-08-31 2008-03-06 Zucker Brian T Online Sales Method for Information Handling Systems and Related Peripherals
US8312449B2 (en) * 2006-10-31 2012-11-13 International Business Machines Corporation Viral installation of operating systems in a network
US7685413B2 (en) * 2006-11-01 2010-03-23 Dell Products L.P. Use driven configurator and system optimization
US8898659B2 (en) * 2006-11-21 2014-11-25 Dell Products L.P. Method and apparatus to customize and configure multiple operating systems on a server
US9244672B2 (en) * 2006-11-30 2016-01-26 Red Hat, Inc. Optimization utility for developing embedded systems
US8239274B2 (en) * 2007-01-11 2012-08-07 Microsoft Corporation Purchasing of individual features of a software product
US7577591B2 (en) * 2007-01-22 2009-08-18 Dell Products L.P. System and method for generating a product order from a product sample
US8429626B2 (en) * 2007-02-15 2013-04-23 Microsoft Corporation Packaging content updates
US8209237B2 (en) * 2007-02-26 2012-06-26 Dell Products L.P. System and method for configuring a configurable product
US20080244507A1 (en) * 2007-03-30 2008-10-02 Microsoft Corporation Homogeneous Programming For Heterogeneous Multiprocessor Systems
US8789063B2 (en) * 2007-03-30 2014-07-22 Microsoft Corporation Master and subordinate operating system kernels for heterogeneous multiprocessor systems
US20080288622A1 (en) * 2007-05-18 2008-11-20 Microsoft Corporation Managing Server Farms
US8589912B2 (en) * 2007-06-29 2013-11-19 International Business Machines Corporation Loosely coupled product install and configuration
US20090007097A1 (en) * 2007-06-29 2009-01-01 Hinton Heather M Product install and configuration providing choice of new installation and re-use of existing installation
US7660539B2 (en) * 2007-07-11 2010-02-09 Dell Products, L.P. Printer consumable ordering direct from printer
US8234629B2 (en) * 2007-07-31 2012-07-31 Dell Products L.P. Ready-to-use media center systems through custom preconfiguration
US8782471B2 (en) 2008-05-09 2014-07-15 Dell Products L.P. Storage device procurement system
US20090300523A1 (en) * 2008-05-29 2009-12-03 Sony Corporation And Sony Electronics Inc. System and method for embedding information in an electronic device
US8312448B2 (en) * 2008-06-24 2012-11-13 Sony Corporation Configuration to order software deployment and management
US20150207757A1 (en) * 2009-03-25 2015-07-23 Hewlett-Packard Development Company, L.P. Shared resource allocation control
US10600096B2 (en) * 2010-11-30 2020-03-24 Zonar Systems, Inc. System and method for obtaining competitive pricing for vehicle services
US10665040B2 (en) 2010-08-27 2020-05-26 Zonar Systems, Inc. Method and apparatus for remote vehicle diagnosis
US20120198436A1 (en) * 2011-01-27 2012-08-02 Preimesberger Lee A Compatible Operating System
US8799057B2 (en) * 2012-01-03 2014-08-05 Infosys Limited System and method for assessment and consolidation of contractor data
US20140047368A1 (en) * 2012-08-13 2014-02-13 Magnet Systems Inc. Application development tool
US9864623B2 (en) 2013-11-21 2018-01-09 Centurylink Intellectual Property Llc Physical to virtual network transport function abstraction
US9948493B2 (en) 2014-04-03 2018-04-17 Centurylink Intellectual Property Llc Network functions virtualization interconnection gateway
US10225327B2 (en) * 2014-08-13 2019-03-05 Centurylink Intellectual Property Llc Remoting application servers
US9898318B2 (en) 2014-08-15 2018-02-20 Centurylink Intellectual Property Llc Multi-line/multi-state virtualized OAM transponder
US9882833B2 (en) 2015-09-28 2018-01-30 Centurylink Intellectual Property Llc Intent-based services orchestration
US20170185953A1 (en) * 2015-12-28 2017-06-29 Dexcom, Inc. Controlled ordering of supplies for medical devices and systems
US11301217B1 (en) * 2021-12-07 2022-04-12 CTRL IQ, Inc. Systems and methods for automated building, managing, and distributing of operating systems with different customizations for different users

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4984155A (en) * 1988-08-29 1991-01-08 Square D Company Order entry system having catalog assistance
EP0474578A1 (de) * 1990-08-20 1992-03-11 International Business Machines Corporation Verfahren zur automatischen Installierung komplexer mehrstufiger Software in einem Datenverarbeitungssystem
GB2301206A (en) * 1995-05-23 1996-11-27 Compaq Computer Corp A system for facilitating creation of a computer
US5665951A (en) * 1996-02-08 1997-09-09 Newman; Gary H. Customer indicia storage and utilization system
US5963743A (en) * 1997-08-29 1999-10-05 Dell Usa, L.P. Database for facilitating software installation and testing for a build-to-order computer system
US5991543A (en) * 1997-08-29 1999-11-23 Dell Usa, L.P. Software installation and testing for a build-to-order computer system
US5995757A (en) * 1997-08-29 1999-11-30 Dell Usa, L.P. Software installation and testing for a build-to order computer system

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5003472A (en) * 1988-12-05 1991-03-26 Wand Corporation Apparatus for order entry in a restaurant
GB8914549D0 (en) 1989-06-24 1989-08-16 Exprocad Services Ltd Variety control
US5283865A (en) * 1989-10-13 1994-02-01 Clear With Computers, Inc. Computer-assisted parts sales system
US5291585A (en) 1991-07-29 1994-03-01 Dell Usa, L.P. Computer system having system feature extension software containing a self-describing feature table for accessing I/O devices according to machine-independent format
FR2680255B1 (fr) * 1991-08-09 1994-01-28 Gerbaulet Jean Pierre Dispositif pour une meilleure gestion des operations courantes d'achat de produits et de services.
GB2264797B (en) 1992-03-07 1996-06-12 Raymond Charles Curnow Product assembly system
US5570292A (en) * 1994-02-14 1996-10-29 Andersen Corporation Integrated method and apparatus for selecting, ordering and manufacturing art glass panels
US5808894A (en) * 1994-10-26 1998-09-15 Optipat, Inc. Automated ordering method
GB2311389B (en) 1996-03-18 2000-06-07 Ibm Software installation in data processing network
US5825651A (en) 1996-09-03 1998-10-20 Trilogy Development Group, Inc. Method and apparatus for maintaining and configuring systems
DE29702272U1 (de) 1997-02-10 1997-05-22 Siemens Ag Software-Werkzeug
JP5721478B2 (ja) 2011-03-10 2015-05-20 キヤノン株式会社 撮像装置及び撮像装置の制御方法
WO2013096070A1 (en) 2011-12-20 2013-06-27 Freeport-Mcmoran Corporation Systems and methods for metal recovery
US8921438B2 (en) 2012-03-28 2014-12-30 Sabic Innovative Plastics Ip B.V. Polyetherimide polycarbonate blends

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4984155A (en) * 1988-08-29 1991-01-08 Square D Company Order entry system having catalog assistance
EP0474578A1 (de) * 1990-08-20 1992-03-11 International Business Machines Corporation Verfahren zur automatischen Installierung komplexer mehrstufiger Software in einem Datenverarbeitungssystem
GB2301206A (en) * 1995-05-23 1996-11-27 Compaq Computer Corp A system for facilitating creation of a computer
US5665951A (en) * 1996-02-08 1997-09-09 Newman; Gary H. Customer indicia storage and utilization system
US5963743A (en) * 1997-08-29 1999-10-05 Dell Usa, L.P. Database for facilitating software installation and testing for a build-to-order computer system
US5991543A (en) * 1997-08-29 1999-11-23 Dell Usa, L.P. Software installation and testing for a build-to-order computer system
US5995757A (en) * 1997-08-29 1999-11-30 Dell Usa, L.P. Software installation and testing for a build-to order computer system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7970722B1 (en) 1999-11-08 2011-06-28 Aloft Media, Llc System, method and computer program product for a collaborative decision platform
US8005777B1 (en) 1999-11-08 2011-08-23 Aloft Media, Llc System, method and computer program product for a collaborative decision platform
US8160988B1 (en) 1999-11-08 2012-04-17 Aloft Media, Llc System, method and computer program product for a collaborative decision platform

Also Published As

Publication number Publication date
FR2778252A1 (fr) 1999-11-05
DE19964588B4 (de) 2019-07-25
GB2335768B (en) 2003-03-26
DE19900500A1 (de) 1999-07-29
BR9803223B1 (pt) 2011-08-23
IT1314764B1 (it) 2003-01-16
AU8090098A (en) 1999-08-12
CN1245692C (zh) 2006-03-15
AU765962B2 (en) 2003-10-09
GB2335768A (en) 1999-09-29
US6182275B1 (en) 2001-01-30
KR19990066737A (ko) 1999-08-16
JPH11213038A (ja) 1999-08-06
MY116264A (en) 2003-12-31
TW403873B (en) 2000-09-01
KR100563823B1 (ko) 2006-10-24
FR2778252B1 (fr) 2005-06-17
IE980561A1 (en) 1999-07-28
BR9803223A (pt) 1999-10-19
SG72842A1 (en) 2000-05-23
ITTO990026A1 (it) 2000-07-15
CN1238494A (zh) 1999-12-15

Similar Documents

Publication Publication Date Title
DE19900500B4 (de) Verfahren und System zum Spezifizieren eines Computersystems für seine Herstellung
DE19836328C2 (de) Software Installation und Testen für ein gemäß einer Bestellung gebautes Computersystem
DE19836333C2 (de) Software Installation und Testen für ein gemäß einer Bestellung gebautes Computersystem
DE19836381C2 (de) Vorrichtung zur Installierung von Software auf einem Computersystem
EP2972977B1 (de) System und verfahren zur dialogindividualisierung
DE69823682T2 (de) Verfahren und gerät zur analyse von daten
US7610258B2 (en) System and method for exposing a child list
US8612458B2 (en) Catalog management module in a custom product configuration system
US7949691B1 (en) Methods of catalog data maintenance, storage, and distribution
US20030204637A1 (en) Method and apparatus for generating compilable application programs
DE112006002886T5 (de) System und Verfahren zum Speichern von Postenattributen in einem elektronischen Katalog
DE19940209A1 (de) Verfahren und Vorrichtung zum Liefern von vom Kunden konfigurierten Maschinen an eine Stelle des Internets
DE19940210A1 (de) Installieren von Komponenten einer Benutzeroberfläche für eine aktive Benutzeroberfläche durch den Hersteller
JP2002517822A (ja) インターネット上での印刷広告及びコマーシャルディスプレイ材料の設計及び製作
DE10000124A1 (de) Verfahren zum Übertragen und Indexieren von Daten von alten Medien zu neuen Medien
DE10135202A1 (de) Verfahren und Vorrichtung zur Klassifizierung von Ausrüstung in einer Vermögenswertverwaltungsdatenbank
US20040012631A1 (en) Master dynamic multi-catalog
US6959429B1 (en) System for developing data collection software applications
DE102005037855A1 (de) System und Verfahren zum Speichern von Benutzerdaten in einer Partitionsdatei oder zum Verwenden einer Partitionsdatei, die Benutzerdaten enthält
US7765165B2 (en) Engine to present user interface based on a logical structure, such as one for a customer relationship management system
DE102008006648A1 (de) Simulatorentwicklungssystem und Simulatorentwicklungsverfahren
US6895291B2 (en) Process for structuring and managing the configuration of industrial products, and particularly aircraft
US7039648B2 (en) Method and software system for creating customized computerized libraries
Jorgensen DoD classes of electronic technical manuals
DE60032563T2 (de) System zur Verwendung eines elektronischen Katalogs für die Erstellung und Wiederherstellung eines Teilsatzes des elektronischen Katalogs und für die freie Unterteilung des elektronischen Katalogs

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8172 Supplementary division/partition in:

Ref document number: 19964588

Country of ref document: DE

Kind code of ref document: P

Q171 Divided out to:

Ref document number: 19964588

Country of ref document: DE

Kind code of ref document: P

AH Division in

Ref document number: 19964588

Country of ref document: DE

Kind code of ref document: P

8364 No opposition during term of opposition
R071 Expiry of right