ITTO980720A1 - Procedimento per l'installazione e la verifica del software per un si- stema di computer prodotto su ordinazione. - Google Patents
Procedimento per l'installazione e la verifica del software per un si- stema di computer prodotto su ordinazione. Download PDFInfo
- Publication number
- ITTO980720A1 ITTO980720A1 IT98TO000720A ITTO980720A ITTO980720A1 IT TO980720 A1 ITTO980720 A1 IT TO980720A1 IT 98TO000720 A IT98TO000720 A IT 98TO000720A IT TO980720 A ITTO980720 A IT TO980720A IT TO980720 A1 ITTO980720 A1 IT TO980720A1
- Authority
- IT
- Italy
- Prior art keywords
- command
- computer system
- steps
- sequence
- file
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 66
- 230000008569 process Effects 0.000 claims description 33
- 238000000819 phase cycle Methods 0.000 claims description 13
- 238000004891 communication Methods 0.000 claims description 6
- 238000012546 transfer Methods 0.000 claims 4
- 238000012937 correction Methods 0.000 claims 2
- 238000012795 verification Methods 0.000 description 62
- 238000012360 testing method Methods 0.000 description 49
- 238000004519 manufacturing process Methods 0.000 description 11
- 238000009434 installation Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 238000012163 sequencing technique Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000010276 construction Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 238000002405 diagnostic procedure Methods 0.000 description 3
- 238000013100 final test Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000013024 troubleshooting Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000011900 installation process Methods 0.000 description 1
- 238000005304 joining Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000013522 software testing Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/28—Error detection; Error correction; Monitoring by checking the correct order of processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Debugging And Monitoring (AREA)
Description
Descrizione dell'invenzione industriale dal titolo: ''Procedimento per l'installazione e la verifica del software per un sistema di computer prodotto su ordinazione ''
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-5022 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-5216 US, depositata lo stesso giorno della presente domanda, intitolata Database For Faciliting Software Instailation 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 verifica del software per un sistema di computer.
Descrizione della tecnica anteriore
I sistemi di personal computer in generale e sistemi di personal computer IBM compatibili in particolare hanno ottenuto un utilizzo ampio per fornire potenza di calcolo a molti segmenti della società. Un sistema di personal computer può essere definito di solito come microcomputer da tavolo, da pavimento 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 dischetto, un dispositivo di memorizzazione a disco fisso ed una stampante opzionale.
E' noto installare software o eseguire verifiche su sistemi di computer prima che essi siano spediti alle aziende o ai singoli clienti. L'obiettivo dell'installazione e della verifica del software è quello di produrre in modo efficiente un sistema di computer utile e affidabile che può essere inviato alle aziende e alle persone privo di errori e pronto per il funzionamento. In generale, la verifica rileva e analizza gli errori che hanno luogo sia nelle porzioni hardware sia nelle porzioni software del sistema di computer. Un elenco parziale dei test hardware del sistema di computer potrebbe comprendere una diagnostica sui 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 software comprende spesso il caricamento di un pacchetto desiderato di software sul sistema di computer, la preparazione di variabili di ambiente appropriate per il computer, e la preparazione di file di inizializzazione appropriati per il software caricato. La verifica del software comprende spesso l'accertamento che una versione desiderata del software è stata installata sul sistema di computer e che sono presenti drive appropriati sul sistema di computer.
E' noto nell'industria installare software e testare i 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 processi di installazione diagnostica del software. Il dischetto contiene inoltre tutti i file eseguibili per eseguire test sul sistema di computer acquistato.
Ogni sistema di computer che viene costruito è dotato di una rispettiva copia di questo dischetto. Questi dischetti accompagnano il sistema di computer che viene costruito per tutta la fabbrica durante il processo di fabbricazione, 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 batch. Questa modifica nel file batch dà come risultato una corrispondente modifica dei parametri di test (compresa la sequenza in cui i test sono eseguiti) di ogni successivo sistema di computer in fabbricazione, dato che ogni sistema di computer condivide la stessa procedura diagnostica di file batch.
Mentre le 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 perfezionamenti. Per esempio, dato che le verifiche continuano a diventare sempre più complicate e approfondite, i file batch e i file eseguibili dei test diagnostici superano spesso le capacità di memorizzazione di un dischetto. Inoltre, è spesso difficile e impossibile personalizzare le procedure di verifica e di installazione del software per un singolo sistema di computer fabbricato su ordinazione o per una certa famiglia di sistemi di computer senza modificare le verifiche per altri sistemi o famiglie. Inoltre, è difficile o impossibile modificare l'ordine di installazione o verifiche del software per un sistema di computer singolo costruito su ordinazione o per una certa famiglia di sistemi di computer senza modificare l'ordine per gli altri sistemi e famiglie. Infine, la natura spesso complicata delle attuali strutture di file batch rende talvolta difficile per i costruttori risolvere i problemi o mantenere le procedure di verifica o installazione del software in maniera rapida ed efficiente. In modo corrispondente, sarebbe desiderabile prevedere un procedimento perfezionato per installare software e sottoporre a verifica i sistemi di computer prima che essi siano spediti ai clienti.
L 'INVENZIONE
Un procedimento per installare e/o verificare software per un sistema di computer prodotto su ordinazione avente una pluralità di componenti comprende una pluralità di elementi. Il sistema di computer ha una sequenza di fasi associata. La sequenza di fasi comprende una pluralità di fasi dove ogni fase comprende almeno un comando ed una fase associata ad un rispettivo descrittore di componente. Un descrittore di componente corrisponde ad un rispettivo componente del sistema di computer. Il procedimento comprende le fasi di accedere ad un comando all'interno della sequenza di fasi; creare un file comprendente un indicazione di inizio dell'esecuzione; eseguire il comando; cancellare il file comprendente l'indicazione di inizio di esecuzione quando il comando completa l'esecuzione; e ripetere le fasi di accedere, creare ed eseguire e cancellare per la pluralità di fasi .
In una forma di attuazione preferita, un procedimento per installare e/o verificare software per un sistema di computer prodotto su ordinazione avente una pluralità di componenti comprende una pluralità di elementi. Il sistema di computer ha una sequenza di fasi associata. La sequenza di fasi comprende una pluralità di fasi dove ogni fase comprende almeno un comando ed una fase associata ad un rispettivo descrittore di componente. Un descrittore di componente corrisponde ad un rispettivo componente del sistema di computer. Il procedimento comprende le fasi di leggere un comando dalla sequenza di fasi; ricercare il comando in una unità locale del sistema di computer; eseguire il comando dall'unità locale se il comando è memorizzato sull'unità locale del sistema di computer; eseguire il comando da un server se il comando è memorizzato su una unità locale del sistema di computer.
In un'altra forma di attuazione preferita, un procedimento per installare e/o verificare software per un sistema di computer prodotto su ordinazione avente una pluralità di componenti comprende una pluralità di elementi. Il sistema di computer ha una sequenza di fasi associata. La sequenza di fasi comprende una pluralità di fasi dove ogni fase contiene almeno un comando ed una fase associata ad un rispettivo descrittore di componente. Un descrittore di componente corrisponde ad un rispettivo componente del sistema di computer. Il procedimento comprende le fasi di leggere un comando dalla sequenza di fasi; eseguire il comando sul sistema di computer; creare un indicatore temporale di inizio che indica quando è iniziata l'esecuzione del comando; e creare un indicatore temporale di fine che indica quando è terminata l'esecuzione del comando.
Il procedimento descritto fornisce così una installazione del software e una verifica del computer efficaci che consentono una immediata risoluzione degli errori e una personalizzazione dei sistemi di computer prodotti su ordinazione. Il progetto modulare del procedimento consente in modo vantaggioso il mantenimento elementare di un sistema di verifica 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 più immediatamente 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 di software e la verifica.
La Figura 2 è un diagramma schematico dell'installazione del software e la verifica secondo un'altra forma di attuazione.
La Figura 3A è un diagramma di flusso per convertire un ordine di computer in un record descrittore di sistema secondo la presente invenzione .
La Figura 3B illustra una porzione di un ordine di computer esemplificativo, il file di Record di Montaggio di Base (BAR), e record 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 una struttura di una base dati .
La Figura 7 è un diagramma di flusso per modificare un record descrittore di sistema e la 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 esemplificativo dopo essere stato eseguito.
La Figura 10 è un diagramma di flusso del funzionamento di un programma per rivedere 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 previsto per realizzare l'invenzione. La descrizione vuole essere illustrativa e non deve essere presa come limitativa. Nei disegni, gli elementi analoghi e 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 del sistema di installazione del software e di verìfiche 90. Durante il funzionamento, si colloca un ordine 92 per acquistare un sistema di computer obiettivo 160 prodotto su ordinazione. 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à a disco rigido, un particolare tipo 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 verificati. Tale installazione del software e tali verifiche garantiscono in modo vantaggioso un sistema di computer operante ed affidabile che è pronto a funzionare dopo essere ricevuto.
Poiché famiglie diverse di sistemi di computer e singoli componenti di computer diversi richiedono fasi di installazione del software e di verifica diverse, è necessario determinare quali test devono essere eseguiti sul sistema obiettivo 160 e in quale ordine questi test dovrebbero essere eseguiti in modo da ottenere un processo di installazione del software e di verifiche efficace. Il dispositivo di realizzazione di fasi 140' è un sistema di computer configurato in modo da sequenziare le fasi di installazione del software e di verifica da eseguire sul sistema obiettivo 160. Per sequenziare le fasi di installazione del software e/o verifiche, 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 descrizione di componente dal file descrittore 96. Il file descrittore 96 è previsto convertendo un ordine 92, che corrisponde ad un sistema di computer desiderato che ha componenti desiderati, in un formato leggibile da computer tramite il modulo di conversione 94.
I descrittori di componente sono descrizioni leggibili da computer del componente del sistema obiettivo 160 i quali componenti sono definiti dall'ordine 92. Nella forma di attuazione preferita, i descrittori di componente sono compresi in un file descrittore chiamato record descrittore di sistema che è un file leggibile da computer contenente un elenco dei componenti, i componenti hardware e/o software, che devono essere installati sul sistema obiettivo 160. Avendo letto la pluralità di descrittori di componente, il programma di sequenziamento 204 reperisce una pluralità di fasi di installazione del software e/o di verifica corrispondenti ai descrittori di componente dalla base 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, un intranet, o 1'internet. Informazioni contenute nella banca dati 100 possono essere aggiornate tramite una modifica illustrata dalla freccia 130.
Avendo reperito le fasi di installazione del software e/o di verifica 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 sequenziato le fasi richieste per il sistema obiettivo 160, il programma di sequenziamento 204 scrive una serie di file di uscita sul d\isco di fasi 150. Nella forma di attuazione evidenziata in Figura 1, i file di uscita comprendono file di testo contenenti linee di comando appropriate per eseguire le fasi di installazione del software e/o di verifica appropriate sul sistema obiettivo 160. L'esecuzione è eseguita nel predeterminato ordine secondo i numeri di sequenza corrispondenti ad ogni fase. Il disco di fase 150 accompagna il sistema obiettivo 160 nella fabbrica dove i test vengono 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 connesso ad una corrispondente porta di rete del sistema di computer obiettivo. A seguito dell’esecuzione delle fasi di installazione del software e di verifica, i risultati dell’installazione e dei test sono registrati di nuovo nel file server 190 sulla connessione di rete 180.
La Figura 2 è un diagramma schematico del sistema di installazione del software e di verifiche 192 in conformità con un'altra forma di attuazione della presente invenzione. Un cliente colloca un ordine 92 per acquistare un sistema di computer obiettivo 160 prodotto su ordinazione. Il sistema obiettivo 160 deve essere fabbricato in modo dà 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 vengono installati e testati. Tale installazione e verifica garantisce in modo vantaggioso un sistema di computer operante ed affidabile che è pronto a funzionare quando viene ricevuto dal cliente.
Per sequenziare le fasi di installazione del software e di verifica, il programma di sequenziamento 204 legge una pluralità di descrittori di componente dal file descrittore 96. L'ordine 92 viene convertito nel file descrittore 96 tramite il modulo di conversione 94. I descrittori di componente sono descrizioni leggibili da computer del componente da sistema obiettivo 160. Nella forma di attuazione preferita, i descrittori di componente sono compresi in un file descrittore chiamato record descrittore di sistema, un file leggibile da computer contenente un elenco di ogni componente, sia hardware sia software, che deve essere installato sul sistema obiettivo 160. Il record descrittore di sistema può essere memorizzato direttamente sul file server 202. Il programma di sequenziamento 204 reperisce una pluralità di fasi di installazione del software e/o di verifica corrispondente ai descrittori di componente dalla base dati 100. Avendo reperito le fasi di installazione del software e/o di verifiche appropriate per il sistema obiettivo 160, il programma di sequenziamento 204 sequenza le fasi in un predeterminato ordine secondo i numeri di sequenza corrispondenti ad ogni fase. Avendo sequenziato le fasi richieste per il sistema obiettivo 160, il programma di sequenziamento 204 dirige l'esecuzione delle fasi di installazione del software e di verifica 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 del software e/o di verifica, i risultati dell'installazione e dei test sono registrati di nuovo nel file server 202 sulla connessione di rete 200 oppure sono memorizzati all'interno di una base dati appropriata. Come appare chiaro dall'illustrazione, non si ha alcuna necessità di un sistema di computer di realizzazione delle fasi 140 separato come in Figura 1. In aggiunta, il disco di fasi 150 non è necessario. Piuttosto, è necessario soltanto il disco di boot 220, che è configurato in modo da inizializzare il sistema obiettivo 160, per accompagnare il sistema obiettivo 160 in fabbrica.
Avendo descritto in generale i sistemi di installazione del software e di verifica, si presterà ora attenzione alla descrizione del funzionamento dei sistemi evidenziati nelle Figure 1 e 2 in maggior dettaglio.
La Figura 3A illustra il processo preferito in cui un ordine per un sistema di computer è convertito in un record 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 un numero innumerevole di forme. Per esempio, sono possibili diversi formati di ordinamento cosi come diversi meccanismi di consegna di ordini; Per esempio, gli ordini per un sistema di computer obiettivo possono essere ricevuti per telefono, per posta, o su reti di computer (ad esempio sull'internet). Indipendentemente dai mezzi per la ricezione o la forma dell'ordine, l'ordine comprende il tipo di sistema di computer obiettivo che un cliente desidera acquistare e, eventualmente, un elenco 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 al 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 viene anche fornito al sistema di installazione del software e di verifica dove viene incanalato 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 un file BAR nel modulo 330. Preferibilmente, il file BAR contiene un identificatore unico che identifica lo specifico sistema di computer obiettivo in fabbricazione. Il file BAR contiene inoltre un elenco 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 per costruttore o altri identificatori utili per ogni componente. Infine, il file BAR può contenere informazioni specifiche del cliente quali nome, indirizzo e numero telefonico.
A seguito della creazione del file BAR nel modulo 330, si crea un record descrittore di sistema nel modulo 340. Un record 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 descrittore di sistema contiene un elemento di componenti del sistema obiettivo in un formato comprendente etichette hardware, etichette software, etichette di informazioni e commenti. Una 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 seguiranno informazioni generali. I commenti consentono di inserire varie frasi nel record descrittore di sistema che sono ignorate dal programma di sequenziamento 204. E' desiderabile che il record descrittore di sistema sia un file di testo che sia leggibile dalle persone e facile da capire. Tale file consente in modo vantaggioso una facile risoluzione degli errori e una facile manutenzione del processo di installazione e di verifica. Si potrà apprezzare che il record descrittore di sistema potrebbe essere qualsiasi elenco di identificatori unici che corrispondono ad un insieme unico di soggetti, per esempio, in un esempio semplice, il record descrittore di sistema può essere un elenco di numeri categorici.
La Figura 3B illustra un ordine esemplificativo 350 di un sistema di computer obiettivo, un corrispondente file BAR 360, ed un corrispondente record descrittore di sistema 370. L'ordine di sistema di computer obiettivo 350 contiene il nome di una famiglia di computer, in questa illustrazione, la famiglia "X". Sono inoltre compresi nell'ordine di sistema di computer obiettivo 350 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 del sistema di computer obiettivo 350 attraverso 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 nell'ambito della famiglia X. il file BAR 360 comprende inoltre i numeri categorici specifici per 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 testo di ogni componente da inserire sul sistema di computer obiettivo. Il sistema 90 utilizza il file BAR 360 per creare il record descrittore di sistema 370.
Come illustrato, il record descrittore di sistema 370 contiene anche l'identificatore unico per lo specifico sistema di computer obiettivo all'interno della famiglia X. Inoltre, il record descrittore 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 descrittore di sistema 370 descrive questi componenti in una descrizione di test. In aggiunta, il record descrittore di sistema 370 esemplificativo contiene una etichetta software che indica che occorre installare o verificare un certo software 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 obiettivo appartenente alla famiglia X.
In Figura 4, è evidenziato il procedimento generale preferito per sequenziare le fasi di installazione del software e verifica. 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 di realizzazione delle 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 fase 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, è collocato un record descrittore di sistema corrispondente all 'identificare BAR. Nella forma di attuazione di Figura 1, la connessione di rete 110 o la connessionè di rete 195 localizza il record descrittore di sistema. Nella forma di attuazione di Figura 2, la connessione di rete 195 localizza il record descrittore di sistema. Nel modulo 420, il record 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 opera insieme alla base dati 100 (delle Figure 1 e 2) per sequenziare le fasi di installazione del software e di verifica per il sistema di computer obiettivo 160. Quando le fasi di installazione del software e di verifica appropriate per i particolare sistema di computer obiettivo vengono sequenziate, il programma di sequenziamento 204 produce file di uscita come illustrato nel modulo 430.
Nella forma di attuazione illustrata in Figura 1, i file di uscita sono scritti preferibilmente sul disco di fasi 140 (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. E' desiderabile che il file di fasi sia un file di testo ASCII comprendente un elenco di linee di comando appropriate per eseguire le fasi di installazione del software e di verifica per il sistema di computer obiettivo in ordinazione. 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 oppure per una durata temporale definita. Tale formato consente in modo vantaggioso di ripetere le fasi di installazione del software o verifica in maniera predeterminata e calcolata. Il file Setenv.bat stabilisce preferibilmente variabili di ambiente sul sistema di computer obiettivo. Si potrà apprezzare che in un modo di funzionamento sono necessari soltanto il file Step e il file Setenv.bat per l'installazione e la verifica. Il file Step e il file Setenv.bat sono file di istruzioni di testo ASCII contenenti un elenco di linee di comando appropriate per eseguire le fasi di installazione e verifica per il sistema di computer obiettivo. Il file Qt.txt, Et.txt, Etlast.txt e Ft.txt sono preferibilmente tutti file di testo ASCII contenenti un elenco di linee di comando appropriate per eseguire le fasi di installazione del software e di verifica 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 software e/o di verifica sul sistema di computer obiettivo 160.
La Figura 5 illustra un diagramma schematico più dettagliato del funzionamento del programma di sequenziamento 204 illustrato nelle Figure 1 e 2. Nel modulo 500, un record di descrittore di sistema corrispondente al sistema di computer obiettivo 160 è fornito al programma di sequenziamento 204. Nel modulo 510, un descrittore di componente viene letto dal record descrittore di sistema. Ogni descrittore di componente descrive un rispettivo componente, hardware o software, nel sistema di computer obiettivo.
Passando alla Figura 3B, la riga del record 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 software e di verifica che occorre eseguire sul sistema di computer obiettivo 160. Nel modulo 550, le fasi di installazione software e di verifica associate ai rispettivi componenti del sistema di computer obiettivo 160 sono reperite dalla base 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 base dati.
La Figura 6 illustra il progetto della base dati 100. La base dati 100 associa sequenze di fasi di installazione del software e/o verifica, in un predeterminato ordine, con famiglie di sistemi di computer. Inoltre, la base dati 100 è configurata in modo da associare i componenti dei sistemi di computer con famiglie di sistemi di computer. Ancor di più, la base dati 100 associa le fasi di installazione del software e/o di verifica con componenti di sistemi di computer.
La base dati 100 è preferibilmente una base dati relazionale. La base dati 100 contiene parecchie tabelle, contenenti ciascuna attributi adatti a creare le associazioni sopra citate.
La base 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 del software e di verifica 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 del software o di verifica. Phase designa in quale stadio di fabbricazione deve eseguire la fase. Per esempio Phase è un intero scelto in modo da corrispondere a quattro fasi di fabbricazione dei 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 del software o di verifica 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 del software o di verifica. Maxlnstance è un identificatore che indica il numero massimo di volte consentite per cui può essere eseguita la fase. Infine, ClassID identifica un certo tipo di componente che è associato alla fase di installazione del software o di verifica.
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 relazionale che contiene le 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 nell'attributo SysID per una particolare famiglia di sistemi di computer (dalla tabella SysFamily 104), un intero di identificazione di fase specificato nell'attributo StepID (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 assegnano i numeri di sequenza, unici nell'ambito di ogni stadio 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 per assegnare i numeri di sequenza.
La tabella Component contiene tutti i possibili componenti che sono inseriti all'interno dei sistemi di computer in fabbricazione. 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 un 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 relazionale contenente le relazioni tra un componente ed un insieme di fasi di installazione software e di verifica appropriate per tale componente. Gli attributi della tabella Comp_Step 114 comprendono un intero di identificazione di componente specificato nell'attributo CompID (dalla tabella Component 108) ed un intero di identificazione di fase specificato nell'attributo SteplD (dalla tabella Step 102).
Il sistema di computer obiettivo esemplificativo illustrato in Figura 3B sarà utilizzato per illustrare come si utilizza il progetto di base dati sopra evidenziato per reperire le fasi di installazione del software e di verifica. L'identificatore di famiglia di computer nel record descrittore di sistema che identifica la famiglia X è associato al SysID corrispondente alla famiglia X nella tabella SysFamily 104. Si utilizza la tabella Component 108 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 base dati determinano se il processore, l'unità a disco rigido, il monitor e il software contenuti nel record descrittore di sistema di Figura 3B hanno corrispondenti inserimenti e corrispondenti interi specificati da CompID nella tabella Component 108. Se un componente non è legale {cioè se un componente nel record 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 le mappature dalla tabella Component 108 e dalla tabella SysFamily 104. La tabella Sys_Comp 112 contiene tutti i componenti legali che possono essere compresi su un sistema di computer obiettivo appartenente alla famiglia X. Cosi, si può utilizzare la tabella Sys_Comp 112 per controllare se tutti i componenti del sistema obiettivo sono legali. In altre parole, il programma di sequenziamento e la base dati determinano se il processore, l'unità a disco rigido, il monitor e il software contenuti nel record 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 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 del software e di verifica 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 di fase sono associati ad ogni fase di installazione del software e di verifica. Questi numeri di sequenza e fase rappresentano l'ordine appropriato in cui le fasi devono essere eseguite per una particolare famiglia di sistemi di computer. Pertanto, la tabella Sys_Step_Seq 106 contiene un elenco di fasi che devono essere eseguite sui sistemi di computer obiettivo della famiglia X così come i numeri di sequenza di fase che rappresentano un predeterminato ordine in cui le fasi devono essere eseguite .
La tabella Comp_Step 114 è una tabella relazionale che contiene le mappature dalla tabella Component 108 e dalla tabella Step 102. La tabella Comp_Step 114 contiene le fasi di installazione del software e di test 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 del software e di verifica associate ai rispettivi componenti da inserire sul sistema obiettivo si richiede 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 che devono essere eseguite sui componenti del sistema di computer obiettivo 160.
L'operazione di unione dà come risultato un elenco di fasi che devono essere eseguite sul processore, sull'unità a disco rigido, sul monitor e sul software elencati nel record descrittore di sistema illustrato in Figura 3B. Il risultato dell'unione della tabella Sys_Comp 112 e della tabella Comp_Step 114 viene quindi unito alla tabella Sys_Step_Seq 106 che contiene tutte le fasi per la famiglia X. Il risultato di questa operazione di unione comprende le 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. Cosi, una unione a tre tabelle della tabella Sys_Comp 112, della tabella Comp_Step 114 e della tabella Sys_Step_Seq 106 produce le fasi di installazione del software e di verifica appropriate cosi come le informazioni di sequenziamento sotto forma di numeri di sequenza e fase per installare e/o testare il 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, occorre creare 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 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 descrittore di sistema indichi non correttamente che un'unità a disco rigido (unità a disco rigido Z) appartenente soltanto a sistemi obiettivo nella famiglia X debba essere inserita sul sistema obiettivo che è 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. Così, l'unione della tabella Comp_Step 114 con la tabella Sys_Comp 112 produce un insieme vuoto, dato che l'unità 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 base 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 le variabili di ambiente per il sistema di computer obiettivo nel modulo 560 leggendo il record descrittore di sistema e creando un file di ambiente corrispondente ai componenti da inserire sul sistema obiettivo. Per esempio, si legge il record descrittore di sistema illustrato in Figura 3B, e si potrebbe preparare una variabile di ambiente quale "set cpu=pentium" corrispondente al componente hardware di processore del record descrittore di sistema.
Nel modulo 570 di Figura 5, la pluralità di fasi di installazione del software e di verifica, reperite tramite l'unione di tre tabelle sopra descritte, sono 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 deve essere 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 sul 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 Step, (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. E' desiderabile che il file Step sia un file di testo ASCII. Nella forma di attuazione preferita, il file Step comprende inoltre comandi che possono essere eseguiti ad anello. Più specificamente, il file Step 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 che devono essere eseguite rispettivamente durante le stadi 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 possono essere utilizzati per dirigere l'esecuzione delle fasi di installazione del software e di verifica sul sistema di computer obiettivo 160.
Passando ora alle Figure 1 e 2, la freccia 130 illustra il fatto che si possono effettuare modifiche sulla base dati 100. Per esempio, se si crea una nuova famiglia di sistemi di computer, si può modificare la base dati 100 di conseguenza. Più specificamente, alla nuova famiglia viene assegnato un identificatore di famiglia nuova in SysID della tabella SysFamily 104 e si assegna un nome per la famiglia nell’attributo Name della tabella Sys_Family 104. Si aggiungono un elenco di fasi di installazione di software e di fasi di verifica alla tabella Sys_Step_Seq 106, queste fasi rappresentando quali fasi devono essere eseguite, e in quale ordine predeterminato, sulla nuova 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 possano essere modificati per produrre inserimenti per la nuova famiglia. Se occorre creare qualsiasi fase nuova 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 della nuova famiglia di sistemi di computer nelle fasi appropriate per la sua installazione del software e verifica. Se la nuova famiglia utilizza soltanto componenti già presenti nella base dati, non occorre modificare questa tabella. La tabella Sys_Comp 112 viene aggiornata in modo che un elenco di componenti consentiti che possono essere compresi nella nuova famiglia sia nella base dati. In particolare, sarebbe necessario associare il SysID del nuovo sistema di computer con il 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 base dati secondo la forma di attuazione preferita, sono previsti certi vantaggi significativi. In particolare, il progetto modulare della base dati consente in modo vantaggioso una facile impostazione delle fasi di installazione del software e di verifica per nuove famiglie di sistemi di computer. In aggiunta, le fasi di installazione del software e verifica per una particolare famiglia di sistemi di computer o per un particolare componente possono essere modificate indipendentemente da altre fasi di installazione del software e di verifica.
La Figura 7 illustra come un record descrittore di sistema ed una sequenza di fasi possono essere sottoposti a patch per consentire modifiche modulari in un processo di installazione del software e di verifica in conformità con l'invenzione. Nel modulo 600, si crea un record descrittore di sistema. Nel modulo 610, il record descrittore di sistema viene modificato utilizzando un patch di record descrittore di sistema. Nella forma di attuazione preferita, questa patch è modulare, consentendo di creare patch per un sistema di computer obiettivo specifico, 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 potrebbe formare un patch che modificherebbe tutti i record descrittore di sistema contenenti l'unità a disco rigido da sostituire ed effettuare la sostituzione nel modulo 610. Nel modulo 620, si determina una sequenza di fasi come evidenziato in precedenza.
Nel modulo 630, si modifica la sequenza di fasi utilizzando un patch di sequenza di fasi. Nella forma di attuazione preferita, questo patch è modulare, consentendo di creare patch per un sistema di computer obiettivo specifico, una particolare famiglia di sistemi di computer o per un particolare componente. Per esempio, se un costruttore volesse eseguire una fase di verifica prima di un'altra per un certo componente 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 modificherebbe in modo corrispondente l'ordine di esecuzione nel modulo 640.
Si presterà ora l’attenzione all'esecuzione della sequenza di fasi sul sistema obiettivo 160. Le fasi di installazione del software o di verifica vengono 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 è posto sul disco di fasi 150 nella forma di attuazione di Figura 1 e sul file server 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 si esegua qualsiasi fase di installazione del software e di verifica. Come citato in precedenza, la sequenza di fasi comprende comandi per installare il software e/o per verificare il sistema di computer obiettivo prodotto su ordinazione. In aggiunta, la sequenza di fasi nelle file di fasi consente di ripetere i comandi per un numero definito di iterazioni o per un periodo di tempo definito. 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 verificare il sistema di computer obiettivo 160. I comandi comprendono, per esempio, un comando per verificare la memoria e per verificare i dispositivi di interfaccia di sistema di computer piccola (SCSI). Come si può vedere dalla figura, ogni comando può comprendere interruttori quali '-o' appropriati per il particolare ambiente di verifica. L'elemento 820 è un commento che è ignorato dal programma Runstep. L'elemento 810c è un comando che viene eseguito ad anello nel tempo. Nella costruzione preferita, l'istruzione 'begin_time_loop' indica il punto iniziale di un anello. L'istruzione 'end_time_loop' indica il punto terminale di un anello. L’istruzione 'begin_time_loop' si combina con un campo che indica la durata temporale per 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 che occorre eseguire un anello iterattivo. Il comando 'end_iterate_loop' segnala la fine dei comandi di esecuzione ad anello. Qui, il comando 810d è eseguito tre volte.
Quando il programma Runstep esegue la sequenza di fasi, il programma Runstep colloca informazioni di indicatori temporali nel file di fasi, consentendo in modo vantaggioso una facile risoluzione degli errori e un rintracciamento del processo di installazione del software e di verifica.
La Figura 9 illustra una porzione della sequenza di fasi di Figura 8 dopo che le fasi vengono eseguite. Come illustrato, il programma Runstep inserisce informazioni di indicazioni temporali nella sequenza di fasi. L'elemento 830 illustra quando è cominciato il test di memoria, e l'elemento 832 illustra quando tale test è terminato. L'elemento 834 illustra quando ha cominciato l'ultima iterazione del test. L'elemento 836 e 838 illustrano quando il test scsiHD è cominciato ed è terminato, rispettivamente. L'elemento 840 conferma che l’anello iterattivo è stato eseguito tre volte. Infine, gli elementi 842 e 844 illustrano quando l'ultima iterazione del test scsiCD è cominciata ed è terminata, rispettivamente. L’inserimento di informazioni di indicazioni temporali adiacenti al comando che era stato eseguito consente in modo vantaggioso una efficiente risoluzione degli errori e un rintraccicunento del processo di installazione del software e di verifica.
La Figura 10 illustra il flusso generale preferito del programma Runstep. Il programma Runstep 860 è eseguito 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 dì fasi nel file batch 870. Il file batch 870 viene quindi eseguito, 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 riga 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. Un file Re_Run.bat viene creato prima che un qualsiasi comando sia eseguito da una sequenza di fasi e viene tolto dopo il completamento positivo del comando. L'esistenza di Re_Run.bat indica al programma Runstep nel modulo 900 che l'ultima esecuzione del comando non è stata completata positivamente. Cosi Re_Run.bat funziona come indicazione di inizio dell'esecuzione. Se Re_Run.bat esiste, si chiede ad un operatore nel modulo 904 se il processo di installazione del software e di verifica debba continuare o meno oppure se l'operatore preferisce invece eseguire la ricerca e risoluzione 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 si sceglie affermativamente alcuna opzione). Se si sceglie l’opzione di ricerca e risoluzione di errori, si esegue la risoluzione degli errori come è ben noto nella tecnica.
Se Re_Run.bat non esiste, il programma Runstep determina che l'ultimo comando è stato completato correttamente, e il controllo viene passato al modulo 910, dove si legge una riga della sequenza di fasi, contenuta preferibilmente in file di fasi. Il programma Runstep legge la linea e determina se esiste un indicatore temporale di inizio e di fine del modulo 912. Se esiste un indicatore di inizio o di fine, il programma Runstep determina, nel modulo 914, se esiste soltanto un indicatore temporale di inizio per la riga che il programma Runstep sta leggendo. Se esiste soltanto un indicatore temporale di inizio, il programma Runstep ipotizza nel modulo 916 che una fase di installazione del software o di verifica sia appena finita e riempie un indicatore temporale di fine nel modulo 918. Dopo aver riempito l'indicatore temporale di fine, il controllo ritorna al modulo 900.
Se esiste più che un solo indicatore temporale di inizio per la riga che il programma Runstep sta leggendo, il programma Runstep determina nel modulo 906 se esistono sia un indicatore temporale di inizio sia uno di fine. Se è così, il programma Runstep ipotizza nel modulo 908 che la fase sia stata eseguita e il controllo ritorna al modulo 900. Se il programma Runstep non incontra alcun indicatore temporale di inizio o di fine nel modulo 912, il programma Runstep riempie l’indicatore temporale di inizio nel modulo 920 e si prepara a eseguire la fase sulla riga della sequenza di fasi che il programma Runstep sta leggendo.
Nel modulo 922, il programma Runstep determina se il comando da eseguire è 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, oppure un'unità di rete. Se il comando non è posto sull'unità locale, il programma Runstep ipotizza che il test da eseguire 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 in 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à connesso 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 eseguire si trova sul disco di fase 150, non occorre che il programma Runstep si colleghi alla 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 eseguire 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 eseguita 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 errore 929. Il controllo viene quindi restituito al modulo 900 in modo che si possa leggere un'altra riga dalla sequenza di fasi. Questo processo continua fino a quando tutte le fasi di installazione del software e di verifica sono completate.
All'esecuzione della sequenza di fasi, il sistema obiettivo viene verificato e si installa il software. Nella forma di attuazione di Figura 1, si possono eseguire un numero selezionato di test direttamente dal disco di fasi 150, ma la maggior parte dei test sono eseguiti dal file server 190 sulla connessione di rete 180. L'esecuzione dei test dal file server 190 elimina in modo vantaggioso i limiti imposti dalle capacità di memorizzazione dei dischi floppy quali il disco di fasi 150.
Nella forma di attuazione di Figura 2, le fasi sono 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 in modo vantaggioso il processo di installazione del software e di verifica.
Passando ancora una volta alle Figure 1 e 2, la freccia 210 illustra il fatto che i risultati dalla installazione del software e dalle verifiche possono essere registrati nuovamente sul file server 190 o sul file server 202. I risultati comprendono preferibilmente il fatto che tutte le fasi sono state completate positivamente e quali tipi di errori (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 ha una indicazione temporale tramite il programma di Runstep. Tale sistema consente in modo vantaggioso migliori capacità di risoluzione degli errori durante la fabbricazione del sistema di computer.
Mentre forme di attuazione particolari 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 comprendere all'interno del loro campo di protezione tutti questi cambiamenti e modifiche come ricadono all'interno del vero spirito e campo di protezione della presente invenzione.
Claims (35)
- RIVENDICAZIONI 1. Procedimento di installazione del software per un sistema di computer avente una pluralità di componenti, il sistema di computer avendo una sequenza di fasi associata, la sequenza di fasi comprendendo una pluralità di fasi, ogni fase comprendendo almeno un comando, una fase essendo associata ad un rispettivo descrittore di componente, un descrittore di componente corrispondendo ad un rispettivo componente del sistema di computer, il procedimento comprendendo le fasi di: accedere ad un comando all'interno della sequenza di fasi; creare un file comprendente un'indicazione dell'inizio di esecuzione; eseguire un comando; e cancellare il file comprendente l'indicazione dell'inizio di esecuzione quando il comando completa l'esecuzione; e ripetere le fasi di accedere, creare, eseguire e cancellare per la pluralità di fasi.
- 2. Procedimento secondo la rivendicazione 1, comprendente inoltre le fasi di: determinare se il file comprendente l'indicazione dell'inizio di esecuzione è presente prima di accedere ad un comando all'interno della sequenza di fasi; e determinare che è presente una condizione di errore se il file comprendente l'indicazione dell'inizio di esecuzione è presente.
- 3. Procedimento secondo la rivendicazione 2, comprendente inoltre le fasi di: chiedere ad un operatore se l'operatore desidera continuare con l'installazione del software quando è presente la condizione di errore; e eseguire il comando se l'operatore desidera continuare con l'installazione del software.
- 4. Procedimento secondo la rivendicazione 2 comprendente inoltre le fasi di: chiedere ad un operatore se l'operatore desidera trasferirsi in un modo di funzionamento di risoluzione degli errori quando è presente la condizione di errore; e trasferirsi ad un modo di funzionamento di correzione degli errori se l'operatore lo desidera.
- 5. Procedimento per l'installazione del software per un sistema di computer avente una pluralità di componenti, il sistema di computer avendo una sequenza di fasi associata, la sequenza di fasi comprendendo una pluralità di fasi, ogni fase comprendendo almeno un comando, una fase essendo associata ad un rispettivo descrittore di componente, un descrittore di componente corrispondendo ad un rispettivo componente del sistema di computer, il procedimento comprendendo le fasi di: leggere un comando dalla sequenza di fasi; ricercare il comando in una unità locale del sistema di computer; eseguire il comando dall'unità locale se il comando è memorizzato sull'unità locale del sistema di computer; eseguire il comando da un server se il comando non è memorizzato sull'unità locale del sistema di computer.
- 6. Procedimento secondo la rivendicazione 5, comprendente inoltre le fasi di: determinare se il sistema di computer è collegato su una rete; e collegarsi alla rete se il sistema di computer non è collegato sulla rete.
- 7. Procedimento secondo la rivendicazione 6 comprendente inoltre le fasi di: incorporare istruzioni di collegamento in un file batch per collegarsi ad una rete se il comando è ubicato su un file server connesso alla rete in comunicazione con il sistema di computer; incorporare il comando nel file batch; eseguire il file batch per eseguire il comando sul sistema di computer.
- 8. Procedimento secondo la rivendicazione 6, in cui una fase all'interno del file di fasi è un comando di collegamento alla rete e comprendente inoltre le fasi di: togliere il comando di collegamento alla rete dalla sequenza di fasi se il sistema di computer è collegato sulla rete.
- 9. Procedimento per l'installazione del software per un sistema di computer avente una pluralità di componenti, il sistema di computer avendo una sequenza di fasi associata, la sequenza di fasi comprendendo una pluralità di fasi, ogni fase comprendendo almeno un comando, una fase essendo associata ad un rispettivo descrittore di componente, un descrittore di componente corrispondendo ad un rispettivo componente del sistema di computer, il procedimento comprendendo le fasi di: leggere un primo comando dalla sequenza di fasi; incorporare istruzioni di collegamento in un primo ed un secondo file batch per il collegamento ad una rete se il primo comando è ubicato su un file server connesso alla rete in comunicazione con il sistema di computer; togliere le istruzioni di connessione alla rete dal primo e dal secondo file batch se il primo comando è ubicato su una unità locale del sistema obiettivo; incorporare il primo comando nel primo e nel secondo file batch; eseguire il primo file batch per eseguire il primo comando sul sistema di computer; togliere il secondo file batch al completamento positivo del primo comando; leggere un secondo comando dalla sequenza di fasi se il secondo file batch è stato tolto.
- 10. Procedimento per l'installazione del software per un sistema di computer avente una pluralità di componenti, il sistema di computer avendo una sequenza di fasi associata, la sequenza di fasi comprendendo una pluralità di fasi, ogni fase comprendendo almeno un comando, una fase essendo associata ad un rispettivo descrittore di componente, un descrittore di componente corrispondendo ad un rispettivo componente del sistema di computer, il procedimento comprendendo le fasi di: leggere un comando dalla sequenza di fasi; eseguire il comando sul sistema di computer; creare un indicatore temporale di inizio che indica quando è cominciata l'esecuzione del comando; e creare un indicatore temporale di fine che indica quando è terminata l'esecuzione del comando.
- 11. Procedimento secondo la rivendicazione 10, in cui il comando è eseguito ripetutamente per un periodo di tempo definito.
- 12. Procedimento secondo la rivendicazione 11, in cui gli indicatori temporali di inizio e di fine indicano quando l'esecuzione di una iterazione finale del comando è cominciata e terminata, rispettivamente.
- 13. Procedimento secondo la rivendicazione 10, in cui il comando è eseguito ripetutamente per un numero di volte definito.
- 14. Procedimento secondo la rivendicazione 13, in cui gli indicatori temporali di inizio e di fine indicano quando l'esecuzione di una iterazione finale del comando è cominciata e terminata, rispettivamente .
- 15. Procedimento secondo la rivendicazione 10, in cui gli indicatori temporali di inizio e di fine sono scritti adiacenti al comando nella sequenza di fasi.
- 16. Procedimento secondo la rivendicazione 10, in cui il comando è collocato su un disco floppy del sistema di computer.
- 17. Procedimento secondo la rivendicazione 10, in cui il comando è collocato su un file server in comunicazione con il sistema di computer.
- 18. Procedimento per la verifica del software per un sistema di computer avente una pluralità di componenti, il sistema di computer avendo una sequenza di fasi associata, la sequenza di fasi comprendendo una pluralità di fasi, ogni fase comprendendo almeno un comando, una fase essendo associata ad un rispettivo descrittore di componenti , un descrittore di componente corrispondendo ad un rispettivo componente del sistema di computer, il procedimento comprendendo le fasi di: accedere ad un comando all'interno della sequenza di fasi: creare un file comprendente una indicazione dell'inizio di esecuzione; eseguire il comando; e cancellare il file comprendente l'esecuzione dell'inizio di esecuzione quando il comando completa l'esecuzione; e ripetere le fasi di accedere, creare, eseguire e cancellare per la pluralità di fasi.
- 19. Procedimento secondo la rivendicazione 18, comprendente inoltre le fasi di: determinare se il file comprendente l'indicazione dell'inizio di esecuzione è presente prima di accedere ad un comando all'interno della sequenza di fasi; e determinare che è presente una condizione di errore se il file comprendente l'indicazione di inizio di esecuzione è presente.
- 20. Procedimento secondo la rivendicazione 19, comprendente inoltre le fasi di: chiedere ad un operatore se l'operatore desidera continuare con la verifica del software quando è presente la condizione di errore; e eseguire il comando se l'operatore desidera continuare con la verifica del software.
- 21. Procedimento secondo la rivendicazione 19, comprendente inoltre le fasi di: chiedere ad un operatore se l'operatore desidera trasferirsi ad un modo di funzionamento o di risoluzione degli errori quando è presente la condizione di errore; e trasferirsi ad un modo di funzionamento di correzione degli errori se l'operatore lo desidera.
- 22. Procedimento di verifica del software per un sistema di computer avente una pluralità di componenti, il sistema di computer avendo una sequenza di fasi associata, la sequenza di fasi comprendendo una pluralità di fasi, ogni fase comprendendo almeno un comando, una fase essendo associata ad un rispettivo descrittore di componente, un descrittore di componente corrispondendo ad un rispettivo componente del sistema di computer, il procedimento comprendendo le fasi di: leggere un comando dalla sequenza di fasi; ricercare il comando in una unità locale del sistema di computer; eseguire il comando dall'unità locale se il comando è memorizzato sull'unità locale del sistema di computer; eseguire il comando da un server se il comando non è memorizzato sull'unità locale del sistema di computer.
- 23. Procedimento secondo la rivendicazione 22, comprendente inoltre le fasi di: determinare se il sistema di computer è collegato su una rete; e collegarsi alla rete se il sistema di computer non è collegato sulla rete.
- 24. Procedimento secondo la rivendicazione 23 comprendente inoltre le fasi di: incorporare le istruzioni di collegamento in un file batch per collegarsi ad una rete se il comando è ubicato su un file server connesso alla rete in comunicazione con il sistema di computer; incorporare il comando nel file batch; eseguire il file batch per eseguire il comando sul sistema di computer.
- 25. Procedimento secondo la rivendicazione 23, in cui una fase all'interno del file di fasi è un comando di collegamento alla rete; e comprendente inoltre le fasi di: togliere il comando di collegamento alla rete dalla sequenza di fasi se il sistema di computer è collegato sulla rete.
- 26. Procedimento per la verifica del software di un sistema di computer avente una pluralità di componenti, il sistema di computer avendo una sequenza di fasi associata, la sequenza’di fasi comprendendo una pluralità di fasi, ogni fase comprendendo almeno un comando, una fase essendo associata ad un rispettivo descrittore di componente, un descrittore di componente corrispondendo ad un rispettivo componente del sistema di computer, il procedimento comprendendo le fasi di: leggere un primo comando dalla sequenza di fasi; incorporare istruzioni di collegamento in un primo e un secondo file batch per il collegamento ad una rete se il primo comando è ubicato su un file server connesso alla rete in comunicazione con il sistema di computer; togliere le istruzioni di collegamento alla rete dal primo e dal secondo file batch se il primo comando è posto su una unità locale del sistema obiettivo; incorporare il primo comando nel primo e nel secondo file batch; eseguire il primo file batch per eseguire il primo comando sul sistema di computer; togliere il secondo file batch al completamento positivo del primo comando; leggere un secondo comando dalla sequenza di fasi se il secondo file batch è stato tolto.
- 27. Procedimento per la verifica del software per il sistema di computer avente una pluralità di componenti, il sistema di computer avendo una sequenza di fasi associata, la sequenza di fasi comprendendo una pluralità di fasi, ogni fase comprendendo almeno un comando, una fase essendo associata ad un rispettivo descrittore di componente, un descrittore di componente corrispondendo ad un rispettivo componente del sistema di computer, il procedimento comprendendo le fasi di: leggere un comando dalla sequenza di fasi; eseguire il comando sul sistema di computer; creare un indicatore temporale di inizio che indica quando è cominciata l'esecuzione del comando; e creare un indicatore temporale di fine che indica quando l'esecuzione del comando è terminata.
- 28. Procedimento secondo la rivendicazione 27, in cui il comando è eseguito ripetutamente per un periodo di tempo definito.
- 29. Procedimento secondo la rivendicazione 28, in cui gli indicatori temporanei di inizio e di fine indicano quando l'esecuzione di una iterazione finale di comando è cominciata ed è finita, rispettivamente.
- 30. Procedimento secondo la rivendicazione 27, in cui il comando è eseguito ripetutamente per un numero di volte definito.
- 31. Procedimento secondo la rivendicazione 30 in cui gli indicatori temporali di inizio e di fine indicano quando l’esecuzione di una iterazione finale del comando è cominciata ed è finita, rispettivamente .
- 32. Procedimento secondo la rivendicazione 27, in cui gli indicatori temporali di inizio e di fine sono scritti adiacenti al comando nella sequenza di fasi.
- 33. Procedimento secondo la rivendicazione 27, in cui il comando è posto su una unità locale del sistema di computer.
- 34. Procedimento secondo la rivendicazione 27, in cui il comando è posto su un file server in comunicazione con il sistema di computer.
- 35. Sistema di computer comprendente: un processore; un componente accoppiato al processore; e una memoria accoppiata al processore, la memoria comprendendo il software installato su di essa, il software essendo installato tramite le fasi di: accedere ad un comando di installazione del software all'interno di una sequenza di fasi avente una pluralità di fasi; creare un file comprendente una indicazione dell'inizio di esecuzione; eseguire il comando; e cancellare il file comprendente l'indicazione dell'inizio di esecuzione quando il comando completa l'esecuzione; e ripetere le fasi di accedere, creare, eseguire e cancellare per la pluralità di fasi. 19. - Procedimento e sistema sostanzialmente come descritto ed illustrato e per gli scopi specificati
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/920,773 US5991543A (en) | 1997-08-29 | 1997-08-29 | Software installation and testing for a build-to-order computer system |
Publications (3)
Publication Number | Publication Date |
---|---|
ITTO980720A0 ITTO980720A0 (it) | 1998-08-21 |
ITTO980720A1 true ITTO980720A1 (it) | 2000-02-21 |
IT1303244B1 IT1303244B1 (it) | 2000-11-02 |
Family
ID=25444370
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
IT1998TO000720A IT1303244B1 (it) | 1997-08-29 | 1998-08-21 | Procedimento per l'installazione e la verifica del software per unsistema di computer prodotto su ordinazione. |
Country Status (12)
Country | Link |
---|---|
US (1) | US5991543A (it) |
JP (1) | JPH11161477A (it) |
KR (1) | KR100513551B1 (it) |
CN (1) | CN1142490C (it) |
AU (1) | AU756135B2 (it) |
BR (1) | BR9802224A (it) |
DE (1) | DE19836333C2 (it) |
FR (1) | FR2767945B1 (it) |
GB (1) | GB2329051B (it) |
IT (1) | IT1303244B1 (it) |
MY (1) | MY114954A (it) |
TW (1) | TW389873B (it) |
Families Citing this family (107)
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 |
US6615406B1 (en) | 1998-04-08 | 2003-09-02 | Dell Usa, L.P. | Apparatus for use in the manufacture of a computer system |
US6327706B1 (en) * | 1998-04-08 | 2001-12-04 | Dell Usa, L.P. | Method of installing software on and/or testing a computer system |
US6279156B1 (en) * | 1999-01-26 | 2001-08-21 | Dell Usa, L.P. | Method of installing software on and/or testing 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 |
US6859924B1 (en) | 1998-06-04 | 2005-02-22 | Gateway, Inc. | System restore apparatus and method employing virtual restore disk |
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 |
US6775829B1 (en) | 1998-06-04 | 2004-08-10 | Gateway, Inc. | Method for configuring software for a build to order system |
US6167568A (en) * | 1998-06-30 | 2000-12-26 | Sun Microsystems, Inc. | Method and apparatus for implementing electronic software distribution |
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 |
US6507870B1 (en) * | 1998-12-31 | 2003-01-14 | Qwest Communications International Inc. | xDSL web ordering tool |
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 |
US8046270B2 (en) | 2000-05-19 | 2011-10-25 | Eastman Kodak Company | System and method for providing image products and/or services |
US6836617B1 (en) | 2000-03-24 | 2004-12-28 | Eastman Kodak Company | Purchasing configured photographic film products |
US7111317B1 (en) * | 2000-03-24 | 2006-09-19 | Eastman Kodak Company | Method for providing image goods and/or services to a customer |
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 |
US6606716B1 (en) | 1999-10-06 | 2003-08-12 | Dell Usa, L.P. | Method and system for automated technical support for computers |
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 |
US6535915B1 (en) * | 1999-09-24 | 2003-03-18 | Dell Usa, L.P. | Automatic reduction of data noise in installation packages for a computer system |
US6556431B1 (en) | 1999-10-06 | 2003-04-29 | Dell Usa, L.P. | System and method for converting alternating current into direct current |
US6564220B1 (en) | 1999-10-06 | 2003-05-13 | Dell Usa, L.P. | System and method for monitoring support activity |
US6574615B1 (en) | 1999-10-06 | 2003-06-03 | Dell Usa, L.P. | System and method for monitoring support activity |
US6563698B1 (en) | 1999-10-06 | 2003-05-13 | Dell Usa, L.P. | System and method for providing a computer system with a detachable component |
US6317316B1 (en) | 1999-10-06 | 2001-11-13 | Dell Usa, L.P. | Method and system for integrated personal computer components |
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 |
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 |
US6668375B1 (en) * | 1999-12-15 | 2003-12-23 | Pitney Bowes Inc. | Method and system for providing build-to-order software applications |
US7424444B1 (en) | 1999-12-20 | 2008-09-09 | Dell Usa, L.P. | Apparatus and method for configuring computers |
US6711798B2 (en) | 2000-01-18 | 2004-03-30 | Dell Products L.P. | Method for manufacturing products according to customer orders |
US6892104B2 (en) | 2000-01-18 | 2005-05-10 | Dell Products L.P. | System and 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 |
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 |
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 |
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 |
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 |
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 |
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 |
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 |
US7240336B1 (en) * | 2000-07-25 | 2007-07-03 | Sci Systems, Inc. | Interpretive simulation of software download 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 |
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 |
US7191438B2 (en) * | 2001-02-23 | 2007-03-13 | Lenovo (Singapore) Pte, Ltd. | Computer functional architecture and a locked down environment in a client-server architecture |
US6853978B2 (en) * | 2001-02-23 | 2005-02-08 | Power Measurement Ltd. | System and method for manufacturing and configuring intelligent electronic devices to order |
US7085824B2 (en) | 2001-02-23 | 2006-08-01 | Power Measurement Ltd. | Systems for in the field configuration of intelligent electronic devices |
US6634506B2 (en) | 2001-03-05 | 2003-10-21 | Dell Products L.P. | Reusable container management system and method |
US6529797B2 (en) | 2001-03-05 | 2003-03-04 | Dell Products L.P. | System and method for automatically releasing collections of goods for shipment |
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 |
US6816746B2 (en) | 2001-03-05 | 2004-11-09 | Dell Products L.P. | Method and system for monitoring resources within a manufacturing environment |
US6505094B2 (en) | 2001-03-05 | 2003-01-07 | Dell Products L.P. | System and method for shipping items from a distribution facility |
US6611727B2 (en) | 2001-03-05 | 2003-08-26 | Dell Products L.P. | Method and system for simulating production within a manufacturing environment |
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 |
JP4134536B2 (ja) * | 2001-07-27 | 2008-08-20 | 株式会社日立製作所 | 情報機器の取引方法 |
US20030055932A1 (en) * | 2001-09-19 | 2003-03-20 | Dell Products L.P. | System and method for configuring a storage area network |
US6993760B2 (en) * | 2001-12-05 | 2006-01-31 | Microsoft Corporation | Installing software on a mobile computing device using the rollback and security features of a configuration manager |
US20030233264A1 (en) * | 2002-06-14 | 2003-12-18 | Jones Kevin Thomas | Manufacturing order scheduling and materials replenishment system |
US20040117230A1 (en) * | 2002-12-16 | 2004-06-17 | Jones Kevin Thomas | Recalculating planned requests |
US20040162857A1 (en) * | 2003-02-14 | 2004-08-19 | Butts David A. | System for managing and dynamically recreating factory environments |
US7360211B2 (en) * | 2003-06-30 | 2008-04-15 | Dell Products L.P. | System for automated generation of config to order software stacks |
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 |
US20050066015A1 (en) * | 2003-09-09 | 2005-03-24 | Dandekar Shree A. | Method and system for automated validation, scripting, dissemination and installation of software |
US20050071270A1 (en) * | 2003-09-26 | 2005-03-31 | Ramirez Christopher W. | Process for remote recovery and creation of machine specific authentication keys for systems |
US20050125524A1 (en) * | 2003-12-08 | 2005-06-09 | Chandrasekhar Babu K. | Cache system in factory server for software dissemination |
US20050172284A1 (en) * | 2004-01-30 | 2005-08-04 | Dandekar Shree A. | Method and system for automated generation of customized factory installable software |
US20050228678A1 (en) * | 2004-04-07 | 2005-10-13 | Howell James A Jr | Proactive after point of sale qualified subscription product presentation |
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 |
US20060074761A1 (en) * | 2004-09-21 | 2006-04-06 | Dandekar Shree A | Tracking after point of sale (APOS) related sales for peripherals |
US20060122894A1 (en) * | 2004-12-03 | 2006-06-08 | Mcgary Jon | User configured order status updates |
US7271996B2 (en) | 2004-12-03 | 2007-09-18 | Electro Industries/Gauge Tech | Current inputs interface for an electrical device |
CN100349119C (zh) * | 2004-12-30 | 2007-11-14 | 杭州华三通信技术有限公司 | 软件安装与集成的方法 |
US20060193462A1 (en) * | 2005-02-28 | 2006-08-31 | Gregg Hansen | System for optimizing configurable information handling systems |
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 | 삼성전자주식회사 | 소프트웨어 설치 방법, 장치, 및 시스템 |
US7712094B2 (en) | 2005-12-22 | 2010-05-04 | Alan Joshua Shapiro | Method and apparatus for replicating a panoplex onto a storage medium from a master |
CN101390050B (zh) | 2005-12-22 | 2018-04-24 | 艾伦·J·薛比洛 | 通过相减性安装达成选择性分配软件资源的装置与方法 |
US7308330B2 (en) * | 2006-03-31 | 2007-12-11 | Dell Products L.P. | Dynamic order swapping in BTO environment |
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 |
US8332819B2 (en) * | 2007-05-03 | 2012-12-11 | Siemens Industry, Inc. | Diagnostic and trouble-shooting methods in a wireless control and sensor network |
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 |
US20090217272A1 (en) * | 2008-02-26 | 2009-08-27 | Vita Bortnikov | Method and Computer Program Product for Batch Processing |
US20100005452A1 (en) * | 2008-07-07 | 2010-01-07 | Anson Douglas M | Methods and systems for factory configuration of existing customer system settings |
US10678645B2 (en) * | 2017-11-09 | 2020-06-09 | Bank Of America Corporation | Dynamic rerouting of the execution for automated server builds |
CN107767594A (zh) * | 2017-11-09 | 2018-03-06 | 福州汇思博信息技术有限公司 | 一种预安装软件的检测方法及系统 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5142680A (en) * | 1989-04-26 | 1992-08-25 | Sun Microsystems, Inc. | Method for loading an operating system through a network |
JPH0820975B2 (ja) * | 1990-03-29 | 1996-03-04 | インターナショナル・ビジネス・マシーンズ・コーポレイション | コンピュータシステムおよびコンピュータ上で実行されるトレース方法 |
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 |
US5715463A (en) * | 1992-03-31 | 1998-02-03 | International Business Machines Corporation | Installation utility for device drivers and utility programs |
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 |
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 |
JP3386232B2 (ja) * | 1994-07-15 | 2003-03-17 | 富士通株式会社 | テスト計算機システム |
JPH0887460A (ja) * | 1994-09-19 | 1996-04-02 | Seiko Epson Corp | インストールシステム |
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 |
-
1997
- 1997-08-29 US US08/920,773 patent/US5991543A/en not_active Expired - Lifetime
-
1998
- 1998-06-25 BR BR9802224-5A patent/BR9802224A/pt not_active Application Discontinuation
- 1998-07-15 JP JP10201005A patent/JPH11161477A/ja active Pending
- 1998-07-16 KR KR10-1998-0028797A patent/KR100513551B1/ko not_active IP Right Cessation
- 1998-07-23 GB GB9816127A patent/GB2329051B/en not_active Expired - Lifetime
- 1998-07-24 MY MYPI98003391A patent/MY114954A/en unknown
- 1998-07-27 TW TW087112249A patent/TW389873B/zh not_active IP Right Cessation
- 1998-08-11 DE DE19836333A patent/DE19836333C2/de not_active Expired - Lifetime
- 1998-08-21 IT IT1998TO000720A patent/IT1303244B1/it active IP Right Grant
- 1998-08-21 AU AU80896/98A patent/AU756135B2/en not_active Expired
- 1998-08-21 FR FR9810619A patent/FR2767945B1/fr not_active Expired - Lifetime
- 1998-08-28 CN CNB981176542A patent/CN1142490C/zh not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
AU8089698A (en) | 1999-03-11 |
TW389873B (en) | 2000-05-11 |
DE19836333C2 (de) | 2003-07-10 |
KR100513551B1 (ko) | 2005-12-16 |
GB2329051A (en) | 1999-03-10 |
MY114954A (en) | 2003-02-28 |
CN1221147A (zh) | 1999-06-30 |
IE980484A1 (en) | 1999-03-10 |
KR19990023213A (ko) | 1999-03-25 |
JPH11161477A (ja) | 1999-06-18 |
BR9802224A (pt) | 2000-09-12 |
AU756135B2 (en) | 2003-01-02 |
US5991543A (en) | 1999-11-23 |
GB2329051B (en) | 2003-02-19 |
ITTO980720A0 (it) | 1998-08-21 |
GB9816127D0 (en) | 1998-09-23 |
FR2767945A1 (fr) | 1999-03-05 |
GB2329051A8 (en) | 1999-04-16 |
DE19836333A1 (de) | 1999-03-04 |
IT1303244B1 (it) | 2000-11-02 |
CN1142490C (zh) | 2004-03-17 |
FR2767945B1 (fr) | 2003-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ITTO980720A1 (it) | Procedimento per l'installazione e la verifica del software per un si- stema di computer prodotto su ordinazione. | |
ITTO980721A1 (it) | Apparecchio per facilitare l'installazione e la verifica del software per un sistema di computer prodotto su ordinazione. | |
ITTO980722A1 (it) | Procedimento per l'installazione e/o la verifica del software per un sistema di computer prodotto su ordinazione, e sistema di computer per | |
JP3610284B2 (ja) | コンピュータ間でソフトウェアを同期化するための装置および方法 | |
US9372784B2 (en) | Test system configuration method and system | |
US8677348B1 (en) | Method and apparatus for determining least risk install order of software patches | |
US7080357B2 (en) | Software package verification | |
EP0632371A1 (en) | Process for configuration management | |
CN101382914B (zh) | 软件更新文件的测试方法和装置 | |
CN113050953A (zh) | 基于注释生成代码的方法、装置及存储介质 | |
US20050216486A1 (en) | Methods and systems for software release management | |
CN112256554B (zh) | 一种基于场景测试用例进行测试的方法及设备 | |
JP2001022559A (ja) | コンピュータシステムのソフトウエアインストールおよび、または試験方法 | |
Li et al. | Brief Industry Paper: A Model-based Framework and Tool Support for Capturing System Verification Strategy | |
ITTO20000409A1 (it) | Procedimento per l'installazione di software e/o per la prova di un sistema di elaboratore. | |
ITTO20000382A1 (it) | Apparecchio destinato all'impiego nella fabbricazione di un sistema di elaboratore. | |
CN118827350A (zh) | 以太网服务自动化配置方法及相关设备 | |
KR20010002573A (ko) | 컴퓨터 시스템으로의 소프트웨어 설치 및/또는 테스팅 방법 | |
JP2001022574A (ja) | モジュール保守管理システム | |
IE83291B1 (en) | Software installation and testing for a build-to-order computer system | |
KR20010002572A (ko) | 컴퓨터 시스템에 소프트웨어의 설치 및/또는 테스트방법 | |
JP2001014146A (ja) | コンピュータシステムのソフトウェアインストールおよび、または試験方法 | |
JP2001331345A (ja) | 年情報処理検証方法および半導体装置 | |
IE83292B1 (en) | Software installation and testing for a build-to-order computer system | |
KR20010002571A (ko) | 컴퓨터 시스템의 제조에 사용하기 위한 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
0001 | Granted |