You are on page 1of 40

Introducci n

Ingeniera de Software
IDS5501
Competencia

Implementar un sistema computacional utilizando tcnicas que


permitan sistematizar el proceso de desarrollo y mantenimiento,
asegurando el logro de los objetivos.

Bibliografa
Ingeniera del Software: Un enfoque prctico. Roger S.
Pressman.
Desarrollo Y Gestin De Proyectos Informticos. Steve
Mcconnell.
Metodologa de Trabajo

Proyecto semestral.
Exposiciones del Profesor para reforzar competencias de diversas reas.
Lluvia de ideas / Discusin Participativa.
Trabajo en Clases. Anlisis de Casos
Correccin de Avances de informes y Actividades.
Lecturas de artculos relacionados con los temas.
Introduccin

Qu es la Ingeniera de software?
Definiciones del prlogo a la cuarta edicin en espaol de Ingeniera del Software: un enfoque prctico de
Roger Pressman.

Ingeniera del software trata del establecimiento de los

principios y mtodos de la ingeniera a fin de

obtener software de modo rentable que

sea fiable y trabaje en mquinas reales.

[Bauer, 1972]
Introduccin

Qu es la Ingeniera de software?

es la aplicacin prctica del conocimiento

cientfico en el diseo y construccin de


programas de computadora y
la documentacin asociada requerida para desarrollar, operar
y mantenerlos.

[Bohem, 1976]
Introduccin

Qu es la Ingeniera de software?

es el estudio de los principios y metodologas para


desarrollo y mantenimiento de sistemas de
software.

[Zelkovitz, 1978]
Introduccin

Qu es la Ingeniera de software?

es la aplicacin de un enfoque sistemtico, disciplinado y

cuantificable al desarrollo, operacin y

mantenimiento de software, y el estudio de


estos enfoques...

Hoy
http://es.wikipedia.org/wiki/Ingenieria_de_software
Introduccin

5 actividades claves insertas en un


Proyecto.
Definicin de Proyecto PMI

1 Analizar
Un PROYECTO es un esfuerzo temporal que se lleva a
cabo para crear un producto, servicio o resultado 2 Disear
nico.

3 Codificar

4 Probar
El Project Management Institute (PMI) es una organizacin
internacional sin fines de lucro que asocia a profesionales
relacionados con la Gestin de Proyectos. Desde principios de
2011, es la ms grande del mundo en su rubro. 700 000
miembros en 170 pases
5 Mantener
Introduccin

5 actividades claves para la Ingeniera de


Software: Ciclo de Vida del Software

El ingeniero de software se encarga de toda la 1 Analizar


gestin de desarrollo del proyecto para que ste se
pueda construir en un plazo determinado y con el
2 Disear
presupuesto previsto el Sistema.

La ingeniera de software, por lo tanto, incluye el 3 Codificar


anlisis previo de la situacin, el diseo del proyecto,
el desarrollo del software, las pruebas necesarias 4 Probar
para confirmar su correcto funcionamiento y la
implementacin del sistema con la Mantencin del
sistema.
5 Mantener
Introduccin

5 actividades claves para la Ingeniera de


Software:
1 Analizar

Basado en Requerimientos
2 Disear
Estudiado Diseado
Desarrollado Metodolgico 3 Codificar
Construido Lgico
Operativo
Rentable 4 Probar
Mantenible Fiable
5 Mantener
Introduccin a los Requerimientos

Ya conocemos el concepto de I ngeniera de


Software. Y ahora:

Cul es el primer paso


que debo adoptar antes
de comenzar el
Desarrollo de un
software?
Introduccin a los Requerimientos

Luego de tener un Cliente con un Proyecto de


Software o una Idea debemos:

Buscar los
Requerimientos
Introduccin a los Requerimientos

Qu es Un Requisito o requerimiento?

Condicin o capacidad
que un usuario necesita para poder
resolver un problema o lograr un
objetivo.
- NORMA IEEE830 PARA ESPECIFICACIN
DE REQUERIMIENTOS DE SOFTWARE.

https://es.wikipedia.org/wiki/IEEE
Buscando Requerimientos

En Bsqueda de Requerimientos:

Actividad

El Regalo
Buscando Requerimientos

En Bsqueda de Requerimientos:
1
Debemos realizar un regalo a nuestro compaero Juan, que conocemos hace un tiempo y nos
ha apoyado mucho en los trabajos de proyecto. Es su cumpleaos y no podemos fallar en el
obsequio, pero solo disponemos $30.000 pesos. No conocemos cabalmente sus necesidades, si
algunas caractersticas y rasgos personales. Deberemos realizar un regalo que pueda ocupar slo
en su puesto de trabajo, pero que no intervenga en el orden ni espacio de su escritorio. Que no
sea llamativo ni rompa el espacio esttico, ya que la empresa no lo permite. No debe pesar ms
de 500 grs. ni medir ms de (30x30 cm) . No debe ser un producto consumible como alimento, ni
libros , ni prendas de vestir. No puede ser Msica envasada.
Buscando Requerimientos

En Bsqueda de Requerimientos: 2
No se admiten artilugios como cuadros, lmparas o artefactos que alteren el orden o que
implique conectarlos al Computador directamente ni a la red elctrica y que no ocupe una
superficie mayor al 15% de la superficie del escritorio.
Debo planificar la realizacin del regalo y definir el ms adecuado. S que Juan, tiene
caractersticas de Hipster y los regalos que considera poco tiles segn su visin, los dona a un
colega pero sin mala onda. Es desapegado con lo que considera poco til para sus necesidades.
No queremos pasar un bochorno y necesitamos regalar algo eficiente y funcional a nombre del
equipo, adaptado a sus gustos y reales necesidades.
Buscando Requerimientos

En Bsqueda de Requerimientos:
Perfil de Juan 3
Juan es Hipster y es una persona trabajadora e inteligente que se esfuerza por aprobar con
xito sus proyectos o mdulos de software, encargndose personalmente de testear cada
funcionalidad antes de entregarlo al testing. Es un chico un poco tmido, pero es muy
simptico y buen compaero y suele ayudarte cuando lo necesitas. Es muy ordenado y le
gusta clasificar todo, desde sus implementos hasta la informacin que guarda en su
computador, en forma meticulosa y categorizada. Le gusta la tecnologa pero ms clsica en
cuanto a los diseos o apariencias de estas. Fantico de Starwars pero no viste camisetas, lee
comics sobre Marvel y juega Playstation. Pero no juega en el trabajo.
Le gusta estar con amigos para cosas concretas como jugar
cartas de roles o ver pelculas.
No le gusta mucho el ftbol, ni la poltica.
Buscando Requerimientos

En Bsqueda de Requerimientos:
4

Lee las caractersticas de Juan como requerimientos e


identifcalos, Clasifcalos, adminstralos y minimiza las
inconsistencias, hasta definir el regalo entregable que consideres
ms apropiado e identifica en forma concreta que regalo ser.

1. En base al esquema realice la operacin de definir y


administrar los requerimientos para realizar el regalo a Juan.
Trabajo en equipo de 4 integrantes durante 15 minutos.
Buscando Requerimientos

Buscar Requerimientos:
Caso Prctico El Regalo. Instrucciones Generales:
1. Obtenga y analice los requerimientos e
informacin anteriormente expuesta.
2. Determine los requerimientos para establecer el
regalo.
3. Defina la informacin relevante para determinar el
perfil de Juan.
4. Defina el regalo a realizar y argumente porqu es
la mejor opcin.
5. Defina como validar si el regalo es adecuado para
Juan antes de adquirirlo.
Buscando Requerimientos

Buscar Requerimientos:
Caso Prctico Anlisis de los Resultados:
Revisin de Resultados y Discusin de cada opcin trabajada.
El docente invitar a algunos estudiantes al azar que en representacin de su equipo respondan las
preguntas del anlisis:
tem Descripcin
1 Anlisis de Requerimientos Qu se necesita cumplir como
objetivo?
2 Identificar los Qu Caractersticas y cualidades
Requerimientos debe poseer el producto
requerido?
3 Perfil Cliente Qu caractersticas tiene Juan?
4 Opciones o Alternativas Qu Opciones Tenemos para
cumplir?
5 Como evaluaremos la mejor Al tener la alternativa Qu criterios
opcin validarn si es la correcta?
[Producto][Proceso ][ Proyecto]
Proyecto Informtico
Reflexin sobre la primera experiencia de Requerimientos:

Cul es la relacin entre la


experiencia trabajada y el
esquema que observa?

Es llevar una Idea


3
basada en un problema
o necesidad a un
4 Producto Final que nos
6
lleva a stas 6 etapas
5
Proyecto Informtico

Qu es un Proyecto Informtico
Es llevar una Idea basada en un problema o necesidad identificada a un
Producto Final de manera Planificada y con una metodologa de Trabajo
definida en un tiempo y recursos determinados.
Proyecto Informtico

Qu relacin tiene este ciclo con


Las Cuatro "P" en el desarrollo de
Producto/Proceso / Proyecto?
software: Personas, Proyecto,
Producto y Proceso.
El resultado final de un Proyecto
Software, es un producto que toma
forma durante su desarrollo gracias
a la intervencin de muchas
variables.

Personas
Proyecto
Producto
Proceso
Herramientas
Proyecto Informtico y Ciclo de Vida
Qu relacin tiene este ciclo con
Producto/Proceso / Proyecto?

Proceso

Personas Proyecto Herramientas

Producto
Proyecto Informtico y Ciclo de Vida

Ejemplo Didctico Produccin de Software


Para introducirnos en la Produccin de software a nivel de Ingeniera, debemos
comenzar por comprender su contexto en la Industria.

Para ello tomaremos la industria de video Juegos.

Si a EA Games le encargan un Video Juego RPG


multiplataforma orientado a Jvenes entre 8 y 17
aos sobre la ltima pelcula de StarWars.
Qu haras primero si fueras Ingeniero de
Software de EA antes de comenzar a
desarrollarlo?
Proyecto Informtico y Ciclo de Vida

Ejemplo Didctico Produccin de Software


EA Games sera el desarrollador del
Video Juego
Los gamers adictos a la Saga seran los
usuarios finales del producto
terminado.
Disney sera el Cliente que busca que se
desarrolle el Juego.
Buscando Requerimientos Ejemplo Proyecto

Ejemplo Didctico Produccin de Software

Es correcto en esta etapa de pre-produccin, conseguir


informacin sobre las caractersticas que deber tener el
video juego

Production
Concept Testing
Developments Prof. Tester
Programmers Beta Tester
Design Techinical Directors Deployment
Sales Marketing

Pre-Production Post-
Production
Buscando Requerimientos - Ejemplo Proyecto

Ejemplo Didctico Produccin de Software

Debemos obtener una serie de datos e informacin para definir los


requerimientos:

1
2
3
Concept
Developments 4
Design

Pre-Production
Buscando Requerimientos - Ejemplo Proyecto

Introduccin a la Produccin de Software

Debemos obtener una serie de datos e informacin para


definir los requerimientos:

Ejemplo de Informacin a obtener :


1. Comprender al Cliente Disney como ve y
administra su negocio de video juegos.
2. Investigar la pelcula en todos sus aspectos que
influyan en la produccin del juego.
3. Investigar los tipos de Clientes / Usuarios de
Juegos basados en StarWars.
4. Definir las Posibilidades de Desarrollar el juego
en base a lo anterior.
Anlisis de Factibilidad- Ejemplo Proyecto

Factibilidad, se refiere a la disponibilidad de los recursos necesarios para


llevar a cabo los objetivos o metas sealadas. Generalmente la factibilidad
se determina sobre un proyecto.
Participantes del Proyecto

Actores y Proyectos de Ingeniera de Software:


Participantes del Proyecto

Un paso importante a la hora de definir los equipos del proyecto es identificar a las
personas que desempearn las funciones especficas del mismo.
Participantes del Proyecto

Rol Responsabilidad

Responsable del rea.


Gestiona los diferentes recursos y proyectos.
Participa en la priorizacin de los requerimientos/proyectos.
Realiza la planificacin del proyecto.
Participa en la definicin de las condiciones de aceptacin de los productos resultantes del
Lder de proyecto.
Proyecto Evala productos, servicios y proveedores.
Negocia tcnicamente y selecciona el producto / proveedor.
Identifica y gestiona los riesgos del proyecto.
Organiza, controla y dirige el proyecto.
Controla el desempeo del proveedor.
Informa el estado de avance del proyecto. Detecta desvos y toma acciones correctivas y/
preventivas.
Releva las necesidades del usuario y elabora la documentacin correspondiente a la etapa en la que
se encuentre el proyecto:
1.Participa en la elaboracin y ejecucin del plan de pruebas.
2.Participa de las pruebas de aceptacin del usuario.
Analista 3.Verifica y analiza los resultados de la prueba.
Funcional 4.Es responsable de la puesta en produccin de los productos.

Efecta el Diseo tcnico en funcin del Diseo Funcional recibido:


1.Evala las opciones tcnicas disponibles para los requerimientos relevados.
2.Brinda soporte en la codificacin del producto.
Participantes del Proyecto

Rol Responsabilidad
Efecta la interpretacin del Diseo tcnico en funcin del Diseo Funcional recibido:
1.Interpreta el modelo para llevarlo a la codificacin en base a la tecnologa de desarrollo
disponible.
Analista Programador
2.Aplica la Metodologa de Desarrollo determinada por el Analista Funcional.
Realiza la codificacin y testeo unitario del producto de software de acuerdo al diseo
recibido.
Monitorea las diferentes bases de datos implementadas:
Administrador/Analista
1.Analiza las adaptaciones o incorporaciones en temas de base de datos.
de Base de Datos
2.Responsable de la implementacin de nuevas bases de datos o mejoras a las existentes.
Participantes del Proyecto

Rol Responsabilidad
Efecta la interpretacin del Diseo tcnico en funcin del Diseo Funcional recibido:
1.Interpreta el modelo para llevarlo a la codificacin en base a la tecnologa de desarrollo disponible.
Analista Programador
2.Aplica la Metodologa de Desarrollo determinada por el Analista Funcional.
Realiza la codificacin y testeo unitario del producto de software de acuerdo al diseo recibido.
Monitorea las diferentes bases de datos implementadas:
Administrador/Analista de 1.Analiza las adaptaciones o incorporaciones en temas de base de datos.
Base de Datos 2.Responsable de la implementacin de nuevas bases de datos o mejoras a las existentes.

Confecciona el Plan de Prueba:


1.Coordina las actividades de testing con los distintos participantes.
2.Disea, carga, valida y ejecuta los casos de prueba.
Analista Tester 3.Registra y realiza el seguimiento de defectos detectados.
4.Verifica y analiza los resultados de las pruebas.
5.Acta como soporte en la prueba de aceptacin del usuario.
6.Emite el Informe final de pruebas y lo distribuye.
Participa en la elaboracin del Plan de Calidad del proyecto:
1.Brinda soporte en la generacin de los documentos entregables en cada etapa del proyecto.
Analista Quality
2.Realizar las tareas de Control de Calidad en todos los productos determinados en el Plan de
Assurance
Calidad del proyecto.
3.Realiza el seguimiento del Plan de Calidad del Proyecto.
Recoleccin de Informacin

Recolectar Requerimientos

El objetivo principal de la tarea de recolectar los requisitos del sistema, es capturar la


informacin que nos permita la definicin del sistema software a desarrollar, tomando
como punto de partida los requisitos generales considerando los objetivos de negocio.
Recoleccin de Informacin

Recolectar Requerimientos
Tcnicas Para la Obtencin de Requerimientos
Existe un gran nmero de tcnicas para obtener requerimientos. A continuacin se describen
las ms utilizadas. Ninguna de estas tcnicas, es suficiente por s sola y que es recomendable
combinarlas para obtener requerimientos completos.

Entrevista

Desarrollo Conjunto de Aplicaciones ( JAD )

Desarrollo de Prototipos

Observacin

Estudio de documentacin

Cuestionarios

Tormenta de ideas ( Brainstorming )


Recoleccin de Informacin

Incluye y excluye todo lo necesario para llevar acabo un trabajo requerido para cumplir
un objetivo claro con xito.

Lo que hace o no hace un Sistema de Software a nivel Funcional.


Lo que implica o no implica el software a nivel de Capa de Presentacin (Diseo).
Lo que implica o no a nivel de recursos e infraestructura.
Ficha Ejemplo Definicin de Requerimientos:

[Nombre del modulo al


que pertenece este caso [Descripcin corta del requerimiento]
[REQ-] de uso]
Req.1
Req.2
Req.3
Req.4
Req.5
Conclusin

La obtencin del conjunto de requerimientos de los clientes es


la base para la toma de decisiones, la planificacin inicial,
especificacin y certificacin de requerimientos, pasos
indispensables en la generacin de proyectos de software.

You might also like