Académique Documents
Professionnel Documents
Culture Documents
1Historia
2Objetivos
3Recursos
o 3.1Recurso humano
o 3.2Recursos de entorno
4Implicaciones socioeconmicas
o 4.1Econmicamente
o 4.2Socialmente
5Notaciones
o 5.1LUM (lenguaje unificado de modelado) o UML
o 5.2BPMN (notacin para el modelado de procesos de negocios)
o 5.3Diagrama de flujo de datos (DFD)
6Herramienta CASE
7Metodologa
o 7.1Etapas del proceso
7.1.1Obtencin de los requisitos
7.1.2Anlisis de requisitos
7.1.3Limitaciones[14]
7.1.4Especificacin
7.1.5Arquitectura
7.1.6Programacin
7.1.7Desarrollo de la aplicacin
7.1.8Pruebas de software
7.1.9Implementacin
7.1.10Documentacin
7.1.11Mantenimiento
o 7.2Ventajas[22]
7.2.1Desde el punto de vista de gestin
7.2.2Desde el punto de vista de los ingenieros de Software
7.2.3Desde el punto de vista de cliente o usuario final
8Modelos y Ciclos de Vida del Desarrollo de Software
o 8.1Modelo en cascada o clsico
o 8.2Modelo de prototipos
o 8.3Modelo en espiral
o 8.4Modelo de desarrollo por etapas
o 8.5Modelo Incremental o Iterativo
8.5.1Modelo estructurado
8.5.2Modelo orientado a objetos
o 8.6Modelo RAD (rapid application development)
o 8.7Modelo de desarrollo concurrente
o 8.8Proceso unificado del desarrollo de software
9Producto
10Naturaleza de la Ingeniera de Software
o 10.1Matemticas
o 10.2Creacin
o 10.3Gestin de Proyecto
11Participantes y papeles
o 11.1Cliente
o 11.2Desarrolladores
o 11.3Gestores
o 11.4Usuarios finales
o 11.5Cdigo tico de un ingeniero de software
12Educacin tica
o 12.1Organizaciones
13Vase tambin
14Referencias
15Bibliografa
16Enlaces externos
Historia[editar]
Artculo principal: Historia de la ingeniera del software
Cuando aparecieron las primeras computadoras digitales en la dcada de
1940,8 el desarrollo de software era algo tan nuevo que era casi imposible hacer
predicciones de las fechas estimadas de finalizacin del proyecto y muchos de
ellos sobrepasaban los presupuestos y tiempo estimados.. Los desarrolladores
tenan que volver a escribir todos sus programas para correr en mquinas
nuevas que salan cada uno o dos aos, haciendo obsoletas las ya existentes.
El trmino Ingeniera del software apareci por primera vez a finales de la dcada
de 1950. La Ingeniera de software fue estimulada por la crisis del software de
las dcadas de entre 1960 y 1980. La Ingeniera del software viene a ayudar a
identificar y corregir mediante principios y metodologas los procesos de
desarrollo y mantenimiento de sistemas de software.
Aparte de la crisis del software de las dcadas de entre 1960 y 1980, la
ingeniera de software se ve afectada por accidentes que conllevaron a la muerte
de tres personas; esto sucedi cuando la mquina de radioterapia Therac25 emite una sobredosis masiva de radiacin y afecto contra la vida de estas
personas.9 Esto remarca los riesgos de control por software,10 afectando
directamente al nombre de la ingeniera de software.
A principios de los 1980,11 la ingeniera del software ya haba surgido como una
genuina profesin, para estar al lado de las ciencias de la computacin y la
ingeniera tradicional. Antes de esto, las tareas eran corridas poniendo tarjetas
perforadas como entrada en el lector de tarjetas de la mquina y se esperaban
los resultados devueltos por la impresora.
Debido a la necesidad de traducir frecuentemente el software viejo para atender
las necesidades de las nuevas mquinas, se desarrollaron lenguajes de orden
superior. A medida que apareci el software libre, las organizaciones de usuarios
comnmente lo liberaban.
Durante mucho tiempo, solucionar la crisis del software fue de suma importancia
para investigadores y empresas que se dedicaban a producir herramientas de
software.
Para la dcada de 1980, el costo de propiedad y mantenimiento del software fue
dos veces ms caro que el propio desarrollo del software, y durante la dcada
Recursos
Recurso humano[editar]
Son todas aquellas personas que intervienen en la planificacin de cualquier
instancias de software (por ejemplo: gestor, ingeniero de software
experimentado, etc.), El nmero de personas requerido para un proyecto de
software slo puede ser determinado despus de hacer una estimacin del
esfuerzo de desarrollo...
Recursos de entorno[editar]
Es el entorno de las aplicaciones (software y hardware) el hardware proporciona
el medio fsico para desarrollar las aplicaciones (software), este recurso es
indispensable.13
Implicaciones socioeconmicas[editar]
Econmicamente[editar]
En los Estados Unidos, el software contribuy a una octava parte de todo el
incremento del PIB durante la dcada de 1990 (alrededor de 90,000 millones de
dlares por ao), y un noveno de todo el crecimiento de productividad durante
los ltimos aos de la dcada (alrededor de 33.000 millones de dlares
estadounidenses por ao). La ingeniera de software contribuy a US$ 1 billn
de crecimiento econmico y productividad en esa dcada. Alrededor del globo,
el software contribuye al crecimiento econmico de maneras similares, aunque
es difcil de encontrar estadsticas fiables. [cita requerida]
Adems, con la industria del lenguaje est hallando cada vez ms campos de
aplicacin a escala global.
Socialmente[editar]
La ingeniera de software cambia la cultura del mundo debido al extendido uso
de la computadora. El correo electrnico (e-mail), la WWW y la mensajera
instantnea permiten a la gente interactuar de nuevas maneras. El software baja
el costo y mejora la calidad de los servicios de salud, los departamentos de
Brindar al usuario todo lo necesario para que pueda trabajar en conjunto con
el software desarrollado obteniendo los mejores resultados posibles.
Tener un control ms completo en la etapa creacin del software, en cuanto
a tiempo de desarrollo y costos.
Utilizacin de mtodos ms eficientes que permitan el mejor
aprovechamiento del software segn sea la finalidad de uso del mismo.
Aumentar la calidad del software desarrollado al disminuir los riesgos de mal
funcionamiento.18
Caso de uso
Historias de usuario
Diagramas de clases
Diagramas de base de datos
Diagrama de despliegue
Diagrama de secuencia
Siendo los dos primeros los mnimos necesarios para describir la arquitectura de
un proyecto que iniciar a ser codificado. Dependiendo del alcance del proyecto,
complejidad y necesidades, el arquitecto elegir cuales de los diagramas se
requiere elaborar.
Las herramientas para el diseo y modelado de software se
denominan CASE (Computer Aided Software Engineering) entre las cuales se
encuentran:
Enterprise Architect
Microsoft Visio for Enterprise Architects
Programacin[editar]
Implementar un diseo en cdigo puede ser la parte ms obvia del trabajo de
ingeniera de software, pero no necesariamente es la que demanda mayor
trabajo y ni la ms complicada. La complejidad y la duracin de esta etapa est
ntimamente relacionada al o a los lenguajes de programacin utilizados, as
como al diseo previamente realizado.
Desarrollo de la aplicacin[editar]
Para el desarrollo de la aplicacin es necesario considerar cinco fases para tener
una aplicacin o programa eficiente, estas son:
Especificacin conceptual.
Anlisis de requisitos.
Diseo inicial.
Diseo detallado (codificacin, depuracin, prueba y liberacin).
Cuando es por etapas, en el diseo global estas fases pueden repetirse segn
la cantidad de etapas que sean requeridas.
Entre sus ventajas tenemos:
Este modelo tambin presenta sus desventajas entre las cuales podemos
mencionar algunas:
Un eje horizontal que representa el tiempo y muestra los aspectos del ciclo
de vida del proceso a lo largo de su desenvolvimiento
Un eje vertical que representa las disciplinas, las cuales agrupan actividades
de una manera lgica de acuerdo a su naturaleza.
Productos genricos: Son los producidos por una organizacin para ser
vendidos al mercado.
Productos hechos a medida: Sistemas que son desarrollados bajo pedido a
un desarrollador especfico.
Colegas: Cada ingeniero deber apoyar y ser justos con los colegas,
motivando a sus colegas sujetndose al cdigo, ayudando tambin a su
desarrollo profesional, reconocer los trabajos de otros y abstenerse a
atribuirse de mritos indebidos, revisar los trabajos de manera objetiva,
sincera y propiamente documentada.