2010-02-20 7 views
5

Il mio team sta utilizzando lo strumento Rhapsody di IBM per lo sviluppo embedded in tempo reale. Sfortunatamente, non siamo soddisfatti del nostro attuale processo di revisione.Qual è il tuo processo di revisione per lo sviluppo di Rhapsody?

difficoltà Più in particolare, abbiamo avuto perché:

  • v'è una mancanza di un buon strumento diff per lo schema cambia
  • lo strumento diff Rhapsody non genera report che è possibile utilizzare in un recensione
  • fonte cronologia dei file non è omogenea in quanto i file di origine sono prodotti MDD quindi non configurati in un VCS ad alta granularità
  • esecuzione diff sul codice sorgente a volte tira in cambiamenti indipendenti effettuate da altri sviluppatori
  • .210
  • a volte modificando le proprietà di un elemento del modello cambia decine di file di origine
  • è facile modificare un file di origine attraverso un cambiamento di proprietà e non saperlo

Qualcuno ha qualche consiglio per fare valutazioni tra pari su Rhapsody sviluppo robusto ma a basso dispendio? Qualche buona pratica e lezione apprese che vorresti condividere? Non sto cercando un processo di scrittura maturo; le curiosità che non conoscevo sarebbero grandiose.

risposta

2

Usiamo Rhapsody per lo sviluppo negli ultimi 5 anni. Il nostro processo attuale prevede l'utilizzo dell'interfaccia COM Rhapsody e dell'interfaccia COM di Microsoft Word per scaricare i pacchetti di revisione in Word per le revisioni dei progetti. Facciamo anche questo per generare la porzione manuale di riferimento della nostra SUM.

Per il codice esaminiamo la sorgente generata.

Inseriamo il modello nel nostro sistema di controllo versione e blocciamo gli elementi del modello dopo che sono stati esaminati. Se lo strumento di controllo della versione rende le cose leggibili solo al momento del check-in, impedisce di modificare accidentalmente un elemento del modello.

L'interfaccia COM è utile anche per scaricare il modello per creare diapositive PowerPoint di diagrammi se si desidera presentare il progetto a un cliente. Dovrai modificare le diapositive dopo che sono state generate, poiché le immagini in genere finiscono per sembrare un po 'divertenti, ma fornisce un rapido punto di partenza.

+0

Come si fa a bloccare giù elementi del modello, soprattutto se si considera che le proprietà per gli elementi sono spesso ereditate da altri elementi? Che dire dei cambiamenti (magari per una correzione di bug) per progettare e codificare? Ti rigenerare e rivedere l'intero kit e il caboodle ogni volta? – thebretness

+0

Il nostro SCM blocca gli articoli. Usiamo Serena Dimensions che ci consente di mettere le cose in uno stato di approvazione, che è quindi necessario un documento di modifica per verificare nuovamente l'elemento. Quindi esaminiamo tutte le differenze tra gli elementi allegati a un documento di modifica. Diffondendo la nuova parola doc, o il codice, a seconda della quale è cambiato. Devi stare attento a cambiare le proprietà di livello superiore, ma una volta che abbiamo configurato il nostro modello, raramente modifichiamo i valori di default di primo livello. – Zanson

+0

Ah. Gotcha. Grazie. – thebretness

4

Usiamo Rhapsody per lo stesso scopo sul posto di lavoro. Le revisioni dei cambiamenti del modello vengono eseguite con uno script che apre la distanza su due copie del nostro repository (una all'inizio delle modifiche, una al più tardi). Questo mostra tutti i cambiamenti pertinenti, senza alcuno dei cruft interni che Rhapsody aggiunge.

Il nostro repository non tiene traccia delle sorgenti generate, ma vediamo spesso molti cambiamenti irrilevanti nei file SBS di Rhapsody. Abbiamo iniziato a impostare i file SBS come di sola lettura sul filesystem, e quindi a modificarli in lettura/scrittura dal pannello delle proprietà in Rhapsody. Ciò non impedisce ai file che contrassegni come letti/scrivi di avere inserito cruft, ma impedisce la modifica dei file non correlati.

Non ho ancora trovato un modo per impedire a Rhapsody di inserire modifiche non pertinenti (ad esempio: a volte aggiunge e rimuove i campi del file tra i salvataggi, nonostante le modifiche minime al modello). Crea molti conflitti di fusione e ho personalmente iniziato a prendere circa 5 minuti per commit per aggiungere solo le modifiche che contano.

1

È anche possibile impedire a Rhapsody di scrivere timestamp nei file sbs impostando la proprietà CG::General::IncrementalCodeGenAcrossSession in false. Questo può aiutare a ridurre la quantità di dati non necessari.

Vedi this link

Problemi correlati