2009-05-09 10 views
16

Continuo a sentire parlare del titolo "Architetto" in società di software più grandi, e sono interessato a sapere cosa fanno e come lo fanno.Cosa fa un architetto software e quali programmi usano?

È il loro lavoro preparare schemi visivi che descrivano il funzionamento del software? e quali programmi usano per aiutare il loro design? Mi piace Class Designing?

Progettano a un livello superiore e ottengono ad altri (sviluppatori) la possibilità di scrivere codice in un modo che una macchina può eseguire? Oppure entrano nei dettagli dell'implementazione?

+0

Beh, lo strumento più importante per il lavoro è il cervello, nessuna domanda :-) – lothar

+0

Controlla questo mio articolo: http://www.yegor256.com/2014/10/12/who-is-software-architect .html – yegor256

risposta

19

Se una persona può costruire un capannone senza un progetto, ciò non significa che possono, o dovrebbero costruire una casa senza un progetto.

Gli architetti vedono ciò di cui hai bisogno ora, cosa intendi quando dici ciò di cui hai bisogno e progetta una strategia software che ti dia ciò che ti serve oggi e una casa in cui puoi crescere (e da) in futuro . Gli architetti che hanno familiarità con la costruzione riescono più spesso, nel software, gli architetti che sono in grado di codificarlo e lo hanno fatto ad un livello elevato (ma non lo fanno giorno per giorno) possono aiutare a gettare le basi affinché altri sviluppatori riescano insieme.

Gli strumenti coinvolti nella progettazione del software sono in gran parte simili a matite, cancellatori e righelli. È ciò che disegni con la matita che è più importante degli strumenti.

Il ruolo di un architetto è quello di essere in grado di riunire e tenere insieme un progetto che è stato progettato dal livello molto alto fino ai bulloni, dove l'attenzione al dettaglio deve essere ricordata. Saranno esperti nel trovare le eccezioni, i buchi e le cose che saranno insostenibili o inclini a rompere il progetto di un software e rimediarli prima ancora che abbiano iniziato a garantire un maggiore successo.

Detto questo, per la SA che faccio, uso strumenti come OmniGraffle, Balsamiq, alcune cose UML e un sacco di carta per grafici e lavagne. Il mio obiettivo nel progettare è sintetizzare il complicato in qualcosa di semplice, efficace e utilizzabile da tutti.

Il mio obiettivo è capire meglio i bisogni dei miei clienti di quanto li capiscano, al punto che posso aiutarli ad avere le realizzazioni che stanno cercando per il prossimo "salto".

Essere un architetto per risolvere i problemi delle persone significa occuparsi di molti di loro, da molti punti di vista, e trovare gli schemi comuni nelle richieste di tutti.

+0

Piuttosto interessante :) –

8

Come tutti i titoli di lavoro, è molto soggettivo e varierà tra le aziende.

Detto questo, ecco il mio punto di vista su di esso ...

Un Software Architect lavora con il Business Analyst per convertire i requisiti di business e le specifiche funzionali in una specifica tecnica, che gli sviluppatori possono lavorare da.

L'architettura riguarda la progettazione di & pianificazione del modo migliore per costruire qualcosa, e mentre questo può essere considerato di alto livello, beneficia ancora dalla corretta conoscenza di cose di livello inferiore, e potrebbe richiedere entrare in dettagli specifici in alcune situazioni.

Gli strumenti che usano dipenderanno da come funziona la loro mente.

+0

"Un architetto del software collabora con l'analista aziendale per convertire i requisiti aziendali e le specifiche funzionali in una specifica tecnica da cui gli sviluppatori possono lavorare". --- D'accordo con questo completamente –

2

Il mio vecchio si definiva un architetto del software quando lavorava in un grande gruppo aziendale alcuni anni fa.(Ora che se n'è andato verso brivido consulenza.) Così sto solo dicendo questo da un POV osservazionale ...

Sembrava di essere colui che ha mantenuto i contatti con il team di pre-vendita per raccogliere esigenze e organizzare la spec.

Inoltre, come hai intuito, ha disegnato (in UML) il piano generale per il sistema, anche se non sono sicuro del software che ha usato per questo.

AFAIK, non ha fatto molta programmazione. Ha supervisionato un team di programmatori anche se (in collaborazione con uno sviluppatore principale) e ha potuto programmare bene se stesso, quindi non mi sorprenderebbe se entrasse nel gioco se fosse necessario.

Come ho già detto, queste sono solo osservazioni. Ogni organizzazione ha probabilmente anche un'idea diversa. Ma spero sia utile

1

Immagino che la risposta che otterrete sarà diversa dove lo chiedete.

Dove lavoro dell'architetto è responsibe per i seguenti:

  1. di guida e la revisione della analisi dei bisogni
  2. Venendo alle specifiche
  3. preparando un disegno logico e fisico del sistema
  4. Venire con un piano di progetto per lo sviluppo

Gli strumenti utilizzati includerebbe

  • Visio
  • Microsoft Project
4

La mia azienda produce componenti software. Come tale, il mio ruolo di architetto è quello di

  • funzionalità Accendere richieste in API sano disegni
  • creare disegni che sono facili da imparare e performante
  • Design per l'orizzonte, non per oggi
  • Critica/migliorare i progetti nelle API degli altri
  • Programma di abbinamento con gli ingegneri per migliorare il loro lavoro
  • Spiegare il ragionamento alla base di progetti per altri ingegneri per aiutarli a crescere in architetti.
0

Vorrei sottolineare che dipende anche dal software che deve essere sviluppato e dalla lunghezza del progetto. Potrebbe anche dipendere dal tipo di processo di produzione che si sta utilizzando.
Programma che potrebbero usare è architetto visivo, stella uml.
Penso di fare una pianificazione del progetto si aiuta con mainteinance così

0

bit alla fine del gioco, ma hai guardato

nota il processo che la società impiega può decidere gli strumenti utilizzati IE RUP raccomanderà l'utilizzo di Rational Rose.

Questi strumenti non solo che i diagrammi di classe, che consentirà per la cattura dei processi di business, modello logico, il disegno del modello, utilizzare il caso, modello di distribuzione ecc

un aprire gli occhi per me è stato a guardare la Modellazione "4 + 1", google "4 + 1 RUP" e lettura.

Sono nuovo in questo mondo, tuttavia questa è una rapida panoramica delle mie osservazioni.