Professional Documents
Culture Documents
Unidad 1
Son algunas de las preguntas que motivan el desarrollo de la Ingeniera de Software, como la disciplina
que permite desarrollar un producto de software en un tiempo prudente, con costos razonables, que sea
fiable y de buena calidad.
Introduccin
El software se diferencia de otras cosas que el ser humano ha de construir. El hardware es fsico.
El software es elemento lgico, por ende, tiene caractersticas distintas a cualquier elemento
fsico:
El software se desarrolla, no se fabrica en el sentido clsico.
El software no se estropea, pero si se deteriora
Introduccin
La mayora del software se construye a medida: los componentes de software deberan
disearse e implementarse para que se puedan volver a utilizar en muchas oportunidades, y as,
armar una especie de biblioteca de subrutinas y/o componentes.
Lo reutilizable aparte de los algoritmos debiesen ser las estructuras de datos.
Los componentes reutilizables modernos, encapsulan tanto datos como procesos que se aplican
a los datos, permitiendo al ingeniero de software crear nuevas aplicaciones a partir del reuso de
cdigo.
Software de Tiempo Real: Software orientado a medir, analizar y controlar sucesos del mundo real,
conforme suceden en la realidad.
Software de Gestin: Software orientado al procesamiento de informacin comercial y administrativo.
(Software transaccional Software de Gestin).
Software Cientfico y de Ingeniera: Software para la astronoma, vulcanologa, biologa molecular, CAD,
CASE, simuladores, fabricacin automtica, etc.
Software Empotrado: Software residente en ROM que se utiliza para controlar productos y sistemas de
los mercados industriales y de consumo: Microondas, automvil, etc.
Software de PC : Procesadores de texto, planillas electrnicas, etc.
Software de IA (Inteligencia Artificial): Sistemas expertos, Sistemas basados en el conocimiento, etc.
Qu es Software?
1.
2.
3.
Qu es Ingeniera de Software?
Algunas definiciones:
Es el rea de las ciencias de la computacin que trata con la construccin de sistemas de
software, los cuales son tan grandes y complejos que se construyen con equipos de ingenieros
[Ghezzi].
El establecimiento y uso de principios de ingeniera robustos, orientados a obtener software
econmico que sea fiable y funcione de manera eficiente sobre mquinas reales [Fritz Bauer].
Es un conjunto de tres elementos claves mtodos, herramientas y procedimientos que
facilitan el control del proceso de desarrollo del software para obtener un producto de calidad de
una forma productiva [Pressman].
Aplicacin de un enfoque sistemtico, disciplinado y cuantificable hacia el desarrollo, operacin
y mantenimiento del software; es decir; la aplicacin de ingeniera al software. [IEEE]
Proceso, Mtodos y
Herramientas
La ingeniera de software es multicapa, cualquier en enfoque (incluida la ingeniera de software)
debe apoyarse sobre un compromiso de calidad.
El fundamento de la ingeniera de software es la capa de proceso. El proceso es la unin que
mantiene junta las capas de tecnologa que permite el desarrollo racional y oportuno de la
ingeniera de software.
Proceso, Mtodos y
Herramientas
Los mtodos, indican el cmo construir tcnicamente el software. Los mtodos contemplan
una amplia gama de tareas en las cuales se encuentra: anlisis de requisitos, diseo,
construccin de programas, pruebas y mantenimiento. Los mtodos de la ingeniera de software,
dependen de un conjunto bsico de principios que gobiernan cada rea de la tecnologa e
incluyen actividades de modelado y otras tcnicas descriptivas.
Proceso, Mtodos y
Herramientas
Independiente donde se realice ingeniera de software, se debe cuestionar y responder algunas
de las siguientes preguntas:
Cules son las caractersticas de la entidad que utiliza para resolver el problema.?
Qu enfoque se va a utilizar par ano contemplar los errores que se cometieron en el diseo
y en la construccin de la entidad?
Revisar revista Crosstalk que proporciona algunos consejos y comentario
prcticos de ingeniera de software.
http://www.stsc.hill.af.mil/
Proceso, Mtodos y
Herramientas
El trabajo que se realiza en la ingeniera de software, se puede llevar a cabo en 3 grandes fases:
1. Fase de definicin:
Se centra sobre el qu, es decir, identifica qu informacin ha de ser procesada, que
funcin y/o rendimiento se desea, el comportamiento del sistema, qu interfaces van a ser
desarrolladas, qu restricciones de diseo, qu criterios de validacin se utilizarn para saber
si el software es correcto o no.
2. Fase de desarrollo:
Se centra en el cmo, es decir, cmo se han de disear estructuras de datos, como se ha
de implementar la arquitectura de software, los procedimiento, los mtodos, como se traduce
el diseo en un lenguaje de programacin, cmo se van a realizar las pruebas.
3. Fase de mantenimiento:
Se centra en el cambio que va asociado a los errores , a las adaptaciones requeridas a
medida que el entorno va evolucionando. Existen cuatro tipos de cambios.
a)
Correctivo
b)
Adaptativo
c)
Mejora
d)
Prevencin
El Proceso de Software
Marco de Trabajo
Actividades del Marco de trabajo
Conjunto de Tareas
Tareas
Hitos, entregas
SQA
El proceso establece un marco comn de trabajo, donde se definen actividades que son
aplicables a todos los proyectos de software independiente del tamao o complejidad.
Tambin existe un conjunto de tareas, donde cada una es una coleccin de tareas de trabajo,
hitos de proyecto, producto de trabajo, puntos de garanta de calidad entre otros.
El Proceso de Software
El proceso establece un marco comn de trabajo, donde se definen actividades que son
aplicables a todos los proyectos de software independiente del tamao o complejidad.
Tambin existe un conjunto de tareas, donde cada una es una coleccin de tareas de trabajo,
hitos de proyecto, producto de trabajo, puntos de garanta de calidad entre otros.