ITTO980722A1 - Procedimento per l'installazione e/o la verifica del software per un sistema di computer prodotto su ordinazione, e sistema di computer per - Google Patents

Procedimento per l'installazione e/o la verifica del software per un sistema di computer prodotto su ordinazione, e sistema di computer per Download PDF

Info

Publication number
ITTO980722A1
ITTO980722A1 IT98TO000722A ITTO980722A ITTO980722A1 IT TO980722 A1 ITTO980722 A1 IT TO980722A1 IT 98TO000722 A IT98TO000722 A IT 98TO000722A IT TO980722 A ITTO980722 A IT TO980722A IT TO980722 A1 ITTO980722 A1 IT TO980722A1
Authority
IT
Italy
Prior art keywords
steps
computer system
sequence
components
component
Prior art date
Application number
IT98TO000722A
Other languages
English (en)
Inventor
Richard D Amberg
Roger W Wong
Michael A Brundridge
Original Assignee
Dell Computer Corp
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
Application filed by Dell Computer Corp filed Critical Dell Computer Corp
Publication of ITTO980722A0 publication Critical patent/ITTO980722A0/it
Publication of ITTO980722A1 publication Critical patent/ITTO980722A1/it
Application granted granted Critical
Publication of IT1303246B1 publication Critical patent/IT1303246B1/it

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)
  • Hardware Redundancy (AREA)

Description

DESCRIZIONE dell'invenzione industriale dal titolo: "Procedimento per l'installazione e/o la verifica del software per un sistema di computer prodotto su ordinazione, e sistema di computer per l'attuazione del procedimento"
TESTO DELLA DESCRIZIONE
SFONDO DELL'INVENZIONE
Riferimento incrociato a domande correlate
La presente domanda è relativa alla domanda di brevetto statunitense col numero di serie anch'essa pendente, n. di protocollo N-5612 US, depositata lo stesso giorno della presente domanda, intitolata Software Installation And Testing For A Build-To-Order Computer System e che nomina Richard D. Amberg, Roger W. Wong e Michael A. Brundridge come inventori, la domanda essendo qui incorporata per riferimento nella sua interezza.
La presente domanda è relativa alla domanda di brevetto statunitense col numero di serie anch’essa pendente, n. di protocollo M-5217 US, depositata lo stesso giorno della presente domanda, intitolata Software Installation And Testing For A Build-To-Order Computer System e che nomina Richard D. Amberg, Roger W. Wong, and Michael A. Brundridge come inventori, l'applicazione essendo qui incorporata per riferimento nella sua interezza. Campo dell'invenzione
La presente forma di attuazione è relativa alla diagnostica di sistemi di computer e più in particolare ad un procedimento per sequenziare le fasi di installazione e/o test di software per un sistema di computer.
Descrizione della tecnica nota
I sistemi di personal computer in generale e i sistemi di personal computer IBM compatibili in particolare hanno ottenuto un utilizzo diffuso per fornire potenza di calcolo a molti segménti della società. Un sistema di personal computer può essere definito di solito come microcomputer da tavolo, a torre o portatile che comprende una unità di sistema avente un processore di sistema ed una memoria volatile e non volatile associata, un monitor di visualizzazione, una tastiera, una o più unità a dischetti, un dispositivo di memorizzazione a disco fisso ed una stampante opzionale.
E' noto installare il software ed eseguire test su sistemi di computer prima che essi siano spediti a aziende o singoli clienti. L'obiettivo dell'installazione di software e del relativo test è quello di produrre in modo efficiente un sistema di computer affidabile ed utile che possa essere inviato ad aziende e singoli privo di errore e pronto al funzionamento. In generale, i test rilevano e analizzano errori che si verificano sia nelle porzioni hardware sia in quelle software del sistema di computer. Un elenco parziale di test hardware del sistema di computer potrebbe comprendere diagnostica su componenti hardware quali un processore, una memoria, un dispositivo di memorizzazione a disco, un dispositivo audio, un dispositivo grafico, una tastiera, un mouse ed una stampante. L'installazione di software comprende spesso il caricamento di un pacchetto desiderato di software sul sistema di calcolatore, la preparazione di variabili di ambiente appropriato per il computer e la preparazione di file di inizializzazione appropriati per il software caricato. I test software comprendono spesso l'accertamento che una versione desiderata di software è stata installata sul sistema di computer e che sono presenti driver appropriati sul sistema di computer.
E' noto nell'industria installare software e testare sistemi di computer durante la fabbricazione eseguendo una procedura fissa prima che essi siano spediti ai clienti. Per esempio, si crea un dischetto contenente certi test diagnostici per un certo tipo di sistema di computer. Il dischetto comprende file batch lunghi e spesso complicati che dirigono i processo di installazione e di diagnostica del software. Il dischetto contiene inoltre tutti i file eseguibili per eseguire test sul sistema di computer acquistato.
Ogni sistema di computer costruito è dotato di una rispettiva copia di questo dischetto. Questi dischetti accompagnano i sistemi di computer costruiti in fabbrica durante il processo di produzione, test venendo eseguiti sul rispettivo sistema di computer secondo l'ordine inerente nel file batch. Se occorre effettuare una modifica al processo, il file batch viene modificato in modo corrispondente aggiungendo o togliendo porzioni dal codice batch. Tale variazione nel file batch dà come risultato una corrispondente variazione dei parametri di test (compresa la sequenza nella quale i test sono eseguiti) di ogni successivo sistema di computer fabbricato, dato che ogni sistema di computer condivide la stessa procedura diagnostica del file batch.
Mentre soluzioni diagnostiche di questo tipo hanno presentato un certo grado di utilità nell 'aumentare l'affidabilità dei sistemi di computer prima della spedizione, rimane spazio per miglioramenti. Per esempio, dato che i test continuano a diventare sempre più complicati e approfonditi, i file batch e i file eseguibili dei test diagnostici spesso superano le capacità di immagazzinaggio di un dischetto. Inoltre, è spesso difficile o impossibile personalizzare le procedure di test ed installazione di software per un singolo sistema di computer costruito secondo un ordine oppure per una certa famiglia di sistemi di computer senza modificare i test per altri sistemi o famiglie. Inoltre, è difficile o impossibile modificare l’ordine dell'installazione software o di test per un singolo sistema di computer costruito secondo un ordine o per una certa famiglia di sistemi di computer senza modificare l'ordine per altri sistemi e famiglie. Infine, la natura spesso complicata delle attuali strutture di file batch talvolta rende difficile per i costruttori risolvere i problemi o mantenere le procedure di test ed installazione di software rapidamente in modo efficiente. In maniera corrispondente, sarebbe desiderabile stabilire un procedimento perfezionato per installare software e testare sistemi di computer prima che essi siano spediti ai clienti.
L'invenzione
Un procedimento per installare e/o testare software per un sistema di computer costruito secondo un ordine comprende la lettura di una pluralità di descrittori di componenti da un file leggibile da computer. Almeno un descrittore di componente descrive un rispettivo componente del sistema di computer. Una pluralità di fasi sono reperite da una banca dati, almeno una fase essendo associata ad un rispettivo descrittore di componente. Una fase comprende inoltre un rispettivo numero di sequenza. La pluralità di fasi sono sequenziate in un predeterminato ordine secondo i numeri di sequenza per fornire una sequenza di fasi. La sequenza di fasi comprende comandi per installare e/o testare il software sul sistema di computer.
In forme di attuazione preferite, una prima sequenza di fasi di un primo sistema di computer può essere modificata indipendentemente da una seconda sequenza di fasi di un secondo sistema di computer. In aggiunta, la banca dati può essere configurata in modo da associare una prima sequenza di fasi ad una prima famiglia di sistemi di computer ed una seconda sequenza di fasi ad una seconda famiglia di sistemi di computer. La prima sequenza di fasi può essere modificata indipendentemente dalla seconda sequenza di fasi.
Secondo un altro aspetto, un procedimento per installare e/o testare software comprende la ricezione di un ordine per un sistema di computer, il sistema di computer da fabbricare che deve comprendere una pluralità di componenti. L'ordine è convertito in un record di descrittore di sistema leggibile da computer che è descrittivo della pluralità di componenti. Il record di descrittore di sistema è letto con un computer. Una pluralità di fasi sono reperite da una banca dati, una fase essendo associata ad un rispettivo componente. Una fase comprende inoltre un rispettivo numero di sequenza e fase. La pluralità di fasi sono sequenziate in un predeterminato ordine secondo i rispettivi numeri di sequenza e i numeri di fase per fornire una sequenza di fasi. La sequenza di fasi comprende comandi per installare e/o testare software sul sistema di computer durante le fasi di fabbricazione. Le fasi di fabbricazione corrispondono a rispettivi numeri di fase.
Secondo un altro ulteriore aspetto, un procedimento per sequenziare una installazione software comprende la ricezione di un ordine per un sistema di computer, il sistema di computer da fabbricare che deve comprende una pluralità di componenti. L'ordine è convertito in un record di descrittore di sistema leggibile da computer che è descrittivo della pluralità di componenti. Una modifica del record di descrittore di sistema è permessa utilizzando un patch di descrittore di sistema. Il record di descrittore di sistema è letto con un computer. Si crea una pluralità di oggetti derivati corrispondenti alla pluralità di componenti. Con gli oggetti derivati, si reperiscono una pluralità di fasi da una banca dati. Ogni fase è associata ad un rispettivo componente e comprende un rispettivo numero di sequenza e un numero di fase. La pluralità di fasi sono sequenziate in un ordine predeterminato secondo i rispettivi numeri di sequenza e numeri di fase per fornire una sequenza di fasi. Una modifica alla sequenza di fasi è permessa utilizzando un patch di sequenza di fasi. La sequenza di fasi è scritta in un file di testo leggibile da computer. Il file di testo comprende comandi per installare il software sul sistema di computer durante le fasi di fabbricazione, la fase di fabbricazione corrispondendo a rispettivi numeri di fase.
Preferibilmente, la sequenza di fasi è atta a fornire comandi ripetibili per una lunghezza di tempo definita. Si preferisce inoltre che la frequenza di fasi sia adattata a fornire comandi ripetibili per un numero di interazioni definite.
Il metodo descritto fornisce cosi un sequenziamento effettivo dell'installazione di software e del test di computer che consente una risoluzione immediata degli errori e una personalizzazione dei sistemi di computer costruiti secondo gli ordini. Il progetto modulare del sequenziamento consente in modo vantaggioso una manutenzione elementare di un sistema di test e la rapida creazione di fasi per nuovi sistemi e famiglie di computer.
Questi ed altri scopi, caratteristiche e vantaggi dell'invenzione saranno ulteriormente descritti e risulteranno immediatamente più chiari da una revisione della descrizione dettagliata delle forme di attuazione preferite che segue.
BREVE DESCRIZIONE DEI DISEGNI
La Figura 1 è un diagramma schematico che illustra l'installazione e il test di software.
La Figura 2 è un diagramma schematico dell'installazione e del test di software secondo un'altra forma di attuazione.
La Figura 3A è un diagramma di flusso per convertire un ordine di computer in un record di descrittore di sistema secondo la presente invenzione.
La Figura 3B illustra una porzione di un ordine di computer di esempio, un file di Record Assembly di Base (BAR), e un record di descrittore di sistema.
La Figura 4 è un diagramma di flusso per creare e fornire una sequenza di fasi.
La Figura 5 è un diagramma di flusso più dettagliato per creare una sequenza di fasi.
La Figura 6 illustra la struttura di una banca dati.
La Figura 7 è un diagramma di flusso per modificare un record di descrittore di sistema e una sequenza di fasi.
La Figura 8 illustra un esempio di un file di fasi prima di essere eseguito.
La Figura 9 illustra il file di fasi esemplificative dopo essere stato eseguito.
La Figura 10 è un diagramma di flusso del funzionamento di un programma per eseguire una sequenza di fasi.
La Figura 11 è un diagramma di flusso più dettagliato del funzionamento del programma di Figura 10 per eseguire una sequenza di fasi.
DESCRIZIONE DETTAGLIATA
Quanto segue evidenzia una descrizione dettagliata del modo migliore e contemplato per eseguire l'invenzione. La descrizione vuole essere illustrativa e non deve essere presa come limitativa. Nelle figure, gli elementi analoghi o simili possono essere designati dallo stesso numero di riferimento. Nella descrizione, un modulo è definito come comando o insieme di comandi.
La Figura 1 è un diagramma schematico di un sistema di installazione e test di software 90. Durante il funzionamento, si colloca un ordine 92 per acquistare un sistema di computer obiettivo 160 costruito secondo l'ordine. Il sistema obiettivo 160 deve essere fabbricato in modo da contenere una pluralità di componenti hardware e software. Per esempio, il sistema obiettivo 160 potrebbe comprendere una certa marca di unità di disco rigido, un tipo particolare di monitor, una certa marca di processore, ed una particolare versione di un sistema operativo. Prima che il sistema obiettivo 160 sia spedito al cliente, la pluralità di componenti vengono installati e testati. Tale installazione e test del software garantisce in modo vantaggioso un sistema di calcolatore funzionante e affidabile che è pronto a funzionare quando viene ricevuto.
Poiché famiglie diverse di sistemi di computer e singoli componenti di computer diversi richiedono fasi di installazione e test di software diverse, è necessario determinare quali test devono essere eseguiti sul sistema obiettivo 160 e in quale ordine questi test devono essere eseguiti in modo da ottenere un processo di installazione e test di software efficace. Il dispositivo di realizzazione di fasi 140 è un sistema di computer configurato in modo da sequenziare le fasi di installazione e test di software da eseguire sul sistema obiettivo 160. Per sequenziare le fasi di installazione e/o test di software, il dispositivo di realizzazione di fasi 140, e più in particolare il programma di sequenziamento 204 che risiede sul dispositivo di realizzazione di fasi 140, legge dapprima una pluralità di descrittori di componenti dal file di descrittori 96. Il file di descrittori 96 è fornito convertendo un ordine 92, che corrisponde ad un sistema di computer desiderato avente componenti desiderati, in un formato leggibile da computer tramite il modulo di conversione 94.
I descrittori di componenti sono descrizioni leggibili dal computer dei componenti del sistema obiettivo 160 i quali componenti sono definiti dall'ordine 92. Nella forma di attuazione preferita, i descrittori di componenti sono compresi in un file di descrittori chiamato record di descrittore di sistema che è un file leggibile da computer contenente un listato dei componenti, componenti hardware e/o software, da installare sul sistema obiettivo 160. Avendo letto la pluralità dio descrittori di componenti, il programma di sequenziamento 204 reperisce una pluralità di fasi di installazione e/o test di software corrispondenti ai descrittori di componenti dalla banca dati 100 sulla connessione di rete 110. La connessione di rete 110 può essere qualsiasi connessione di rete ben nota nella tecnica, quale una rete di area locale, una intranet, o 1'internet. Le informazioni contenute nella banca dati 100 possono essere aggiornate tramite una modifica illustrata dalla freccia 130.
Avendo reperito le fasi di installazione e/o test di software appropriate per il sistema obiettivo 160, il programma di sequenziamento 204 sequenzia le fasi in un ordine predeterminato secondo numeri di sequenza corrispondenti ad ogni fase. Avendo sequenziate le fasi richieste per il sistema obiettivo 160, il programma di sequenziamento 204 scrive una serie di file di uscita .sul disco di fasi 150. Nella forma di attuazione evidenziata in Figura 1, i file di uscita comprendono file di test contenenti linee di comando appropriate per eseguire le fasi di installazione e/o test di software appropriate sul sistema obiettivo 160. L’esecuzione è effettuata nell'ordine predeterminato secondo i numeri di sequenza corrispondenti ad ogni fase. Il disco di fasi 150 accompagna il sistema obiettivo 160 in fabbrica dove i test sono eseguiti direttamente dal disco di fasi 150 oppure, in alternativa, dal file server 190, connesso al sistema obiettivo 160 tramite la connessione di rete 180. Preferibilmente, la connessione di rete 180 è un dispositivo di rete generico collegato in una corrispondente porta di rete del sistema di computer obiettivo. A seguito dell'esecuzione delle fasi di installazione e test di software, i risultati dell'installazione dei test sono registrati nuovamente nel file server 190 sulla connessione di rete 180.
La Figura 2 è un diagramma schematico del sistema di installazione e test di software 192 conforme ad un'altra forma di attuazione della presente invenzione. Un cliente colloca un ordine 92 per acquistare un sistema di computer obiettivo 160 costruito secondo un ordine. Il sistema obiettivo 160 deve essere fabbricato in modo da contenere una pluralità di componenti i quali componenti possono comprendere componenti sia hardware sia/o software. Prima che il sistema obiettivo 160 sia spedito al cliente, la pluralità di componenti sono installati e testati. Tale installazione e test garantisce in modo vantaggioso un sistema di computer funzionante ed affidabile che è pronto a funzionare dopo essere ricevuto dal cliente.
Per sequenziare le fasi di installazione e test di software, il programma di sequenziamento 204 legge una pluralità di descrittori di componenti dal file di descrittori 96. L'ordine 92 è convertito nel file di descrittore 96 tramite il modulo di conversione 94. I descrittori di componenti sono descrizioni leggibili da computer dei componenti del sistema obiettivo 160. Nella forma di attuazione preferita, i descrittori di componenti sono compresi in un file di descrittori chiamato record di descrittore di sistema, un file leggibile da computer comprendente un listato di ogni componente, sia hardware sia software, da installare sul sistema obiettivo 160. Il record di descrittore di sistema può essere memorizzato direttamente sul file server 202. Il programma di sequenziamento 204 reperisce una pluralità di fasi di installazione e/o test di software corrispondenti ai descrittori di componenti dalla banca dati 100. Avendo reperito le fasi di installazione e/o test di software appropriate per il sistema obiettivo 160, il programma di sequenziamento 204 sequenzia le fasi in un predeterminato ordine secondo i numeri di sequenza corrispondenti ad ogni fase. Avendo sequenziate le fasi richieste per il sistema obiettivo 160, il programma di sequenziamento 204 dirige l'esecuzione delle fasi di installazione e test di software sul sistema obiettivo 160 nell'ordine predeterminato tramite le connessioni di rete 195 e 180. Si desidera che la connessione di rete 200 sia un dispositivo di rete generico collegato ad una corrispondente porta del sistema obiettivo 160. La rete 195 può essere qualsiasi connessione di comunicazione ben nota nella tecnica. A seguito dell'esecuzione delle fasi di installazione e/o test di software, i risultati dell'installazione e dei test sono registrati di nuovo nel file server 202 sulla connessione di rete 200 o memorizzati all'interno di una banca dati appropriata. Come appare chiaro dall'illustrazione, non c'è alcuna necessità di separare il sistema di computer di realizzazione di fasi 140 di Figura 1. In aggiunta, il disco di fasi 150 non è necessario. Piuttosto, è necessario soltanto il disco di boot 220, che è configurato per inizializzare il sistema obiettivo 160, per accompagnare il sistema obiettivo 160 in fabbrica .
Avendo descritto in generale i sistemi di installazione e test di software, si orienterà ora l'attenzione alla descrizione del funzionamento dei sistemi evidenzianti nelle Figure 1 e 2 in maggior dettaglio.
La Figura 3A illustra il processo preferito in cui un ordine per un sistema di computer viene convertito in un record di descrittore di sistema leggibile da computer. Più specificamente, nell'elemento 300, si riceve un ordine per un sistema di computer obiettivo. Questo ordine può essere in una qualsiasi di innumerevoli forme. Per esempio, sono possibili formati di ordinamento diversi così come meccanismi di consegna di ordini diversi. Per esempio, gli ordini per un sistema di computer obiettivo possono essere collocati per telefono, tramite posta, o su reti di computer (ad esempio su internet). Indipendentemente dai mezzi di assunzione o dalla forma dell'ordine, l'ordine comprende il tipo di sistema di computer obiettivo che un cliente desidera acquistare e, eventualmente, un listato esplicito dei particolari componenti che il cliente desidera che il sistema di computer obiettivo comprenda. Dopo che si riceve l'ordine, il controllo opera una transizione sul modulo di trasmissione 310 durante la quale l'ordine di sistema di computer obiettivo viene trasmesso su una rete di computer ad un sistema di fabbricazione (non illustrato) che produce il sistema di computer obiettivo. L'ordine di sistema di computer obiettivo è fornito inoltre al sistema di installazione e test di software dove viene concatenato in un programma di conversione nel modulo 320. La rete di computer utilizzata nel modulo 310 può essere di qualsiasi tipo ben noto nella tecnica.
Il programma di conversione converte l'ordine di sistema di computer obiettivo in un record utile per il processo di fabbricazione. Più specificamente, il programma di conversione converte l'ordine di computer dapprima in un record chiamato file BAR nel modulo 330. Preferibilmente il file BAR contiene un identificatore unico che identifica il sistema di computer obiettivo specifico in fabbricazione. Il file BAR contiene inoltre un listato dettagliato dei componenti, che possono comprendere sia hardware sia software, da inserire nel sistema obiettivo. Inoltre si desidera che il file BAR contenga numeri categorici specifici del costruttore ο altri identificatori utili per ogni componente. Infine, il file BAR può contenere informazioni specifiche del cliente quali nome, indirizzo e numero di telefono.
A seguito della creazione del file BAR NEL MODULO 330, si crea un record di descrittore di sistema nel modulo 340. Un record di descrittore di sistema, nella forma di attuazione preferita, è un file leggibile da computer che è descrittivo dei componenti hardware e software da inserire nel sistema di computer obiettivo. In una forma di attuazione preferita, il record di descrittore di sistema contiene un elenco di componenti del sistema obiettivo in un formato comprendente etichette hardware, etichette software, etichette di informazioni e commenti. Un'etichetta hardware identifica al programma di sequenziamento 204 che le informazioni che seguono l'etichetta sono relative ad un componente hardware. Analogamente, l'etichetta software identifica le informazioni che seguono l'etichetta come relative ad un componente software. L'etichetta di informazioni indica che seguono informazioni generali. I commenti consentono di inserire varie scritte nel record di descrittore di sistema che sono ignorate dal programma di sequenziamento 204. Si desidera che il record di descrittore di sistema sia un file di testo che sia leggibile dalle persone e facile da capire. Tale file consente vantaggiosamente una risoluzione facile dei problemi e la manutenzione del processo di installazione e test. Si potrà che apprezzare che il record di descrittore di sistema potrebbe essere qualsiasi elenco di identificatori unici che corrispondono ad un insieme unico di token, per esempio in un esempio semplice, il record di descrittore di sistema può essere un elenco di numeri categorici.
La Figura 3B illustra un ordine di sistema di computer obiettivo 350 esemplificativo, un corrispondente file BAR 360, ed un corrispondente record di descrittore di sistema 370. L'ordine di sistema di computer obiettivo 350 contiene il nome di una famiglia di computer, in questo esempio illustrativo la famiglia "X". Compresi anche nell'ordine di sistema di computer obiettivo 350 vi sono tre componenti hardware esemplificativi comprendenti un processore Pentium®, un'unità a disco rigido, ed un monitor. Il file BAR 360 deriva dall'esecuzione dell'ordine di sistema di computer obiettivo 350 tramite un programma di conversione come illustrato nel modulo 320 di Figura 3A. Il file BAR 360 contiene un identificatore unico per il sistema di computer obiettivo specifico all'interno della famiglia X. Il file BAR 360 comprende inoltre i numeri categorici specifici del costruttore per ciascuno dei componenti elencati nell'ordine di sistema di computer obiettivo. Inoltre, il file BAR 360 contiene un identificatore che indica la quantità desiderata di ogni componente così come una descrizione di test di ogni componente da inserire sul sistema di computer obiettivo. Il sistema 90 utilizza il file BAR 360 per creare il record di descrittore di sistema 370.
Come illustrato, il record di descrittore di sistema 370 contiene anche l'identificatore unico per il sistema di computer obiettivo specifico nell'ambito della famiglia X. Inoltre, il record didescrittore di sistema 370 contiene etichette appropriate, che indicano qui che il processore, l'unità a disco rigido e il monitor sono tutti componenti hardware, piuttosto che software. Il record di descrittore di sistema 370 descrive questi componenti in una descrizione di testo. In aggiunta, il record di descrittore di sistema 370 esemplificativo contiene un’etichetta software che indica che un certo software deve essere installato o testato sul sistema di computer obiettivo appartenente alla famiglia X. Per esempio, l'etichetta software potrebbe indicare che un certo sistema operativo appropriato per il processore Pentium<® >sia sempre installato sull'unità a disco rigido del sistema di computer obbiettivo appartenente alla famiglia X.
In Figura 4, è evidenziato il procedimento generale preferito per sequenziare le fasi di installazione e test di software. Nel modulo 400, si genera l'identificatore unico del sistema di computer obiettivo per il sistema di computer obiettivo 160. Nella forma di attuazione illustrata in Figura 1, un utente seduto al sistema di computer che realizza le fasi 140 fornisce l'identificatore unico (ad esempio l'identificatore BAR che funziona come codice di rintracciamento) nel programma di sequenziamento 204 del dispositivo di realizzazione di fasi 140. In alternativa, nella forma di attuazione di Figura 2, l'identificatore unico viene letto automaticamente nel programma di sequenziamento 204 dopo che si riceve l'ordine di sistema di computer obiettivo.
Nel modulo 410, si localizza un record di descrittore di sistema corrispondente all 'identificare BAR. Nella forma di attuazione di Figura 1, la connessione di rete 110 oppure la connessione di rete 195 localizza il record di descrittore di sistema. Nella forma di attuazione di Figura 2, la connessione di rete 195 localizza il record di descrittore di sistema. Nel modulo 420, il record di descrittore di sistema localizzato è fornito al programma di sequenziamento 204. Nella forma di attuazione di Figura 1, il programma di sequenziamento risiede sul sistema di computer di realizzazione di fasi 140 mentre nella forma di attuazione di Figura 2, il programma di sequenziamento risiede sul file server 202. Il programma di sequenziamento 204 lavora insieme alla banca dati 100 (delle Figure 1 e 2) per sequenziare le fasi di installazione e test di software per il sistema di computer obiettivo 160. Quando vengono sequenziate le fasi di installazione e test di software appropriate per il particolare sistema di computer obiettivo, il programma di sequenziamento 204 produce gli file di uscita come illustrati nel modulo 430.
Nella forma di attuazione illustrata in Figura 1, i file di uscita sono scritti preferibilmente sul disco di fasi 150 (vedere Figura 1) in sei file separati. Questi file comprendono (1) un file di fasi, (2) un file Setenv.bat, (3) un file Qt.txt, (4) un file Et.txt, (5) un Etlast.txt, e (6) un file Ft.txt. Si desidera che il file di fasi sia un file di testo ASCII comprendente un elenco di linee di comandi appropriate per eseguire le fasi di installazione e test di software per il sistema di computer obiettivo ordinato. In una forma di attuazione preferita, il file di fasi comprende inoltre comandi che possono essere fatti girare ad anello. Più specificamente, il file di fasi consente di ripetere i comandi per un numero definito di iterazioni o per una durata di tempo definita. Tale formato consente vantaggiosamente di ripetere le fasi di installazione o test di software n maniera calcolata e predeterminata. Il file Setenv.bat stabilisce preferibilmente variabili di ambiente sul sistema di computer obiettivo. Si potrà apOprezzare che in un modo di funzionamento sono necessari soltanto il file Step e il file Setenv.bat per l 'installazione di test. Il file Step e il file Setenv.bat sono file di scritti di testo ASCII contenenti un elenco di linee di comandi appropriate per eseguire le fasi di installazione e test per il sistema di computer obiettivo. Il file Qt.txt, Et.txt, Etlast.txt e Ft.txt sono tutti preferibilmente file di test ASCII contenenti un elenco di linee di comandi appropriato per eseguire le fasi di installazione e test di software per il sistema di computer obiettivo nelle fasi di fabbricazione di Test Rapido (Qt), Test Esteso 1 (Et), Test Esteso 2 (Etlast) e Test Finale (Ft) del sistema di computer obiettivo.
Nella forma di attuazione di Figura 2, d'altra parte, i file di uscita non sono scritti in un disco di fasi come illustrato in Figura 1. Invece, i file di uscita risiedono sul file server 202 o sul file server 190, dove sono utilizzati per dirigere l'esecuzione delle fasi di installazione e/o test di software sul sistema di computer obiettivo 160.
La Figura 5 illustra uno schema più dettagliato del funzionamento del programma di sequenziamento 204 illustrato nelle Figure 1 e 2. Nel modulo 500, si fornisce un record di descrittore di sistema corrispondente al sistema di computer obiettivo 160 al programma di sequenziamento 204. Nel modulo 510, si legge un descrittore di componente dal record di descrittore di sistema. Ogni descrittore di componente descrive un rispettivo componente, hardware o software, nel sistema di computer obiettivo.
Passando alla Figura 3B, la linea del record di descrittore di sistema comprendente il processore Pentium<® >nel modulo 370 è un descrittore di componente esemplificativo. Nel modulo 520, il programma di sequenziamento 204 esemplifica una pluralità di oggetti derivati corrispondenti alla pluralità di componenti del sistema di computer obiettivo 160. Nella forma di attuazione preferita, questi oggetti derivati sono utilizzati per memorizzare informazioni (ottenute dalla banca dati 100) relative alle fasi di installazione e test di software che devono essere fatte girare sul sistema di computer obiettivo 160. Nel modulo 550, le fasi di installazione e test di software associate ai rispettivi componenti del sistema di computer obiettivo 160 sono reperite dalla banca dati 100 e memorizzate nell'oggetto derivato appropriato. Nella forma di attuazione di Figura 1, le fasi sono reperite tramite la connessione di rete 110 mentre nella forma di attuazione di Figura 2, le fasi possono essere reperite direttamente dal file server 202. Per descrivere come le fasi sono reperite dalla banca dati 100 nella forma di attuazione preferita si richiede una descrizione della costruzione preferita di tale banca dati.
La Figura 6 illustra il progetto della banca dati 100. La banca dati 100 associata sequenze di fasi di installazione e/o test di software, in un predeterminato ordine, con famiglie di sistemi di computer. Inoltre, la banca dati 100 è configurata in modo da associare componenti di sistemi di computer con famiglie di sistemi di computer. Ancor di più, la banca dati 100 associa le fasi di installazione e/o test di software con componenti di sistemi di computer.
La banca dati 100 è preferibilmente una banca dati razionale. La banca dati 100 contiene parecchie tabelle, contenenti ciascuna attributi adatti a creare le associazioni sopra citate.
La banca dati 100 contiene la tabella Step 102, la tabella SysFamily 104, la tabella sys_Step_Seq 106, la tabella Component 108, la tabella Sys_Comp 112, e la tabella Comp_Step 114. Nella forma di attuazione preferita, ogni tabella contiene un elenco di attributi, gli attributi sottolineati servendo come chiave primaria.
La tabella Step 102 contiene un insieme di fasi di installazione e test di software che sono condivise tra componenti diverse di tutte le famiglie di computer. Nella costruzione preferita, la tabella Step 102 ha attributi comprendenti StepID, Phase, Name, Cmd, CmdType, AfterCode e Maxlnstance. StepID è un numero di identificazione unico per ogni fase di installazione o test di software. Phase indica quale fase di fabbricazione deve eseguire la fase. Per esempio Phase è un intero scelto in modo da corrispondere a quattro fasi di fabbricazione di sistemi di computer comprendenti (1) Test Rapido, (2) Test Esteso 1, (3) Test Esteso 2, e (4) Test Finale. Name è una stringa che assegna un nome che è descrittivo della fase. Cmd è una stringa che assegna una linea di comando eseguibile per eseguire la fase di installazione o test di software sul sistema obiettivo 160 (illustrato nelle Figure 1 e 2). AfterCode è un identificatore che determina se è necessaria una interruzione o una nuova inizializzazione dopo che si esegue la fase di installazione o test di software. Maxlnstance è un identificatore che indica il numero massimo di volte consentite per cui si può eseguire la fase.
Infine, ClassID identifica un certo tipo di componente che è associato alla fase di installazione o test di software.
La tabella SysFamily 104 identifica ogni famiglia di sistemi di computer con un intero di identificazione specificato nell'attributo SysID. E' compresa anche nella tabella SysFamily una stringa che identifica il nome della famiglia.
La tabella Sys_Step_Seq 106 è una tabella relazione che contiene relazioni tra la tabella Step 102 e la tabella SysFamily 104. La tabella Sys_Step_Seq 106 comprende un intero di identificazione di famiglia specificato nel SysID di attributo per una particolare famiglia di sistemi di computer (dalla tabella SysFamily 104), un intero di identificazione di fase specificato nel SteplD di attributo (dalla tabella Step 102) che identifica un particolare insieme di fasi appropriate per tale famiglia, ed un numero di sequenza. Il numero di sequenza è contenuto preferibilmente all'interno dell'attributo SeqNum che rappresenta un predeterminato ordine in cui devono essere eseguite le fasi associate ad una particolare famiglia. Gli ingegneri di test segnano i numeri di sequenza, unici all'interno di ogni fase di fabbricazione, in un ordine scelto in modo che sia più efficace per un particolare sistema obiettivo. Si potrà apprezzare che si possono utilizzare altri modi di assegnare i numeri di sequenza.
La tabella Component contiene tutti i possibili componenti che sono compresi all'interno dei sistemi di computer fabbricati. Gli attributi di questa tabella sono preferibilmente CompID che assegna un identificatore ad ogni componente, NameDesc che assegna un nome di stringa ad ogni componente, e Callsld che fa riferimento al tipo di componente (ad esempio unità a disco rigido, unità CD-ROM).
La tabella Sys_Comp 112 è una tabella relazionale contenente relazioni tra una famiglia di sistemi di computer ed un insieme di componenti che possono essere inseriti in tale famiglia. Gli attributi della tabella Sys_Comp 112 comprendono uri intero di identificazione di famiglia di computer specificato nell'attributo SysID (dalla tabella SysFamily 104) ed un intero di identificazione di componente specificato nell'attributo CompID (dalla tabella Component 108).
La tabella Comp_Step 114 è una tabella relazione contenente relazioni tra un componente ed un insieme di fasi di installazione e test di software appropriati per tale componente. Gli attributi della tabella Comp_Step 114 comprendono un intero di identificazione di componente specificato nell'attributo Compio (dalla tabella Component 108) ed un intero di identificazione di fase specificato, nell'attributo StepID (dalla tabella Step 102).
Il sistema di computer obiettivo esemplificativo illustrato in Figura 3B sarà utilizzato per illustrare come si utilizza il progetto di banca dati evidenziato in precedenza per reperire le fasi di installazione e test di software. L'identificatore di famiglia di computer nel record di descrittore di sistema che identifica la famiglia X è associato al SysID corrispondente alla famiglia X nella tabella SysFamily 104. La tabella Component 108 è utilizzata per controllare se i componenti del sistema di computer obiettivo elencati nell'ordine di sistema di computer obiettivo sono legali. In altre parole, il programma di sequenziamento e la banca dati determinano se il processore, l'unità a disco rigido, il monitor e il software contenuti nel record di descrittore di sistema di Figura 2B hanno corrispondenti inserimenti e corrispondenti interi specificati da CompID nella tabella Component 108. Se un componente non è legale (cioè se un componente nel record di descrittore di sistema non è contenuto nella tabella Component 108, si crea un indicatore di errore. La tabella Sys_Comp 112 è una tabella relazionale che contiene mappature dalla tabella Component 108 e dalla tabella SysFamily 104. La tabella Sys_Comp 112 contiene tutti i componenti legali che possono essere inseriti su un sistema di computer obiettivo appartenente alla famiglia X. Così, la tabella Sys_Comp 112 può essere utilizzata per controllare se tutti i componenti del sistema obiettivo sono legali. In altre parole, il programma di sequenziamento e la banca dati determinano se il processore, l'unità a disco rigido, il monitor e il software contenuti nel record di descrittore di sistema di Figura 3B hanno corrispondenti relazioni nella tabella Sys_Comp 112. Se un componente non è legale (cioè se un componente nel record di descrittore di sistema non può essere compreso su un sistema obiettivo appartenente alla famiglia X), si crea un indicatore di errore.
Nella tabella relazionale Sys_Step_Seq 106 risiedono le mappature dalla tabella Step 102 e dalla tabella Sys_Family 104. La tabella Sys_Step_seq 106 contiene tutte le fasi di installazione e test di software che possono essere fatte funzionare legalmente sui sistemi di computer obiettivo appartenenti alla famiglia X. Inoltre, è in questa tabella Sys_Step_Seq 106 che i numeri di sequenza e fase sono associati ad ogni fase di installazione e test di software. Questi numeri di sequenza e fase rappresentano l'ordine appropriato in cui le fasi devono essere fatte funzionare per una particolare famiglia di sistemi di computer. Pertanto, la tabella Sys_Step_Seq 106 contiene un listato di fasi da far funzionare sui sistemi di computer obiettivo della famiglia X così come i numeri di sequenza e fase che rappresentano un predeterminato ordine in cui le fasi devono essere eseguite.
La tabella Comp-Stet 114 è una tabella relazionale che contiene mappature dalla tabella Component 108 e dalla tabella Step 102. La tabella CompStep 114 contiene le fasi di installazione e test di software che devono essere eseguite per il processore, l'unità a disco rigido, il monitor e il software del sistema di computer obiettivo.
Per reperire le fasi di installazione e test di software associate ai rispettivi componenti da inserire sul sistema obiettivo è necessaria l'esecuzione di una operazione di unione sulla tabella Sys_Comp 112 e sulla tabella Comp_Step 114 per ottenere un insieme intermedio che elenca le fasi da far funzionare sui componenti del sistema di computer obiettivo 160.
L'operazione di unione dà come risultato un elenco di fasi da far girare sul processore, sull’unità a disco rigido, sul monitor e sul software elencati nel record di descrittore di sistema illustrato in Figura 3B. Il risultato dell'unione della tabella Sys_Comp 112 e della tabella Comp_Step 114 viene quindi unita alla tabella Sys_Step_Seq 106 che contiene tutte le fasi per la famiglia X. Il risultato di questa operazione di unione comprende informazioni di sequenziamento sotto forma di numeri di sequenza e numeri di fase, i numeri di sequenza essendo unici all'interno di una fase particolare. Così, un unione di tre tabelle della tabella Sys_Comp 112, della tabella Comp_Step 114 e della tabella Sys_Step_Seq 106 produce le fasi di installazione e test di software appropriate così come le informazioni di sequenziamento sotto forma di numeri di sequenza e fase per installare e/o testare software sul sistema di computer obiettivo 160.
Se il risultato della prima operazione di unione (l'unione della tabella Sys_Comp 112 e della tabella Comp_Step 114) è un insieme vuoto, si crea una condizione di errore, dato che un insieme vuoto segnala che un componente da inserire sul sistema obiettivo non appartiene alla famiglia elencata sul record di descrittore di sistema. Un esempio di ciò è illustrativo. Si consideri che un record di descrittore di sistema indica correttamente che un sistema di computer obiettivo appartiene alla famiglia X. Si ipotizzi, tuttavia, che il record di scrittura di sistema indichi in modo non corretto che una unità a disco rigido (unità a disco rigido Z) appartenente soltanto a sistemi obiettivo nella famiglia X debba essere inserita sul sistema obiettivo che si trova nella famiglia Y. In tal caso, la tabella Comp_Step 114 contiene le fasi associate all'unità a disco rigido Z. La tabella Sys_Comp 112 contiene i componenti associati alla famiglia Y. Cosi, l'unione della tabella Comp_Step 114 con la tabella Sys_Comp 112 produce un insieme vuoto, dato che 1'8nità a disco rigido Z non è un componente associato alla famiglia Y (invece, esso è associato soltanto alla famiglia X). Come appare chiaro dal suddetto esempio, il progetto preferito della banca dati consente in modo vantaggioso di accertarsi che un sistema obiettivo di una certa famiglia contenga soltanto i componenti appropriati per tale famiglia.
Con riferimento di nuovo alla Figura 5, dopo che si reperiscono le fasi associate ai componenti da inserire nel sistema obiettivo, il programma di sequenziamento 204 prepara variabili di ambiente per il sistema di computer obiettivo nel modulo 560 leggendo il record di descrittore di sistema e creando un file di ambiente corrispondente ai componenti da inserire sul sistema obiettivo. Per esempio, il record di descrittore di sistema illustrato in Figura 3B viene letto e si potrebbe preparare una variabile di ambiente quale "set cpu=pentium" corrispondente al componente hardware di processore del record di descrittore di sistema.
Nel modulo 570 di Figura 5, la pluralità di fasi di installazione e test—di.-software reperite, reperite dall’unione di tre tabelle sopra descritte, vengono sequenziate nell'ordine predeterminato. Questo sequenziamento avviene secondo i rispettivi numeri di sequenza e numeri di fase per fornire una sequenza di fasi. Il sequenziamento stesso viene realizzato utilizzando uno qualsiasi tra molti algoritmi di ordinamento ben noti nella tecnica.
Nel modulo 580, il programma di sequenziamento 204 invia in uscita i file. Come citato in precedenza, i file di uscita sono scritti preferibilmente nel disco di fasi 150 (vedere Figura 1) in sei file separati nella forma di attuazione illustrata in Figura 1. Questi file comprendono (1) un file di fasi, (2) un file Setenv.bat, (3) un file Qt.txt (4), un file Et.txt (5) un file Etlast.txt e (6) un file Ft.txt. Si desidera che il file di fasi sia un file di test ASCII. In una forma di attuazione preferita, il file di fasi comprende inoltre comandi che possono essere eseguiti ad anello. Più specificamente, il file di fasi consente di ripetere i comandi per un numero definito di iterazioni o per una durata di tempo definita. Il file Setenv.bat stabilisce le variabili di ambiente sul sistema di computer obiettivo. Il file di fasi contiene le fasi da eseguire rispettivamente durante le fasi di fabbricazione di Test Rapido (Qt), Test Esteso 1 (Et), Test Esteso 2 (Etlast), e Test Finale (Ft) del sistema di computer obiettivo. Nella forma di attuazione di Figura 2, d'altra parte, gli file di uscita non sono scritti in un disco di fasi come illustrato in Figura 1. Invece, gli file di uscita risiedono sul file server 202 o sul file server 190, dove possono essere utilizzati per dirigere l'esecuzione delle fasi di installazione e test di software sul sistema di computer obiettivo 160.
Passando ora alle Figure 1 e 2, la freccia 130 illustra il fatto che le modifiche possono essere effettuate sulla banca dati 100. Per esempio, se si crea una nuova famiglia di sistemi di computer, si può modificare la banca dati 100 di conseguenza. Più specificamente, alla nuova famiglia viene assegnato un identificatore di nuova famiglia in SysID della tabella SysFamily 104 e si assegna un nome alla nuova famiglia nell'attributo Name della tabella Sys_Family 104. Si aggiunge un elenco di fasi di installazione e fasi di test di software alla tabella Sys_Step_Seq 106, queste fasi rappresentando quali fasi occorre eseguire, e in quale ordine predeterminato, sulla nova famiglia di sistemi di computer. Se la nuova famiglia di sistemi di computer condivide parecchie somiglianze con una famiglia esistente, è probabile che gli inserimenti per la famiglia esistente nella tabella Sys_Step_Seq 106 possono essere modificati per produrre inserimenti per la nuova famiglia. Se occorre creare qualche nuova fase per la nuova famiglia di sistemi di computer, queste fasi sono aggiunte alla tabella Step 102. Analogamente, se qualche nuovo componente accompagna la nuova famiglia di sistemi di computer, questi componenti vengono aggiunti alla tabella Component 108. La tabella Comp_Step 114 viene aggiornata per associare ogni componente dalla nuova famiglia di sistemi di computer alle fasi appropriate per la sua installazione e test di software. Se la nuova famiglia utilizza soltanto componenti già presenti nella banca dati, non occorre modificare questa tabella. Si aggiorna la tabella Sys_Comp 112 in modo che un elenco di componenti consentiti che possono essere inseriti sulla nuova famiglia si trovi nella banca dati. In particolare, occorrerebbe associare il SysID del nuovo sistema di computer al CompID di ogni componente consentito. Di nuovo, si potrebbe fare ciò copiando e quindi modificando un inserimento esistente di una famiglia più vecchia di sistemi di computer.
Si potrà apprezzare che nella costruzione di una banca dati secondo la forma di attuazione preferita, sono previsti certi vantaggi significativi. In particolare, il progetto modulare della banca dati consente in modo vantaggioso una facile predisposizione delle fasi di installazione e test di software per nuove famiglie di sistemi di computer. In aggiunta, le fasi di installazione e test di software e una particolare famiglia di sistemi di computer o per un particolare componente possono essere modificati in modo indipendente da altre fasi di installazione e test di software.
La Figura 7 illustra come un record di descrittore di sistema ed una sequenza di fasi possono essere aggiustate per consentire modifiche modulari in un processo di installazione e test di software in conformità con l'invenzione. Nel modulo 600, si crea un record di descrittore di sistema. Nel modulo 610, il record di descrittore di sistema viene modificato utilizzando un patch di record di descrittore di sistema. Nella forma di attuazione preferita, questo patch è modulare, consentendo di creare patch per uno specifico sistema di computer obiettivo, una particolare famiglia di sistemi di computer, o per un particolare componente. Per esempio, se un costruttore volesse sostituire una marca di unità a disco rigido con un'altra per una certa famiglia di sistemi di computer in un certo giorno, si può formare un patch che modificherebbe tutti i record di descrittore di sistema contenenti unità a disco rigido da sostituire per realizzare la sostituzione nel modulo 610. Nel modulo 620, si determina una sequenza di fasi come evidenziato in precedenza. Nel modulo 630, la sequenza di fasi viene modificata utilizzando un patch di sequenza di fasi. Nella forma di attuazione preferita, questo patch è modulare, consentendo di creare patch per uno specifico sistema di computer obiettivo, una particolare famiglia di sistemi di computer o per un particolare componente. Per esempio, se un costruttore volesse far girare una fase di test prima di un'altra per un certo componente in un certo giorno, si potrebbe formare un patch che modificherebbe tutte le sequenze di fasi contenenti le fasi il cui ordine deve essere modificato e cambiare in modo corrispondente l'ordine di esecuzione nel modulo 640.
Si sposterà ora l'attenzione all'esecuzione della sequenza di fasi sul sistema obiettivo 160. Le fasi di installazione e test di software sono eseguite sul sistema di computer obiettivo 160 utilizzando un programma che legge, interpreta ed esegue la sequenza di fasi corrispondente al sistema di computer obiettivo. Nella forma di attuazione preferita, questo programma è chiamato Runstep ed è collocato sul disco di fasi 150 nella forma di attuazione di Figura 1 e sul file serve 202 nella forma di attuazione di Figura 2.
La Figura 8 illustra una porzione di una sequenza di fasi contenuta in un file di fasi prima che siano eseguite le fasi di installazione e test di software. Come citato in precedenza, la sequenza di fasi comprende comandi per installare il software e/o per testare il sistema di computer obiettivo costruito secondo l'ordine. In aggiunta, la sequenza di fasi nelle file di fasi consente di ripetere i comandi per un numero definito di iterazioni o per una durata di tempo definita. Inoltre, il file di fasi può contenere commenti, ignorati dal programma Runstep. Nel file di fasi, si utilizzano segni 800 per separare i campi della sequenza di fasi. L'elemento 810 sono comandi per testare il sistema di computer obiettivo 160. I comandi comprendono, per esempio, un comando per testare la memoria e per testare dispositivi di una piccola interfaccia di sistema di computer (SCSI). Come si può vedere dalla figura, ogni comando può comprendere interruttori quali '-o' appropriati per il particolare ambiente di prova. L'elemento 120 è un commento che è ignorato dal programma Runstep. L'elemento 810c è un comando che viene fatto funzionare ad anello per tempo. Nella costruzione preferita, l'istruzione 'begin_time_loop' indica il punto di partenza di un anello. L'istruzione 'end_time_loop' indica il punto finale di un anello. L'istruzione 'begin_time_loop' si combina con un campo che designa la durata di tempo in cui operare le iterazioni attraverso l'anello. Qui, per esempio, il comando 810c viene eseguito per un'ora e trenta minuti. L'elemento 810d è un comando che viene eseguito ad anello secondo un certo numero di iterazioni. Nella forma di attuazione preferita, il comando ’begin_iterate_loop’ istruisce il programma Runstep ad eseguire un anello iterativo, il comando ’end_iterate„loop ' segnala la fine dei comandi di anello. Qui, i comando 810d viene eseguito tre volte.
Quando un programma Runstep esegue la sequenza di fasi, il programma Runstep colloca informazioni di marcatura temporale nel file di fasi, consentendo in modo vantaggioso una facile risoluzione dei problemi e un rintracciamento del processo di installazione e test di software.
La Figura 9 illustra una porzione della sequenza di fasi di Figura 8 dopo che le fasi sono eseguite. Come illustrato, il programma Runstep inserisce informazioni di indicazioni temporali nella sequenza di fasi. L'elemento 830 illustra quando ha avuto inizio il test di memoria, e l'elemento 832 illustra quando ha avuto termine tale test. L'elemento 834 illustra quando ha avuto inizio l'ultima iterazione del test. L'elemento 836 e 838 illustrano quando il test scsiHD ha avuto inizio ed è terminato, rispettivamente. L'elemento 840 conferma che l'anello iterativo è stato eseguito tre volte. Infine, gli elementi 842 e 844 illustrano quando l'ultima iterazione del test scsiCD ha avuto inizio ed è terminata, rispettivamente. L'inserimento di informazioni di indicazioni temporali adiacenti al comando che è stato eseguito consente in modo vantaggioso una risoluzione dei problemi e un rintracciamento efficienti del processo di installazione e test di software.
La Figura 10 illustra il flusso generale preferito del programma Rumstep. Il programma Runstep 860 viene fatto girare in un anello con un file batch Runstep 870. Il programma Runstep 860 legge e interpreta una fase in una sequenza di fasi e scrive il comando che deve essere eseguito dalla sequenza di fasi nel file batch 870. Il file batch 870 viene quindi fatto girare, eseguendo la fase sul sistema di computer obiettivo 160. Al completamento di una fase, il controllo ritorna dal file batch al programma Runstep 860 che quindi legge e interpreta la linea successiva della sequenza di fasi.
La Figura 11 illustra un flusso più dettagliato del programma Runstep. Come illustrato nel modulo 900, il programma Runstep controlla dapprima per vedere se esiste un file chiamato Re_Run.bat. Si crea un file Re_Run.bat prima che un qualsiasi comando venga eseguito da una sequenza di fasi ed esso viene tolto dopo il completamento positivo del comando. L'esistenza di Re_Run.bat indica al programma Runstep nel modulo 900 che l'ultima passata di comando non è stata completata positivamente. Così Re_Run.bat funziona come indicazione di inizio dell'esecuzione. Se esiste Re_Run.bat, ad un operatore viene chiesto nel modulo 904 se il processo di installazione per il software debba continuare o meno o se l'operatore preferisce invece eseguire la ricerca degli errori. Se un operatore sceglie di continuare, il controllo passa al modulo di esecuzione 928 dove si riesegue il file Runstep.bat. (Questa condizione è la scelta di default se non viene scelta in modo affermativo nessuna opzione). Se si sceglie l'opzione di ricerca e risoluzione di errori, si esegue la ricerca di risoluzione di errori come è ben noto nella tecnica.
Se non esiste Re_Run.bat, il programma Runstep determina che l'ultimo comando è stato completato correttamente, e il controllo viene passato al modulo 910, dove si legge una linea della sequenza di fasi, preferibilmente contenuta in file di fasi. Il programma Runstep legge la linea e determina se esiste un'indicazione temporale di inizio e di fine del modulo 912. Se esiste un'indicazione di inizio e di fine, il programma Runstep determina, nel modulo 914, se esiste soltanto un'indicazione temporale di inizio per la linea che il programma Runstep sta leggendo. Se esiste soltanto un'indicazione temporale di inizio, il programma Runstep ipotizza nel modulo 916 che una fase di installazione o test di software sia appena finita e riempie un'indicazione temporale di fine nel modulo 918. Dopo aver riempito l'indicazione temporale di fine, il controllo ritorna al modulo 900.
Se si ha più di un semplice indicazione temporale di inizio per la linea che il programma Runstep sta leggendo, il programma Runstep determina nel modulo 906 se esiste sia una indicazione temporale di inizio sia una di fine. Se è così, il programma Runstep ipotizza nel modulo 908 che la fase sia stata eseguita e il controllo ritorna nel modulo 900. Se il programma Runstep non incontra alcuna indicazione temporale di inizio o di fine nel modulo 912, il programma Runstep riempie l’indicazione temporale di inizio nel modulo 920 e si prepara a far girare la fase sulla linea della sequenza di fasi che il programma Runstep sta leggendo.
Nel modulo 922, il programma Runstep determina se il comando da far girare è memorizzato su una unità locale (il file di fasi controlla quale unità nel sistema è l'unità locale). L'unità locale può essere, ad esempio, il disco di fasi, un'unità a disco rigido del sistema obiettivo, un'unità RAM del sistema obiettivo, o un'unità di rete. Se il comando non è posto sull'unità locale, il programma Runstep ipotizza che il test da far girare sia contenuto su un file server da qualche parte su una rete. Il programma Runstep determina nel modulo 932 se il programma Runstep è già connesso a tale rete. Se non così, il programma Runstep, nel modulo 936, incorpora un comando nel Runstep.bat per il collegamento alla rete. Pertanto si effettua una connessione di rete prima che Runstep.bat esegua la fase sul sistema di computer obiettivo 160 sulla connessione di rete 180.
A seguito del modulo 936, il controllo viene passato al modulo 926. Se il programma Runstep è già collegato nella rete, il programma Runstep, durante il modulo 934, toglie i comandi da Runstep.bat per il collegamento alla rete, dato che una fase di collegamento aggiuntiva non è necessaria se esiste già una connessione di rete. Il controllo viene quindi passato al modulo 926. Se succede che la fase da far girare si trova sul disco di fase 150, non occorre che il programma Runstep si colleghi nella rete. Così, nel modulo 924, il programma Runstep toglie i comandi da Runstep.bat per il collegamento alla rete. Il controllo viene quindi passato al modulo 926. Nel modulo 926, il programma Runstep incorpora il comando appropriato da far girare in Runstep.bat e in Re_run.bat. Il comando così incorporato viene preso dalla sequenza di fasi, contenuta preferibilmente nel file di fasi. Nel modulo 928, la fase viene eseguita facendo girare Runstep.bat e, se viene eseguito positivamente, si cancella Re_run.bat. Se la fase non viene eseguita positivamente, il file Re_Run.bat non viene cancellato e il controllo si trasferisce allo stato di guasto 929. Il controllo viene quindi restituito al modulo 900 cosicché si possa leggere un’altra linea dalla sequenza di fasi. Questo processo continua fino a quando tutte le fasi di installazione e test di software vengono completate.
All'esecuzione della sequenza di fasi, il sistema obiettivo viene testato e si installa il software. Nella forma di attuazione di Figura 1, si può far girare un insieme selezionato di test dal disco di fasi 150 direttamente, ma la maggior parte dei test vengono fatti girare dal file server 190 sulla connessione di rete 180. L'esecuzione di test dal file server 190 elimina vantaggiosamente le limitazioni imposte dalle capacità di memorizzazione dei dischi floppy quali il disco di fasi 150.
Nella forma di attuazione di Figura 2, le fasi vengono eseguite dal file server 190 sulla connessione di rete 180. Un disco floppy, qui il disco di boot 220, è necessario soltanto per inizializzare il sistema di computer obiettivo 160. Tale sistema semplifica vantaggiosamente il processo di installazione e test di software.
Passando ancora una volta alle Figure 1 e 2, la freccia 210 indica che i risultati dall'installazione dal test di software possono essere registrati di nuovo sul file server 190 o sul file server 202. I risultati comprendono preferibilmente il fatto se tutte le fasi sono state completate positivamente e quali tipi di guasti (se esistono) si sono incontrati. La registrazione dei risultati potrebbe comprendere il semplice salvataggio o scrittura di una versione modificata del file di fasi a seguito dell'esecuzione della sequenza di fasi, dato che come discusso in precedenza il file di fasi viene marcato in modo temporale dal programma Runstep. Tale sistema consente vantaggiosamente capacità di ricerca e risoluzione degli errori migliori durante la fabbricazione dei sistemi di computer.
Mentre particolari forme di attuazione della presente invenzione sono state illustrate e descritte, risulterà ovvio agli esperti nel ramo che si possono effettuare cambiamenti e modifiche senza discostarsi dalla presente invenzione nei suoi aspetti più ampi e, pertanto, le rivendicazioni allegate servono a racchiudere dentro al loro campo di protezione tutti questi cambiamenti e modifiche come essi ricadono nell'ambito dello spirito e del campo di protezione veri della presente invenzione.

Claims (1)

  1. RIVENDICAZIONI 1. - Procedimento per installare software su un sistema di computer, il procedimento comprendendo le fasi di: leggere una pluralità di descrittori di componenti da un file leggibile da computer, almeno un descrittore di componenti descrivendo un rispettivo componente del sistema di computer; leggere una pluralità di fasi da una banca dati, una fase essendo associata ad un rispettivo descrittore di componenti e comprendente un rispettivo numero di sequenza; e sequenziare una pluralità di fasi in un predeterminato ordine secondo i numeri di sequenza per fornire una sequenza di fasi, la sequenza di fasi comprendendo almeno un comando per installare software sul sistema di computer. 2. - Procedimento secondo la rivendicazione 1, in cui almeno un rispettivo componente è un componente hardware. 3. - Procedimento secondo la rivendicazione 1, in cui almeno un rispettivo componente è un componente software. 4. - Procedimento secondo la rivendicazione 1, in cui almeno una della pluralità di fasi è una fase di installazione di software. 5. - Procedimento secondo la rivendicazione 1, comprendente inoltre la creazione di una pluralità di oggetti derivati corrispondenti alla pluralità di descrittori di componenti. 6. - Procedimento secondo la rivendicazione 1, in cui il predeterminato ordine è secondo un ordinamento sequenziale dei numeri di sequenza. 7. - Procedimento secondo la rivendicazione 1, in cui la pluralità di fasi comprendono inoltre rispettivi numeri di fase e in cui il sequenziamento della pluralità di fasi in un predeterminato ordine è inoltre secondo i numeri di fasi. 8. - Procedimento secondo la rivendicazione 1, comprendente inoltre la preparazione di variabili di ambiente corrispondenti alla pluralità di componenti . 9. - Procedimento secondo la rivendicazione 1, comprendente inoltre la scrittura della sequenza di fasi in un supporto di memorizzazione non volatile configurato in modo da accompagnare il sistema di computer durante la fabbricazione. 10. - Procedimento secondo la rivendicazione 1 comprendente inoltre la fabbricazione del sistema di computer avente la pluralità di componenti. 11. - Procedimento per sequenziare l'installazione di software per un sistema di computer obiettivo, il procedimento comprendendo le fasi di: ricevere un ordine per il sistema di computer obiettivo, il sistema di computer obiettivo che deve comprendere una pluralità di componenti; convertire l'ordine in un file leggibile da computer, il file essendo descrittivo della pluralità di componenti; leggere il file; reperire una pluralità di fasi da una banca dati secondo il file, una fase essendo associata ad un rispettivo componente e comprendendo un rispettivo numero di sequenza e un rispettivo numero di fase; sequenziare la pluralità di fasi in un predeterminato ordine secondo i rispettivi numeri di sequenza e numeri di fase per fornire una sequenza di fasi, la sequenza di fasi comprendendo comandi per installare software sul sistema di computer obiettivo durante le fasi di fabbricazione, le fasi di fabbricazione corrispondendo a rispettivi numeri di fase. 12. - Procedimento secondo la rivendicazione 11, in cui si crea una condizione di errore se l'insieme intermedio è vuoto. 13. - Procedimento secondo la rivendicazione 11, comprendente inoltre la preparazione di variabili di ambiente corrispondenti alla pluralità di componenti. 14. - Procedimento secondo la rivendicazione 11, in cui la sequenza di fasi è atta a fornire comandi ripetibili per un periodo di tempo definito. 15. - Procedimento secondo la rivendicazione 11, in cui la sequenza di fasi è atta a fornire comandi ripetibili per un numero di iterazioni definito. 16. - Procedimento secondo la rivendicazione 11, comprendente inoltre la scrittura della sequenza di fasi in un dispositivo di memorizzazione non volatile configurato in modo da accompagnare il sistema di computer durante la fabbricazione. 17. - Procedimento per sequenziare l'installazione di software per un sistema di computer obiettivo appartenente ad una certa famiglia, il procedimento comprendendo le fasi di: riceveré un ordine per il sistema di computer obiettivo, il sistema di computer obiettivo che deve comprendere una certa pluralità di componenti comprendente i componenti hardware e componenti software : convertire l'ordine in un file leggibile da computer, il file essendo descrittivo della certa pluralità di componenti; leggere il file; unire una prima tabella di banca dati contenente tutti i componenti appartenenti ad una certa famiglia ad un seconda tabella di banca dati contenente tutte le fasi di installazione di software da eseguire sulla certa pluralità ,di componenti, in cui l'unione produce un insieme intermedio; unire l'insieme intermedio con una terza tabella di banca dati contenente tutte le fasi di installazione di software da eseguire sulla certa famiglia, in cui l'unione produce una pluralità di fasi, ogni fase essendo associata ad un rispettivo componente da inserire sul sistema di computer obiettivo e ogni fase comprendendo un rispettivo numero di sequenza e numero di fase; reperire la pluralità di fasi; e sequenziare la pluralità di fasi · in un predeterminato ordine secondo i rispettivi numeri di sequenza e numeri di fase per fornire una sequenza di fasi, la sequenza di fasi comprendendo comandi per installare software sul sistema di computer obiettivo durante le fasi di fabbricazione, le fasi di fabbricazione corrispondendo a rispettivi numeri di fase. 18. - Procedimento secondo la rivendicazione 17, comprendente inoltre la preparazione di variabile di ambiente corrispondenti a una certa pluralità di componenti. 19. - Procedimento secondo la rivendicazione 17, in cui la sequenza di fasi è atta a fornire comandi ripetibili per un periodo di tempo definito. 20. - Procedimento secondo la rivendicazione 17, in cui la sequenza di fasi è atta a fornire comandi ripetibili per un numero di iterazioni definito. 21. - Procedimento secondo la rivendicazione 17, comprendente inoltre scrittura della sequenza di fasi in un file di testo leggibile da computer. 22. - Procedimento per testare un sistema di computer, il procedimento comprendendo le fasi di: leggere una pluralità di descrittori di componenti da un file leggibile da computer, almeno un descrittore di componenti descrivendo un rispettivo componente del sistema di computer; leggere una pluralità di fasi da una banca dati, una fase essendo associata ad un rispettivo descrittore di componenti e comprendendo un rispettivo numero di sequenza; e sequenziare la pluralità di fasi in un predeterminato ordine secondo i numeri di sequenza per fornire una sequenza di fasi, la sequenza di fasi comprendendo almeno un comando per testare il sistema di computer. 23. - Procedimento secondo la rivendicazione 22, in cui almeno un rispettivo componente è un componente hardware. 24. - Procedimento secondo la rivendicazione 22, in cui almeno un rispettivo componente è un componente software. 25. - Procedimento secondo la rivendicazione 22, in cui almeno una delle pluralità di fasi è una fase di test. 26. - Procedimento secondo la rivendicazione 22, comprendente inoltre la creazione di una pluralità di oggetti derivati corrispondenti alla pluralità di descrittori di componenti. 27. - Procedimento secondo la rivendicazione 22, in cui il predeterminato ordine è secondo un ordinamento sequenziale dei numeri di sequenza. 28. - Procedimento secondo la rivendicazione 22, in cui la pluralità di fasi comprendono inoltre rispettivi numeri di fase e in cui il sequenziamento della pluralità di fasi in un predeterminato ordine è inoltre secondo i numeri di fase . 29. - Procedimento seconda la rivendicazione 22, comprendente inoltre la preparazione di variabili di ambiente corrispondenti alla pluralità di componenti. 30. - Procedimento secondo la rivendicazione 22, comprendente inoltre la scrittura della sequenza di fasi in un supporto di memorizzazione non volatile configurato in modo da accompagnare il sistema di computer durante la fabbricazione. 31. - Procedimento secondo la rivendicazione 22, comprendente inoltre il test del sistema di computer avente la pluralità di componenti. 32. - Sistema di computer comprendente: un processore; un componente accoppiato al processore; e una memoria accoppiata al processore, la memoria comprendendo software installato su di essa, il software essendo installato tramite le fasi di: leggere una pluralità di descrittori di componenti da un file leggibile da computer, almeno un descrittore di componenti descrivendo un rispettivo componente del sistema di computer; leggere una pluralità di fasi da una banca dati, una fase essendo associata ad un rispettivo descrittore di componenti e comprendente un rispettivo numero di sequenza; e sequenziare la pluralità di fasi in un predeterminato ordine secondo i numeri di sequenza per fornire una sequenza di fasi, la sequenza di fasi comprendendo almeno un comando per installare software sul sistema di computer. 33. - Sistema di computer secondo la rivendicazione 32, in cui almeno un rispettivo componente è un componente hardware. 34. - Sistema di computer secondo la rivendicazione 32, in cui almeno un rispettivo componente è un componente software. 35. - Sistema di computer secondo la rivendicazione 32, in cui almeno una della pluralità di fasi è una fase di installazione di software . 36. - Sistema di computer secondo la rivendicazione 32, comprendente inoltre la creazione di una pluralità di oggetti derivati corrispondenti alla pluralità di descrittori di componenti . 37. - Sistema di computer secondo la rivendicazione 32, in cui il predeterminato ordine è secondo un ordinamento sequenziale dei numeri di sequenza. 38.- Sistema di computer secondo la rivendicazione 32, in cui la pluralità di fasi comprendono inoltre rispettivi numeri di fase e in cui il sequenziamento della pluralità di fasi in un predeterminato ordine è inoltre secondo i numeri di fase. 39. - Sistema di computer secondo la rivendicazione 32, comprendente inoltre la preparazione di variabili di ambiente corrispondenti alla pluralità di componenti. 40. - Sistema di computer secondo la rivendicazione 32, comprendente inoltre la scrittura della sequenza di fasi in un supporto di memorizzazione non volatile configurato in modo da accompagnare il sistema di computer durante la fabbricazione . 41. - Sistema di computer secondo la rivendicazione 32, comprendente inoltre una pluralità di componenti. 42. - Procedimento per testare un sistema di computer obiettivo, il procedimento comprendendo le fasi di: ricevere un ordine per il sistema di computer obiettivo, il sistema di computer obiettivo che deve comprendere una pluralità di componenti; convertire l'ordine in un file leggibile da computer, il file essendo descrittivo della pluralità di componenti; leggere il file; reperire una pluralità di fasi da una banca dati secondo il file, una fase essendo associata ad un rispettivo componente e comprendendo un rispettivo numero di sequenza e numero di fase; sequenziare la pluralità di fasi in un predeterminato ordine secondo i rispettivi numeri di sequenza e numeri di fasi per fornire una sequenza di fasi, la sequenza di fasi comprendendo comandi per testare software sul sistema di computer obiettivo durante le fasi di fabbricazione, le fasi di fabbricazione corrispondendo a rispettivi numeri di fase. 43. - Procedimento secondo la rivendicazione 42, in cui si crea una condizione di errore se l'insieme intermedio è vuoto. 44. - Procedimento secondo la rivendicazione 42, comprendente inoltre la preparazione di variabili di ambiente corrispondenti alla pluralità di componenti. 45. - Procedimento secondo la rivendicazione 42, in cui la sequenza di fasi è atta a fornire comandi ripetibili per un periodo di tempo definito . 46. - Procedimento secondo la rivendicazione 42, in cui la sequenza di fasi è atta a fornire comandi ripetibili per un numero di iterazioni definito. 47. - Procedimento secondo la rivendicazione 42, comprendente inoltre la scrittura della sequenza di fasi in un dispositivo di memorizzazione e non volatile configurato in modo da accompagnare il sistema di computer durante la fabbricazione. 48. - Procedimento per produrre un sistema di computer pronto all'impiego secondo una specifica combinazione su misura di componenti hardware e/o software, detto procedimento comprendendo (a) controllare automaticamente la compatibilità dei componenti selezionati (b) reperire automaticamente fasi di installazione e fasi di prova per almeno uno dei componenti (c) determinare automaticamente una sequenza di dette fasi di installazione e fasi di prova, (d) assemblare in modo automatizzato gli specifici componenti selezionati su misura del sistema di computer inclusa l'effettuazione delle fasi di installazione e di prova nella sequenza determinata. 49. - Procedimento secondo la rivendicazione 48, comprendente una o più delle fasi di una delle rivendicazioni precedenti. 50. - Procedimento e sistema sostanzialmente come descritto ed illustrato e per gli scopi specificati.
IT1998TO000722A 1997-08-29 1998-08-21 Procedimento per l'installazione e/o la verifica del software per unsistema di computer prodotto su ordinazione, e sistema di computer per IT1303246B1 (it)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/919,959 US5995757A (en) 1997-08-29 1997-08-29 Software installation and testing for a build-to order computer system

Publications (3)

Publication Number Publication Date
ITTO980722A0 ITTO980722A0 (it) 1998-08-21
ITTO980722A1 true ITTO980722A1 (it) 2000-02-21
IT1303246B1 IT1303246B1 (it) 2000-11-02

Family

ID=25442940

Family Applications (1)

Application Number Title Priority Date Filing Date
IT1998TO000722A IT1303246B1 (it) 1997-08-29 1998-08-21 Procedimento per l'installazione e/o la verifica del software per unsistema di computer prodotto su ordinazione, e sistema di computer per

Country Status (13)

Country Link
US (1) US5995757A (it)
JP (1) JP4531875B2 (it)
KR (1) KR100394195B1 (it)
CN (1) CN1170222C (it)
AU (1) AU756274B2 (it)
BR (1) BR9802217A (it)
DE (1) DE19836328C2 (it)
FR (1) FR2767944B1 (it)
GB (1) GB2329052B (it)
IT (1) IT1303246B1 (it)
MY (1) MY115597A (it)
SG (1) SG78308A1 (it)
TW (1) TW380240B (it)

Families Citing this family (131)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6038597A (en) 1998-01-20 2000-03-14 Dell U.S.A., L.P. Method and apparatus for providing and accessing data at an internet site
US6182275B1 (en) * 1998-01-26 2001-01-30 Dell Usa, L.P. Generation of a compatible order for 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
US6615406B1 (en) 1998-04-08 2003-09-02 Dell Usa, L.P. Apparatus for use in the manufacture of a computer system
US6735625B1 (en) 1998-05-29 2004-05-11 Cisco Technology, Inc. System and method for automatically determining whether a product is compatible with a physical device in a network
US6690984B1 (en) 1998-06-04 2004-02-10 Gateway, Inc. System and method for assembly integration
US6795814B1 (en) * 1998-06-04 2004-09-21 Gateway, Inc. System and method for CMOS integration
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
US6859924B1 (en) 1998-06-04 2005-02-22 Gateway, Inc. System restore apparatus and method employing virtual restore disk
US7062645B2 (en) * 1998-06-04 2006-06-13 Gateway Inc. Build to order personal computer manufacturing fast boot method
US6775829B1 (en) 1998-06-04 2004-08-10 Gateway, Inc. Method for configuring software for a build to order system
US6370686B1 (en) * 1998-09-21 2002-04-09 Microsoft Corporation Method for categorizing and installing selected software components
US6282594B1 (en) * 1998-10-15 2001-08-28 Dell Usa, L.P. Pallet, system and method for use in testing and/or installing software onto a personal computer system unit
US6347371B1 (en) * 1999-01-25 2002-02-12 Dell Usa, L.P. System and method for initiating operation of a 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
US6928644B1 (en) 1999-04-13 2005-08-09 Gateway Inc. Method for configuring software for a build to order system
US6421671B1 (en) 1999-04-30 2002-07-16 Dell Products L.P. Method and system for automated distribution of software
DE19922767A1 (de) * 1999-05-18 2000-12-07 Dell Usa Lp Verfahren zum Installieren von Software und/oder zum Testen eines Computersystems
DE19922768A1 (de) * 1999-05-18 2000-12-07 Dell Usa Lp Verfahren zum Installieren von Software und/oder zum Testen eines Computersystems
DE19922766A1 (de) * 1999-05-18 2000-12-07 Dell Usa Lp Vorrichtung zur Verwendung bei der Herstellung eines Computersystems
US6385766B1 (en) * 1999-05-20 2002-05-07 Dell Usa L.P. Method and apparatus for windows-based installation for installing software on build-to-order computer systems
US7111317B1 (en) * 2000-03-24 2006-09-19 Eastman Kodak Company Method for providing image goods and/or services to a customer
US6836617B1 (en) 2000-03-24 2004-12-28 Eastman Kodak Company Purchasing configured photographic film products
US7587337B1 (en) 2000-03-24 2009-09-08 Eastman Kodak Company Leasing configured camera system
US6937997B1 (en) 1999-06-02 2005-08-30 Eastman Kodak Company Configuring and purchasing imaging devices
US8046270B2 (en) * 2000-05-19 2011-10-25 Eastman Kodak Company System and method for providing image products and/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
US6704824B1 (en) * 1999-07-27 2004-03-09 Inline Connection Corporation Universal serial bus adapter with automatic installation
US6560726B1 (en) 1999-08-19 2003-05-06 Dell Usa, L.P. Method and system for automated technical support for computers
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
US6606716B1 (en) 1999-10-06 2003-08-12 Dell Usa, L.P. Method and system for automated technical support for computers
US6535915B1 (en) * 1999-09-24 2003-03-18 Dell Usa, L.P. Automatic reduction of data noise in installation packages for a computer system
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
US6574615B1 (en) 1999-10-06 2003-06-03 Dell Usa, L.P. System and method for monitoring support activity
US6556431B1 (en) 1999-10-06 2003-04-29 Dell Usa, L.P. System and method for converting alternating current into direct current
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
US6564220B1 (en) 1999-10-06 2003-05-13 Dell Usa, L.P. System and method for monitoring support activity
US6317316B1 (en) 1999-10-06 2001-11-13 Dell Usa, L.P. Method and system for integrated personal computer components
US6563698B1 (en) 1999-10-06 2003-05-13 Dell Usa, L.P. System and method for providing a computer system with a detachable component
US7424444B1 (en) 1999-12-20 2008-09-09 Dell Usa, L.P. Apparatus and method for configuring computers
GB2357600A (en) * 1999-12-23 2001-06-27 Ibm Hardware dependent software installation
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
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
US6882982B2 (en) 2000-02-04 2005-04-19 Medtronic, Inc. Responsive manufacturing and inventory control
US6772192B1 (en) * 2000-02-29 2004-08-03 Hewlett-Packard Development Company, L.P. Software download and distribution via image building and multicast
GB2360370B (en) * 2000-03-14 2002-04-24 Inventec Corp Software driver installation method
US7231359B2 (en) * 2000-03-24 2007-06-12 Eastman Kodak Company Configuring image storage devices to enable imaging services
US6691253B1 (en) 2000-05-10 2004-02-10 Dell Usa L.P. System and method for sequencing and performing very high speed software downloads concurrent with system testing in an automated production environment
US7043715B1 (en) * 2000-06-06 2006-05-09 Emc Corporation Method and apparatus for customizing software
US6658652B1 (en) 2000-06-08 2003-12-02 International Business Machines Corporation Method and system for shadow heap memory leak detection and other heap analysis in an object-oriented environment during real-time trace processing
US6675055B1 (en) * 2000-06-16 2004-01-06 Mold Masters Ltd. Method and apparatus for an automated injection molding configuring and manufacturing system
US6681391B1 (en) * 2000-06-21 2004-01-20 Microsoft Corporation Method and system for installing software on a computer system
US7389497B1 (en) 2000-07-06 2008-06-17 International Business Machines Corporation Method and system for tracing profiling information using per thread metric variables with reused kernel threads
US6904594B1 (en) 2000-07-06 2005-06-07 International Business Machines Corporation Method and system for apportioning changes in metric variables in an symmetric multiprocessor (SMP) environment
US6735758B1 (en) 2000-07-06 2004-05-11 International Business Machines Corporation Method and system for SMP profiling using synchronized or nonsynchronized metric variables with support across multiple systems
DE60021066T2 (de) * 2000-07-07 2006-05-18 Sun Microsystems, Inc., Santa Clara Prüfung eines Softwarepakets
US6742178B1 (en) 2000-07-20 2004-05-25 International Business Machines Corporation System and method for instrumenting application class files with correlation information to the instrumentation
US6662359B1 (en) 2000-07-20 2003-12-09 International Business Machines Corporation System and method for injecting hooks into Java classes to handle exception and finalization processing
US7146347B1 (en) * 2000-08-03 2006-12-05 National Instruments Corporation System and method for automatically creating a prototype to perform a process
US6785805B1 (en) 2000-08-08 2004-08-31 Vi Technology, Inc. Network-based configuration method for systems integration in test, measurement, and automation environments
US6938243B1 (en) * 2000-09-22 2005-08-30 Dell Products L.P. Diagnostic architecture for use with an interface between an operating system and platform firmware
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
US6948169B1 (en) 2000-11-16 2005-09-20 Dell Products L.P. Web-based factory manufacturing of computers in a build-to-order manufacturing environment
US20020154114A1 (en) * 2000-11-30 2002-10-24 Christensen Thomas Kragh Method and system for customising build-to-order products
JP2002236590A (ja) * 2000-12-08 2002-08-23 Seiko Epson Corp ソフトウェアのインストール方法
US6694206B2 (en) * 2001-01-25 2004-02-17 Dell Products L.P. Method and system for manufacturing and servicing a computing product with the assistance of a wireless communication subsystem attached to a peripheral port
US6567714B2 (en) 2001-01-26 2003-05-20 Dell Products L.P. Method and system for manufacturing a computer system with the assistance of a wireless information network
US6611727B2 (en) 2001-03-05 2003-08-26 Dell Products L.P. Method and system for simulating production within a manufacturing environment
US6529797B2 (en) 2001-03-05 2003-03-04 Dell Products L.P. System and method for automatically releasing collections of goods for shipment
US6634506B2 (en) 2001-03-05 2003-10-21 Dell Products L.P. Reusable container management system and method
US6615092B2 (en) 2001-03-05 2003-09-02 Dell Products L.P. Method, system and facility for controlling resource allocation within a manufacturing environment
US6560509B2 (en) 2001-03-05 2003-05-06 Dell Products L.P. System and method for automated management of a distribution facility
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
US7194323B2 (en) * 2001-03-22 2007-03-20 International Business Machines Corporation Method and system for object oriented approach and data model for configure-to-order manufacturing system
US7146612B2 (en) * 2001-05-18 2006-12-05 Dell Products L.P. Method and system for receiving a software image from a customer for installation into a computer system
US20030005426A1 (en) * 2001-06-08 2003-01-02 Scholtens Dale A. Methods and apparatus for upgrading software without affecting system service
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
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
US20030055932A1 (en) * 2001-09-19 2003-03-20 Dell Products L.P. System and method for configuring a storage area network
US20030109509A1 (en) * 2001-10-11 2003-06-12 Alcon, Inc. Methods for treating dry eye
US7069541B2 (en) * 2002-03-01 2006-06-27 Bellsouth Intellectual Property Corporation System and method for a web-based application development and deployment tracking tool
US6813531B2 (en) 2002-09-20 2004-11-02 International Business Machines Corporation Method, system, and article of manufacture for product configuration
US7095908B2 (en) * 2002-11-12 2006-08-22 Dell Products L.P. Method and system for information handling system custom image manufacture
US20040148223A1 (en) * 2003-01-28 2004-07-29 Junaid Ghaffar Targeted direct marketing system and process for distributing coupons to information handling systems
US20040210676A1 (en) * 2003-04-19 2004-10-21 Noto Gary Patrick System for Calculating minimum images to service customer orders
US7360211B2 (en) * 2003-06-30 2008-04-15 Dell Products L.P. System for automated generation of config to order software stacks
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
EP1669869B1 (en) * 2003-09-30 2014-03-12 Lenovo (Singapore) Pte. Ltd. Management device for managing information processing device, managing system, program, and recording medium
US7334226B2 (en) * 2003-10-30 2008-02-19 International Business Machines Corporation Autonomic auto-configuration using prior installation configuration relationships
CN100382075C (zh) * 2003-12-30 2008-04-16 英业达股份有限公司 基于硬件级的测试脚本自动生成***及方法
CN100365588C (zh) * 2004-03-16 2008-01-30 鸿富锦精密工业(深圳)有限公司 计算机硬件快速诊断测试***及方法
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
TW200535602A (en) * 2004-04-16 2005-11-01 Hon Hai Prec Ind Co Ltd A system and method for testing motherboards automatically
US20050267815A1 (en) * 2004-06-01 2005-12-01 Howell James A Jr Customized support experiences based on POS choices
US7975265B2 (en) * 2004-07-08 2011-07-05 At&T Intellectual Property I, L.P. System and method for providing installation support to a user
US20060074761A1 (en) * 2004-09-21 2006-04-06 Dandekar Shree A Tracking after point of sale (APOS) related sales for peripherals
US8972545B2 (en) 2004-11-02 2015-03-03 Dell Products L.P. System and method for information handling system image network communication
US20060122894A1 (en) * 2004-12-03 2006-06-08 Mcgary Jon User configured order status updates
US20060193462A1 (en) * 2005-02-28 2006-08-31 Gregg Hansen System for optimizing configurable information handling systems
US8949388B2 (en) 2005-04-25 2015-02-03 Dell Products L.P. System and method for information handling system image network communication
US20060291645A1 (en) * 2005-06-08 2006-12-28 Vasu Mekala Needs based offer
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
KR100755697B1 (ko) * 2005-11-09 2007-09-05 삼성전자주식회사 소프트웨어 설치 방법, 장치, 및 시스템
US20070143124A1 (en) * 2005-12-15 2007-06-21 International Business Machines Corporation Extensible object data enabled manufacturing
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
US7931191B2 (en) * 2006-01-18 2011-04-26 Dell Products L.P. Post factory dynamic application selection
US7308330B2 (en) * 2006-03-31 2007-12-11 Dell Products L.P. Dynamic order swapping in BTO environment
CN101098200B (zh) * 2006-06-27 2014-02-19 中兴通讯股份有限公司 一种实现可定制测试流程的方法
US20080040127A1 (en) * 2006-08-14 2008-02-14 Carol Jean Williams Customer Customized Resource Media
US20080059321A1 (en) * 2006-08-31 2008-03-06 Zucker Brian T Online Sales Method for Information Handling Systems and Related Peripherals
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
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
US20090158266A1 (en) * 2007-12-12 2009-06-18 International Business Machines Corporation Deployment tool for increasing efficiency in a production computer system
US8312448B2 (en) * 2008-06-24 2012-11-13 Sony Corporation Configuration to order software deployment and management
US8086834B2 (en) * 2009-04-16 2011-12-27 Dell Products L.P. System and method for populating a dedicated system service repository for an information handling system
US8667464B2 (en) * 2010-03-19 2014-03-04 Honeywell Technologies Sarl Company advanced programming interface
CN102214135A (zh) * 2010-04-02 2011-10-12 和硕联合科技股份有限公司 监控软件安装过程的方法、装置及其应用的软件安装***
CN110069402A (zh) * 2019-03-21 2019-07-30 中国平安财产保险股份有限公司 测试软件的方法、装置、计算机设备和存储介质

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6177913A (ja) * 1984-09-26 1986-04-21 Nec Corp 自動システムジエネレ−シヨン方式
JPS62285131A (ja) * 1986-06-03 1987-12-11 Nec Corp プログラムフアイル自動メンテナンス方式
US4916637A (en) * 1987-11-18 1990-04-10 International Business Machines Corporation Customized instruction generator
JPH02113332A (ja) * 1988-10-24 1990-04-25 Toshiba Corp クロスソフトウェア開発・保守システム
JPH0820975B2 (ja) * 1990-03-29 1996-03-04 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータシステムおよびコンピュータ上で実行されるトレース方法
JPH0792744B2 (ja) * 1990-08-20 1995-10-09 インターナショナル・ビジネス・マシーンズ・コーポレイション 多重レベル適用業務ソフトウェアをデータ処理装置にインストールする方法。
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
JPH05165610A (ja) * 1991-12-13 1993-07-02 Hitachi Ltd ソフトウェア開発環境の生成および保守方法
US5715463A (en) * 1992-03-31 1998-02-03 International Business Machines Corporation Installation utility for device drivers and utility programs
JPH0667893A (ja) * 1992-08-18 1994-03-11 West Japan Railway Co 端末ソフトウェア・ユーザインストール確認システム
EP0592079A2 (en) * 1992-09-20 1994-04-13 Sun Microsystems, Inc. Automated software installation and operating environment configuration on a computer system
US5432941A (en) * 1992-10-13 1995-07-11 Microsoft Corporation Method and system for dynamically configuring a software system using configuration groups
US5463766A (en) * 1993-03-22 1995-10-31 Dell Usa, L.P. System and method for loading diagnostics routines from disk
JPH06332674A (ja) * 1993-05-24 1994-12-02 Hitachi Ltd プログラムの自動インストールシステム
BR9402027A (pt) * 1993-05-28 1994-12-13 Xerox Corp Processo para gerenciar uma configuração e assegurar compatibilidade entre componentes num sistema de computação, e, processo para eliminar incompatibilidades entre software residente e software de migração num sistema de computador automatizado
JPH07234780A (ja) * 1994-02-24 1995-09-05 Fuji Xerox Co Ltd ソフトウェアのインストールシステム
JP3207999B2 (ja) * 1994-03-14 2001-09-10 富士通株式会社 情報処理装置の試験システム
JP3386232B2 (ja) * 1994-07-15 2003-03-17 富士通株式会社 テスト計算機システム
JPH0887460A (ja) * 1994-09-19 1996-04-02 Seiko Epson Corp インストールシステム
JPH0895826A (ja) * 1994-09-21 1996-04-12 Hitachi Software Eng Co Ltd プログラムテスト方法
US5842024A (en) * 1995-02-27 1998-11-24 Ast Research, Inc. Method of software installation
US5742829A (en) * 1995-03-10 1998-04-21 Microsoft Corporation Automatic software installation on heterogeneous networked client computer systems
US5745568A (en) * 1995-09-15 1998-04-28 Dell Usa, L.P. Method of securing CD-ROM data for retrieval by one machine
GB2309104B (en) * 1996-01-11 2000-06-07 Ibm Preloading software onto a computer system
US5835777A (en) * 1996-03-20 1998-11-10 Hewlett-Packard Company Method of automatically generating a software installation package
US5828887A (en) * 1996-05-23 1998-10-27 Electronic Data Systems Corporation Network based program loader system and method of operation
US5826090A (en) * 1997-03-17 1998-10-20 International Business Machines Corporation Loadable hardware support
JPH1153175A (ja) * 1997-07-30 1999-02-26 Canon Inc データ処理装置およびデータ処理装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体

Also Published As

Publication number Publication date
BR9802217A (pt) 1999-10-19
DE19836328A1 (de) 1999-03-04
KR100394195B1 (ko) 2003-12-31
SG78308A1 (en) 2001-02-20
AU8088998A (en) 1999-03-11
CN1230720A (zh) 1999-10-06
GB2329052B (en) 2003-02-19
JPH1185558A (ja) 1999-03-30
KR19990023212A (ko) 1999-03-25
AU756274B2 (en) 2003-01-09
GB9816129D0 (en) 1998-09-23
MY115597A (en) 2003-07-31
IT1303246B1 (it) 2000-11-02
US5995757A (en) 1999-11-30
FR2767944B1 (fr) 2005-01-07
DE19836328C2 (de) 2003-05-22
TW380240B (en) 2000-01-21
JP4531875B2 (ja) 2010-08-25
ITTO980722A0 (it) 1998-08-21
IE980486A1 (en) 1999-03-10
CN1170222C (zh) 2004-10-06
GB2329052A (en) 1999-03-10
FR2767944A1 (fr) 1999-03-05

Similar Documents

Publication Publication Date Title
ITTO980722A1 (it) Procedimento per l&#39;installazione e/o la verifica del software per un sistema di computer prodotto su ordinazione, e sistema di computer per
ITTO980720A1 (it) Procedimento per l&#39;installazione e la verifica del software per un si- stema di computer prodotto su ordinazione.
ITTO980721A1 (it) Apparecchio per facilitare l&#39;installazione e la verifica del software per un sistema di computer prodotto su ordinazione.
US8296734B2 (en) System and method for testing a software product
US5812436A (en) Method and apparatus for testing and analyzing the conformance of a proposed set of requirements for a proposed network management application
CN106126204B (zh) 一种基于模块化设计的信息***迭代式扩展开发方法
US7080357B2 (en) Software package verification
US20110202901A1 (en) Automated software testing and validation system
EP0632371A1 (en) Process for configuration management
US20050137844A1 (en) Method for generating a language-independent regression test script
CN113050953A (zh) 基于注释生成代码的方法、装置及存储介质
CN103678116A (zh) 用于促进自动化程序测试的方法和***
US20050114836A1 (en) Block box testing in multi-tier application environments
CN112256554B (zh) 一种基于场景测试用例进行测试的方法及设备
IE83291B1 (en) Software installation and testing for a build-to-order computer system
ITTO20000409A1 (it) Procedimento per l&#39;installazione di software e/o per la prova di un sistema di elaboratore.
ITTO20000382A1 (it) Apparecchio destinato all&#39;impiego nella fabbricazione di un sistema di elaboratore.
IE83293B1 (en) Apparatus for installing and/or testing software
IE83292B1 (en) Software installation and testing for a build-to-order computer system
IE19980485A1 (en) Apparatus for installing and/or testing software
KR20010002573A (ko) 컴퓨터 시스템으로의 소프트웨어 설치 및/또는 테스팅 방법

Legal Events

Date Code Title Description
0001 Granted