Code Complete | Bienvenido a Construcción de Software

admin/ abril 25, 2017/ code complete, software, Uncategorized/ 0 comments

Introducción

Sabes lo que significa “construcción” cuando se usa fuera del desarrollo de software. “Construcción” es el trabajo que los “trabajadores de la construcción” hacen cuando construyen una casa, una escuela o un rascacielos. Cuando eras más joven, construías cosas con “papel de construcción”. En el uso común, “construcción” se refiere al proceso de construcción(edificios, casa). El proceso de construcción puede incluir algunos aspectos de la planificación, diseño y comprobación de su trabajo, pero sobre todo “construcción” se refiere a la parte práctica de crear algo.

¿Qué es la construcción de software?

Desarrollar software de computadora puede ser un proceso complicado, y en los últimos 25 años, los investigadores han identificado numerosas actividades distintas que entran en el desarrollo de software. Incluyen:

  • Definición del problema
  • Desarrollo de requerimientos
  • Planificación de la construcción
  • Arquitectura de software o diseño de alto nivel
  • Diseño detallado
  • Codificación y depuración
  • Test Unitarios
  • Pruebas de integración
  • Integración
  • Prueba del sistema
  • Mantenimiento correctivo

Si ha trabajado en proyectos informales, podría pensar que esta lista representa una gran cantidad de trámites burocráticos. Si usted ha trabajado en proyectos que son demasiado formales, usted sabe que esta lista representa una gran cantidad de burocracia! Es difícil encontrar un equilibrio entre una formalidad demasiado pequeña y demasiado, y eso se discute más adelante en el libro.

Si usted se ha enseñado a programar o ha trabajado principalmente en proyectos informales, es posible que no haya hecho distinciones entre las muchas actividades que se dedican a crear un producto de software. Mentalmente, es posible que haya agrupado todas estas actividades juntas como “programación”. Si trabajas en proyectos informales, la principal actividad que piensas cuando piensas en crear software es probablemente la actividad a la que los investigadores se refieren como “construcción”.

Figura 1-1

Figura 1-1. Las actividades de construcción se muestran dentro del círculo gris. La construcción se centra en la codificación y depuración, pero también incluye el diseño detallado, las pruebas unitarias, las pruebas de integración y otras actividades

Esta noción intuitiva de “construcción” es bastante exacta, pero sufre de una falta de perspectiva. Poner la construcción en su contexto con otras actividades ayuda a mantener el foco en las tareas correctas durante la construcción y enfatiza adecuadamente las actividades no constructivas importantes. La Figura 1-1 ilustra el lugar de la construcción relacionado con otras actividades de desarrollo de software.

Punto Clave:Como indica la figura, la construcción es mayormente de codificación y depuración, pero también implica diseño detallado, planificación de la construcción, pruebas unitarias, integración, pruebas de integración y otras actividades. Si se tratara de un libro sobre todos los aspectos del desarrollo de software, presentaría discusiones bien equilibradas de todas las actividades del proceso de desarrollo. Debido a que este es un manual de técnicas de construcción, sin embargo, pone un énfasis desigual en la construcción y sólo toca temas relacionados. Si este libro fuera un perro, se acurrucaría hasta la construcción, sacudiría su cola en el diseño y las pruebas, y ladraba en las otras actividades de desarrollo.

La construcción también se conoce a veces como “codificación” o “programación”. La “codificación” no es realmente la mejor palabra porque implica la traducción mecánica de un diseño preexistente en un lenguaje informático; La construcción no es en absoluto mecánica e implica creatividad y juicio sustancial. A lo largo del libro, uso “programación” indistintamente con “construcción”.

En contraste con la vista plana de la Figura 1-1 sobre el desarrollo de software, la Figura 1-2 muestra la perspectiva de la tierra redonda de este libro.

Figura 1-2

Figura 1-2. Este libro se centra en la codificación y depuración, diseño detallado, planificación de la construcción, pruebas unitarias, integración, pruebas de integración y otras actividades en aproximadamente estas proporciones

  • Comprobación de que la base se ha establecido para que la construcción pueda continuar con éxito
  • Determinar cómo se probará su código
  • Diseñar y escribir clases y rutinas
  • Creación y asignación de nombres de variables y constantes con nombre
  • Selección de estructuras de control y organización de bloques de sentencias
  • Prueba de unidad, pruebas de integración y depuración de su propio código
  • Revisar los diseños y código de bajo nivel de otros miembros del equipo y hacer que revisen los suyos.
  • Código de pulido formateándolo cuidadosamente y comentándolo
  • Integración de componentes de software creados por separado
  • Ajuste el código para hacerlo más rápido y usar menos recursos

Para obtener una lista aún más completa de las actividades de construcción, consulte los títulos de los capítulos en la tabla de contenido.Con tantas actividades en el trabajo en construcción, podría decir, “OK, Jack, ¿qué actividades no son parte de la construcción?” Esa es una pregunta justa. Las actividades no constructivas importantes incluyen administración, desarrollo de requisitos, arquitectura de software, diseño de interfaces de usuario, pruebas de sistemas y mantenimiento. Cada una de estas actividades afecta el éxito final de un proyecto tanto como la construcción, al menos el éxito de cualquier proyecto que requiere más de una o dos personas y dura más de unas pocas semanas. Usted puede encontrar buenos libros sobre cada actividad; Muchos se enumeran en las secciones “Recursos adicionales” a lo largo del libro y en el Capítulo 35, “Dónde encontrar más información”, al final del libro.

¿Por qué es importante la construcción de software?

Dado que está leyendo este libro, probablemente está de acuerdo en que es importante mejorar la calidad del software y la productividad del desarrollador. Muchos de los proyectos más interesantes de hoy en día utilizan el software ampliamente. La Internet, los efectos especiales de películas, los sistemas médicos de apoyo a la vida, los programas espaciales, la aeronáutica, el análisis financiero de alta velocidad y la investigación científica son algunos ejemplos. Estos proyectos y proyectos más convencionales pueden beneficiarse de prácticas mejoradas porque muchos de los fundamentos son los mismos.

Si está de acuerdo en que la mejora del desarrollo de software es importante en general, la pregunta para usted como lector de este libro se convierte, ¿Por qué la construcción es un foco importante?

Este es el por qué:

La construcción es una parte importante del desarrollo de software Dependiendo del tamaño del proyecto, la construcción suele tomar entre el 30 y el 80 por ciento del tiempo total dedicado a un proyecto. Cualquier cosa que tome tanto tiempo del proyecto está destinada a afectar el éxito del proyecto.

La construcción es la actividad central en el desarrollo de software Requisitos y la arquitectura se realizan antes de la construcción para que pueda hacer la construcción de manera efectiva. Las pruebas del sistema (en el sentido estricto de las pruebas independientes) se realizan después de la construcción para verificar que la construcción se ha realizado correctamente. La construcción está en el centro del proceso de desarrollo de software.

Un estudio clásico de Sackman, Erikson y Grant demostró que la productividad de los programadores individuales varió en un factor de 10 a 20 durante la construcción (1968). Desde su estudio, sus resultados han sido confirmados por numerosos otros estudios (Curtis 1981, Mills 1983, Curtis et al., 1986, Card 1987, Valett y McGarry 1989, DeMarco y Lister 1999, Boehm et al., 2000). Este libro ayuda a todos los programadores a aprender técnicas que ya son utilizadas por los mejores programadores.

El producto de Construction, el código fuente, es a menudo la única descripción precisa del software. En muchos proyectos, la única documentación disponible para los programadores es el propio código. Las especificaciones de requisitos y los documentos de diseño pueden quedar obsoletos, pero el código fuente siempre está actualizado. En consecuencia, es imperativo que el código fuente sea de la más alta calidad posible. La aplicación consistente de técnicas para la mejora del código fuente hace la diferencia entre un objeto de Rube Goldberg y un programa detallado, correcto y, por lo tanto, informativo. Tales técnicas se aplican más eficazmente durante la construcción.

La construcción es la única actividad que está garantizada para ser hecha El proyecto ideal del software pasa con el desarrollo cuidadoso de los requisitos y el diseño arquitectónico antes de que la construcción comience. El proyecto ideal se somete completo, estadísticamente controlado sistema de pruebas después de la construcción. Proyectos imperfectos, del mundo real, sin embargo, a menudo saltan los requisitos y el diseño para saltar a la construcción. Dejan de probar porque tienen demasiados errores para arreglar y se han quedado sin tiempo. Pero no importa cómo apresurado o mal planeado un proyecto es, usted no puede caer la construcción; Es donde el caucho se encuentra con la carretera. Mejorar la construcción es así una manera de mejorar cualquier esfuerzo de desarrollo de software, no importa cuán abreviado sea.

Puntos clave

  • La construcción de software es la actividad central en el desarrollo de software; La construcción es la única actividad que está garantizada para suceder en cada proyecto.
  • Las principales actividades en construcción son el diseño detallado, la codificación, la depuración, la integración y las pruebas de desarrollo (pruebas de unidad y pruebas de integración).
    Otros términos comunes para la construcción son “codificación” y “programación”.
  • La calidad de la construcción afecta sustancialmente la calidad del software.
  • En el análisis final, su comprensión de cómo hacer la construcción determina cuán bueno es un programador que es, y que es el tema del resto del libro

Guardar

Guardar

Guardar

Guardar

Guardar

Guardar

Guardar

Guardar

Guardar

Guardar

Guardar

Guardar

Leave a Comment

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">
*
*