SlideShare una empresa de Scribd logo
1 de 10
Manual del Primer Parcial
Camargo avilés Jessica Guadalupe 10421
En este primer parcial pudimos obtener como conocimiento la introducción sobre
ingeniería en software, en este manual podremos ejemplificar algunos de los
temas vistos del parcial.
¿Qué es la ingeniería en software?
La ingeniería de software es una disciplina formada por un conjunto de
métodos, herramientas y técnicas que se utilizan en el desarrollo de programas
informáticos, más conocidos como softwares. La ingeniería de software engloba
toda la gestión de un proyecto. Podríamos decir que la ingeniería del software es el
continente donde se aloja el contenido, que sería el software en sí.
¿En que ciclos consiste la ingeniería de software?
Dentro de la ingeniería de software entendemos que también se encuentra todo el
proceso de elaboración del software, que se denomina ciclo de vida. Está formado
por cuatro etapas:
 Concepción. En esta primera fase se desarrolla el modelo de negocio. Es
decir, conocemos las necesidades que debe de tener un software y
empezamos a buscar las herramientas para cubrirlas.
 Elaboración. Se detalla las características de la estructura del software.
 Construcción. Tal y como su nombre indica en este paso empezamos a
elaborar de forma tangible todo aquello que, de momento, solo hemos
plasmado en forma de ideas.
 Transición. Es el momento de la implementación y el desarrollo para los
clientes o usuarios. Deben tener tiempo para familiarizarse con el nuevo
software.
Una vez se realiza todo este ciclo, entramos en otra fase conocida como
mantenimiento. Es una de las etapas más importantes ya que se solucionan los
problemas o errores que puedan surgir durante su implementación y también su
posterior puesta en marcha. Además, se incorporan actualizaciones teniendo en
cuenta los requisitos del cliente con el objetivo de que puedan cumplir la mayor
cantidad de tareas.
Relacionado con la ingeniería de software también se encuentra la arquitectura de
sistemas. El objetivo de conocer el esqueleto del software es tener la capacidad
de señalar y conocer cuáles son los componentes que son necesarios para llevar
a cabo el desarrollo. Se trata de un tipo de software que se desarrolla para el uso
exclusivo de un cliente. Se diseña a su imagen y semejanza, por lo que es lógico
que solamente sirve para esa empresa, ya que se adapta a las necesidades y
características de la compañía que ha solicitado diseñarlo. A pesar de estas
diferencias clave todos los softwares presentan tres elementos que lo
caracterizan:
 Programas y/o algoritmos.
 Estructura de datos
 Documentos.
¿Cuál es la importancia de la ingeniería de software?
La ingeniería de software tiene como objetivo, construir una solución de software
eficiente que satisfaga las necesidades requeridas por un cliente. Es difícil de
conseguir si no se tienen los procedimientos, las metodologías y las herramientas
adecuadas. El conseguir este objetivo implica una serie de conceptos, criterios y
habilidades las cuales deben ser tomadas en cuenta, ya que podrían no ser
adaptables debido a factores ambientales y de los mismos profesionales.
Parámetros deseables de un software
 Compatibilidad: Es la facilidad por la cual el software puede ser
combinado con otro software.
 Correctitud: Es el grado en que el software cumple con los
requerimientos específicos, y que dichos requerimientos cumplan con
las necesidades asociadas.
 Corrección: Facilidad con la cual los errores latentes pueden ser
encontrados y corregidos en el software.
 Eficiencia: Grado en el que el software utiliza los recursos de
hardware de manera efectiva. A menudo la eficiencia se sobre-
enfatiza a expensas de otras metas.
 Flexibilidad: Facilidad con la que el software puede ser modificado
para cumplir con cambios requeridos.
 Mantenible: Es una combinación de correcciones y flexibilidad.
 Portabilidad: Es la facilidad con la cual un software puede ser
transformado de una plataforma de hardware o de software distinta.
 Confiabilidad: Grado en el que el software funciona correctamente a
través del tiempo.
 Reusabilidad: El software puede ser usado para propósitos distintos
del origen.
 Robustez: Grado con que el software funciona correcta mente en
condiciones anormales.
 Salvedad: Grado con el que el software funciona sin daños
accidentales.
 Seguridad: El software se protege así mismo de accesos o
modificaciones no autorizadas.
 Examinabilidad: Facilidad por la cual el software puede ser
examinado para su corrección, eficiencia, confiabilidad y robustez.
 Comprensión: Facilidad con la cual los humanos pueden
comprender el software y su documentación.
 Uso-amigable: Facilidad con que los humanos pueden usar u operar
e; software.
 Validez: Es la facilidad por la cual el software puede demostrar ser
correcto.
 Verificación: El software puede demostrar cumplir el estándar de
desarrollo de procedimientos.
¿Cuáles son las áreas de aplicación en ingeniería de
software?
Un ingeniero en sistemas, puede desempeñarse en diversos campos de aplicación
y en múltiples disciplinas, dependiendo de donde se especialice.
A continuación, podrás conocer los campos en los que un ingeniero en sistemas
puede desempeñarse:
Sistemas Distribuidos
Sistemas cuyos componentes hardware y software, que están en computadoras
conectadas en red, se comunican y coordinan sus acciones mediante el paso de
mensajes, para el logro de un objetivo. Se establece la comunicación mediante un
protocolo preestablecido
Características:
 Concurrencia. - Esta característica de los sistemas distribuidos permite
que los recursos disponibles en la red puedan ser utilizados
simultáneamente por los usuarios y/o agentes que interactúan en la red.
 Carencia de reloj global. - Las coordinaciones para la transferencia de
mensajes entre los diferentes componentes para la realización de una
tarea, no tienen una temporización general, está más bien distribuida en los
componentes.
 Fallos independientes de los componentes. - Cada componente del
sistema pudiera fallar de manera independientemente, y los demás
continuar ejecutando sus acciones. Esto permite el logro de las tareas con
mayor efectividad, pues el sistema en su conjunto continúa trabajando.
Sistemas Embebidos
Los sistemas embebidos, también llamados sistemas empotrados, son sistemas
operativos creados con el fin de ser
controlados por microprocesadores o
microcontroladores, de igual manera a los
sistemas normales, pero llevados a un fin
completamente sistematizado y sin
llevar a tantas tareas, son, mejor
dicho, sistemas que cumplen con una tarea en específico.
Tal es el caso de un creador de sistemas embebidos de open source llamado
arduino, esté por lo regular, las tareas que se quieren llevar a cabo se crean en un
archivo. ino el cual esta creado con base en c++, esto con el fin de mencionar uno
de los sistemas de Hardware más populares en estos tiempos.
Características
Estos son algunas de las características que identifiquemos a los sistemas
embebidos:
 Se pueden encontrar actuadores, sensores, y módulos de entrada y de
salida.
 Incluyen dentro de las principales funciones de los mismos regular el
funcionamiento de los dispositivos.
 Tienen como función de satisfacer necesidades específicas en los equipos
como los celulares, routers, reproductores multimedia, sistemas satelitales,
entre otros.
 La mayoría de los componentes se encuentran incluidos en la placa base.
 Están programados en lenguajes nativos.
 Se destaca por cumplir las necesidades de eficacia, excelencia y rápida
respuesta.
 Diseñado para realizar distintas funciones en un sistema de las
computadoras en tiempo real.
 Cubre un amplio rango de necesidades específicas.
 La mayoría de los componentes se encuentras incluidos en la placa base.
 Generalmente actúan en un tiempo prácticamente real.
Computo Móvil
La computación móvil como una disciplina emergente en la computación marca una
tendencia futura hacia el "Teletrabajo" o "e-trabajo", que es la actividad a distancia
con el uso de dispositivos móviles, sistemas computacionales e Internet. Los
usuarios de dispositivos móviles se incrementan anualmente, dando pie a que el
servicio móvil evolucione rápidamente, y que requiera nuevas tecnologías tanto de
hardware con bajos recursos y alta eficiencia como de software.
Características
 Se refiere al atributode estardisponible encualquierlugarencualquiermomento.
 Un terminal móvil enlaformade un teléfonointeligenteounPDA ofrece la ubicuidad.
 Es muy conveniente paralosusuariosoperarenel entornoinalámbrico.
 Todo loque necesitanesun dispositivode Internetmóvil,comounteléfono
inteligente.
 Los dispositivosmóvilespermitenalosusuariosconectarse de manerasencillayrápidaa
la Internete intranets,de otrosdispositivosmóvilesybasesde datos.
 Se refiere ala personalizaciónde lainformaciónparalosconsumidoresindividuales.
 Conocerla ubicaciónfísicade losusuariosencualquiermomentoesclave paraofrecer
productosy servicios.
Seguridad Informática
La seguridad informática es una disciplina que se encarga de proteger la
integridad y la privacidad de la información almacenada en un sistema informático.
De todas formas, no existe ninguna técnica que permita asegurar la inviolabilidad
de un sistema.
Características
 Los sistemas informáticos seguros cumplen estas características:
 Integridad
 Confidencialidad
 Disponibilidad
 Autenticación
 Irretutabilidad (No-Rechazo o No Repudio)
Redes de Computadoras
Una red informática, una red de comunicaciones de datos o una red
de computadoras es la interconexión de distinto número de sistemas
informáticos a través de una serie de dispositivos de telecomunicaciones y un
medio físico (alámbrico o inalámbrico).
Características
 Velocidad
 Seguridad de la red
 Confiabilidad
 Escalabilidad
 Disponibilidad
Modelos y Métodos de Ingeniería de Software
Modelo de cascada
El desarrollo en cascada (en inglés, waterfall model) es un procedimiento
lineal que se caracteriza por dividir los procesos de desarrollo en sucesivas fases
de proyecto. Al contrario que en los modelos iterativos, cada una de estas fases se
ejecuta tan solo una vez. Los resultados de cada una de las fases sirven como
hipótesis de partida para la siguiente. El waterfall model se utiliza, especialmente,
en el desarrollo de software.
¿Cómo funciona el modelo en cascada?
El desarrollo del modelo se atribuye al teórico de la informática Winston W. Royce.
Sin embargo, Royce no es el inventor de este modelo. Muy al contrario, en su
ensayo de 1970 titulado Managing the Development of Large Software Systems, el
teórico presenta una reflexión crítica acerca de los procedimientos lineales. A
modo de alternativa, Royce presenta un modelo iterativo incremental en el que
cada una de las fases se basa en la anterior y verifica los resultados de esta.
Royce propone un modelo compuesto por siete fases que se ha de ejecutar en
diversas vueltas (iteraciones):
 Requisitos de sistema
 Requisitos de software
 Análisis
 Diseño
 Implementación
 Prueba
 Servicio
Modelos de Prototipos
El Modelo de prototipos, en Ingeniería de software, pertenece a los modelos de
desarrollo evolutivo. El prototipo debe ser construido en poco tiempo, usando los
programas adecuados y no se debe utilizar muchos recursos.
¿Cómo se lleva a cabo?
Se comienza elaborando un prototipo del producto final: qué aspecto tendrá, cómo
funcionará. Para muchas interfaces de usuario, este modelo puede resultar tan
simple como unos dibujos con lápiz y papel o tan complejo como el propio código
operativo final. Para interfaces de hardware o estaciones de trabajo, el modelo
puede consistir en maquetas de espuma, caucho, cartón o cartulina. Cuanto más
próximo se encuentre el prototipo al producto real, mejor será la evaluación, si
bien se pueden obtener magníficos resultados con prototipos de baja fidelidad.
Modelo de Espiral
El modelo de desarrollo en Espiral es una combinación entre el modelo waterfall y
un modelo por iteraciones.
El proceso pasa por distintas etapas, desde la de conceptualización, siguiendo el
desarrollo, luego una fase de mejoras, para finalizar con el mantenimiento.
¿Cómo se lleva a cabo?
Dentro de cada etapa, tendremos una serie de fases que transcurren desde la
planificación, pasando por el análisis de riesgos, el desarrollo y finalizando en la
evaluación de lo realizado. Se incorpora también una fase de enlace entre etapas,
para facilitar la transición entre las mismas.
En definitiva, el equipo de desarrollo en este modelo de desarrollo en espiral
comienza con un pequeño conjunto de requisitos y pasa por cada fase de
desarrollo para ese conjunto de requisitos. El equipo de desarrollo agrega la
funcionalidad para el requerimiento adicional en espirales cada vez mayores,
hasta que la aplicación está lista para la fase de producción.
Modelo de ProcesoUnificado
El Proceso Unificado es un marco de desarrollo iterativo e incremental compuesto
de cuatro fases denominadas Inicio, Elaboración, Construcción y Transición. Cada
una de estas fases es a su vez dividida en una serie de iteraciones (la de inicio
puede incluir varias iteraciones en proyectos grandes). Estas iteraciones ofrecen
como resultado un incremento del producto desarrollado que añade o mejora las
funcionalidades del sistema en desarrollo.
¿Cómo se lleva acabo?
En el Proceso Unificado los casos de uso se utilizan para capturar los requisitos
funcionales y para definir los contenidos de las iteraciones. La idea es que cada
iteración tome un conjunto de casos de uso o escenarios y desarrolle todo el
camino a través de las distintas disciplinas: diseño, implementación, prueba, etc.
El proceso dirigido por casos de uso es el rup. Nota: en UP se está Dirigido por
requisitos y riesgos de acuerdo con el Libro UML 2 de ARLOW, Jim que
menciona el tema.

Más contenido relacionado

La actualidad más candente

Iswi t01 - romero prado , gyno (2)
Iswi   t01 - romero prado , gyno (2)Iswi   t01 - romero prado , gyno (2)
Iswi t01 - romero prado , gyno (2)Gyno Romero Prado
 
El producto y el proceso
El producto y el procesoEl producto y el proceso
El producto y el procesojenmer
 
Mpa1 mental ing de software samuel b.b fnal
Mpa1 mental ing de software samuel b.b fnalMpa1 mental ing de software samuel b.b fnal
Mpa1 mental ing de software samuel b.b fnalMix Man Deejay
 
Curso de Ingeniería de Software - Capítulo 1
Curso de Ingeniería de Software - Capítulo 1Curso de Ingeniería de Software - Capítulo 1
Curso de Ingeniería de Software - Capítulo 1Eddie Malca
 
Diapositivas harware
Diapositivas  harwareDiapositivas  harware
Diapositivas harwareDagny Mendoza
 
Articulo Calidad Del Software El Camino Al Exito Ver. Revisada
Articulo Calidad Del Software El Camino Al Exito Ver. RevisadaArticulo Calidad Del Software El Camino Al Exito Ver. Revisada
Articulo Calidad Del Software El Camino Al Exito Ver. Revisadainstituto tecnologico de colima
 
Alfonso software
Alfonso softwareAlfonso software
Alfonso softwareismael_2014
 
Fundamentos de ingenieria de software
Fundamentos de ingenieria de softwareFundamentos de ingenieria de software
Fundamentos de ingenieria de softwareAntonio San
 
Manual de introduccion de ingeniería-del-software, metodologias
Manual de introduccion de ingeniería-del-software, metodologiasManual de introduccion de ingeniería-del-software, metodologias
Manual de introduccion de ingeniería-del-software, metodologiasDora Nelly Rios Vasques
 
mauro hoyos software y sistemas operativos
mauro hoyos software y sistemas operativosmauro hoyos software y sistemas operativos
mauro hoyos software y sistemas operativosmaurohoy
 
Software y sistemas operativos
Software y sistemas operativosSoftware y sistemas operativos
Software y sistemas operativosmaurohoy
 

La actualidad más candente (18)

Iswi t01 - romero prado , gyno (2)
Iswi   t01 - romero prado , gyno (2)Iswi   t01 - romero prado , gyno (2)
Iswi t01 - romero prado , gyno (2)
 
El producto y el proceso
El producto y el procesoEl producto y el proceso
El producto y el proceso
 
Diapo 2
Diapo 2Diapo 2
Diapo 2
 
BoLeTiN N° 2
BoLeTiN N° 2BoLeTiN N° 2
BoLeTiN N° 2
 
Mpa1 mental ing de software samuel b.b fnal
Mpa1 mental ing de software samuel b.b fnalMpa1 mental ing de software samuel b.b fnal
Mpa1 mental ing de software samuel b.b fnal
 
Ing del Software part1
Ing del Software part1Ing del Software part1
Ing del Software part1
 
Scientific Services Global Labs Mexico
Scientific Services Global Labs MexicoScientific Services Global Labs Mexico
Scientific Services Global Labs Mexico
 
Curso de Ingeniería de Software - Capítulo 1
Curso de Ingeniería de Software - Capítulo 1Curso de Ingeniería de Software - Capítulo 1
Curso de Ingeniería de Software - Capítulo 1
 
software
softwaresoftware
software
 
Diapositivas harware
Diapositivas  harwareDiapositivas  harware
Diapositivas harware
 
David valdiviezo ing.pdf
David valdiviezo ing.pdfDavid valdiviezo ing.pdf
David valdiviezo ing.pdf
 
Articulo Calidad Del Software El Camino Al Exito Ver. Revisada
Articulo Calidad Del Software El Camino Al Exito Ver. RevisadaArticulo Calidad Del Software El Camino Al Exito Ver. Revisada
Articulo Calidad Del Software El Camino Al Exito Ver. Revisada
 
Alfonso software
Alfonso softwareAlfonso software
Alfonso software
 
Fundamentos de ingenieria de software
Fundamentos de ingenieria de softwareFundamentos de ingenieria de software
Fundamentos de ingenieria de software
 
Galdamez mejia
Galdamez mejiaGaldamez mejia
Galdamez mejia
 
Manual de introduccion de ingeniería-del-software, metodologias
Manual de introduccion de ingeniería-del-software, metodologiasManual de introduccion de ingeniería-del-software, metodologias
Manual de introduccion de ingeniería-del-software, metodologias
 
mauro hoyos software y sistemas operativos
mauro hoyos software y sistemas operativosmauro hoyos software y sistemas operativos
mauro hoyos software y sistemas operativos
 
Software y sistemas operativos
Software y sistemas operativosSoftware y sistemas operativos
Software y sistemas operativos
 

Similar a Manual Ing. Software

Edwin alexande mata escobar
Edwin alexande mata escobarEdwin alexande mata escobar
Edwin alexande mata escobarEdwin Alexander
 
Ensayo sistemas y sofware
Ensayo sistemas y sofwareEnsayo sistemas y sofware
Ensayo sistemas y sofwarepepenardi
 
Tema 2.1.- Estándares de Calidad
Tema 2.1.- Estándares de CalidadTema 2.1.- Estándares de Calidad
Tema 2.1.- Estándares de CalidadYenny Salazar
 
ingenieria de software
 ingenieria de software ingenieria de software
ingenieria de softwareEmanuelAmador
 
Presentación Fundamentos Básicos del Diseño de Software Pedro Luces
Presentación Fundamentos Básicos del Diseño de Software Pedro LucesPresentación Fundamentos Básicos del Diseño de Software Pedro Luces
Presentación Fundamentos Básicos del Diseño de Software Pedro LucesPedroLuces3
 
SeccióN De TéCnicas De IngenieríA De Software(2007)
SeccióN De TéCnicas  De IngenieríA De Software(2007)SeccióN De TéCnicas  De IngenieríA De Software(2007)
SeccióN De TéCnicas De IngenieríA De Software(2007)denny osael lopez medina
 
Unidad 1.1 Que Es La Ing. De Software
Unidad 1.1 Que Es La Ing. De SoftwareUnidad 1.1 Que Es La Ing. De Software
Unidad 1.1 Que Es La Ing. De SoftwareSergio Sanchez
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de softwaremichellchia11
 
Tarea semana 1
Tarea semana 1Tarea semana 1
Tarea semana 1preciadoag
 
Software
SoftwareSoftware
Softwarevicsdc
 
Ingeniería de Software
Ingeniería de Software Ingeniería de Software
Ingeniería de Software Luis Valeriano
 
Sanchez garcia juan jose definiciones en la ingeniería de software sis4-1
Sanchez garcia juan jose  definiciones en la ingeniería de software sis4-1Sanchez garcia juan jose  definiciones en la ingeniería de software sis4-1
Sanchez garcia juan jose definiciones en la ingeniería de software sis4-1Jose Garcia
 
Trabajo diapositiva Software por Jhonatan Ruiz
Trabajo diapositiva  Software por Jhonatan RuizTrabajo diapositiva  Software por Jhonatan Ruiz
Trabajo diapositiva Software por Jhonatan Ruizjhonatanalex
 
Trabajo diapositiva modulo 3 de jhonatan
Trabajo diapositiva modulo 3 de jhonatanTrabajo diapositiva modulo 3 de jhonatan
Trabajo diapositiva modulo 3 de jhonatanjhonatanalex
 

Similar a Manual Ing. Software (20)

Edwin alexande mata escobar
Edwin alexande mata escobarEdwin alexande mata escobar
Edwin alexande mata escobar
 
Software
SoftwareSoftware
Software
 
Presentación2
Presentación2Presentación2
Presentación2
 
Ensayo sistemas y sofware
Ensayo sistemas y sofwareEnsayo sistemas y sofware
Ensayo sistemas y sofware
 
Tema 2.1.- Estándares de Calidad
Tema 2.1.- Estándares de CalidadTema 2.1.- Estándares de Calidad
Tema 2.1.- Estándares de Calidad
 
ingenieria de software
 ingenieria de software ingenieria de software
ingenieria de software
 
Presentación Fundamentos Básicos del Diseño de Software Pedro Luces
Presentación Fundamentos Básicos del Diseño de Software Pedro LucesPresentación Fundamentos Básicos del Diseño de Software Pedro Luces
Presentación Fundamentos Básicos del Diseño de Software Pedro Luces
 
SeccióN De TéCnicas De IngenieríA De Software(2007)
SeccióN De TéCnicas  De IngenieríA De Software(2007)SeccióN De TéCnicas  De IngenieríA De Software(2007)
SeccióN De TéCnicas De IngenieríA De Software(2007)
 
Unidad 1.1 Que Es La Ing. De Software
Unidad 1.1 Que Es La Ing. De SoftwareUnidad 1.1 Que Es La Ing. De Software
Unidad 1.1 Que Es La Ing. De Software
 
Software diapositivas 1
Software diapositivas 1Software diapositivas 1
Software diapositivas 1
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de software
 
Software diapositivas 1
Software diapositivas 1Software diapositivas 1
Software diapositivas 1
 
Diseño de software
Diseño de softwareDiseño de software
Diseño de software
 
Tarea semana 1
Tarea semana 1Tarea semana 1
Tarea semana 1
 
Tareasemana1
Tareasemana1Tareasemana1
Tareasemana1
 
Software
SoftwareSoftware
Software
 
Ingeniería de Software
Ingeniería de Software Ingeniería de Software
Ingeniería de Software
 
Sanchez garcia juan jose definiciones en la ingeniería de software sis4-1
Sanchez garcia juan jose  definiciones en la ingeniería de software sis4-1Sanchez garcia juan jose  definiciones en la ingeniería de software sis4-1
Sanchez garcia juan jose definiciones en la ingeniería de software sis4-1
 
Trabajo diapositiva Software por Jhonatan Ruiz
Trabajo diapositiva  Software por Jhonatan RuizTrabajo diapositiva  Software por Jhonatan Ruiz
Trabajo diapositiva Software por Jhonatan Ruiz
 
Trabajo diapositiva modulo 3 de jhonatan
Trabajo diapositiva modulo 3 de jhonatanTrabajo diapositiva modulo 3 de jhonatan
Trabajo diapositiva modulo 3 de jhonatan
 

Manual Ing. Software

  • 1. Manual del Primer Parcial Camargo avilés Jessica Guadalupe 10421 En este primer parcial pudimos obtener como conocimiento la introducción sobre ingeniería en software, en este manual podremos ejemplificar algunos de los temas vistos del parcial. ¿Qué es la ingeniería en software? La ingeniería de software es una disciplina formada por un conjunto de métodos, herramientas y técnicas que se utilizan en el desarrollo de programas informáticos, más conocidos como softwares. La ingeniería de software engloba toda la gestión de un proyecto. Podríamos decir que la ingeniería del software es el continente donde se aloja el contenido, que sería el software en sí. ¿En que ciclos consiste la ingeniería de software? Dentro de la ingeniería de software entendemos que también se encuentra todo el proceso de elaboración del software, que se denomina ciclo de vida. Está formado por cuatro etapas:  Concepción. En esta primera fase se desarrolla el modelo de negocio. Es decir, conocemos las necesidades que debe de tener un software y empezamos a buscar las herramientas para cubrirlas.  Elaboración. Se detalla las características de la estructura del software.  Construcción. Tal y como su nombre indica en este paso empezamos a elaborar de forma tangible todo aquello que, de momento, solo hemos plasmado en forma de ideas.  Transición. Es el momento de la implementación y el desarrollo para los clientes o usuarios. Deben tener tiempo para familiarizarse con el nuevo software.
  • 2. Una vez se realiza todo este ciclo, entramos en otra fase conocida como mantenimiento. Es una de las etapas más importantes ya que se solucionan los problemas o errores que puedan surgir durante su implementación y también su posterior puesta en marcha. Además, se incorporan actualizaciones teniendo en cuenta los requisitos del cliente con el objetivo de que puedan cumplir la mayor cantidad de tareas. Relacionado con la ingeniería de software también se encuentra la arquitectura de sistemas. El objetivo de conocer el esqueleto del software es tener la capacidad de señalar y conocer cuáles son los componentes que son necesarios para llevar a cabo el desarrollo. Se trata de un tipo de software que se desarrolla para el uso exclusivo de un cliente. Se diseña a su imagen y semejanza, por lo que es lógico que solamente sirve para esa empresa, ya que se adapta a las necesidades y características de la compañía que ha solicitado diseñarlo. A pesar de estas diferencias clave todos los softwares presentan tres elementos que lo caracterizan:  Programas y/o algoritmos.  Estructura de datos  Documentos. ¿Cuál es la importancia de la ingeniería de software? La ingeniería de software tiene como objetivo, construir una solución de software eficiente que satisfaga las necesidades requeridas por un cliente. Es difícil de conseguir si no se tienen los procedimientos, las metodologías y las herramientas adecuadas. El conseguir este objetivo implica una serie de conceptos, criterios y habilidades las cuales deben ser tomadas en cuenta, ya que podrían no ser adaptables debido a factores ambientales y de los mismos profesionales. Parámetros deseables de un software
  • 3.  Compatibilidad: Es la facilidad por la cual el software puede ser combinado con otro software.  Correctitud: Es el grado en que el software cumple con los requerimientos específicos, y que dichos requerimientos cumplan con las necesidades asociadas.  Corrección: Facilidad con la cual los errores latentes pueden ser encontrados y corregidos en el software.  Eficiencia: Grado en el que el software utiliza los recursos de hardware de manera efectiva. A menudo la eficiencia se sobre- enfatiza a expensas de otras metas.  Flexibilidad: Facilidad con la que el software puede ser modificado para cumplir con cambios requeridos.  Mantenible: Es una combinación de correcciones y flexibilidad.  Portabilidad: Es la facilidad con la cual un software puede ser transformado de una plataforma de hardware o de software distinta.  Confiabilidad: Grado en el que el software funciona correctamente a través del tiempo.  Reusabilidad: El software puede ser usado para propósitos distintos del origen.  Robustez: Grado con que el software funciona correcta mente en condiciones anormales.  Salvedad: Grado con el que el software funciona sin daños accidentales.  Seguridad: El software se protege así mismo de accesos o modificaciones no autorizadas.  Examinabilidad: Facilidad por la cual el software puede ser examinado para su corrección, eficiencia, confiabilidad y robustez.  Comprensión: Facilidad con la cual los humanos pueden comprender el software y su documentación.  Uso-amigable: Facilidad con que los humanos pueden usar u operar e; software.  Validez: Es la facilidad por la cual el software puede demostrar ser correcto.  Verificación: El software puede demostrar cumplir el estándar de desarrollo de procedimientos. ¿Cuáles son las áreas de aplicación en ingeniería de software? Un ingeniero en sistemas, puede desempeñarse en diversos campos de aplicación y en múltiples disciplinas, dependiendo de donde se especialice. A continuación, podrás conocer los campos en los que un ingeniero en sistemas puede desempeñarse:
  • 4. Sistemas Distribuidos Sistemas cuyos componentes hardware y software, que están en computadoras conectadas en red, se comunican y coordinan sus acciones mediante el paso de mensajes, para el logro de un objetivo. Se establece la comunicación mediante un protocolo preestablecido Características:  Concurrencia. - Esta característica de los sistemas distribuidos permite que los recursos disponibles en la red puedan ser utilizados simultáneamente por los usuarios y/o agentes que interactúan en la red.  Carencia de reloj global. - Las coordinaciones para la transferencia de mensajes entre los diferentes componentes para la realización de una tarea, no tienen una temporización general, está más bien distribuida en los componentes.  Fallos independientes de los componentes. - Cada componente del sistema pudiera fallar de manera independientemente, y los demás continuar ejecutando sus acciones. Esto permite el logro de las tareas con mayor efectividad, pues el sistema en su conjunto continúa trabajando. Sistemas Embebidos Los sistemas embebidos, también llamados sistemas empotrados, son sistemas operativos creados con el fin de ser controlados por microprocesadores o microcontroladores, de igual manera a los sistemas normales, pero llevados a un fin completamente sistematizado y sin llevar a tantas tareas, son, mejor
  • 5. dicho, sistemas que cumplen con una tarea en específico. Tal es el caso de un creador de sistemas embebidos de open source llamado arduino, esté por lo regular, las tareas que se quieren llevar a cabo se crean en un archivo. ino el cual esta creado con base en c++, esto con el fin de mencionar uno de los sistemas de Hardware más populares en estos tiempos. Características Estos son algunas de las características que identifiquemos a los sistemas embebidos:  Se pueden encontrar actuadores, sensores, y módulos de entrada y de salida.  Incluyen dentro de las principales funciones de los mismos regular el funcionamiento de los dispositivos.  Tienen como función de satisfacer necesidades específicas en los equipos como los celulares, routers, reproductores multimedia, sistemas satelitales, entre otros.  La mayoría de los componentes se encuentran incluidos en la placa base.  Están programados en lenguajes nativos.  Se destaca por cumplir las necesidades de eficacia, excelencia y rápida respuesta.  Diseñado para realizar distintas funciones en un sistema de las computadoras en tiempo real.  Cubre un amplio rango de necesidades específicas.  La mayoría de los componentes se encuentras incluidos en la placa base.  Generalmente actúan en un tiempo prácticamente real.
  • 6. Computo Móvil La computación móvil como una disciplina emergente en la computación marca una tendencia futura hacia el "Teletrabajo" o "e-trabajo", que es la actividad a distancia con el uso de dispositivos móviles, sistemas computacionales e Internet. Los usuarios de dispositivos móviles se incrementan anualmente, dando pie a que el servicio móvil evolucione rápidamente, y que requiera nuevas tecnologías tanto de hardware con bajos recursos y alta eficiencia como de software. Características  Se refiere al atributode estardisponible encualquierlugarencualquiermomento.  Un terminal móvil enlaformade un teléfonointeligenteounPDA ofrece la ubicuidad.  Es muy conveniente paralosusuariosoperarenel entornoinalámbrico.  Todo loque necesitanesun dispositivode Internetmóvil,comounteléfono inteligente.  Los dispositivosmóvilespermitenalosusuariosconectarse de manerasencillayrápidaa la Internete intranets,de otrosdispositivosmóvilesybasesde datos.  Se refiere ala personalizaciónde lainformaciónparalosconsumidoresindividuales.  Conocerla ubicaciónfísicade losusuariosencualquiermomentoesclave paraofrecer productosy servicios. Seguridad Informática La seguridad informática es una disciplina que se encarga de proteger la integridad y la privacidad de la información almacenada en un sistema informático. De todas formas, no existe ninguna técnica que permita asegurar la inviolabilidad de un sistema. Características  Los sistemas informáticos seguros cumplen estas características:  Integridad  Confidencialidad  Disponibilidad  Autenticación
  • 7.  Irretutabilidad (No-Rechazo o No Repudio) Redes de Computadoras Una red informática, una red de comunicaciones de datos o una red de computadoras es la interconexión de distinto número de sistemas informáticos a través de una serie de dispositivos de telecomunicaciones y un medio físico (alámbrico o inalámbrico). Características  Velocidad  Seguridad de la red  Confiabilidad  Escalabilidad  Disponibilidad Modelos y Métodos de Ingeniería de Software Modelo de cascada El desarrollo en cascada (en inglés, waterfall model) es un procedimiento lineal que se caracteriza por dividir los procesos de desarrollo en sucesivas fases de proyecto. Al contrario que en los modelos iterativos, cada una de estas fases se ejecuta tan solo una vez. Los resultados de cada una de las fases sirven como hipótesis de partida para la siguiente. El waterfall model se utiliza, especialmente, en el desarrollo de software.
  • 8. ¿Cómo funciona el modelo en cascada? El desarrollo del modelo se atribuye al teórico de la informática Winston W. Royce. Sin embargo, Royce no es el inventor de este modelo. Muy al contrario, en su ensayo de 1970 titulado Managing the Development of Large Software Systems, el teórico presenta una reflexión crítica acerca de los procedimientos lineales. A modo de alternativa, Royce presenta un modelo iterativo incremental en el que cada una de las fases se basa en la anterior y verifica los resultados de esta. Royce propone un modelo compuesto por siete fases que se ha de ejecutar en diversas vueltas (iteraciones):  Requisitos de sistema  Requisitos de software  Análisis  Diseño  Implementación  Prueba  Servicio Modelos de Prototipos El Modelo de prototipos, en Ingeniería de software, pertenece a los modelos de desarrollo evolutivo. El prototipo debe ser construido en poco tiempo, usando los programas adecuados y no se debe utilizar muchos recursos.
  • 9. ¿Cómo se lleva a cabo? Se comienza elaborando un prototipo del producto final: qué aspecto tendrá, cómo funcionará. Para muchas interfaces de usuario, este modelo puede resultar tan simple como unos dibujos con lápiz y papel o tan complejo como el propio código operativo final. Para interfaces de hardware o estaciones de trabajo, el modelo puede consistir en maquetas de espuma, caucho, cartón o cartulina. Cuanto más próximo se encuentre el prototipo al producto real, mejor será la evaluación, si bien se pueden obtener magníficos resultados con prototipos de baja fidelidad. Modelo de Espiral El modelo de desarrollo en Espiral es una combinación entre el modelo waterfall y un modelo por iteraciones. El proceso pasa por distintas etapas, desde la de conceptualización, siguiendo el desarrollo, luego una fase de mejoras, para finalizar con el mantenimiento. ¿Cómo se lleva a cabo? Dentro de cada etapa, tendremos una serie de fases que transcurren desde la planificación, pasando por el análisis de riesgos, el desarrollo y finalizando en la evaluación de lo realizado. Se incorpora también una fase de enlace entre etapas, para facilitar la transición entre las mismas.
  • 10. En definitiva, el equipo de desarrollo en este modelo de desarrollo en espiral comienza con un pequeño conjunto de requisitos y pasa por cada fase de desarrollo para ese conjunto de requisitos. El equipo de desarrollo agrega la funcionalidad para el requerimiento adicional en espirales cada vez mayores, hasta que la aplicación está lista para la fase de producción. Modelo de ProcesoUnificado El Proceso Unificado es un marco de desarrollo iterativo e incremental compuesto de cuatro fases denominadas Inicio, Elaboración, Construcción y Transición. Cada una de estas fases es a su vez dividida en una serie de iteraciones (la de inicio puede incluir varias iteraciones en proyectos grandes). Estas iteraciones ofrecen como resultado un incremento del producto desarrollado que añade o mejora las funcionalidades del sistema en desarrollo. ¿Cómo se lleva acabo? En el Proceso Unificado los casos de uso se utilizan para capturar los requisitos funcionales y para definir los contenidos de las iteraciones. La idea es que cada iteración tome un conjunto de casos de uso o escenarios y desarrolle todo el camino a través de las distintas disciplinas: diseño, implementación, prueba, etc. El proceso dirigido por casos de uso es el rup. Nota: en UP se está Dirigido por requisitos y riesgos de acuerdo con el Libro UML 2 de ARLOW, Jim que menciona el tema.