Guia Didáctica
Guia Didáctica
Guia Didáctica
Fundamentos de Ingeniera de
Software
Gua didctica
4 crditos
Titulacin
Informtica
Ciclo
Autores:
18505
Asesora virtual:
www.utpl.edu.ec
Esta versin impresa y digital, ha sido acreditada bajo la licencia Creative Commons Ecuador 3.0 de reconocimiento -no comercial- sin obras
derivadas; la cual permite copiar, distribuir y comunicar pblicamente la obra, mientras se reconozca la autora original, no se utilice con fines
comerciales ni se realicen obras derivadas. http://www.creativecommons.org/licences/by-nc-nd/3.0/ec/
Abril, 2016
2. ndice
2. ndice................................................................................................................................. 3
3. Introduccin.................................................................................................................... 5
4. Bibliografa..................................................................................................................... 6
4.1. Bsica......................................................................................................................... 6
4.2. Complementaria......................................................................................................... 6
Competencias genricas............................................................................................. 11
Planificacin para el trabajo del alumno.................................................................... 11
Sistema de evaluacin de la asignatura (primero y segundo bimestres).................. 13
Orientaciones especficas para el aprendizaje por competencias............................... 14
SEGUNDO BIMESTRE
6.5. Competencias genricas............................................................................................. 43
6.6. Planificacin para el trabajo del alumno.................................................................... 43
6.7. Orientaciones especficas para el aprendizaje por competencias............................... 45
7. Solucionario.................................................................................................................... 82
PRELIMINARES
3. Introduccin
La asignatura de Fundamentos de Ingeniera del Software es una asignatura troncal de carrera que se
imparte en el 5.o ciclo de la carrera de Ingeniera en Informtica que se oferta en la Escuela de Ciencias
de la Computacin; y, tiene una valoracin de 4 crditos acadmicos.
El software y los sistemas de informacin constituyen hoy en da algunos de los recursos ms importantes
de las organizaciones, y no solo en el contexto empresarial sino a todo nivel, generalmente se escucha
hablar de aplicaciones basadas en la Web, ubicuidad, aplicaciones mviles etc. Por lo tanto, no resulta
extrao pensar que su desarrollo debe ser considerado como una de las actividades que mayor
profesionalismo exige; no obstante, no siempre se lo mira as. La mayora de las personas consideran
que es una actividad en la cual un programador se sienta frente al computador y empieza a producir
el software, casi de manera automtica; sin embargo esto est muy lejos de la realidad; el desarrollo de
software hoy en da es una de las actividades ms complicadas y que ms herramientas necesita debido
a la complejidad de las aplicaciones que deben desarrollarse. A los profesionales que se dedican a esta
ardua labor de construir software se los conoce como ingenieros de software, y la presente asignatura
se enfoca precisamente, en presentar los fundamentos en los que se sustenta esta disciplina para
producir software de calidad. Naturalmente esta rea de conocimiento es demasiado amplia como para
ser abarcada en una sola asignatura, sin embargo, hemos hecho el esfuerzo de sintetizar los aspectos
ms importantes que le permitiran tener una idea completa de lo que se requiere para un desarrollo
profesional adecuado.
En este sentido, la presente asignatura se ha organizado en 6 unidades distribuidas en dos bimestres
con los temas siguientes: la unidad 1 estudia lo que es el software, los sistemas de informacin y la
terminologa bsica de la ingeniera del software; la unidad 2 le muestra en qu consisten el proceso
de desarrollo de software y se complementa con la unidad 3 en la que se estudian varios mtodos de
desarrollo de software conocidos como ciclos de vida, con esto concluimos el primer bimestre.
El segundo bimestre est diseado para ensearle a organizar sus proyectos basados en el proceso de
desarrollo unificado y a personalizarlos si es necesario, de modo que pueda ajustarlo a sus necesidades;
no obstante, vale acotar que podra necesitar mucha ms informacin, por lo que adjuntamos un
disco con algunas herramientas adicionales para ayudarle en ese requerimiento; luego en la unidad 5
revisaremos algunos de los modelos importantes del proceso de construccin de software para culminar
en la unidad 6 estudiando algunos principios sobre la calidad del software.
Consideramos que el estudio de la presente asignatura le ser de mucha utilidad. Le manifestamos
nuestro deseo de que estos conocimientos les ayuden no solo a aprobar la asignatura sino les sirva en
la prctica.
Tenemos ms de 10 aos de experiencia en la ingeniera del software; somos sus tutores y estaremos con
ustedes para guiar el proceso de aprendizaje de esta asignatura.
PRELIMINARES
4. Bibliografa
4.1. Bsica
Abad, M. y Jaramillo D, (2011): Gua didctica de Fundamentos de Ingeniera del Software. LojaEcuador: UTPL.
La presente gua de estudio est diseada para orientar el proceso de enseaza aprendizaje y se
complementa con actividades y ejercicios de autoevaluacin que le permitirn medir su grado de
avance. Sin las orientaciones dadas en esta gua el proceso ser complejo y extenso, por ello debe
comenzar su estudio a partir de la gua.
4.2. Complementaria
Booch G, Rumbaugh J., Jacobson I. (2006). El lenguaje unificado de modelado. Madrid, Addison
Wesley.
Este texto es de singular importancia para el estudio de las unidades 4 y 5 en lo relacionado al
proceso unificado y al modelado de componentes de diseo. Es escrito por los propios autores del
Lenguaje Unificado de Modelado que calza perfectamente en el Proceso Unificado de Desarrollo.
Recomendamos su lectura sobre todo para fundamentar los principios del modelado de software.
PRELIMINARES
Direcciones electrnicas
Lpez, C. (2003). Desarrollo de un sistema para la gestin de artculos deportivos. [En lnea]. Valencia
Espaa. Disponible en http://users.dsic.upv.es/asignaturas/facultad/lsi/ejemplorup/Requisitos.
html#EspCU. [Consulta: 15-04-2010]
Ejemplo de desarrollo software utilizando la metodologa rup, el mismo que puede ser tomado
como referencia para la comprensin de los temas que se trabajan en esta asignatura.
UNIVERSIDAD DE SALAMANCA. (2007). Una aplicacin para jugar al hex. Salamanca: Espaa.
Disponible en http://hex.nosololinux.com/modulos/descargas/Anexo%202.pdf, [Consulta: 15-042010]
En esta direccin encuentra un ejemplo muy prctico de cmo trabajar con una documentacin
de especificacin de requisitos.
En esta direccin encontrar el documento que le ayudar a comprender el modelado visual con
UML, http://www.di.uniovi.es/~cernuda/pfc/aoo.pdf,
Recurso OCW
Curso de Ingeniera de software que le servir para complementar su estudio en los apartados de
conceptos, procesos de desarrollo y modelado de componentes de software.
Herramientas
PRELIMINARES
La gua didctica: le orientar sobre cmo y qu temas estudiar, adems contiene ejercicios de
autoevaluacin que le permitirn medir su grado de comprensin y la necesidad de tutora por
parte del docente. Muchos estudiantes empiezan estudiando directamente el texto, pero como
ver ms adelante no es recomendable hacerlo.
2.
El texto bsico: le servir para desarrollar los contenidos principales conforme se lo indica en la
gua didctica. Vale acotar que no todos los captulos del texto se consideran para la asignatura
y tampoco cubren todos los contenidos, por lo que el estudio debe hacerse siguiendo las
instrucciones de la gua didctica.
3.
El Entorno Virtual de Aprendizaje: donde podr interactuar con sus profesores a travs de una
orientacin del trabajo semanal, uso de mensajera electrnica para resolver inquietudes, foros,
desarrollo de ejercicios prcticos, publicacin de recursos, todo este trabajo tendr una valoracin
de 2 puntos.
4.
La tutora personal: es un tiempo semanal que, como profesores, dedicamos para atender las
inquietudes en relacin a los contenidos o desarrollo de trabajos, para ello se publicar un horario
en el cual podrn asistir personalmente o contactarse va telefnica, el mismo se detalla en la
cartula de la evaluacin a distancia.
5.
Los trabajos a distancia: son actividades tericas y prcticas que acompaan a la gua didctica de
cada una de las materias, le permiten aplicar y reforzar los conocimientos adquiridos mediante su
desarrollo, y debe enviarlos a su profesor. La entrega de estos trabajos con su respectiva cartula
es obligatoria y no recuperable, lo cual significa que si no entrega alguno de estos no tendr
opcin a la evaluacin presencial; su valoracin es de 4 puntos que, sumados a la calificacin de
participacin en el EVA, totalizan 6 puntos.
6.
Adicionalmente usted cuenta con un DVD que contiene instaladores de dos productos de software
importantes para realizar sus prcticas. Se trata del Proceso Unificado de Desarrollo, edicin 2003,
es una aplicacin que se instala en la mquina y la herramienta Rational Rose Enterprise; le permitir
construir modelos en UML, ambos productos los puede usar legalmente con licencia conferida
por IBM Rational bajo el convenio acadmico. Los detalles del acuerdo se pueden visualizar en la
URL http://www.ibm.com/developerworks/university/membership/guidelines.html
En cuanto a la forma de trabajo, damos algunos lineamientos que le ayudarn a aprovechar su tiempo y
lograr mejores resultados:
1.
El tiempo que dedique a la lectura y desarrollo de los ejercicios es fundamental; por lo tanto,
dedique al menos 8 horas semanales. Utilice tcnicas de estudio como el subrayado, cuadros
sinpticos y sobre todo mapas conceptuales.
2.
Recuerde que cuenta con su profesor tutor para la comprensin de los temas. Por lo tanto,
la comunicacin con l ser fundamental, para ello debe familiarizarse con las formas de
PRELIMINARES
comunicacin que tiene, ya sea por telfono (consultar horario de tutora), email, chat, y otras
herramientas tecnolgicas. Recuerde adems que existe una variada informacin en Internet,
bibliotecas digitales y tambin la documentacin que su profesor le acerca a travs del EVA.
3.
En la gua didctica encontrar la planificacin del trabajo con las actividades sugeridas para cada
unidad, distribuidas en el tiempo, por lo tanto trate de cumplir con estas segn se lo indica.
4.
Las autoevaluaciones que se presentan al final de cada unidad as como las que constan en el texto
bsico le ayudarn a comprender de mejor manera cada uno de los temas, por lo que su desarrollo
es de suma importancia para afianzar el proceso de enseanza aprendizaje. Una vez resueltas las
autoevaluaciones de la gua didctica puede comparar sus respuestas con el solucionario que
consta al final de la gua. En caso de que su resultado no sea satisfactorio le sugerimos volver a
revisar los temas y acudir a su tutor para aclarar sus dudas.
Como ayudas, a lo largo del presente documento encontrar los siguientes focalizadores:
Se usar para reflejar actividades de trabajo personal que incluye desarrollo de ejercicios,
o actividades en el computador.
Utilizaremos este focalizador para solicitarle el uso de un recurso OCW (Open Course
Ware) que son recursos educativos diseados por varias universidades y que estn
disponibles para su uso libre por parte de estudiantes y profesionales que deseen
estudiarlos. En el caso de la presente asignatura usaremos parte de este material, para
ello requiere acceso a Internet.
Cuando encuentre este cono se le solicitar que realice una actividad de autoevaluacin
que le permitirn medir su nivel de asimilacin, en este sentido intentamos que estas
autoevaluaciones tengan respuestas no triviales de modo que si usted tiene dudas,
acuda a la tutora o a algn otro medio que le permita solucionarla. Al final encontrar
un solucionario.
Este cono se usar para solicitarle la lectura de una seccin del texto bsico. Recuerde
que no debe leer todo el texto, sino solamente las partes indicadas en los lugares
donde encuentre este cono.
PRELIMINARES
Utilizamos esta imagen para sugerir el desarrollo de algunas actividades que, si bien no
forman parte de la asignatura, puede ser interesante que ahonde en el tema.
Estrategias de evaluacin
El sistema de estudios de la Modalidad Abierta y a Distancia de la Universidad Tcnica Particular de
Loja contempla los siguientes parmetros de evaluacin, con la particularidad de que en la carrera de
Ingeniera en Informtica se incluye de manera obligatoria la participacin en el EVA.
La asignatura se encuentra dividida en dos bimestres, cada uno de los cuales se califica sobre 20 puntos,
en caso de que algn estudiante no obtenga una nota mnima de 14 puntos, deber presentarse a un
examen supletorio calificado sobre 20 que reemplaza la nota bimestral correspondiente. Los estudiantes
aprueban cuando han logrado un mnimo de 28 puntos.
En el presente cuadro constan los parmetros y puntajes que se tomarn en cuenta en el primero y
segundo bimestres.
Instrumento
Trabajo a distancia:
- Objetiva
- Ensayo
- Interaccin EVA
Evaluacin presencial
TOTAL
10
Puntaje
2 puntos
2 puntos
2 puntos
14 puntos
20 PUNTOS
PRIMER BIMESTRE
INDICADORES DE
APRENDIZAJE
CONTENIDOS
UNIDADES/TEMAS
ACTIVIDADES DE
APRENDIZAJE
CRONOGRAMA
ORIENTAIVO
Tiempo estimado
Realizar la interaccin en el
EVA: foro.
Desarrollo de la primera
autoevaluacin.
Desarrollo de la evaluacin
a distancia preguntas de la
1 a 6.
11
COMPETENCIAS
ESPECFICAS
Definie
requerimientos,
disea, implementa,
integra, administra
y optimiza
soluciones software
centralizadas,
distribuidas o
soluciones Web.
INDICADORES DE
APRENDIZAJE
Identifica
requerimientos
y los clasifica en
funcionales y no
funcionales a partir
de planteamientos
iniciales.
Abstrae casos de
uso a partir de
requerimientos
definidos.
Reconoce los
componentes de un
caso de uso.
PRIMER BIMESTRE
CONTENIDOS
ACTIVIDADES DE
APRENDIZAJE
UNIDADES/TEMAS
CRONOGRAMA
ORIENTAIVO
Tiempo estimado
2.1. Ingeniera de
requerimientos.
2.2.
2.3.
2.4.
2.5.
2.6.
Modela componentes
de software a partir
del modelo de casos 2.7.
de uso.
2.8.
2.9. Conceptos de
diseo.
2.10. Modelo del
diseo.
Manejar
organizaciones
de tecnologa y
administracin de
Recursos de TI.
Identifica los
3.1 Un modelo
principios de
general de
cada modelo de
proceso.
desarrollo y los aplica
para organizar los
3.2 Evaluacin
proyectos.
y mejora de
procesos.
Aplica los principios
del desarrollo gil en 3.3. Modelos
el planteamiento de
prescriptivos.
soluciones a proyecto
de desarrollo de
3.4. Fases del proceso
software.
unificado.
3.5. Modelo proceso
personal y de
equipo.
3.6. Qu es un
proceso gil.
3.7. Programacin
extrema.
3.8. Otros modelos
giles.
Unidades de la 1 a la 3 Repaso general de la materia. Semanas 7 y 8
Desarrollo del cuestionario
de repaso en el EVA.
12
8 horas de autoestudio y
8 horas de interaccin.
PRIMER BIMESTRE
Interaccin en el EVA
Prueba objetiva y de
ensayo
Cumplimiento, puntualidad,
responsabilidad
3. Coevaluacin
Parte de ensayo
X
X
Creatividad e iniciativa
Habilidades
Evaluacin
presencial
Comportamiento tico
Competencia: criterio
Actitudes
Evaluacin a
distancia **
Parte objetiva
1. Autoevaluacin *
2. Heteroevaluacin
Contribucin en el trabajo
colaborativo y de equipo
Puntaje
TOTAL
70%
14
20 puntos
Actividades
presenciales y en el
EVA
PORCENTAJE
Mximo 1 punto
(completa la
evaluacin a
distancia)
Anlisis y profundidad en el
desarrollo de temas
Estrategia de
aprendizaje
Conocimientos
Para aprobar la asignatura se requiere obtener un puntaje mnimo de 28/40 puntos, que equivale al 70%.
* Son estrategias de aprendizaje, no tienen calificacin; pero debe responderlas con el fin de autocomprobar su
proceso de aprendizaje.
** Recuerde que la evaluacin a distancia consta de dos partes: una objetiva y otra de ensayo, debe desarrollarla
y entregarla en su respectivo centro universitario.
Seor estudiante:
Tenga presente que la finalidad de la valoracin cualitativa es
principalmente formativa.
13
PRIMER BIMESTRE
La tabla 1.1 presenta una idea de las etapas que se pueden desarrollar para construir una aplicacin, as
como sus artefactos, los cuales pueden variar de acuerdo a la metodologa y al tipo de proyecto con el
que trabaje:
Tabla 1.1. Etapas y artefactos genricos para el desarrollo de aplicaciones de software
LEVANTAMIENTO
DE INFORMACIN
ANLISIS
DISEO
Encuestas.
Observacin
directa.
Requerimientos
modelados.
Requerimientos
Especificacin de Arquitectura.
casos de uso.
Scripts para creacin de
base de datos.
14
CONSTRUCCIN
PRUEBAS E
IMPLEMENTACIN
Plan de pruebas.
Plan de
implementacin.
Instaladores.
Manuales tcnicos.
Manual de usuarios.
PRIMER BIMESTRE
Ahora ya tiene claro la definicin de software y, mejor an, si asocia la palabra software con las funciones
del computador y los usos que se le pueden dar en los diferentes mbitos.
En el texto bsico se presentan tres caractersticas del software que lo hace diferente al
hardware, sera importante que realice la lectura detallada de las mismas.
15
PRIMER BIMESTRE
Ejercicio 1.1
1.
En base a la categorizacin de los dominios del software del texto bsico realice un cuadro
resumen de los dominios del software y luego clasifique los siguientes tipos de software:
Portal de bsquedas de informacin cientfica: isi of knowledge.
Lenguaje de programacin Java.
Sistema de facturacin utilizado por la tienda Supermaxi.
WEKA.
2.
De los problemas y puntos por evaluar que se encuentran al final del captulo realice el ejercicio
1.1 y 1.2.
Un tema que no se debe olvidar y por la naturaleza de las organizaciones es el 1.1.3
Software heredado, este tema se presenta en el texto bsico, el software heredado son
programas que fueron desarrollados tiempo atrs, son modificados continuamente y
a pesar de dar problemas de actualizacin, tambin son un apoyo para las funciones
bsicas del negocio, pues al estar ah, debe ser tomado en consideracin por los
equipos de desarrollo de cada una de las empresas.
16
PRIMER BIMESTRE
Rendimiento
Uso intensivo de
redes
Concurrencias
Carga impredecible
Gran nmero de
usuarios a la vez
Disponibilidad
Orientadas a los
datos
Contenido sensible
Inmediatez
Seguridad
Esttica
Evolucin continua
Si termin de encontrar las palabras clave, ahora contine entonces con el siguiente apartado, que es de
gran importancia.
Lea detenidamente cada uno de estos apartados que se presentan en el texto bsico.
Qu podemos concluir de esto? Se debe hacer ingeniera con el software en todas sus
formas y a travs de todos sus dominios? Cree que esta afirmacin es correcta o no?
Por qu?
Dentro de la ingeniera del software al proceso se lo define como conjunto de actividades, acciones
y tareas que se ejecutan cuando va a crearse algn producto del trabajo como lo expone el texto
bsico, de ah que la ingeniera de software se base en actividades estructuradas que van a ser aplicadas
a todos los proyectos software, con la finalidad de obtener productos de calidad. Una estructura general
podr constar de actividades las cuales las plasmamos en la figura 1.1 para que nos ayude a recordar:
Comunicacin
Planeacin
Modelado
Construccin
Despliegue
17
PRIMER BIMESTRE
Esta estructura del proceso se encuentra en el texto bsico donde se detalla cada una de
estas cinco actividades, lalas y desarrolle la autoevaluacin. Luego responda a lo siguiente:
Suponga que est realizando un proyecto de desarrollo para la empresa DANCAR que se encarga de la
compra-venta de vehculos, debe presentar un plan de desarrollo del mismo, en qu etapa o actividad
estructural estaremos entonces?, qu debe hacer adicionalmente en esta actividad?
De acuerdo al tipo de proyecto que estemos realizando estas actividades se podrn realizar en forma
interactiva de acuerdo al progreso del mismo, repitiendo estas tareas hasta llegar a la finalizacin del
proyecto. Tenemos que tener claro que cada iteracin contribuir para que el software vaya aumentando
sus funcionalidades y a la vez este proceso lo ir haciendo ms complejo.
Ya hemos visto y conocido las actividades estructurales del proceso de software, y
si la estructura de proceso incluye actividades que se las denomina sombrilla ser
conveniente entonces conocer dichas actividades:
Menciono la primera: seguimiento y control de proyectos de software.- donde se evala el progreso
de desarrollo y permite tomar acciones para corregir en caso de que estas no se estn cumpliendo de
acuerdo a una planificacin inicial. Por ejemplo, si hace falta personal, si no hay informacin adecuada,
etc. una lnea de especializacin en esta rea es la PMO.
A continuacin revise las actividades sombrilla y familiarcese con cada una de ellas,.Estos
temas pueden ser ampliados ya que existe mucha documentacin en Internet.
Cada proyecto se diferencia de otro debido a su naturaleza, entonces la actividad de control y seguimiento
de proyectos diferenciar el tipo de proyecto o el proceso ser el mismo para cualquier proyecto. Cul
es su opinin?
Entender el
problema
Planear la
solucin
Ejecutar el plan
Examinar la
exactitud del
resultado
18
PRIMER BIMESTRE
Hablaremos de la primera etapa: entender el problema. Debemos recordar que no somos especialistas
en todas las reas y si estamos hablando de un producto especializado como por ejemplo un sistema
para un dentista pues tendremos que pedir la ayuda necesaria primero para entender el tema y luego
con los involucrados buscar la posible solucin del problema, buscar y entender lo que realmente se
quiere conseguir y luego pasar a identificar una solucin del mismo.
Deber ahora usted revisar las otras etapas, no se olvide que cualquier inquietud debe ser conversada
con su tutor.
OpenCourseWare (OCW) es un ejemplo de las iniciativas que en los ltimos tiempos
han emergido para promover el acceso libre y sin restricciones al conocimiento. De esta
manera le invitamos a revisar el recurso http://ocw.um.es/ingenierias/fundamentosde-ingenieria-del-software/material-de-clase, donde usted podr ir reafirmando sus
conocimientos sobre estos temas. Revise el tema 1 de este recurso.
Los mitos del software son un tema muy interesante que le permitir entender y contraponer las
creencias errneas sobre el software y el proceso que se utiliza para obtenerlo. Le recomendamos que
haga una revisin de estos tanto en el mbito de la administracin, del cliente y profesional.
Antes de terminar con esta unidad queremos poner en consideracin este enunciado que habla mucho
de la realidad del software:
1
En el texto bsico se va realizando un ejercicio prctico, el cual debe consideralo para la comprensin de
los temas. En varios apartados del texto se hace referencia a este ejercicio. En lo posible siga el desarrollo
de este ejercicio.
Hemos concluido el estudio de esta unidad, por lo que nos conviene comprobar cunto hemos asimilado
de los temas tratados, para lo cual es necesario desarrollar las autoevaluaciones de conocimiento.
19
PRIMER BIMESTRE
Autoevaluacin 1
2.
3.
4.
La robtica (los proyectos que se trabajan en esta rea) pueden ser consideraciones
como software de ingeniera y ciencias.
5.
6.
7.
8.
9.
Los mitos del software que se presentan han desencadenado que administradores y
trabajadores se equivoquen aun cuando el conocimiento del software avanza.
10.
Ir a solucionario
20
PRIMER BIMESTRE
Econmico que busca establecer cules sern los beneficios frente a la inversin realizada. Para ello
se vale de tcnicas de evaluacin financiera de proyectos o modelos econmicos como anlisis
de valor ganado o la tasa interna de retorno.
Hasta ahora ya se ha realizado una inversin en un equipo para realizar el estudio de factibilidad, estos
gastos no deben ser un impedimento para que la empresa desista de realizar el proyecto por cualquiera
de los factores revisados. De no ser as se debe realizar una especificacin detallada de las alternativas
que se han seleccionado adems de tener una definicin de la planificacin inicial del proyecto.
Las alternativas que se pueden encontrar luego del estudio de viabilidad pueden determinar la compra
de un producto ya comercial y no esperar mucho tiempo en el desarrollo, o determinar un desarrollo
interno o externo del mismo.
La planificacin inicial podra identificar areas de riesgo, presupuestos, calendarios, planes de trabajo,
tcnicas de comunicacin entre los componentes del proyecto, forma de interactuar con el cliente.
Luego de haber realizado estas tareas, entonces nos centraremos en el proceso de obtencin de
requerimientos para iniciar el proyecto.
Comencemos el estudio de la presente unidad, con el tema PRINCIPIOS QUE GUAN
LA PRCTICA del captulo 4 del texto bsico, luego elabore un mapa conceptual sobre
estos principios.
21
PRIMER BIMESTRE
Ahora que ya conoce los principios empecemos el estudio con dos temas importantes,
el primero es la obtencin de los requerimientos (su modelado en la unidad 5) y el
proceso de diseo que se tiene que cumplir para la construccin del software.
Una mala prctica por parte de los programadores es el pretender escribir cdigo sin informacin ni
insumos suficientes para poder hacerlo, es un grave error querer construir algo luego de la primera
entrevista con un cliente o usuario.
Es importante entonces entender lo que el cliente desea antes de comenzar a disear (modelar el diseo)
o construir (etapa de codificacin con una herramienta de programacin) un software. En la figura 2.1
podemos ver a la ingeniera de requerimientos ayudando en la descripcin del sistema y tambin siendo
la base para el diseo del mismo.
Descripcin del
sistema
Modelado de
anlisis
Modelado del
diseo
Realice una lectura de cada una de las tareas de la ingeniera de requisitos, esto le
ayudar a comprender este tema, estas tareas las encuentra en el apartado 5.1.
Ingeniera de requerimientos, estas son: concepcin, indagacin, elaboracin,
negociacin, especificacin, validacin y administracin.
2
22
PRIMER BIMESTRE
Ahora bien, hablaremos de una de estas tareas, la de validacin; donde entendemos como validacin
de los requisitos al proceso de comprobacin si dichos requisitos son correctos. Esta etapa es de suma
importancia si no se quiere correr el riesgo de realizar una mala implementacin debido a que no se hizo
una buena especificacin. Todo esto se ver reflejado tanto en la calidad del software como en el costo,
puesto que se deber corregir el sistema.
Cuando estamos hablando sobre la mala definicin de la frontera del sistema podra
decirnos a qu tarea nos referimos?.
En este apartado podemos revisar la siguiente direccin electrnica: http://hex.nosololinux.com/
modulos/descargas/Anexo%202.pdf, donde encontrar un documento de especificacin de
requerimientos que le ayudar a comprender cul es el proceso que se debe seguir en esta etapa.
Otra de las actividades es la administracin de los requerimientos para software, ya que estos cambian
constantemente y su modificacin ser a travs de toda la vida del sistema. Entonces se necesitar
administrar esto para lo cual existen herramientas automatizadas que nos permiten comprobar la
trazabilidad, como por ejemplo Requisite Pro. Al existir versiones de prueba de esta herramienta sera
recomendable que usted. las consiga desde Internet y las trabaje.
A continuacin se presenta tambin una plantilla que se puede utilizar para la especificacin de los
requisitos:
23
PRIMER BIMESTRE
2.
Hacer una lista de las personas que se beneficiarn de forma directa o indirecta, es decir todos
quienes participen, o sea posibles candidatos.
3.
Establecer un dilogo anterior para que las personas estn preparadas y de ser posible darles una
idea del tema que se va a tratar.
4.
5.
6.
24
PRIMER BIMESTRE
Si ya ha revisado estos temas vamos a listar algunas actividades que usted debe corroborarlas:
Existen tipos de requerimientos como son los requerimientos normales, formales y emocionantes.
Cada vez que se van recabando los requerimientos se tiene ms clara la visin de cmo sern las
caractersticas del sistema.
En funcin del tamao del sistema, los productos de trabajo generado durante la indagacin
varan.
25
PRIMER BIMESTRE
Revise las preguntas que se sugiere realizar para desarrollar casos de uso una vez que se identific un
actor.
A continuacin vamos a revisar un ejemplo de plantilla para la especificacin de caso de uso y una breve
descripcin de cada uno de sus componentes. Esta llamada especificacin de caso de uso variar en su
forma puesto que como se lo lleve determinar el equipo de trabajo.
<Identificador>
<nombre descriptivo>
Descripcin
n
.
<postcondicin del caso de uso>
Paso
Accin
p
En el caso de que [situacin que provoca la excepcin] el sistema deber
{<accin a realizar>, realizar el caso de uso [caso de uso]}
Precondicin
Secuencia normal
Postcondicin
Excepciones
Rendimiento
Frecuencia
Importancia
Urgencia
Comentarios
26
q
El sistema deber realizar la/s accin /es descrita/s en {los pasos [primer paso] al
[ltimo paso], el paso [nmero de paso]} en un mximo de [cota de tiempo]
Este caso de uso se espera que se lleve a cabo una media de [nmero de veces] al
[unidad temporal]
{vital, importante, quedara bien}
{inmediatamente, hay presin, puede esperar}
<otras consideraciones en formato libre>
PRIMER BIMESTRE
En el Entorno Virtual de Aprendizaje encontrar una plantilla basada en RUP para la especificacin de
casos de uso que podra ayudarle para una mejor comprensin.
En el texto bsico en la pgina 115 tenemos un ejemplo de caso de uso, como se puede ver con el que
hemos planteado como ejemplo difieren en algunos aspectos, pues realmente no hay un solo modelo
de especificacin de casos de uso, es por eso que el que se adopta en el desarrollo de un proyecto
software ser el que el ingeniero seleccione o diseo.
Vamos a referirnos al siguiente proyecto que se presenta en la WEB http://users.dsic.upv.es/asignaturas/
facultad/lsi/ejemplorup/Requisitos.html#EspCU para que se familiarice con los diagramas de casos de
uso y la especificacin de casos de uso.
Sin embargo, los costos de correccin de errores en la fase de prueba son mucho mayores que si los
errores se corrigen en fases tempranas como la fase de requisitos o de anlisis. De aqu que es necesario
adelantar el proceso de prueba en las primeras etapas de desarrollo, claro est donde sea posible.
27
PRIMER BIMESTRE
La revisin de requisitos se realiza con un grupo de personas que lee, analiza y discute el documento de
especificacin. Entonces es importante que usted sepa seleccionar a las personas que han de trabajar en
este proceso de validacin.
Podemos realizar una comparacin entre el anlisis y la validacin, as, en el anlisis contaremos como
entrada requisitos incompletos mientras que en la validacin un conjunto comprobado de requisitos.
Adems en el anlisis veremos si los requisitos satisfacen las necesidades del cliente o si hemos levantado
los requisitos correctos mientras que en la validacin nos preguntamos si estn bien descritos o si el
documento describe el sistema. Como nos podemos dar cuenta la etapa de validacin permite tener una
definicin precisa de las necesidades de los usuarios.
Despus de realizar la especificacin las preguntas que se presentan en el apartado del texto deben
plantearse y responderse para garantizar que el modelo est correcto.
Descripcin del
sistema
Modelado de
anlisis
Modelado del
diseo
28
PRIMER BIMESTRE
En la figura 8.1 del texto bsico, se puede ver esta relacin que acabamos de mencionar as como los
elementos que participan en cada parte del modelo de diseo que se encuentra en la pirmide.
Ejercicio 2.1
Analice la figura 8.1 del texto bsico y determine la relacin entre los elementos del anlisis hacia el
modelo. Realice un cuadro donde refleje los elementos y las relaciones entre los dos modelos.
Si ya revis este apartado, entonces habr notado que la importancia del diseo, se resume en una
palabra: CALIDAD.
29
PRIMER BIMESTRE
Entonces es de suma importancia que revise cada uno de estos atributos de calidad para
poder aplicarlos en el momento del desarrollo de aplicaciones.
30
PRIMER BIMESTRE
Autoevaluacin 2
2.
3.
4.
5.
6.
7.
8.
9.
10.
2.
3.
Ir a solucionario
31
PRIMER BIMESTRE
32
PRIMER BIMESTRE
Determina qu
participante.
funciones
necesita
cada
Lista inicial de
requerimientos.
funciones
necesidades
33
PRIMER BIMESTRE
Revisaremos ahora de cada uno de ellos, determinando algunas caractersticas esenciales, debe realizar
una lectura detallada de cada uno y subrayar en el texto las partes ms importantes.
Algo que debe tener en cuenta es que la mayora de los procesos de software han
de incluir la actividades estructurales que hemos visto, sin embargo cada uno de los
modelos pone ms nfasis en determinada actividad, as como el proceso que se
realiza en cada uno podr variar.
Cascada
Conocido tambin como ciclo de vida clsico. Es un modelo secuencial que empieza con el levantamiento
de informacin y la identificacin de requerimientos, cumpliendo con las etapas para terminar con la
puesta en marcha del sistema.
Existe una variante que es el modelo en V, este modelo se lo puede observar en la figura 2.4 del texto
bsico, donde cada una de las etapas tiene una contraparte que nos ayuda al aseguramiento de la
calidad del producto final.
Incremental
Es un modelo para la produccin de software en incrementos. Por qu? Esto es necesario para poder
cumplir con cierta funcionalidad requerida y que luego se puede ir agregando componentes adicionales.
Observe la figura 3.2 en la cual hemos representado un sistema con sus componentes, se trata de un
sistema de gestin acadmica donde en el centro est el proceso central de matriculacin y expediente
acadmico, y en sus alrededores otras funcionalidades que poco a poco pueden irse terminando para
llegar a completar la solucin definitiva.
34
PRIMER BIMESTRE
Adems debemos tener claro que cada una de las funcionalidades se crearn en base a un nuevo modelo
de procesos.
Se dice que el primer entregable ser la solucin principal, donde se plasma la mayora de los
requerimientos bsicos y luego se van agregando caractersticas suplementarias al producto final.
Evolutivo
El modelo espiral es un modelo definido inicialmente por Barry Boehm en 1988, propone un ciclo de
desarrollo que evoluciona con cada iteracin.
Concurrentes
Es conocido como de ingeniera concurrente, los modelos anteriormente revisados son representados a
travs de elementos iterativos y concurrentes.
Despus de haber realizado la lectura, es hora de verificar cunto entendi de este tema, llenemos
entonces el siguiente cuadro resumen:
Comunicacin
Planeacin
Modelado
Construccin
Despliegue
Cascada
Incremental
Evolutivo
Concurrente
Los modelos de procesos predictivos, como se lo menciona, han estado siendo aplicados por muchos
aos con la finalidad de organizar las actividades de desarrollo de software. Todos estos proponen un
flujo de proceso pero basados siempre en las mismas actividades como lo demuestra el cuadro anterior.
El apartado del texto bsico 2.4 relacionado con modelos de procesos especializado
debe ser parte de una lectura realizada por usted para una comprensin de este tema,
puesto que estos modelos no sern tratados en esta asignatura.
35
PRIMER BIMESTRE
PRODUCTO: estos son artefactos que se crean durante la vida del proyecto, pueden ser: modelos,
cdigo, documentacin, diagramas UML, prototipos, componentes, el plan de prueba. Artefactos
de ingeniera y de gestin.
PROCESOS: conjunto de actividades para crear el producto tambin se puede decir que es una
plantilla para crear proyectos. Se define en trminos de flujos de trabajo (conjunto de actividades).
Se identifican trabajadores y artefactos.
Este modelo se ampliar con ms detenimiento en la unidad 4 de esta gua como parte de la asignatura.
36
PRIMER BIMESTRE
Similitudes
Beck Kent et Al (2001) Agile Manifesto [En lnea] EEUU:Utah. Disponible en http://agilemanifesto.org/ [Consulta 26 abril
2011]
37
PRIMER BIMESTRE
Luego de leer este manifiesto resultara sencillo encontrar las diferencias entre los
denominados modelos prescriptivos y los modelos giles. Lea pausadamente el
manifiesto y trate de identificar cules seran las caractersticas de los modelos
prescriptivos En este sentido seran las contrarias a este manifiesto.
Vamos a tratar de comprender este tema que se lo revisa en el captulo 3 del texto
bsico, ya que es de mucha importancia por la acogida que tienen en la actualidad este
tipo de metodologas.
Con esta parte de la ingeniera de software conocida como gil lo que se desea es llegar a cumplir con
las necesidades del cliente de forma correcta y adems en la entrega incremental de las necesidades. Es
poder adaptarse a los cambios del software que se dan en el desarrollo.
Para entender bien el concepto de agilidad, revisemos la definicin que plantea, en el
texto bsico, Ivar Jacobson. Qu puntos ha considerado abstraer de este concepto?
Compare esto con lo propuesto en el apartado 3.3 del texto bsico donde podemos
encontrar la definicin de un proceso gil; despus de leer este apartado comprender
claramente. Ahora responda a la interrogante: cules son las caractersticas clave que
deben estar presentes entre los miembros del equipo de trabajo para que este sea eficiente?
Si revisa detenidamente la figura 3.1 del texto bsico notar cmo los costos por los cambios disminuyen
significativamente con procesos giles durante el avance del desarrollo del software.
Quienes estn orientados hacia el desarrollo de los procesos agiles debern conocer
los principios de agilidad y polticas de desarrollo gil, estos temas se encuentran
en el texto bsico en los apartados 3.3.1 y 3.3.2. Algo que no debemos olvidar es el
compromiso que debe haber en el equipo de desarrollo; estos se conocen como los factores humanos
que participan en el desarrollo de procesos giles, que se encuentran en el apartado 3.3.3.
Reflexione: se puede construir un software con procesos giles que satisfagan las
necesidades de los clientes y tengan la claridad necesaria que permita luego realizar
nuevas adaptaciones?
38
PRIMER BIMESTRE
El proceso XP
Usa un enfoque orientado a objetos, en la figura 3.2 del texto bsico podemos observar claramente este
proceso empezando de una fase de planeacin, para pasar al diseo y luego a la codificacin y pruebas
que permitan incrementar las funcionalidades del software (nuevas requeridas). Debe realizar el estudio
de cada una de estas actividades que el XP propone.
Beck Kent et Al (2001) Agile Manifiesto [En lnea] EEUU:Utah. Disponible en http://agilemanifesto.org/ [Consulta 26 abril
2011].
39
PRIMER BIMESTRE
Scrum acenta el uso de un conjunto de patrones de proceso de software. Cada uno de esos patrones
de proceso define un grupo de acciones de desarrollo: retraso, sprint: reuniones, demostraciones
preliminares.
Atencin: Cules seran las diferencias y similitudes entre los modelos giles? Realice
un cuadro comparativo. Este trabajo debe ser presentado al profesor como parte de los
dos puntos de la interaccin a travs del EVA.
40
PRIMER BIMESTRE
Autoevaluacin 3
La forma de organizar las actividades estructurales dentro del modelo general del
proceso de software se conoce como flujo del proceso.
2.
3.
4.
5.
6.
7.
Las primeras conversaciones con los gerentes de una organizacin para el desarrollo
del software donde se propone una arquitectura aproximada de lo que se va a
desarrollar, en RUP se refiere a la fase de inicio.
8.
9.
En los procesos giles, las personas y el equipo de trabajo deben adaptarse a las
necesidades del proceso.
10.
Ir a solucionario
41
SEGUNDO BIMESTRE
SEGUNDO BIMESTRE
6.5. Competencias genricas
Planea, organiza,
dirige y controla
sistemas y servicios
informticos
en contextos
empresariales o
institucionales.
Analiza las
necesidades de
conocimiento
necesarias para
resolver un
problema.
INDICADORES DE
APRENDIZAJE
CONTENIDOS
UNIDADES/TEMAS
Organiza iteraciones
considerando los
niveles de riesgo de
los casos de uso.
5.1. Modelado de
Realiza la
requerimientos
especificacin
correcta de los casos 5.2. Modelado basado en
escenarios
de uso.
5.3. Modelado UML para
casos de uso
Modela a travs
5.4. Modelado basado en
de diagramas los
clases
requerimientos de
5.5. Arquitectura de
software.
software
5.6. Gneros y estilos
Organiza los
arquitectnicos
componentes para 5.7. Breve taxonoma
la arquitectura del
de estilos
sistema.
arquitectnicos
5.8. Diseo
arquitectnico
ACTIVIDADES DE
APRENDIZAJE
CRONOGRAMA
ORIENTATIVO
Tiempo Estimado
Semana 1,2:
8 horas de
autoestudio y
8 horas de
interaccin.
Desarrollo de los
ejercicios propuestos
en la gua.
Desarrollo de la
autoevaluacin y
desarrollo de la
evaluacin a distancia.
Actividades del EVA
Lectura de los apartados Semana 3,4,5:
del texto bsico
sealados en la gua
12 horas de
didctica.
autoestudio y
12 horas de
Instalar la herramienta interaccin.
Rational Rose.
Desarrollo de la
autoevaluacin.
Desarrollo de la
evaluacin a distancia.
Actividades en el EVA.
Revisar recursos OCW.
43
COMPETENCIAS
ESPECFICAS
INDICADORES DE
APRENDIZAJE
Aplica criterios
de calidad a
los diferentes
componentes y
artefactos del ciclo
de vida del software.
SEGUNDO BIMESTRE
CONTENIDOS
UNIDADES/TEMAS
ACTIVIDADES DE
APRENDIZAJE
6.1. Conceptos de
calidad
6.2. Calidad del software
6.3. Dilema de la calidad
del software
6.4. Cmo lograr la
calidad del software
Unidades de la 4 a la 6
Repaso general de la
materia.
Desarrollo de la
autoevaluacin y
actividades en el EVA.
CRONOGRAMA
ORIENTATIVO
Tiempo Estimado
Semana 6:
4 horas de
autoestudio y
4 horas de
interaccin
Semanas 7 y 8
8 horas de
Desarrollo del
autoestudio
cuestionario de repaso a
travs del EVA.
8 horas de
interaccin
44
SEGUNDO BIMESTRE
Importante:
El contenido del presente captulo no se encuentra en el texto bsico, por
lo que ser desarrollado en su totalidad en la presente gua didctica, sin
embargo colocaremos las referencias necesarias para que pueda ampliar
la informacin.
En sus inicios el desarrollo de software era una prctica propia de los programadores, quienes gracias
a su gran capacidad e ingenio podan crear aplicaciones complejas, sin embargo a medida que estas
aplicaciones se incluan en el mbito empresarial se volvieron mucho ms complejas y los mtodos de
desarrollo utilizados hasta entonces se volvieron insuficientes.
A inicios de los 90, no haba un estndar en cuanto a modelos y representaciones de software, es as
como tres visionarios Gary Booch, James Rumbaugh e Ivar Jacobson, unen sus esfuerzos y logran crear el
Lenguaje Unificado de Modelado (UML) el cual brinda la tecnologa necesaria para apoyar la prctica de
la ingeniera de software orientada a objetos, pero no da la estructura del proceso que gue a los equipos
del proyecto cuando aplican la tecnologa7, lo que los llev a crear el denominado Proceso Unificado
de Desarrollo Rational (RUP), que hoy en da es uno de los procesos ms ampliamente utilizados en la
prctica de la ingeniera del software y para una gran cantidad de proyectos.
Revisemos en este momento los orgenes y fundamentos del proceso unificado de
desarrollo, que ms all de los antecedentes histricos, nos interesa conocer las bases
que lo sostienen; en este sentido trataremos dos apartados importantes que son:
las mejores prcticas de la ingeniera del software y las caractersticas que lo hace
diferentes de los otros procesos de desarrollo.
45
SEGUNDO BIMESTRE
Planificacin
Implementacin
Gestin de la
configuracin
Pruebas
Evaluacin
Liberacin
En la figura 4.1 se aprecia esta estrategia que es usada por el RUP y algunos otros procesos giles de
desarrollo de software, cuyo esquema de operacin es el siguiente: cada ciclo (iteracin) inicia con una
fase de planificacin donde se establecen alcances, recursos, personas y resultados esperados para esa
iteracin, luego de realizar el estudio de necesidades que derivan en los requerimientos; prOcede a la
fase de implementacin que inicia con el anlisis y diseo y culmina con la implementacin; de esta fase
pasamos a la fase de evaluacin y de haberse completado el desarrollo, se libera y termina; de no ser este
el caso pasa a una nueva fase de evaluacin, planificacin dando inicio a la siguiente iteracin.
4.1.2 Prctica 2: gestionar los requerimientos
De acuerdo al reporte conocido como CHAOS Report9 , la tasa de xito de los proyectos de desarrollo de
software ha ido disminuyendo progresivamente, y atribuye como causa ms comn de dichos fallos a
una incorrecta definicin de los requerimientos en las fases iniciales del proyecto, y una pobre gestin
a lo largo del ciclo de desarrollo.
La administracin de requerimientos es la prctica sistemtica para encontrar, documentar, organizar y
dar seguimiento a los requerimientos del sistema.
Esta prctica, por tanto, se enfoca en tres objetivos generales:
1.
8
9
46
SEGUNDO BIMESTRE
2.
3.
Tener un mtodo organizado para levantar, organizar, documentar y gestionar los requerimientos
cambiantes de las aplicaciones.
Mantener un sistema de control de cambios en los requerimientos.
47
SEGUNDO BIMESTRE
Esta prctica favorece la reutilizacin tanto de los componentes como de la arquitectura en s, facilita
las actividades de planificacin, asignacin de recursos y la liberacin del producto y a la vez reduce la
complejidad inherente al sistema mediante la descomposicin en partes ms pequeas y manejables.
4.1.4. Prctica 4: modelar visualmente
Booch et Al (2006:6) definen a un modelo como Una simplificacin de la realidad y adems consideran
que Todos los sistemas pueden ser descritos desde diferentes perspectivas utilizando diferentes
modelos, y cada modelo es, por tanto, una abstraccin semnticamente cerrada del sistema.
El modelado visual se ve soportado en su totalidad por UML y permite: visualizar, especificar, construir
y documentar los artefactos de un sistema con gran cantidad de software. En la figura 4.4 se muestran
varios de los modelos que se pueden desarrollar con UML.
48
SEGUNDO BIMESTRE
Al inicio de la unidad se plante que las mejores prcticas de la ingeniera del software surgieron
como respuesta a los problemas que haba con los proyectos de desarrollo, en este momento le
pedimos que realice un anlisis inverso y establezca cules considera que son estas causas. Utilice
la siguiente tabla.
Mejor prctica
Desarrollo iterativo.
Causas principales
2.
Una vez que ha establecido las causas que han sido consideradas para ser resueltas con las mejores
prcticas del RUP, describa las caractersticas que deberan tener este proceso de desarrollo que le
permitira atacar esos problemas. Utilice un mapa mental similar al siguiente.
49
SEGUNDO BIMESTRE
IMPORTANTE
No avance si no desarroll el ejercicio, es importante hacerlo puesto que
le permitir generar ideas acerca de los problemas que debe resolver un
proceso de desarrollo y naturalmente la curiosidad por conocer cmo es
un proceso de desarrollo de software que est basado en esas mejores prcticas.
Continuemos conociendo otro de los cimientos del RUP, que en este caso son las caractersticas.
50
SEGUNDO BIMESTRE
A esta situacin, en los proyectos, se la identifica como riesgosa, y el propsito del RUP es identificar y
reducir los riesgos lo ms temprano posible en el proyecto. Barry Bohem, en relacin a lo que necesita una
disciplina de software, escribi que cree una aproximacin al proceso de desarrollo de software dirigida
por los riesgos en lugar de un proceso fundamentalmente dirigido por los documentos o dirigido por el
cdigo14, y esto es precisamente lo que RUP busca, reducir los niveles de riesgo lo ms pronto posible,
como se aprecia en la figura 4.5, en los niveles de riesgo en un proceso iterativo e incremental y un
modelo en cascada son similares, sin embargo a medida que avanzan estos niveles empiezan a disminuir
de manera temprana en el primero; en tanto que en el segundo, estos niveles empiezan a disminuir
mucho ms tarde en el proyecto, lo que significa tambin que los costos provocados por efecto de los
riesgos sern mucho ms altos que en el anterior.
Figura 4.5. Diferencia de los niveles de riesgo entre un proceso de desarrollo iterativo y el modelo en cascada15.
Como solucin a esta situacin el RUP y otra gama de procesos de desarrollo conocidos como giles,
entre ellos XP, SCRUM y otros, han optado por la estrategia de trabajar en ciclos cortos de desarrollo
que en RUP se conocen como iteraciones, durante las cuales el equipo de desarrollo cumple todas
las actividades que ahora se conocen como disciplinas e incluyen: anlisis del negocio, anlisis de
requerimientos, planificacin y gestin del proyecto, aseguramiento de calidad entre otros, y en cada
iteracin se propone entregar parte de la solucin a los usuarios, de modo que a medida que se avanza
en el proceso el sistema se adapta a los cambios que se suceden en el tiempo con una arquitectura
estable y funcionalidades probadas por los usuarios.
Qu le parecen las caractersticas del RUP? Cree que estas realmente cumplen con las
caractersticas sugeridas en las mejores prcticas? Qu tan lejos o qu tan cerca estuvieron
sus respuestas de las caractersticas aqu planteadas?
Ejercicio 4.2
Elabore un breve ensayo con las respuestas a estas preguntas y adjntelo en su trabajo
a distancia.
Bien, ahora que ya conoce algunas de las caractersticas del RUP, es momento de trabajar con l, para ello
es necesario instalar el RUP, en su computador, el cual que viene en el disco adjunto a su gua didctica.
Las instrucciones para su instalacin las encontrar en el EVA, con este producto se trabajar en el resto
del presente captulo.
14 Citado por Jacobson et Al (2000) Ob. Cit. P. 86.
15 Jacobson et Al(2000) Ob. Cit. P. 86.
51
SEGUNDO BIMESTRE
IMPORTANTE
Como ya lo habr notado, el contenido del paquete se encuentra en idioma ingls,
por lo tanto, es conveniente que tenga un dominio bsico del ingles tcnico, pero
conscientes de que esto podra ser un problema, vamos a tratar de orientarle
en el desarrollo del contenido, sin embargo ser necesario que se valga de otros medios para
comprender el contenido de la herramienta para que le saque el mximo provecho.
Una vez que ha ingresado familiarcese con la aplicacin que tiene en pantalla (ver figura 4.7), en la parte
izquierda tiene un rbol de navegacin el cual le permitir realizar un recorrido por cada uno de los
componentes del proceso unificado de desarrollo; en la parte derecha que es la ms amplia es donde
se muestra el contenido, en la parte superior del rbol de navegacin encontrar los botones de control
para cada una de las vistas del RUP, en la parte superior del rbol de contenido encontrar el rbol de
ruta en donde puede saber dnde se encuentra ubicado y haciendo click en l se puede regresar.
52
SEGUNDO BIMESTRE
Ahora bien, para seguir avanzando, es preciso que aprenda a navegar por la aplicacin. Para ello debe
empezar con el rbol de navegacin en donde encontrar todas las opciones del programa, entre ellas
debe buscar la opcin que dice Navigating the process que se encuentra bajo la vista Getting Started.
Al seguir las instrucciones dadas aprender a navegar por toda la aplicacin.
Ejercicio 4.3
Ahora que conoce algo de la herramienta, le invito a que siga las indicaciones que aparecen
en la seccin Getting Started; y, una vez que est familiarizado, desarrolle las siguientes actividades:
Navegue por la herramienta para encontrar la siguiente informacin:
1.
Identifique y liste las fases (phases) y las disciplinas (disciplines) y antelas en las siguientes tablas
junto con su descripcin.
Para hacerlo seleccione, en el rbol de navegacin, la opcin overview (vista general); all encontrar, en la
ventana de contenido, el grfico del proceso unificado de desarrollo, luego ingrese en cada una de las
fases y establezca el propsito de cada una de ellas, anotndolo en la columna correspondiente de la
tabla. Todo el contenido debe estar en espaol. Luego haga lo propio con las disciplinas. Cuando visite
cada disciplina tendr un diagrama de las actividades que implica, para obtener la descripcin de la
misma, deber darle un vistazo general a cada diagrama e ingresar a estas actividades, haciendo clic en
cada una de ellas, en donde encontrar sus descripciones.
a. Fases
Fase (Phase)
Descripcin
53
SEGUNDO BIMESTRE
b. Disciplinas
Disciplinas
Descripcin
Estamos seguros que logr cumplir con la tarea. Conforme se familiarice con este entorno le resultar
ms fcil sacarle provecho; como decamos antes, es posible que el idioma le haya significado ocupar un
poco ms de tiempo, pero eso le beneficiar mucho ms adelante.
2.
Ahora le invitamos a ver cmo puede obtener informacin adicional, para ello ubquese en la
seccin Process essentials el rbol de navegacin en la vista Getting Started, luego haga click
en el documento Whitepaper: The Ten Essentials of RUP, lalo y elabore un breve resumen de su
contenido.
3.
Ahora seleccione la vista Team (Equipo), luego seleccione Rup Lifecycle (ciclo de vida del RUP),
en la ventana de contenido haga click en Inception (inicio o conceptualizacin) e identifique
cules son los roles que intervienen en esta fase y lstelo a continuacin.
4.
Regrese nuevamente a RUP LIFEYCYCLE, y ahora haga clic en donde dice Lifecycle objectives
milestone, ahora en la tabla que aparece hay artifacts (documentacin) ordenados por importancia.
Indique cul es el de mayor importancia y cul es el de menor importancia?
5.
Ahora ingrese al artefacto Visin haciendo clic en el mismo; y, en la tabla resultante, haga clic en
CREG-VisionInception y revise el contenido del documento de visin para ese proyecto ejemplo.
6.
Finalmente regrese y haga clic Template: Vision y seleccione todo el contenido de esa pgina (ir
al men del navegador, ingrese a la opcin Editar y luego seleccionar todo) luego copie (Ctrl + C)
este contenido en un documento en Word, y de esta forma ha obtenido una plantilla en formato
Word que podra usar en sus proyectos. Luego haga lo mismo con Template: Visin (Informal) y
obtendr plantillas ms livianas para proyectos pequeos.
54
SEGUNDO BIMESTRE
La herramienta del RUP que usted acaba de utilizar tiene abundante informacin sobre procesos,
tcnicas, herramientas y plantillas (templates) que puede utilizar para trabajar en sus proyectos e incluso
puede personalizarlas para acoplarlas a los diferentes tamaos y tipos de proyectos.
55
SEGUNDO BIMESTRE
Puesto que usted ya tuvo la oportunidad de investigar el propsito de cada fase, no consideramos
necesario redundar en el tema; sin embargo queremos hacer hincapi en la visin general del proceso y
en los hitos de cada una de las fases que propone el RUP.
Jacobson, I. et Al (2000:99), en la figura 4.9, plantean los siguientes objetivos para cada una de las fases,
que resumiendo seran: de la fase de inicio el hito principal es el alcance del producto, de la fase de
elaboracin el hito es la arquitectura estable, de la fase de construccin el hito es tener una versin
estable del producto y el objetivo de la fase de transicin es obtener el producto correctamente
entregado a los usuarios.
A nivel general, podemos decir que el proceso de construccin del software con el proceso unificado de
desarrollo consiste en el desarrollo del siguiente proceso, al que lo revisaremos a travs de cada una de
sus fases.
Nuestro afn es que usted se lleve una idea muy clara de lo que implica el proceso de desarrollo de
software, y pensamos que la mejor manera de hacerlo es mostrarle los elementos que a continuacin
desarrollamos como resumen de lo ms importante de cada una de las fases del proceso unificado de
desarrollo.
Puesto que usted dispone del RUP2003 y ha tenido la oportunidad de obtener algunos
elementos del mismo, puede complementar la informacin aqu brindada navegando en
el mismo; por lo tanto le proponemos que conforme va leyendo estos apartados, ingrese
al RUP, y en el rbol de navegacin ingrese al Overview, y en el diagrama general del
RUP, haga click en cada una de las fases, procesos, actores y plantillas para ir descubriendo todo lo que
implica el contenido.
4.4.1. La fase de inicio
Como habamos mencionado antes, en la fase de inicio se busca establecer el alcance del proyecto, para
ello debe cumplir con una serie de flujos de trabajo desarrollado por diferentes actores del proyecto.
56
SEGUNDO BIMESTRE
Obtener claridad en lo que se desea construir: ello significa obtener la visin del cliente, lo que
desea, y el valor que le agrega a los usuarios el proyecto.
2.
3.
4.
Obtener una visin clara del cronograma, costos y riesgos asociados al proyecto, para ello se
obtiene el caso de negocio, plan de desarrollo del proyecto y lista de riesgos.
Gerente del proyecto (Project Manager): es el responsable de que el proyecto se cumpla con el
alcance definido, en el tiempo y costes previstos con los niveles de calidad acordados, es por tanto
quien organiza las actividades.
Ingeniero de procesos (Process Engineer): es el rol responsable de definir todos los procesos que
se usarn en el proyecto, personalizacin de los mismos, entrenamiento y apoyo en los procesos a
los miembros del equipo y apoyo en la planificacin de actividades al gerente del proyecto. Este
rol puede ser asumido por el gerente de proyecto en equipos pequeos.
Arquitecto de software (Software Architect), este es uno de los roles tcnicos de alta importancia
para el proyecto, define las caractersticas de diseo del sistema.
Equipo de aseguramiento de calidad (Testers Roles): a diferencia del control de calidad en el que
se validan los productos de software, previa entrega a los usuarios, el aseguramiento de calidad
interviene desde etapas tempranas del proyecto todos los artefactos que se van generando en el
proyecto.
La definicin del alcance del proyecto implica capturar la informacin de contexto del proyecto,
los requerimientos de alto nivel, las restricciones y los criterios de xito del proyecto.
2.
Evaluar las alternativas para la gestin de riesgos, gestin de recursos, plan del proyecto los anlisis
costo/beneficio.
57
SEGUNDO BIMESTRE
Uno de los elementos fundamentales del caso de negocio es la identificacin de los procesos
de negocio que se vern afectados (beneficiados) y las expectativas que se tiene respecto a los
mismos, adems de realizar la evaluacin financiera que permita determinar qu tan beneficioso
resulta el proyecto frente a la inversin realizada.
3.
Evaluar las ventajas y desventajas del diseo y las decisiones fabricar/comprar o reusar, de forma
que sean factibles las estimaciones de tiempo, costos y recursos.
4.
Artefactos esenciales
Segn el RUP 2003, los artefactos esenciales de la fase de Inicio son los siguientes en orden de importancia:
Artefacto (Artifact)
Definido y aprobado.
Los interesados en el proyecto estn de acuerdo con la definicin del alcance y las estimaciones
de costo y cronograma.
58
SEGUNDO BIMESTRE
Existe conformidad en que los requerimientos correctos han sido capturados y se ha logrado una
comprensin compartida de los mismos.
Se ha identificado todos los riesgos y existe una estrategia de mitigacin para cada uno de ellos.
En este punto puede abortarse el proyecto o reconsiderarse su enfoque si se falla en estos criterios.
Para trabajar obtenga las plantillas desde la herramienta, pero recuerde que el proceso
de desarrollo no implica nicamente el llenado de las plantillas, sino que implica llenar
las plantillas con la informacin resultante del trabajo desarrollado.
Obtener una comprensin detallada de los requerimientos: capturar al menos el 80% de los
requerimientos.
2.
Disear, implementar, validar y establecer la lnea base de la arquitectura: tomar las decisiones
cruciales de diseo, esto es comprar vs. desarrollar, patrones, etc.; establecer la lnea base del
la estructura del sistema y ejecutar una prueba inicial de carga y rendimiento del sistema.
3.
4.
Gerente del proyecto (Project Manager): se encarga de realizar el monitoreo y control del proyecto
y de la administracin de iteraciones.
Analista de sistemas (System Analyst): en esta fase administra los requerimientos y refina la
definicin del sistema.
59
SEGUNDO BIMESTRE
Definir, validar y establecer la lnea base de la arquitectura de una manera rpida y prctica.
2.
Refinar la visin en base a la nueva informacin obtenida, lograr una comprensin slida de los
casos de uso ms crticos que afectan a las decisiones de planificacin y arquitectura.
3.
Crear una lnea de base de los planes de iteracin para la fase construccin.
4.
5.
Artefactos esenciales
Artefacto (Artifact)
Prototipos
Lista de riesgos
Proceso de desarrollo
Infraestructura de desarrollo
Documento de arquitectura del Creado y establecido como lnea base, incluye descripciones detalladas de
software
los casos de uso arquitectnicos (vista de casos de uso), identificacin de
mecanismos y elementos de diseo (vista lgica) ms la definicin de la vista
de procesos e implantacin.
Modelo de diseo
Modelo de datos
Establecido como lnea base. Los principales elementos de datos han sido
definidos y revisados. Incluye entidades, tablas y relaciones.
Modelo de implementacin
Documento de Visin
60
SEGUNDO BIMESTRE
Artefacto (Artifact)
Plan de iteraciones
Modelo de casos de uso (use case Aproximadamente el 80% de los casos de uso han sido identificados,
model)
evaluados y se ha desarrollado la mayora de las descripciones de los mismos.
Especificaciones suplementarias
(Supplementary specifications)
Suite de pruebas (Test Suite)
Arquitectura
pruebas
del
sistema
Modelo de anlisis
(opcional)
Manuales de usuario
La arquitectura es estable.
Las pruebas y evaluaciones de los prototipos ejecutables han demostrado que los elementos de
riesgo mayores han sido direccionados y efectivamente resueltos.
Todos los interesados estn de acuerdo en que la visin actual puede ser alcanzada si los planes se
ejecutan como estn para desarrollar el sistema completo en el contexto de la arquitectura actual.
La comparacin entre los recursos previstos y los recursos gastados muestran equivalencia o son
aceptables.
En este punto puede abortarse el proyecto o reconsiderar su enfoque si se falla en este hito.
61
SEGUNDO BIMESTRE
Minimizar los costos del desarrollo y alcanzar cierto grado de paralelismo en el trabajo de los
equipos de desarrollo; esto significa optimizar los recursos y evitar retrasos innecesarios y la
repeticin del trabajo debido a los errores cometidos.
2.
Desarrollar de manera iterativa un producto completo que est listo para ser transferido a
su comunidad de usuarios; esto es desarrollar la primera versin operacional del sistema y
determinar si los lugares y los usuarios estn todos listos para que la aplicacin sea entregada.
La aplicacin
Plan de implantacin
Modelo de implementacin
Suite de pruebas
Plan de iteraciones
62
SEGUNDO BIMESTRE
Artefacto (Artifact)
Modelo de diseo
Proceso de desarrollo
Infraestructura de desarrollo
Modelo de datos
Especificaciones
suplementarias (opcional)
Criterios de evaluacin
Los criterios de evaluacin para la fase de construccin comprenden las respuestas a las siguientes
preguntas:
63
SEGUNDO BIMESTRE
Probar la versin beta para validar que las expectativas del usuario han sido alcanzadas, esto
es corregir errores y realizar mejoras al rendimiento y a la usabilidad.
2.
3.
Preparar el entorno de implantacin y dejar listas las bases de datos operacionales, esto
implica comprar nuevo hardware, aadir espacio para el nuevo hardware y la migracin de
datos.
4.
5.
Conseguir el acuerdo de los interesados en que las lneas base de implantacin se han
completado y son consistentes con los criterios de evaluacin del documento de visin.
6.
64
SEGUNDO BIMESTRE
Artefacto (Artifact)
El producto
Elementos de
implementacin
Suite de pruebas (opcional) La suite de pruebas desarrollada debera ser provista en la situacin
donde el cliente necesite ejecutar pruebas bsicas en sitio.
Criterios de evaluacin:
Los criterios de evaluacin primarios para la fase de transicin tienen que ver con respuestas a las
siguientes preguntas:
Estn los gastos de recursos versus los gastos planeados en condiciones aceptables?
65
SEGUNDO BIMESTRE
Autoevaluacin 4
Asocie las buenas prcticas de la ingeniera de software, con los problemas que motivaron su
aparicin, recuerde que la primera actividad que se plante en esta unidad era establecer estos
problemas. Para asociarlas coloque las letras de las mejores prcticas en las filas correspondientes
de los problemas.
Mejores prcticas
A
Desarrollo iterativo
Verificacin continua de la
calidad
Gestionar requerimientos
Modelar visualmente
2.
Asocie la disciplina del RUP con el producto de trabajo correspondiente, para ello coloque la letra
de la disciplina en la columna de las descripciones.
Disciplinas
66
Descripcin
Modelado de negocio
Escribir cdigo
Requisitos
Reglas de negocio
Anlisis y diseo
Configurar infraestructura
Implementacin
Organizacin de componentes
Pruebas
Establecer cronogramas
Despliegue
Identificar problemas
Gestin de la configuracin
Recoger necesidades
Entorno
Validar escenarios
SEGUNDO BIMESTRE
3.
Artefacto
Inicio
Elaboracin
Construccin
Transicin
Analizando los roles de las personas que forman parte de un proyecto de desarrollo de software
segn el RUP, cul es el rol responsable de que el proyecto se termine a tiempo, en los costos
y alcance establecidos y con los niveles de calidad esperados?
a.
b.
c.
d.
5.
Cul de los artefactos puede usarse para realizar la evaluacin financiera del proyecto?
a.
b.
c.
d.
6.
Documento de visin
Modelo de datos
Anlisis de stakeholders
Especificacin de casos de uso
8.
El documento de visin
El caso de negocio
El modelo de costos
El caso de uso
Cul de los siguientes documentos captura y resume las necesidades de los usuarios?
a.
b.
c.
d.
7.
Los testers
El arquitecto de software
El gerente de proyecto
Los desarrolladores
Especificaciones suplementarias
Modelo de anlisis
Modelo de casos de uso
Plan de iteraciones
Cul de las fases del RUP se establece como concluida cuando el cliente y los usuarios estn
conformes con el producto?
a.
b.
c.
d.
Fase de modelado
Fase de construccin
Fase de elaboracin
Fase de transicin
Ir a solucionario
67
SEGUNDO BIMESTRE
Modelo de clases
68
en
SEGUNDO BIMESTRE
Requerimientos de software
Modelo
comportamiento
de
Modelo de flujo
Como vemos los artefactos de trabajo con los que se modelarn los requerimientos son artefactos de
UML, que es lenguaje de modelado de componentes de software reconocido como un estndar por el
Object Management Group18.
69
SEGUNDO BIMESTRE
estos casos de uso surgieron de los requerimientos y estos a su vez de las necesidades planteadas por
los usuarios.
Desarrollemos otro ejemplo sencillo, se desea construir un dispositivo de bolsillo que permita escuchar
msica bien sea a travs de auriculares, parlantes o que transmita el audio en frecuencia FM, con una
duracin de batera mnima de 30 horas y una capacidad de almacenamiento suficiente para 5.000
canciones, reproducir videos con posibilidad de almacenar al menos 500 videos y posibilidades de juego.
Para resolver este problema, vamos a comenzar traduciendo las necesidades a requerimientos, los cuales
pueden ser funcionales o no funcionales. En la tabla 5.2. podemos apreciar este anlisis que nos permite
identificar requerimientos funcionales y no funcionales.
Tabla 5.2 Mapeo de necesidades a requerimientos
Necesidades
Requerimientos funcionales
Requerimientos no funcionales
N2: Reproducir
videos. Guarde
aproximadamente 500
videos.
N3:
N1:
Escuchar 30 horas
de msica al menos
y que guarde
aproximadamente
5000 canciones en
dispositivo porttil.
Posibilidades de juegos.
Como siguiente paso definiremos los casos de uso necesarios para atender estos requerimientos, esto lo
podemos apreciar en la tabla 5.3.
Tabla 5.3. Mapeo de necesidades a requerimientos
Nombre de caso de uso
Descripcin
Requerimientos
RF05
RF02
RF03
RF04
RN03
RN04
RN07
RN09
70
SEGUNDO BIMESTRE
Descripcin
Requerimientos
UC04: Jugar.
RF09
RN07
RN08
RF01
RF06
RF08
RF05
En base a esta informacin podemos disear el modelo de casos de uso que se aprecia en la figura 5.1.
En esta forma hemos establecido cmo podemos pasar de la captura de necesidades del cliente a la
especificacin de requerimientos y estos a su vez a casos de uso.
El diagrama de casos de uso siguiente, representa una vista parcial de las funcionalidades disponibles en
un iPod (reproductor de msica y video).
Ejercicio 5.2
Como habr notado, hay algunos aspectos importantes al momento de mapear las
necesidades a casos de uso, y es importante analizar algunos aspectos, para ello desarrolle
las siguientes actividades:
1.
Qu sucedi con los requerimientos funcionales? Fueron resueltos todos en los casos de
uso?
71
2.
SEGUNDO BIMESTRE
b.
Cmo afectaron a los casos de uso los requerimientos no funcionales? Cmo se atienden
los requerimientos no funcionales que no pasaron directamente a los casos de uso?
c.
Se puede asegurar que todos los casos de uso se basan en requerimientos y estos a la
vez en necesidades? Y viceversa, se puede asegurar que todas las necesidades estn
contempladas en los casos de uso?
d.
Cuntos requerimientos fueron atendidos por cada caso de uso? Cuntos casos de uso
han sido considerados por cada requerimiento?
Como habr notado, hemos colocado algunos actores entre los que podemos mencionar: usuario,
salida de audio, reproductor fm, itunes, en este caso itunes es una aplicacin que permite cargar
los archivos al reproductor. El ejercicio ahora consiste en disear este programa en base a las
necesidades, hacer las tablas de requerimientos, luego la de casos de uso y completar con el
diagrama para un sistema como lo es un telfono celular.
Cmo le pareci el ejercicio? Esperamos que lo haya completado, por favor no avance
si no lo hizo. Ahora luego de responder el primer bloque de preguntas queremos
comentarle la importancia que tiene el poder hacer este seguimiento desde las
necesidades hasta los casos de uso hacia adelante y hacia atrs, a esta caracterstica
la conocemos como trazabilidad de artefactos de software, y lo importante de ella es
que nos permite asegurarnos que todas las funcionalidades del sistema atienden a
necesidades de los usuarios, y todas la necesidades de los usuarios estn resueltas en
alguna de las funcionalidades.
72
SEGUNDO BIMESTRE
El primer paso es identificar las clases; para saber cmo, revise el apartado 6.5.1. Identificacin de las
clases de anlisis.
Del anlisis de los escenarios desarrollados, las clases se determinan subrayando cada sustantivo o frase.
Esa sera una primera aproximacin de las clases. Si la clase se requiere para implementar una solucin o
si solo es parte del espacio, esto debemos poderlo determinar.
Para el desarrollo de los diagramas que necesita se pueden emplear algunas herramientas, a continuacin
le presentamos algunas directrices para trabajar con Rational Rose, esta herramienta para fines educativos
podr utilizarla libremente, para lo cual deber seguir los siguientes pasos:
Debe contactarse con su profesor pues necesitar obtener una clave. Esta clave ser nica por
estudiante y para una sola computadora. Su profesor le explicar los pasos a seguir.
Posterior a esto puede empezar a trabajar en esta herramienta la misma que le permitir realizar
diagramas de clases, diagrama de actividades, diagrama de secuencias y otros artefactos de
software.
En la figura 5.2 puede ver dos tipos de diagramas que se estn realizando, adems de dnde seleccionar
la utilizacin de la herramienta.
Debe familiarizarse con la misma y a su vez realizar los ejercicios y ejemplos que se listan en el texto con
la ayuda de esta herramienta.
73
SEGUNDO BIMESTRE
Arquitectura en capas.
Las figuras que se presentan en este apartado nos dan una idea de cada una de estas arquitecturas. Debe
revisarlas y sacar los puntos principales de cada una de ellas, esto ser de gran utilidad cuando se traten
temas de diseo.
74
SEGUNDO BIMESTRE
75
SEGUNDO BIMESTRE
Autoevaluacin 5
2.
3.
4.
5.
6.
7.
8.
9.
Un software que est diseado para trabajar con una interfaz de escritorio puede ser
una aplicacin de tres capas.
10. (
Ir a solucionario
76
SEGUNDO BIMESTRE
Contine con el estudio apoyndose en el subrayado de los temas correspondientes al captulo 14 del
texto bsico para determinar frases relacionadas con calidad para que le permitan tener una mejor idea,
y entender por qu tantas empresas y organizaciones invierten tanto en obtener calidad.
Han existido muchas aseveraciones de los costos que se hacen para corregir
los programas defectuosos y tambin cunto software es intilmente
desarrollado porque al final no cumple con las funcionalidades para lo que
fue desarrollado, entonces es por esta razn que comenzaremos hablar
sobre la calidad del software.
Ahora revisemos este concepto de Pressman en 1992 dijo: Concordancia con los
requisitos funcionales y de rendimiento explcitamente establecidos con los estndares
de desarrollo explcitamente documentados y con las caractersticas implcitas que se
espera de todo software desarrollado profesionalmente.
Como lo podemos notar debe haber una sincronizacin entre todas las actividades que se llevan a cabo
para el desarrollo de productos software, entonces los requisitos del software son la base de las medidas
de calidad del mismo.
77
SEGUNDO BIMESTRE
Proceso de verificacin y validacin del software a lo largo del ciclo de vida de desarrollo,
incluyendo pruebas y proceso de revisin.
78
SEGUNDO BIMESTRE
Para poder entender este dilema debemos entonces revisar los apartados del texto
bsico 14.3.1 Software suficientemente bueno y 14.3.2. El costo de la calidad.
Del primer apartado podremos ayudarle a su comprensin diciendo que de acuerdo al contexto donde
se desarrolle este software conocido como suficientemente bueno depende su aplicacin. No ser lo
mismo utilizar este concepto en empresas grandes que en empresas pequeas.
Hablemos del segundo apartado y para ello podemos fijarnos en la figura 14.2, tenemos las etapas de
construccin de software. Como podr notar, corregir las fallas en etapas iniciales es mucho menos
costoso que hacerlo cuando el producto ya est implementado, se presentan cifras muy elevadas pero
que al final nos reflejan en otros factores no solo econmicos sino tambin operativos para la empresa;
pues tener una mala reputacin es un costo externo que podra ser incalculable.
Existen temas como riesgos, negligencia y responsabilidad, calidad y seguridad, el efecto de las acciones
de la administracin que son tratadas en este apartado a las cuales se les debe poner la respectiva
atencin.
Por ejemplo tomemos el tema de seguridad, un software que sea fcilmente vulnerable,
realmente ser un software de muy mala calidad, lo cual debe ser considerada desde la
etapa de inicio de desarrollo del proyecto.
La seguridad del software, al estar presente en el proceso de calidad del software debe estar considerada
en el proceso de aseguramiento de la calidad o al realizar control.
79
SEGUNDO BIMESTRE
Aseguramiento de la Calidad: conformar un equipo de ser posible que ayude a esta actividad dentro del
desarrollo, este campo es muy amplio y en el texto bsico pueden profundizar este tema.
Algunos autores relacionados con la ingeniera de software mencionar los pilares bsicos para lograr
una certificacin, entre ellos:
La utilizacin de las dos anteriores (metodologa y el medio de valoracin) tienen que estar
reconocidos por quienes estn inmersos en el desarrollo.
Hemos concluido el estudio de esta unidad. Ahora nos conviene comprobar cuanto hemos asimilado de
los temas tratados, para ello es necesario desarrollar esta autoevaluacin.
80
SEGUNDO BIMESTRE
Autoevaluacin 6
El software de alta calidad cumple con los requerimientos no funcionales con los que
se espera cuente el mismo.
2.
3.
4.
5.
Una caracterstica de calidad del software podra estar incrustada en la forma como el
usuario llega a una funcionalidad o la facilidad de utilizacin del mouse.
6.
7.
8.
9.
10. (
Ir a solucionario
81
SOLUCIONARIO
7. Solucionario
UNIDAD 1
82
Pregunta
Respuesta
1.
(V)
2.
(V)
3.
(F)
4.
(F)
5.
(V)
6.
(V)
7.
(F)
8.
(F)
9.
(V)
10.
(V)
SOLUCIONARIO
UNIDAD 2
Pregunta
Respuesta
1.
(V)
2.
(V)
3.
(F)
4.
(V)
5.
(F)
6.
(F)
7.
(V)
8.
(F)
9.
(F)
10.
(F)
11.
12.
13.
83
SOLUCIONARIO
UNIDAD 3
84
Pregunta
Respuesta
1.
(V)
2.
(F)
3.
(V)
4.
(F)
5.
(V)
6.
(V)
7.
(V)
8.
(F)
9.
(F)
10.
(V)
SOLUCIONARIO
UNIDAD 4
Pregunta 1
Respuestas
Pregunta 2
Respuestas
1.
1.
2.
2.
3.
3.
4.
4.
5.
5.
6.
6.
7.
7.
8.
8.
9.
9.
10.
11.
12.
3.
Fase
Artefacto
Inicio
Documento de visin.
Caso de negocio.
Elaboracin
Arquitectura de software.
Modelo de anlisis.
Construccin
Modelo de diseo.
Modelo de datos.
Transicin
Producto.
Material de soporte para usuarios finales.
4.
( c )
Si revisa las responsabilidades del gerente de proyecto, l tiene funcin de: organizar
el equipo, planificar iteraciones, armar equipos de trabajo, monitoreo y control,
gestin de riesgos; por lo tanto, l debe asegurarse de que se han solucionando todos
los problemas para que el proyecto se cumpla en las condiciones estipuladas.
5.
( b )
Si revisa las alternativas, se dar cuenta de que el modelo de costos (c), no es una
alternativa vlida, puesto que no es un artefacto, el documento de visin especifica el
alcance, pero no maneja costos y el modelo de casos de uso son funcionalidad, lo que
nos deja como nica alternativa al caso de negocio.
85
SOLUCIONARIO
6.
( a )
7.
( a )
8.
( d )
La opcin (a) no corresponde a una fase, la opcin (b) se valida con la consecucin de
una versin beta del sistema, la opcin (c) se valida con la arquitectura del sistema, la
nica opcin vlida sera la opcin d, fase de transicin.
86
SOLUCIONARIO
UNIDAD 5
Pregunta
Respuesta
1.
(V)
2.
(F)
3.
(V)
4.
(V)
5.
(V)
6.
(F)
7.
(V)
8.
(V)
9.
(V)
10.
(V)
87
SOLUCIONARIO
UNIDAD 6
Pregunta
Respuesta
1.
(V)
2.
(F)
3.
(F)
4.
(V)
5.
(V)
6.
(V)
7.
(V)
8.
(F)
9.
(F)
10.
(V)
88