2009-05-09 10 views
16

Sigo escuchando sobre el título de "Arquitecto" en corporaciones de software más grandes, y estoy interesado en saber qué hacen y cómo lo hacen.¿Qué hace un arquitecto de software y qué programas utilizan?

¿Les corresponde a ellos preparar diagramas visuales que describan el funcionamiento del software? y qué programas utilizan para ayudar a su diseño? Me gusta Class Designing?

¿Diseñan en un nivel superior y hacen que otros (Desarrolladores) escriban código de una manera que una máquina puede ejecutar? ¿O entran en los detalles de la implementación?

+0

Bueno, la herramienta más importante para el trabajo es el cerebro, sin duda :-) – lothar

+0

Revisa este artículo mío: http://www.yegor256.com/2014/10/12/who-is-software-architect .html – yegor256

Respuesta

19

Si una persona puede construir un cobertizo sin un plano, no significa que pueda, o debería construir una casa sin un plano.

Los arquitectos ven lo que necesita ahora, lo que quiere decir cuando dice lo que necesita y diseña una estrategia de software que le dará lo que necesita hoy, y un hogar en el que puede crecer (y desde) en el futuro . Los arquitectos que están familiarizados con la construcción tienen más éxito, en software, los arquitectos que pueden codificar y lo han hecho a un alto nivel (pero no todos los días) pueden ayudar a sentar las bases para que otros desarrolladores triunfen juntos.

Las herramientas que intervienen en el diseño del software son en gran parte como lápices, borradores y reglas. Es lo que dibujas con el lápiz que es más importante que las herramientas.

El papel de un arquitecto es ser capaz de unir y mantener un proyecto diseñado desde el nivel más alto hasta las tuercas y los pernos donde se debe recordar la atención por los detalles. Serán expertos en encontrar las excepciones, los agujeros y las cosas que serán insostenibles o propensas a romperse en el diseño de un software y remediarlos antes incluso de que comience a garantizar un mayor grado de éxito.

Dicho esto, para la SA que uso, utilizo herramientas como OmniGraffle, Balsamiq, algunas cosas de UML, y un montón de papel y pizarras. Mi objetivo al diseñar es sintetizar lo complicado en algo simple, efectivo y utilizable por todos.

Mi objetivo es comprender las necesidades de mis clientes mejor de lo que ellos las entienden, al punto que puedo ayudarlos a tener las realizaciones que están buscando para el próximo "salto".

Ser un arquitecto para resolver los problemas de las personas significa lidiar con muchos de ellos, desde muchos ángulos, y encontrar los patrones comunes en las solicitudes de todos.

+0

Bastante bien :) –

8

Al igual que todos los puestos de trabajo, es muy subjetivo y variará según la compañía.

Dicho esto, aquí está mi opinión sobre ella ...

un arquitecto de software trabaja con el analista de negocio para convertir los requisitos de negocio y las especificaciones funcionales en una Especificación Técnica, que los desarrolladores pueden trabajar.

La arquitectura se trata de diseñar & planificando la mejor manera de construir algo, y aunque esto puede considerarse de alto nivel, aún se beneficia del conocimiento correcto de cosas de nivel inferior y puede requerir detalles específicos en algunas situaciones.

Qué herramientas usarán dependerá de cómo funcione su mente.

+0

"Un Arquitecto de Software trabaja con el Analista de Negocios para convertir los Requisitos Comerciales y las Especificaciones Funcionales en una Especificación Técnica de la cual los desarrolladores pueden trabajar". --- Estoy de acuerdo con esto completamente –

2

Mi viejo se llamaba a sí mismo arquitecto de software cuando estaba trabajando en un gran grupo empresarial hace unos años.(Ahora que se ha ido a estremecimiento consultoría.) Así que sólo estoy diciendo esto desde un Punto de vista observacional ...

Parecía ser el que se puso en contacto con el equipo de ventas de pre-requisitos para reunir y organizar la especulación.

También, como habrás adivinado, dibujó (en UML) el plan general para el sistema, aunque no estoy seguro de qué software usó para eso.

AFAIK, él no hizo mucha programación real. Sin embargo supervisó a un equipo de programadores (en conjunto con un desarrollador principal) y pudo codificar bastante bien a sí mismo, por lo que no me sorprendería si se metiera en la trampa si fuera necesario.

Como dije, estas son solo observaciones. Cada organización probablemente tenga una idea diferente también. Pero espero que sea útil.

1

Supongo que la respuesta que obtengas diferirá donde la solicites.

Donde trabajo del arquitecto es responsibe para lo siguiente:

  1. de conducción y la revisión del análisis de las necesidades
  2. El subir con las especificaciones
  3. Preparando un diseño lógico y físico del sistema
  4. Próximamente con un plan de proyecto para desarrollo

Las herramientas utilizadas incluiría

  • Visio
  • Microsoft Project
4

Mi empresa produce componentes de software. Como tal, mi papel como arquitecto es

  • peticiones de características se convierten en API cuerdo diseños
  • crear diseños que son fáciles de aprender y performant
  • Diseño para el horizonte, no para hoy
  • Crítica/mejorar diseños en las API de otros
  • Programa de par con ingenieros para mejorar su trabajo
  • Explicar el razonamiento detrás de los diseños a otros ingenieros para ayudarlos a convertirse en arquitectos.
0

Me gustaría señalar que también depende del software que se tiene que desarrollar y la longitud del proyecto. También podría depender del tipo de proceso de producción que esté utilizando.
El programa que podrían usar es el arquitecto visual, star uml.
creo que hacer un poco de planificación de proyectos que ayuda con la mainteinance así

0

poco tarde en el juego, pero ¿ha mirado

nota del proceso que la empresa emplea puede decidir las herramientas que utiliza IE RUP recomendará el uso de Rational Rose.

Estas herramientas no sólo que los diagramas de clases, van a permitir la captura de los procesos de negocio, modelo lógico, el diseño del modelo, casos de uso, modelo de implementación, etc.

una revelación para mí fue mirar el Modelado "4 + 1", google "4 + 1 RUP" y tener una lectura.

Soy nuevo en este mundo, sin embargo, esta es una descripción general rápida de mis observaciones.

Cuestiones relacionadas