13.01.2015 Views

Pensar en C++ (Volumen 1) - Grupo ARCO

Pensar en C++ (Volumen 1) - Grupo ARCO

Pensar en C++ (Volumen 1) - Grupo ARCO

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

✐<br />

✐<br />

✐<br />

“Volum<strong>en</strong>1” — 2012/1/12 — 13:52 — page 25 — #63<br />

✐<br />

1.9. Análisis y diseño<br />

1.9.4. Fase 3: Construir el núcleo<br />

Esta es la conversión inicial desde el diseño rudo al cuerpo del código compilable<br />

y ejecutable que se puede probar, y que aprobará y desaprobará su arquitectura. No<br />

es un proceso <strong>en</strong> un solo paso, más bi<strong>en</strong> es el principio de una serie de pasos que<br />

iterativam<strong>en</strong>te construirán el sistema, como verá <strong>en</strong> la fase 4.<br />

Su objetivo es <strong>en</strong>contrar el núcleo de la arquitectura de su sistema que hay que<br />

implem<strong>en</strong>tar para g<strong>en</strong>erar un sistema funcional, sin importar lo incompleto que esté<br />

el sistema <strong>en</strong> la pasada inicial. Está creando una estructura que se puede construir<br />

con más iteraciones. También está llevando a cabo la primera de muchas integraciones<br />

del sistema y pruebas, y dando a los cli<strong>en</strong>tes realim<strong>en</strong>tación sobre cómo serán<br />

y cómo progresan sus sistemas. Idealm<strong>en</strong>te, también expone algunos de los riesgos<br />

críticos. Probablem<strong>en</strong>te descubrirá cambios y mejoras que se pued<strong>en</strong> hacer <strong>en</strong><br />

la arquitectura original - cosas que podría no haber apr<strong>en</strong>dido sin implem<strong>en</strong>tar el<br />

sistema.<br />

Parte de la construcción del sistema es la dosis de realidad que se obti<strong>en</strong>e al probar<br />

su análisis de requisitos y su especificación del sistema (existe de cualquier forma).<br />

Asegúrese de que sus pruebas verifican los requisitos y los casos de uso. Cuando<br />

el núcleo de su sistema sea estable, estará preparado para progresar y añadir más<br />

funcionalidad.<br />

1.9.5. Fase 4: Iterar los casos de uso<br />

Una vez que la estructura del núcleo está funcionando, cada conjunto de características<br />

que añade es un pequeño proyecto <strong>en</strong> sí mismo. Añada una colección de<br />

características durante cada iteración, un periodo razonablem<strong>en</strong>te corto de desarrollo.<br />

¿Cómo de grande es una iteración Idealm<strong>en</strong>te, cada iteración dura unas tres semanas<br />

(puede cambiar dep<strong>en</strong>di<strong>en</strong>do del l<strong>en</strong>guaje de implem<strong>en</strong>tación). Al final de<br />

ese periodo, t<strong>en</strong>drá un sistema probado e integrado con más funcionalidades de las<br />

que t<strong>en</strong>ía antes. Pero lo que es particularm<strong>en</strong>te interesante son las bases de la iteración:<br />

un único caso de uso. Cada caso de uso es un paquete de funcionalidades<br />

relacionadas que se puede construir <strong>en</strong> su sistema de una vez, a lo largo de una iteración.<br />

No sólo le da una mejor idea de qué alcance debería t<strong>en</strong>er, también le da más<br />

valor a la idea un caso de uso, ya que el concepto no se descarta después del análisis<br />

y diseño, sino que es una unidad fundam<strong>en</strong>tal de desarrollo durante el proceso de<br />

construcción de software.<br />

Se deja de iterar cuando se consigue la funcionalidad deseada o se acaba el plazo<br />

impuesto y el cli<strong>en</strong>te está satisfecho con la versión actual. (Recuerde, el software es<br />

una subscripción de negocios). Como el proceso es iterativo, ti<strong>en</strong>e muchas oportunidades<br />

para <strong>en</strong>viar un producto <strong>en</strong> lugar de un simple punto final; los proyectos de<br />

software libre trabajan exclusivam<strong>en</strong>te <strong>en</strong> un <strong>en</strong>torno iterativo con alta realim<strong>en</strong>tación,<br />

que es precisam<strong>en</strong>te la clave de su éxito.<br />

Un proceso de desarrollo iterativo es valioso por muchas razones. Puede mostrar<br />

y resolver pronto riesgos críticos, los cli<strong>en</strong>tes ti<strong>en</strong><strong>en</strong> abundantes oportunidades<br />

de cambiar sus opiniones, la satisfacción del programador es más alta, y el proyecto<br />

puede dirigirse con más precisión. Pero un b<strong>en</strong>eficio adicional importante es la realim<strong>en</strong>tación<br />

para los cli<strong>en</strong>tes, los cuales pued<strong>en</strong> ver <strong>en</strong> el estado actual del producto<br />

exactam<strong>en</strong>te donde se <strong>en</strong>cu<strong>en</strong>tra todo. Esto puede reducir o eliminar la necesidad de<br />

abrumadoras reuniones de control y aum<strong>en</strong>tar la confianza y el apoyo de los cli<strong>en</strong>tes.<br />

25<br />

✐<br />

✐<br />

✐<br />

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!