Archivo de la etiqueta: Ingeniería de Software

Fundamentos de Bases de Datos: Evolución, Modelo Relacional y Consultas SQL

Evolución y Modelos de Bases de Datos

1. Repaso histórico de la evolución de las bases de datos

Al principio, los programas se enfocaban principalmente en los algoritmos y los datos tenían un papel secundario. Con el crecimiento del uso de las computadoras, surgió la necesidad de organizar y administrar mejor la información. La evolución puede dividirse en tres generaciones:

Dominando Mantis Bug Tracker para la Gestión de Incidencias

Introducción a Mantis Bug Tracker

Mantis Bug Tracker es un software creado para la gestión de avisos de bugs en el desarrollo de software, pero con unos cuantos ajustes, dicho software se implementará para la gestión de incidencias de soporte. Mantis Bug Tracker es un sistema libre de control de errores basado en la web.

Está escrito en PHP y hace uso de múltiples bases de datos como: MySQL, MS SQL, PostgreSQL, Oracle (experimental), DB2 (en progreso) y un servidor Web. MantisBT es compatible Seguir leyendo Dominando Mantis Bug Tracker para la Gestión de Incidencias →

Consultas SQL Resueltas para Gestión de Empleados y Departamentos

Ejercicios de Consultas SQL para Ingeniería del Software

Sección 1: Consultas con Subconsultas y Filtros Básicos

1. Mostrar los datos de los empleados que pertenezcan al mismo departamento que ‘GIL’.

SELECT * FROM emple WHERE dept_no = (SELECT dept_no FROM emple WHERE apellido = 'GIL');

2. Mostrar los datos de los empleados que tengan el mismo oficio que ‘CEREZO’. El resultado debe ir ordenado por apellido.

SELECT * FROM emple WHERE oficio = (SELECT oficio FROM emple WHERE apellido = 'CEREZO') ORDER  Seguir leyendo Consultas SQL Resueltas para Gestión de Empleados y Departamentos →

Fundamentos y Modelos del Ciclo de Vida en la Ingeniería de Software

Ingeniería de Software

Al principio, el software era desarrollado por virtuosos que, basándose en la intuición y en la experiencia acumulada al desarrollar programas, se aventuraban a crear software. Naturalmente, nadie entendía ni podía modificar dicho software, a veces ni ellos mismos. Enseguida se observó que el software podía ser útil y que existían procedimientos y actividades más adecuados que otros para conseguir productos mejores. Se consiguió dotar al software de una importancia Seguir leyendo Fundamentos y Modelos del Ciclo de Vida en la Ingeniería de Software →

Estándar ISO/IEC 9126: Modelo y Métricas Esenciales para la Calidad del Producto Software

Introducción a la Calidad del Software

La calidad se considera como la capacidad del software que ayuda a los usuarios a satisfacer sus requisitos de efectividad, seguridad, productividad y satisfacción.

Antecedentes Históricos y la Norma ISO/IEC 9126

La calidad del producto se ha venido tratando desde hace varios años, siendo los primeros modelos desarrollados por McCall [18] y Boehm [4]. Lamentablemente, para cada proyecto se adoptaban modelos de calidad diferentes, haciendo difícil la comparación. Seguir leyendo Estándar ISO/IEC 9126: Modelo y Métricas Esenciales para la Calidad del Producto Software →

Fundamentos de Ingeniería de Software: Modelos, Arquitectura y el Ciclo de Vida del Desarrollo de Sistemas (SDLC)

Ciclo de Vida del Desarrollo de Sistemas (SDLC)

El Ciclo de Vida del Desarrollo de Sistemas (SDLC) es el proceso por el cual los analistas de sistemas, los ingenieros de software, los programadores y los usuarios finales elaboran sistemas de información y aplicaciones informáticas.

Fase 1: Planificación

Esta fase consta de 3 etapas clave:

  1. Solicitud: Antes de considerar cualquier solicitud, esta debe examinarse para determinar con precisión lo que se desea.
  2. Estudio de Factibilidad: Evaluación de Seguir leyendo Fundamentos de Ingeniería de Software: Modelos, Arquitectura y el Ciclo de Vida del Desarrollo de Sistemas (SDLC) →

Estrategias de Comunicación y Herramientas para la Gestión de Proyectos de Software

Lineamientos de Comunicación y Seguimiento en Proyectos

Comunicación Efectiva

La evidencia en la comunicación es la acción de argumentar o fundamentar el discurso en hechos reales o reportes creíbles para quien recibe el mensaje.

Por tanto, la búsqueda de los factores que gobiernan la exposición en las comunicaciones persuasivas se ha ampliado al examen de otros motivos fuera de la búsqueda de información consonante y la evitación del material disonante.

Seguimiento del Proyecto

Las labores Seguir leyendo Estrategias de Comunicación y Herramientas para la Gestión de Proyectos de Software →

Fundamentos de Software: Arquitecturas, Licencias y Procesos de Instalación

Tipos de Aplicaciones Informáticas

Toda aplicación está desarrollada para ser ejecutada en una única plataforma o Sistema Operativo (SO).

Clasificación por Ámbito y Función

Fundamentos del Modelado de Sistemas y Elementos Esenciales de UML

Introducción a las Metodologías Orientadas a Objetos

Cada método es completo dentro de su contexto, pero cada uno tiene sus puntos fuertes y sus debilidades. Por ejemplo, la metodología de Booch es particularmente expresiva durante las fases de diseño y construcción de proyectos; la OOSE (Object-Oriented Software Engineering) proporciona un soporte excelente para los casos de uso como forma de dirigir la toma de requisitos, el análisis y el diseño de alto nivel; y la OMT-2 (Object Modeling Seguir leyendo Fundamentos del Modelado de Sistemas y Elementos Esenciales de UML →

Fundamentos de la Programación Orientada a Objetos y su Impacto en el Desarrollo de Software

Introducción a la Programación Orientada a Objetos (POO/OOP)

La Programación Orientada a Objetos (POO) busca amoldarse al modo de pensar del ser humano y no al de la máquina. Esto es posible gracias a la forma racional con la que se manejan las abstracciones que representan las entidades del dominio del problema y a propiedades como la jerarquía o el encapsulamiento.

Fases del Ciclo de Vida del Software

El desarrollo de software, aunque no exclusivo de la POO, sigue un ciclo de vida con fases Seguir leyendo Fundamentos de la Programación Orientada a Objetos y su Impacto en el Desarrollo de Software →