Qué es la complejidad de un algoritmo

- Posted in ingenieria-del-software by - Comments

Cuando solucionamos un problema mediante la construcción de un algoritmo, normalmente podemos atacar el problema desde distintos puntos de vista, aplicando distintas estrategias, y por tanto, llegando a soluciones algorítmicas distintas. Desde el punto de vista computacional, es necesario disponer de alguna forma de comparar una solución algorítmica con otra, para conocer cómo se ... more

La planificación: Gantt, PERT y CPM

- Posted in ingenieria-del-software by - Comments

En el desarrollo de casi cualquier proyecto de cierto tamaño pueden identificarse algunas tareas que podrían realizarse simultáneamente por distintas personas o equipos de personas. El hecho de trabajar en paralelo con distintas tareas suele hacer que el proyecto total se termine antes. Al fin y al cabo, el tiempo es nuestro recurso más valioso: no se puede comprar. En este artículo, ... more

Metodologías de desarrollo del software

- Posted in ingenieria-del-software by - Comments

El concepto de metodología, dentro de la Ingeniería del Software es, sin duda, uno de los más oscuros y que más confusión produce tanto en estudiantes como en profesionales involucrados en procesos de desarrollo de software. Tanto es así, que en muchos proyectos de desarrollo (no todos, por supuesto), la aplicación de una metodología brilla por su ausencia, siendo éste un concepto casi ... more

Ley de Demeter

['Demeter', diosa griega de la agricultura. Foto: Jastrow en Wikipedia] La Ley de Demeter, también llamada del buen estilo, o de inyección de dependencias, es un principio de diseño de software, algo antiguo y con un nombre algo pretencioso, del que se suele comentar que aporta algunas ventajas para obtener un código más sencillo de mantener si lo seguimos en un escenario en el cual estemos ... more

Lenguajes fuertemente, débilmente, estáticamente y dinámicamente tipados

- Posted in programacion, ingenieria-del-software by - Comments

Uno de los aspectos más importantes de cualquier programa es, sin duda, el tema de los datos. Los datos son el soporte de la información, y la información es el corazón de cualquier programa. Los lenguajes de programación utilizan las variables como contenedores de datos, para manipularlos y almacenarlos en una amplia variedad de maneras. Está claro que los datos tienen distintos tipos. A ... more

ACID (Atomicity, Consistency, Isolation, Durability)

- Posted in ingenieria-del-software by - Comments

Atomicity, Consistency, Isolation, and Durability. ACID es un acrónimo en inglés qe utiliza en el ámbito de las bases de datos. A menudo se utilizan expresiones como "esta base de datos o este sistema cumple las propiedades ACID". Atomicity (atomicidad) siginifica que el sistema permite operaciones atómicas. Una operación atómica es aquella que si está formada por operaciones más ... more

Las actividades del ciclo de vida del software

- Posted in ingenieria-del-software, ciclo-de-vida by - Comments

Tiempo atrás hablábamos del ciclo de vida del software, que es, básicamente, el proceso que sigue un software, desde que es un simple proyecto hasta que deja de utilizarse, pasando por estudiar su origen, sus funcionalidades, sus restricciones, realizar su diseño, "fabricarlo", probarlo, instalarlo, utilizarlo, mantenerlo... y casi cualquier cosa que podamos hacer con un producto ... more

El ciclo de vida del software

- Posted in ingenieria-del-software, ciclo-de-vida by - Comments

¿Quién se ha llevado mi análisis? Parece mentira, pero el mundo del software, y en general de las tecnologías de la información, esta lleno de grandes fracasos. Algunos de ellos, realmente estrepitosos. Muchos de los sistemas de información que causan y han causado problemas lo han hecho por no prever factores externos ("No mandé mis naves a luchar contra los elementos", que dicen que ... more

Acoplamiento y cohesión

- Posted in ingenieria-del-software by - Comments

Todo desarrollador de software debe tener en cuenta que se obtienen tantos más beneficios cuanto más alta es la cohesión en una unidad de software y más bajo es el acoplamiento entre las unidades. Esta máxima se debe aplicar tanto en el diseño, la arquitectura y la codificación. A menudo escuchamos problemas relacionados con dos partes de software que están fuertemente acopladas, y ... more

El error BSY en un disco duro Seagate Barracuda 7200.11

- Posted in hardware by - Comments

Soy el afortunado poseedor de un disco duro Seagate Barracuda 7200.11. Algunos discos de esta serie -entre ellos el mío-, tenían algún error en su firmware que producía que al cabo de un cierto tiempo, el disco quedase inutilizado. En ese caso, podía ser por dos errores bien diferenciados: El error llamado LBA 0, produce como síntoma que tanto el BIOS como el sistema operativo reconocen la ... more

»