Tecnico en programacion

Solo disponible en BuenasTareas
  • Páginas : 20 (4961 palabras )
  • Descarga(s) : 0
  • Publicado : 26 de agosto de 2012
Leer documento completo
Vista previa del texto
Diseo gil con TDD



Carlos Bl Jurado y colaboradores. Prologo de Jos Manuel Beas

Primera Edicin, Enero de 2010 www.iExpertos.com

El libro se ha publicado bajo la Licencia Creative Commons






















































2





ndice general







I|Base Terica|27|
1.|El Agilismo|28|

1.1.Modelo en cascada . . . . . . . . . . . . . . . . . . . . . 30

1.2. Hablemos de cifras . . . . . . . . . . . . . . . . . . . . . . 32

1.3. El manifiesto gil . . . . . . . . . . . . . . . . . . . . . . . 33

1.4. En qu consiste el agilismo?: Un enfoque prctico . . . 36

1.5. La situacin actual . .. . . . . . . . . . . . . . . . . . . . 40

1.6. gil parece, pltano es . . . . . . . . . . . . . . . . . . . . 42

1.7.|Los roles dentro del equipo . . . . . . . . . . . . . . . . .|43|
1.8. Por qu nos cuesta comenzar a ser giles? . . . . . . .|46|
2. Qu es el Desarrollo Dirigido por Tests? (TDD)|48|
2.1.|Elalgoritmo TDD . . . . . . . . . . . . . . . . . . . . . . .|51|
|2.1.1.|Escribir la especificacin primero . . . . . . . . . .|52|
|2.1.2. Implementar el cdigo que hace funcionar el ejem-||
||plo . . . . . . . . . . . . . . . . . . . . . . . . . . .|52|
|2.1.3.|Refactorizar . . . . . . . . . . . . . . . . . . . . . .|53|2.2. Consideraciones y recomendaciones . . . . . . . . . . . .|55|
|2.2.1. Ventajas del desarrollador experto frente al junior .|55|
|2.2.2.|TDD con una tecnologa desconocida . . . . . . .|56|
|2.2.3.|TDD en medio de un proyecto . . . . . . . . . . .|56|
3. Desarrollo Dirigido por Tests de Aceptacin (ATDD)|58|
3.1.|Las historias de usuario . . . . .. . . . . . . . . . . . . .|59|

3.2. Qu y no Cmo . . . . . . . . . . . . . . . . . . . . . . . . 63

3.3. Est hecho o no? . . . . . . . . . . . . . . . . . . . . . . 66

3.4. El contexto es esencial . . . . . . . . . . . . . . . . . . . . 67




3

NDICE GENERAL|NDICE GENERAL|
4.|Tipos detest y su importancia||68|
|4.1. Terminologa en la comunidad TDD|. . . . . . . . . . . . 69|
|4.1.1.|Tests de Aceptacin . . . .|. . . . . . . . . . . . . 70|
|4.1.2.|Tests Funcionales . . . . .|. . . . . . . . . . . . . 71|
|4.1.3.|Tests de Sistema . . . . . .|. . . . . . . . . . . . . 71|
|4.1.4.|Tests Unitarios .. . . . . .|. . . . . . . . . . . . .|74|
|4.1.5.|Tests de Integracin . . . .|. . . . . . . . . . . . . 75|
5.|Tests unitarios y frameworks xUnit||77|
|5.1. Las tres partes del test: AAA . . .|. . . . . . . . . . . . . 78|
6.|Mocks y otros dobles de prueba||88|

6.1. Cundo usar un objeto real, un stub o un mock . . . . . .90

6.2. La metfora Record/Replay . . . . . . . . . . . . . . . . . 101

7. Diseo Orientado a Objetos 104

7.1. Diseo Orientado a Objetos (OOD) . . . . . . . . . . . . . 104

7.2. Principios S.O.L.I.D . . . . . . . . . . . . . . . . . . . . . 105

7.2.1. Single Responsibility Principle (SRP) . . . . . . . 1067.2.2. Open-Closed Principle (OCP) . . . . . . . . . . . . 107

7.2.3. Liskov Substitution Principle (LSP) . . . . . . . . . 107

7.2.4. Interface Segregation Principle (ISP) . . . . . . . . 108

|7.2.5. Dependency Inversin Principle (DIP) . . . . . . .|108|
|7.3. Inversin del Control (IoC) . . . . . . . . . . . . . . . . ....
tracking img