ITTO980721A1 - Apparecchio per facilitare l'installazione e la verifica del software per un sistema di computer prodotto su ordinazione. - Google Patents
Apparecchio per facilitare l'installazione e la verifica del software per un sistema di computer prodotto su ordinazione. Download PDFInfo
- Publication number
- ITTO980721A1 ITTO980721A1 IT98TO000721A ITTO980721A ITTO980721A1 IT TO980721 A1 ITTO980721 A1 IT TO980721A1 IT 98TO000721 A IT98TO000721 A IT 98TO000721A IT TO980721 A ITTO980721 A IT TO980721A IT TO980721 A1 ITTO980721 A1 IT TO980721A1
- Authority
- IT
- Italy
- Prior art keywords
- family
- component
- relationship
- attribute
- phase
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
- G06F11/3668—Testing of software
- G06F11/3696—Methods or tools to render software testable
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/64—Retargetable
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/2247—Verification or detection of system hardware configuration
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
- G06F11/3668—Testing of software
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
- Y10S707/99945—Object-oriented database structure processing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99948—Application of database or data structure, e.g. distributed, multimedia, or image
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Debugging And Monitoring (AREA)
- Information Transfer Between Computers (AREA)
Description
Descrizione dell'invenzione industriale dal titolo: l'Apparecchio per facilitare 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 Instailation And Testing For A Build-To-Order Computer System e che nomina Richard D. Amberg, Roger W. Wong e Michael A. Brundridge come inventori, la domanda essendo qui incorporata per riferimento nella sua interezza.
La presente domanda è relativa alla domanda di brevetto statunitense col numero di serie _ anch'essa pendente, n. di protocollo M-5217 US, depositata lo stesso giorno della presente domanda, intitolata Software Installation And Testing For A Build-To-Order Computer System e che nomina Richard D. Amberg, Roger W. Wong, and Michael A. Brundridge come inventori, l'applicazione essendo qui incorporata per riferimento nella sua interezza. Campo dell'invenzione
La presente forma di attuazione è relativa alla diagnostica di sistemi di computer e più in particolare ad un procedimento per sequenziare le fasi di installazione e/o 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.
Ε' 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 apparecchio per installare software su un sistema di computer comprende una tabella di fasi ed una tabella di componenti. La tabella di fasi contiene un insieme di fasi di installazione del software condivise tra componenti diversi sostanzialmente di tutti i sistemi di computer che vengono fabbricati. La tabella di componenti contiene un insieme sostanzialmente di tutti i possibili componenti che sono inseriti all'interno dei sistemi di computer in costruzione. In una forma di attuazione preferita, il sistema di computer corrisponde ad una famiglia di sistemi di computer e l'apparecchio comprende inoltre una tabella di relazioni di famiglie, una tabella di relazioni di famiglie ed una tabella di relazioni di componenti di famiglia. La tabella di relazioni di famiglia identifica il rapporto tra un insieme di fasi di installazione del software ed ogni famiglia di sistema di computer che viene fabbricata. La tabella di relazioni di componenti di famiglia identifica il rapporto tra la famiglia di sistemi di computer e l'insieme di componenti. La tabella di relazioni di fasi di famiglia identifica la relazione tra un componente ed un insieme di fasi di installazione del software appropriata per il corrispondente componente.
In un'altra forma di attuazione preferita, l'invenzione è relativa ad un apparecchio per fornire una pluralità di fasi dove una fase è associata ad un rispettivo descrittore di componente e comprende un rispettivo numero di sequenza. Il descrittore di componente descrive un rispettivo componente di sistema di computer. L’apparecchio comprende una tabella di fasi e una tabella di componenti. La tabella di fasi contiene un insieme di fasi di installazione del software condivise tra componenti diversi sostanzialmente di tutti i sistemi di computer in fabbricazione. La tabella di componenti contiene un insieme sostanzialmente di tutti i possibili componenti che sono compresi all'interno dei sistemi di computer in fabbricazione.
L'apparecchio descritto fornisce così una installazione del software e una verifica del computer efficace che consentono una risoluzione immediata degli errori e la personalizzazione dei sistemi di computer prodotti su ordinazione. Il progetto modulare dell'apparecchio consente in modo vantaggioso un mantenimento elementare di un sistema di verifica e una 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 verifiche 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 l’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 disco 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 da contenere una pluralità di componenti i quali componenti possono comprendere componenti sia hardware sia/o software. Prima che il sistema obiettivo 160 sia spedito al cliente, la pluralità di componenti 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 così 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'6, 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 connessione 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 seguenziate, 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 StepID (dalla tabella Step 102).
Il sistema di computer obiettivo esemplificativo illustrato in Figura 3B sarà utilizzato per illustrare come si utilizza il progetto di 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. Così, 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 cosi 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 essére 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_jStep 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 SyslD 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 rintracciamento 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 di 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. Così 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 è cosi, 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 nel Runstep.bat per il collegamento alla rete. Pertanto si effettua una connessione di rete prima che Runstep.bat esegua la fase sul sistema di computer obiettivo 160 sulla connessione di rete 180.
A seguito del modulo 936, il controllo viene passato al modulo 926. Se il programma Runstep è già 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 (1)
- RIVENDICAZIONI 1. - Apparecchio per installare software su un sistema di computer comprendente: una tabella di fasi, la tabella di fasi contenendo un insieme di fasi di installazione del software condivise tra componenti diversi sostanzialmente di tutti i sistemi di computer fabbricati; e una tabella di componenti, la tabella di componenti comprendendo un insieme sostanzialmente di tutti i possibili componenti che sono compresi all'interno del sistema di computer in fabbricazione. 2. - Apparecchio secondo la rivendicazione 1, in cui la tabella di fasi comprende un attributo di identificazione di fasi, l'attributo di identificazioni di fasi essendo una identificazione unica per ogni fase di installazione del software o di verifica. 3. - Apparecchio secondo la rivendicazione 1, in cui la tabella di fasi comprende un attributo di stadio, l'attributo di stadio indicando in quale stadio di fabbricazione occorre eseguire una fase. 4. - Apparecchio secondo la rivendicazione 1, in cui la tabella di fasi comprende un attributo di comando, l'attributo di comando essendo conforme ad una linea di comando eseguibile per eseguire una fase di installazione del software. 5. - Apparecchio secondo la rivendicazione 1, in cui la tabella di fasi comprende un attributo di "aftercode'', l'attributo di ''aftercode" identificando se è richiesta una interruzione o una nuova inizializzazione dopo che si esegue una corrispondente fase. 6. - Apparecchio secondo la rivendicazione 1, in cui la tabella di fasi comprende un attributo di esempi massimi, l'attributo di esempi massimi indicando un numero massimo di volte in cui si può eseguire una fase corrispondente. 7. - Apparecchio secondo la rivendicazione 1, in cui la tabella di fasi comprende un attributo di identificazione di classe, l'attributo di identificazione di classe identificando un componente che è associato ad. una fase di installazione del software o di verifica. 8. - Apparecchio secondo la rivendicazione 1, in cui la tabella di componenti comprende un attributo di identificazione di componente, l'attributo di identificazione di componente identificando ogni componente all'interno della tabella di componenti. 9. - Apparecchio secondo la rivendicazione 1, in cui la tabella di componenti comprende un attributo di identificazione di classe, l'attributo di identificazione di classe identificando una classe di componenti. 10. - Apparecchio secondo la rivendicazione 1, in cui il sistema di computer corrisponde ad una famiglia di sistemi di computer; e comprendente inoltre: una tabella di relazioni di famiglia, la tabella di relazioni di famiglia identificando il rapporto tra un insieme di fasi di installazione del software ed ogni famiglia di sistemi di computer in fabbricazione; una tabella di relazioni di componenti di famiglia, la tabella di relazioni di componenti di famiglia identificando il rapporto tra la famiglia di sistemi di computer e l'insieme di componenti; e una tabella di relazioni di fasi di famiglia, la tabella di relazioni di fasi di famiglia identificando il rapporto tra il componente ed un insieme di fasi di installazione del software appropriati per il corrispondente componente. 11. - Apparecchio secondo la rivendicazione 10, in cui la tabella di relazioni di famiglia comprende un attributo di identificazione di famiglia che identifica una particolare famiglia di sistemi di computer. 12. - Apparecchio secondo la rivendicazione 10, in cui la tabella di relazioni di famiglia comprende un attributo di identificazione di fase che identifica un particolare insieme di fasi appropriate per una particolare famiglia. 13. - Apparecchio secondo la rivendicazione 10, in cui la tabella di relazioni di famiglia comprende un numero di sequenza corrispondente ad ogni famiglia, il numero di sequenza rappresentando un predeterminato ordine in cui devono essere eseguite le fasi associate ad una famiglia. 14. - Apparecchio secondo la rivendicazione 10, in cui la tabella di relazioni di componenti di famiglia definisce il rapporto tra un attributo che identifica una famiglia di computer ed un attributo che identifica un componente. 15. - Apparecchio secondo la rivendicazione 10, in cui la tabella di relazioni di componenti di famiglia definisce il rapporto tra un attributo di identificazione di componente ed un attributo di identificazione di fase. 16. - Apparecchio secondo la rivendicazione 1, comprendente inoltre: una tabella di famiglia, la tabella di famiglia identificando la famiglia di sistemi di computer con un nome. 17. - Apparecchio per fornire una pluralità di fasi, una fase essendo associata ad un rispettivo descrittore di componente e comprendendo un rispettivo numero di sequenza, un descrittore di componente descrivendo un rispettivo componente di un sistema di computer, l'apparecchio comprendendo: una tabella di fasi, la tabella di fasi contenendo un insieme di fasi di installazione del software condivise tra componenti diversi sostanzialmente di tutti i sistemi di computer in fabbricazione; una tabella di componenti, la tabella di componenti contenendo un insieme sostanzialmente di tutti i possibili componenti che sono compresi all'interno sostanzialmente di tutti i sistemi di computer in fabbricazione. 18. - Apparecchio secondo la rivendicazione 17, in cui il sistema di computer corrisponde ad una famiglia di sistemi di computer e comprendente inoltre: una tabella di relazioni di famiglia, la tabella di relazioni di famiglia identificando il rapporto tra l'insieme di fasi di installazione del software ed una famiglia di sistemi di computer in fabbricazione; una tabella di relazioni di componenti di famiglia, la tabella di relazioni di componenti di famiglia identificando il rapporto tra la famiglia di sistemi di computer e l'insieme di componenti; una tabella di relazioni di fasi di famiglia, la tabella di relazioni di fasi di famiglia identificando il rapporto tra un componente ed un insieme di fasi di installazione del software appropriate per il corrispondente componente. 19. - Apparecchio sostanzialmente come descritto ed illustrato e per gli scopi specificati.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US08/921,438 US5963743A (en) | 1997-08-29 | 1997-08-29 | Database for facilitating software installation and testing for a build-to-order computer system |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| ITTO980721A0 ITTO980721A0 (it) | 1998-08-21 |
| ITTO980721A1 true ITTO980721A1 (it) | 2000-02-21 |
| IT1303245B1 IT1303245B1 (it) | 2000-11-02 |
Family
ID=25445431
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| IT1998TO000721A IT1303245B1 (it) | 1997-08-29 | 1998-08-21 | Apparecchio per facilitare l'installazione e la verifica del softwareper un sistema di computer prodotto su ordinazione. |
Country Status (13)
| Country | Link |
|---|---|
| US (1) | US5963743A (it) |
| JP (2) | JP4216372B2 (it) |
| KR (1) | KR100655124B1 (it) |
| CN (2) | CN1525325B (it) |
| AU (1) | AU742509B2 (it) |
| BR (1) | BR9802223A (it) |
| DE (1) | DE19836381C2 (it) |
| FR (1) | FR2767946B1 (it) |
| GB (1) | GB2329050B (it) |
| IT (1) | IT1303245B1 (it) |
| MY (1) | MY114953A (it) |
| SG (1) | SG68066A1 (it) |
| TW (1) | TW455815B (it) |
Families Citing this family (123)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6247128B1 (en) * | 1997-07-22 | 2001-06-12 | Compaq Computer Corporation | Computer manufacturing with smart configuration methods |
| US6301707B1 (en) * | 1997-09-30 | 2001-10-09 | Pitney Bowes Inc. | Installing software based on a profile |
| US6873978B1 (en) | 1997-10-01 | 2005-03-29 | Pitney Bowes Inc. | Event interface for a carrier manager system |
| US6910047B1 (en) | 1997-10-01 | 2005-06-21 | Pitney Bowes Inc. | Method and system for changing rating data via internet or modem in a carrier management system |
| US6182275B1 (en) * | 1998-01-26 | 2001-01-30 | Dell Usa, L.P. | Generation of a compatible order for 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 |
| US6327706B1 (en) * | 1998-04-08 | 2001-12-04 | Dell Usa, L.P. | Method of installing software on and/or testing a computer system |
| US6615406B1 (en) | 1998-04-08 | 2003-09-02 | Dell Usa, L.P. | Apparatus for use in the manufacture of a computer system |
| US6092189A (en) * | 1998-04-30 | 2000-07-18 | Compaq Computer Corporation | Channel configuration program server architecture |
| US6690984B1 (en) | 1998-06-04 | 2004-02-10 | Gateway, Inc. | System and method for assembly integration |
| US6922831B1 (en) * | 1998-06-04 | 2005-07-26 | Gateway Inc. | Method and system for providing software utilizing a restore medium and a network |
| US6775829B1 (en) | 1998-06-04 | 2004-08-10 | Gateway, Inc. | Method for configuring software for a build to order system |
| US6795814B1 (en) * | 1998-06-04 | 2004-09-21 | Gateway, Inc. | System and method for CMOS integration |
| US6735757B1 (en) | 1998-06-04 | 2004-05-11 | Gateway, Inc. | Apparatus and method for checking component compatibility in a build to order computer system |
| US6859924B1 (en) | 1998-06-04 | 2005-02-22 | Gateway, Inc. | System restore apparatus and method employing virtual restore disk |
| US6370686B1 (en) * | 1998-09-21 | 2002-04-09 | Microsoft Corporation | Method for categorizing and installing selected software components |
| US6804663B1 (en) * | 1998-09-21 | 2004-10-12 | Microsoft Corporation | Methods for optimizing the installation of a software product onto a target computer system |
| US6226792B1 (en) * | 1998-10-14 | 2001-05-01 | Unisys Corporation | Object management system supporting the use of application domain knowledge mapped to technology domain knowledge |
| US6219836B1 (en) * | 1998-10-14 | 2001-04-17 | International Game Technology | Program management method and apparatus for gaming device components |
| US6282594B1 (en) * | 1998-10-15 | 2001-08-28 | Dell Usa, L.P. | Pallet, system and method for use in testing and/or installing software onto a personal computer system unit |
| US6317877B1 (en) | 1998-11-30 | 2001-11-13 | Micron Technology, Inc. | System tour generator |
| US6377253B1 (en) * | 1998-11-30 | 2002-04-23 | Micron Technology, Inc. | System tour generator |
| 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 |
| DE19922766A1 (de) * | 1999-05-18 | 2000-12-07 | Dell Usa Lp | Vorrichtung zur Verwendung bei der Herstellung eines Computersystems |
| DE19922768A1 (de) * | 1999-05-18 | 2000-12-07 | Dell Usa Lp | Verfahren zum Installieren von Software und/oder zum Testen eines Computersystems |
| DE19922767A1 (de) * | 1999-05-18 | 2000-12-07 | Dell Usa Lp | Verfahren zum Installieren von Software und/oder zum Testen eines Computersystems |
| US7111317B1 (en) * | 2000-03-24 | 2006-09-19 | Eastman Kodak Company | Method for providing image goods and/or services to a customer |
| US8046270B2 (en) | 2000-05-19 | 2011-10-25 | Eastman Kodak Company | System and method for providing image products and/or services |
| US7587337B1 (en) | 2000-03-24 | 2009-09-08 | Eastman Kodak Company | Leasing configured camera system |
| US6836617B1 (en) | 2000-03-24 | 2004-12-28 | Eastman Kodak Company | Purchasing configured photographic film products |
| 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 |
| 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 |
| US6574615B1 (en) | 1999-10-06 | 2003-06-03 | Dell Usa, L.P. | System and method for monitoring support activity |
| US6556431B1 (en) | 1999-10-06 | 2003-04-29 | Dell Usa, L.P. | System and method for converting alternating current into direct current |
| US6564220B1 (en) | 1999-10-06 | 2003-05-13 | Dell Usa, L.P. | System and method for monitoring support activity |
| US6317316B1 (en) | 1999-10-06 | 2001-11-13 | Dell Usa, L.P. | Method and system for integrated personal computer components |
| US6563698B1 (en) | 1999-10-06 | 2003-05-13 | Dell Usa, L.P. | System and method for providing a computer system with a detachable component |
| 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 |
| US6513045B1 (en) * | 1999-11-17 | 2003-01-28 | International Business Machines Corporation | Method and an apparatus for providing cross product automated user assistance in the planning, configuration, and management of information systems |
| US6539372B1 (en) * | 1999-11-17 | 2003-03-25 | International Business Machines Corporation | Method for providing automated user assistance customized output in the planning, configuration, and management of information systems |
| US6957425B1 (en) * | 1999-11-30 | 2005-10-18 | Dell Usa, L.P. | Automatic translation of text files during assembly of a computer system |
| US6581169B1 (en) * | 1999-12-08 | 2003-06-17 | Inventec Corporation | Method and device for automatic computer testing on a plurality of computers through a local area network |
| GB2357169B (en) * | 1999-12-10 | 2002-06-05 | Inventec Corp | Automatic monitoring system on software installation for computers on the product line |
| US7424444B1 (en) | 1999-12-20 | 2008-09-09 | Dell Usa, L.P. | Apparatus and method for configuring computers |
| US6854009B1 (en) * | 1999-12-22 | 2005-02-08 | Tacit Networks, Inc. | Networked computer system |
| US6631606B2 (en) | 2000-01-18 | 2003-10-14 | Dell Products L.P. | System and method for accommodating atypical customer requirements in a mass customization manufacturing facility |
| US6892104B2 (en) * | 2000-01-18 | 2005-05-10 | Dell Products L.P. | System and method for manufacturing products according to customer orders |
| US6711798B2 (en) | 2000-01-18 | 2004-03-30 | Dell Products L.P. | Method for manufacturing products according to customer orders |
| IL140142A0 (en) * | 2000-02-23 | 2002-02-10 | Ibm | Method and system for identifying a failing device during boot |
| US6772192B1 (en) * | 2000-02-29 | 2004-08-03 | Hewlett-Packard Development Company, L.P. | Software download and distribution via image building and multicast |
| US20050213146A1 (en) * | 2000-03-24 | 2005-09-29 | Parulski Kenneth A | Configuring image storage products to provide selected imaging services |
| US7155713B1 (en) * | 2000-04-27 | 2006-12-26 | Microsoft Corporation | Componentized operating system |
| 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 |
| US6681391B1 (en) * | 2000-06-21 | 2004-01-20 | Microsoft Corporation | Method and system for installing software on a computer system |
| US20020092004A1 (en) * | 2000-07-26 | 2002-07-11 | Lee John Michael | Methods and systems for automatically generating software applications |
| 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 |
| US7264050B2 (en) * | 2000-09-22 | 2007-09-04 | Weatherford/Lamb, Inc. | Method and apparatus for controlling wellbore equipment |
| US6907597B1 (en) * | 2000-10-13 | 2005-06-14 | Ati International Srl | Method and apparatus for constructing an executable program in memory |
| US6955170B1 (en) | 2000-10-27 | 2005-10-18 | 3M Innovative Properties Company | Automated respirator fit testing method and system |
| 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 |
| US7206828B1 (en) * | 2000-11-10 | 2007-04-17 | Microsoft Corporation | Location-based scenarios to facilitate selection of system configuration |
| JP4774145B2 (ja) * | 2000-11-24 | 2011-09-14 | 富士通株式会社 | 構造化文書圧縮装置および構造化文書復元装置並びに構造化文書処理システム |
| US20020154114A1 (en) * | 2000-11-30 | 2002-10-24 | Christensen Thomas Kragh | Method and system for customising build-to-order products |
| 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 |
| US7085824B2 (en) | 2001-02-23 | 2006-08-01 | Power Measurement Ltd. | Systems for in the field configuration of intelligent electronic devices |
| US6853978B2 (en) * | 2001-02-23 | 2005-02-08 | Power Measurement Ltd. | System and method for manufacturing and configuring intelligent electronic devices to order |
| US6816746B2 (en) | 2001-03-05 | 2004-11-09 | Dell Products L.P. | Method and system for monitoring resources within a manufacturing environment |
| 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 |
| 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 |
| US6560509B2 (en) | 2001-03-05 | 2003-05-06 | Dell Products L.P. | System and method for automated management of a distribution facility |
| US6615092B2 (en) | 2001-03-05 | 2003-09-02 | Dell Products L.P. | Method, system and facility for controlling resource allocation within a manufacturing environment |
| EP1265133A1 (de) * | 2001-06-07 | 2002-12-11 | Siemens Aktiengesellschaft | Verfahren zum Laden von Software auf mehrere Prozessoren |
| US20020188938A1 (en) * | 2001-06-11 | 2002-12-12 | Dong Mimi Chu | System and method for providing application software for a peripheral device |
| US20030014137A1 (en) * | 2001-07-16 | 2003-01-16 | Stephanus Saputro | Method and system for selecting a set of filter coefficients in a build-to-order computer system |
| JP4134536B2 (ja) * | 2001-07-27 | 2008-08-20 | 株式会社日立製作所 | 情報機器の取引方法 |
| GB2383854B (en) * | 2001-09-06 | 2005-06-22 | Sun Microsystems Inc | Method for checking a computer system configuration |
| US20030055932A1 (en) * | 2001-09-19 | 2003-03-20 | Dell Products L.P. | System and method for configuring a storage area network |
| US6962306B2 (en) * | 2002-07-15 | 2005-11-08 | West Ronald R | Units for storing flexible elongated objects |
| US20040162857A1 (en) * | 2003-02-14 | 2004-08-19 | Butts David A. | System for managing and dynamically recreating factory environments |
| US20040210676A1 (en) * | 2003-04-19 | 2004-10-21 | Noto Gary Patrick | System for Calculating minimum images to service customer orders |
| US7266820B2 (en) * | 2003-08-14 | 2007-09-04 | Dell Products L.P. | Trunked customized connectivity process for installing software onto an information handling system |
| US20050050320A1 (en) * | 2003-09-02 | 2005-03-03 | Microsoft Corporation | Branding framework |
| US7562346B2 (en) * | 2003-09-02 | 2009-07-14 | Microsoft Corporation | Software componentization for building a software product |
| US7360212B2 (en) * | 2003-10-09 | 2008-04-15 | Dell Products L.P. | Build automation and verification for modular servers |
| US20050097548A1 (en) * | 2003-10-31 | 2005-05-05 | Dillenburg Brian J. | Systems and methods for developing and distributing software components |
| US20050177828A1 (en) * | 2004-02-05 | 2005-08-11 | Graham Christoph J. | Restore media build automation |
| TW200535602A (en) * | 2004-04-16 | 2005-11-01 | Hon Hai Prec Ind Co Ltd | A system and method for testing motherboards automatically |
| JP4572093B2 (ja) * | 2004-07-06 | 2010-10-27 | 日本電気株式会社 | システム構築ガイドシステム |
| US7271996B2 (en) | 2004-12-03 | 2007-09-18 | Electro Industries/Gauge Tech | Current inputs interface for an electrical device |
| US20060123415A1 (en) * | 2004-12-03 | 2006-06-08 | Dandekar Shree A | System for distributing middleware applications on information handling system |
| US8020141B2 (en) * | 2004-12-06 | 2011-09-13 | Microsoft Corporation | Operating-system process construction |
| US7882317B2 (en) * | 2004-12-06 | 2011-02-01 | Microsoft Corporation | Process isolation using protection domains |
| US7451435B2 (en) * | 2004-12-07 | 2008-11-11 | Microsoft Corporation | Self-describing artifacts and application abstractions |
| US7600232B2 (en) | 2004-12-07 | 2009-10-06 | Microsoft Corporation | Inter-process communications employing bi-directional message conduits |
| CN100349119C (zh) * | 2004-12-30 | 2007-11-14 | 杭州华三通信技术有限公司 | 软件安装与集成的方法 |
| US8849968B2 (en) | 2005-06-20 | 2014-09-30 | Microsoft Corporation | Secure and stable hosting of third-party extensions to web services |
| US8065204B2 (en) * | 2005-09-29 | 2011-11-22 | Sony Corporation | System and method for software integration and factory deployment |
| US8074231B2 (en) * | 2005-10-26 | 2011-12-06 | Microsoft Corporation | Configuration of isolated extensions and device drivers |
| US20070094495A1 (en) * | 2005-10-26 | 2007-04-26 | Microsoft Corporation | Statically Verifiable Inter-Process-Communicative Isolated Processes |
| US20070266371A1 (en) * | 2005-12-30 | 2007-11-15 | Ramakrishnan Suraj | Multiple correction requests occurring from a single request |
| US8032898B2 (en) | 2006-06-30 | 2011-10-04 | Microsoft Corporation | Kernel interface with categorized kernel objects |
| US20080040127A1 (en) * | 2006-08-14 | 2008-02-14 | Carol Jean Williams | Customer Customized Resource Media |
| WO2008035339A2 (en) * | 2006-09-21 | 2008-03-27 | Vringo, Inc. | Personalized installation files |
| JP2008139916A (ja) * | 2006-11-30 | 2008-06-19 | Canon Inc | 情報処理装置、情報処理装置の制御方法、および情報処理装置の制御プログラム |
| US8789063B2 (en) * | 2007-03-30 | 2014-07-22 | Microsoft Corporation | Master and subordinate operating system kernels for heterogeneous multiprocessor systems |
| US20080244507A1 (en) * | 2007-03-30 | 2008-10-02 | Microsoft Corporation | Homogeneous Programming For Heterogeneous Multiprocessor Systems |
| US7558642B2 (en) * | 2007-04-27 | 2009-07-07 | International Business Machines Corporation | Method, apparatus, and product for optimizing manufacturing tests by integrating part and test objects in the same order configuration application |
| CN101453416A (zh) * | 2007-11-30 | 2009-06-10 | 国际商业机器公司 | 用于远程程序安装的包预取的服务节点、网络及其方法 |
| JP5293344B2 (ja) * | 2009-03-30 | 2013-09-18 | 株式会社リコー | 画像処理装置、ソフトウェア配信システム、インストール処理方法およびプログラム |
| CN104516739B (zh) * | 2015-01-05 | 2018-01-19 | 税友软件集团股份有限公司 | 第三方软件集成的方法及系统 |
| US11204749B2 (en) * | 2016-09-20 | 2021-12-21 | Apple Inc. | State machines for installation management |
| CN107341003B (zh) * | 2017-06-15 | 2020-08-07 | 百富计算机技术(深圳)有限公司 | 定制系统实现方法、计算机设备和存储介质 |
Family Cites Families (22)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4590557A (en) * | 1983-09-12 | 1986-05-20 | Pitney Bowes Inc. | Method and apparatus for controlling software configurations in data processing systems |
| US4803683A (en) * | 1985-08-30 | 1989-02-07 | Hitachi, Ltd. | Method and apparatus for testing a distributed computer system |
| US4916637A (en) * | 1987-11-18 | 1990-04-10 | International Business Machines Corporation | Customized instruction generator |
| US5263148A (en) * | 1988-09-09 | 1993-11-16 | Compaq Computer Corporation | Method and apparatus for configuration of computer system and circuit boards |
| 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 |
| EP0541875A1 (en) * | 1991-11-15 | 1993-05-19 | International Business Machines Corporation | Method for facilitating the configuration of programs |
| JP2716906B2 (ja) * | 1992-03-27 | 1998-02-18 | 株式会社東芝 | 不揮発性半導体記憶装置 |
| US5361358A (en) * | 1992-08-07 | 1994-11-01 | International Business Machines Corporation | System and method for installing program code for operation from multiple bootable operating systems |
| 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 |
| JPH06332674A (ja) * | 1993-05-24 | 1994-12-02 | Hitachi Ltd | プログラムの自動インストールシステム |
| BR9402027A (pt) * | 1993-05-28 | 1994-12-13 | Xerox Corp | Processo para gerenciar uma configuração e assegurar compatibilidade entre componentes num sistema de computação, e, processo para eliminar incompatibilidades entre software residente e software de migração num sistema de computador automatizado |
| JPH0764771A (ja) * | 1993-08-26 | 1995-03-10 | Seiko Epson Corp | プログラム登録装置および登録方法 |
| CN1046361C (zh) * | 1993-11-25 | 1999-11-10 | 日东工器株式会社 | 计算机系统 |
| JP3386232B2 (ja) * | 1994-07-15 | 2003-03-17 | 富士通株式会社 | テスト計算機システム |
| US5668992A (en) * | 1994-08-01 | 1997-09-16 | International Business Machines Corporation | Self-configuring computer system |
| JPH0887460A (ja) * | 1994-09-19 | 1996-04-02 | Seiko Epson Corp | インストールシステム |
| US5794052A (en) * | 1995-02-27 | 1998-08-11 | Ast Research, Inc. | Method of software installation and setup |
| JPH0944375A (ja) * | 1995-07-26 | 1997-02-14 | Hitachi Ltd | テストプログラムの自動テスト項目選択方式 |
| 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 |
| KR100191269B1 (ko) * | 1996-08-23 | 1999-06-15 | 윤종용 | 하드 디스크를 이용한 컴퓨터 시스템의 검사 방법 |
-
1997
- 1997-08-29 US US08/921,438 patent/US5963743A/en not_active Expired - Lifetime
-
1998
- 1998-06-25 BR BR9802223-7A patent/BR9802223A/pt not_active Application Discontinuation
- 1998-07-14 SG SG1998001794A patent/SG68066A1/en unknown
- 1998-07-15 JP JP20100198A patent/JP4216372B2/ja not_active Expired - Lifetime
- 1998-07-16 KR KR1019980028798A patent/KR100655124B1/ko not_active Expired - Lifetime
- 1998-07-23 GB GB9816126A patent/GB2329050B/en not_active Expired - Lifetime
- 1998-07-24 MY MYPI98003389A patent/MY114953A/en unknown
- 1998-07-27 TW TW087112265A patent/TW455815B/zh not_active IP Right Cessation
- 1998-08-11 DE DE19836381A patent/DE19836381C2/de not_active Expired - Lifetime
- 1998-08-21 AU AU80886/98A patent/AU742509B2/en not_active Expired
- 1998-08-21 FR FR9810620A patent/FR2767946B1/fr not_active Expired - Lifetime
- 1998-08-21 IT IT1998TO000721A patent/IT1303245B1/it active IP Right Grant
- 1998-08-28 CN CN03160103.0A patent/CN1525325B/zh not_active Expired - Lifetime
- 1998-08-28 CN CNB981188052A patent/CN1148655C/zh not_active Expired - Lifetime
-
2008
- 2008-05-07 JP JP2008121290A patent/JP4681025B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| KR100655124B1 (ko) | 2007-07-09 |
| HK1071610A1 (zh) | 2005-07-22 |
| CN1525325A (zh) | 2004-09-01 |
| FR2767946B1 (fr) | 2005-10-28 |
| GB2329050B (en) | 2003-02-19 |
| TW455815B (en) | 2001-09-21 |
| JP4216372B2 (ja) | 2009-01-28 |
| DE19836381A1 (de) | 1999-03-18 |
| US5963743A (en) | 1999-10-05 |
| JPH11161476A (ja) | 1999-06-18 |
| JP4681025B2 (ja) | 2011-05-11 |
| JP2008243224A (ja) | 2008-10-09 |
| CN1525325B (zh) | 2010-04-28 |
| IT1303245B1 (it) | 2000-11-02 |
| GB9816126D0 (en) | 1998-09-23 |
| SG68066A1 (en) | 1999-10-19 |
| GB2329050A8 (en) | 1999-04-16 |
| AU742509B2 (en) | 2002-01-03 |
| IE980485A1 (en) | 1999-03-10 |
| ITTO980721A0 (it) | 1998-08-21 |
| FR2767946A1 (fr) | 1999-03-05 |
| DE19836381C2 (de) | 2003-04-24 |
| CN1148655C (zh) | 2004-05-05 |
| AU8088698A (en) | 1999-03-11 |
| CN1211006A (zh) | 1999-03-17 |
| GB2329050A (en) | 1999-03-10 |
| MY114953A (en) | 2003-02-28 |
| KR19990023214A (ko) | 1999-03-25 |
| BR9802223A (pt) | 1999-10-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ITTO980721A1 (it) | Apparecchio per facilitare l'installazione e la verifica del software per un sistema di computer prodotto su ordinazione. | |
| ITTO980720A1 (it) | Procedimento per l'installazione e la verifica del software per un si- stema 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 | |
| US9372784B2 (en) | Test system configuration method and system | |
| US8296734B2 (en) | System and method for testing a software product | |
| CN106126204B (zh) | 一种基于模块化设计的信息系统迭代式扩展开发方法 | |
| US7080357B2 (en) | Software package verification | |
| US8677348B1 (en) | Method and apparatus for determining least risk install order of software patches | |
| CN113050953A (zh) | 基于注释生成代码的方法、装置及存储介质 | |
| CN115629815B (zh) | 可验证emmc用户接口的fpga原型验证平台 | |
| CN110321282A (zh) | Mock测试的XML配置文件修改方法和系统 | |
| JP2001022559A (ja) | コンピュータシステムのソフトウエアインストールおよび、または試験方法 | |
| 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) | 以太网服务自动化配置方法及相关设备 | |
| CN118760439A (zh) | 应用部署方法、装置、电子设备及存储介质 | |
| CN120832275A (zh) | 芯片验证系统、验证方法、设备及介质 | |
| KR20010002573A (ko) | 컴퓨터 시스템으로의 소프트웨어 설치 및/또는 테스팅 방법 | |
| JP2001014146A (ja) | コンピュータシステムのソフトウェアインストールおよび、または試験方法 | |
| IE83291B1 (en) | Software installation and testing for a build-to-order computer system | |
| IE83293B1 (en) | Apparatus for installing and/or testing software | |
| IE19980485A1 (en) | Apparatus for installing and/or testing software | |
| IE83292B1 (en) | Software installation and testing for a build-to-order computer system | |
| KR20010002571A (ko) | 컴퓨터 시스템의 제조에 사용하기 위한 장치 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 0001 | Granted |