Professional Documents
Culture Documents
PROYECTOS INFORMTICOS
ARTCULO 32:
Es permitido utilizar obras literarias, artsticas o parte de ellas,
a ttulo de ilustracin en obras destinadas a la enseanza, por
medio de publicaciones, emisiones o radiodifusiones, o
grabaciones sonoras o visuales, dentro de los lmites
justificados por el fin propuesto, o comunicar con propsito de
enseanza la obra radiodifundida para fines escolares,
educativos, universitarios y de formacin personal sin fines de
lucro, con la obligacin de mencionar el nombre del autor y el
ttulo de las obras utilizadas.
Desarrollo de
Proyectos Informticos
Instituto Colombiano de Aprendizaje
Elaborado por:
Vernica Fabiana Rincn Cantor
Editado por:
Instituto Colombiano de Aprendizaje INCAP
Avenida Caracas No. 63-66
Bogot Colombia
2
DESARROLLO DE PROYECTOS INFORMTICOS
CONTENIDO
PRESENTACIN 5
GUA METODOLGICA 6
UNIDAD UNO
CICLO DE VIDA DEL SOFTWARE 10
ETAPAS DEL CICLO DE VIDA DEL SOFTWARE 11
MODELOS DEL CICLO DE VIDA DEL SOFTWARE 14
Modelo en cascada 15
Modelo en Espiral 16
Modelo Incremental 18
Modelo Evolutivo 20
Modelo Concurrente 21
METODOLOGAS 22
Metodologa CMMI 23
Metodologa ISO 25
Metodologa SCRUM 25
TCNICAS DE RECOLECCION DE DATOS 26
Introspeccin 27
Entrevista Abierta 28
Cuestionario 30
Grupos de Discusin 30
Tormenta de Ideas 31
Entrevistas 32
Observacin 33
FICHA PARA ENTREVISTAS 33
ESPECIFICACION DE REQUERIMIENTOS 37
FORMATO IEEE830 REQUERIMIENTOS 47
UNIDAD DOS
UML 51
3
DESARROLLO DE PROYECTOS INFORMTICOS
Apreciado estudiante:
El INCAP, le ofrece adems, recursos para que usted alcance sus metas, es decir, lo que se
haya propuesto y para ello dispondr de mdulos gua, audiovisuales de apoyo, sistemas de
evaluacin, aula y espacios adecuados para trabajos individuales y de grupo.
ste mdulo gua que constituye adems un portafolio de evidencias de aprendizaje, est
distribuido de la siguiente manera:
AUTOPRUEBA DE AVANCE: Es un cuestionario que tiene como finalidad que usted mismo
descubra, qu tanto conoce los contenidos de cada unidad, y le sirve de insumo para la
concertacin de su formacin y el reconocimiento de los aprendizajes previos por parte de su
formador (talleres que se encuentran al final de cada unidad).
VALORACIN DE EVIDENCIAS
BIBLIOGRAFA
4
DESARROLLO DE PROYECTOS INFORMTICOS
PRESENTACIN
SENTACIN
PRESENTACIN
GUA METODOLGICA
1. Las clases presenciales dictadas por el Formador haciendo uso del mtodo
inductivo activo
Los mdulos gua utilizados por el INCAP, para desarrollar cada uno de los
cursos, se elaboran teniendo en cuenta sta metodologa. Sus caractersticas y
recomendaciones de uso son:
6
DESARROLLO DE PROYECTOS INFORMTICOS
EDH (El estudiante dice y hace): Es el trabajo prctico que desarrollan los
estudiantes fuera de la clase, a travs de talleres, desarrollo de casos,
lecturas y consultas de los temas, los cuales deben ser evaluados por el
Formador.
DIAGNSTICO
INFORMACIN GENERAL
Regional_____________Programa__________________Mdulo____________
Estudiante_________________________Formador_______________________
EVALUACIN DIAGNSTICA
Estilo de aprendizaje_______________________________________________
7
DESARROLLO DE PROYECTOS INFORMTICOS
8
DESARROLLO DE PROYECTOS INFORMTICOS
Unidad
Ciclo de Vida y Anlisis de
Uno
1
requerimientos
T E M A S
Logros de Competencia
10
El Formador Dice y Hace:
12
Desarrollo de Proyectos Informticos
13
Desarrollo de Proyectos Informticos
14
Desarrollo de Proyectos Informticos
As, los modelos por una parte suministran una gua para los
desarrolladores de software con el fin de ordenar las diversas actividades
tcnicas en el proyecto, por otra parte suministran un marco para la
administracin del desarrollo y el mantenimiento, en el sentido en que
permiten estimar recursos, definir puntos de control intermedios, monitorear
el avance, etc.
15
Desarrollo de Proyectos Informticos
Es un modelo base para los dems modelos. Fue definido por Royce y se
trata principalmente de que se debe completar un paso correctamente sin
ningn error para pasar al siguiente.
16
Desarrollo de Proyectos Informticos
VENTAJA
Este modelo como es sencillo solo utiliza los pasos intuitivos para
desarrollar software, adems es fcil de explicarlo al cliente.
DESVENTAJAS
Los proyectos raramente siguen el flujo secuencial, hay iteraciones
El cliente no puede establecer al principio todos los requisitos.
El cliente deber tener paciencia pues la versin operativa del
producto solo estar disponible en las ltimas etapas del proyecto.
Es una serie de ciclos los cuales se repiten en forma de espiral, cada vez
que se avanza un ciclo se va alcanzando un nivel superior hasta concluir el
proyecto.
Lo caracterstico de este modelo es que incluye un anlisis de riesgo es
decir que podemos analizar si el proyecto puede continuar o mejor lo
suspendemos.
Este modelo se basa en que antes de hacer algo debemos analizarlo,
tambin debemos buscar varias opciones de resolucin de problemas para
de all escoger la opcin ms conveniente, y adems analizar los riesgos
que se pueda tener. Este modelo necesita de otro para poder desarrollarse.
Se debe escoger el modelo cascada cuando se pierda el control del
17
Desarrollo de Proyectos Informticos
18
Desarrollo de Proyectos Informticos
VENTAJAS
El modelo en espiral puede adaptarse y aplicarse a lo largo de la vida
del software de computadora.
Como el software evoluciona a medida que progresa el proceso, el
desarrollador y el cliente comprenden y reaccionan mejor ante riesgos
en cada uno de los niveles evolutivos.
El modelo en espiral permite a quien lo desarrolla aplicar el enfoque de
construccin de prototipos en cualquier etapa de evolucin del producto.
El modelo en espiral demanda una consideracin directa de los riesgos
tcnicos en todas las etapas del proyecto y si se aplica
adecuadamente debe reducir los riesgos antes de que se
conviertan en problemas
DESVENTAJAS
Resulta difcil convencer a grandes clientes de que el enfoque evolutivo
es controlable.
Debido a su elevada complejidad no se aconseja utilizarlo en pequeos
sistemas.
Genera mucho tiempo en el desarrollo de sistemas.
19
Desarrollo de Proyectos Informticos
Ventajas:
Con un paradigma incremental se reduce el tiempo de desarrollo inicial,
ya que se implementa la funcionalidad parcial.
Tambin provee un impacto ventajoso frente al cliente, que es la entrega
temprana de partes operativas del Software.
El modelo proporciona todas las ventajas del modelo en cascada
realimentado, reduciendo sus desventajas slo al mbito de cada
incremento.
Permite entregar al cliente un producto ms rpido en comparacin del
modelo de cascada.
Resulta ms sencillo acomodar cambios al acotar el tamao de los
incrementos.
Por su versatilidad requiere de una planeacin cuidadosa tanto a nivel
administrativo como tcnico.
20
Desarrollo de Proyectos Informticos
Desventajas:
El modelo Incremental no es recomendable para casos de sistemas de
tiempo real, de alto nivel de seguridad, de procesamiento distribuido, y/o
de alto ndice de riesgos.
Requiere de mucha planeacin, tanto administrativa como tcnica.
Requiere de metas claras para conocer el estado del proyecto.
1.4. MODELO EVOLUTIVO
21
Desarrollo de Proyectos Informticos
Desventajas
El proceso no es visible. Se tienen que hacer entregas regulares
para medir el progreso.
Si los sistemas se desarrollan rpidamente es muy costoso
producir documentos que reflejen cada versin
Los sistemas tienen una estructura deficiente, tendiendo a daar
la estructura del software
Se requieren tcnicas y herramientas especiales, permiten un
desarrollo rpido pero suelen ser incompatibles con otras
herramientas o tcnicas
22
Desarrollo de Proyectos Informticos
3. Aumentar la flexibilidad.
Ventajas
Excelente para proyectos en los que se conforman grupos de trabajo
independientes.
Proporciona una imagen exacta del estado actual de un proyecto.
Desventajas
Si no se dan las condiciones sealadas no es aplicable.
Si no existen grupos de trabajo no se puede trabajar en este mtodo
2. METODOLOGAS
23
Desarrollo de Proyectos Informticos
24
Desarrollo de Proyectos Informticos
Soluciones:
Compromiso asegurado
Automatizar lo ms posible las actividades de control y gestin de los
procesos de los proyectos
Comenzar a documentar los procesos implcitos, en la medida de lo
posible o plantillas en office, implementacin de sistemas de gestin
Utilizacin de sistemas libres para minimizar los costos de
implementacin
Problemtica:
Requiere mucho esfuerzo, compromiso de toda la organizacin
Comenzar a disear y/o documentar procesos, luego desplegarlos y
ponerlos en prctica
25
Desarrollo de Proyectos Informticos
27
Desarrollo de Proyectos Informticos
Una vez que hemos identificado a los clientes y usuarios podemos aplicar
varias tcnicas para identificar cules son sus necesidades. La siguiente
seccin describe esas tcnicas y algunas herramientas que ayudan a
entender cules son las necesidades de los usuarios respecto al sistema
que se va a construir.
INTROSPECCIN:
La introspeccin es el medio ms obvio y comnmente usado para
entender los requerimientos de un sistema. Consiste en estudiar el
ambiente del usuario para posteriormente tratar de imaginar qu es lo que
me gustara que hiciera el sistema si yo estuviera a cargo de hacer el
trabajo con su ayuda.
28
Desarrollo de Proyectos Informticos
ENTREVISTA ABIERTA
29
Desarrollo de Proyectos Informticos
30
Desarrollo de Proyectos Informticos
CUESTIONARIO
GRUPOS DE DISCUCIN
31
Desarrollo de Proyectos Informticos
TORMENTA DE IDEAS
La Tormenta de Ideas consiste en listar todas las ideas sobre un tema que
se le ocurren a un auditorio determinado y posteriormente filtrarlas,
desarrollarlas y priorizarlas.
32
Desarrollo de Proyectos Informticos
ENTREVISTA:
OBSERVACIN
33
Desarrollo de Proyectos Informticos
34
Desarrollo de Proyectos Informticos
Glosario de trminos
TAREAS: Copie este archivo por cada entrevista hecha.
COmplete los detalles. Haga una liga de este archivo a la
seccin de "Notas de Entrevistas y Lluvias de Ideas" de user-
needs.html.
Impacto del proceso: La planeacin de preguntas para las entrevistas
con inversionistas es la clave para un levantamiento de datos efectivo.
Los buenos requerimientos son necesarios para construir el sistema
correctamente. Estas notas debern ser guardadas como parte de la
documentacin en requerimientos del usuario para ser referenciadas
cuando la especificacin de requerimientos de software sea redactada o
actualizada.
35
Desarrollo de Proyectos Informticos
NOTA
NOTA
Antes de la entrevista
1. Decida que objetivos desea cumplir
2. Prepare una lista de preguntas
Pregunte sobre las cosas que conoce y que desea
conocer, basado en su entendimiento actual de los requerimientos
Mantenga las preguntas simples. No utilice preguntas con
muchas partes, rompa los temas complejos en preguntas individuales.
Confirme las suposiciones ms importantes. Por ejemplo:
"Ud. es la persona que utilizar este programa, cierto?" "El total
necesita ser impreso y actualizado por cada elemento que se
escanea, verdad?"
Evite sugerir o hacer preguntas de muchas partes, porque
la respuesta correcta podra ser una que Ud. no conozca todava. Por
ejemplo, INCORRECTO: "Ud. entrara al sistema desde su escritorio
aqu o desde su casa?" CORRECTO: "Cules son algunos de los
lugares de donde entrara al sistema?" "Desde aqu en mi oficina,
pero tambin cuando trabajo con otras personas algunas veces me
conecto desde las computadoras en sus oficinas o desde una
computadora en el laboratorio o en la sala de juntas... as que no
quisiera una cookie guardada aqu."
Trate de encontrar la prioridad para cada requerimiento:
esencial, esperado, deseado u opcional.
Escriba ms preguntas abiertas para ver si nuevos
requerimientos de importancia salen a la luz.
No haga muchas preguntas que parezcan fuera del tema.,
podra accidentalmente cambiar el enfoque o hacer especulaciones
incorrectas. Por ejemplo, "Le gustara que el sistema hiciera tambin
estas otras diez caractersticas?" "Claro!"
3. Seleccione a los entrevistados que representen a todos los
inversionistas importantes.
4. Revise sus preguntas. Cree que pueden ser contestadas? Le
ayudarn a alcanzar sus objetivos? Si no es as, redctelas de nuevo.
5. Decida si desea hacer esta entrevista va email, telfono o en
persona
6. Programe una entrevista segn la conveniencia del entrevistado.
Planee que la entrevista dure no ms de una hora.
Durante la entrevista
1. Sea atento, corts y profesional
36
Desarrollo de Proyectos Informticos
37
Desarrollo de Proyectos Informticos
Despus de la entrevista
1. En las primeras 24 horas, lea sus notas y complete los
detalle importantes que fueron mencionados pero que no
anot
2. Capture sus notas para que las pueda compartir con su
equipo y archivadas
3. Formule cualquier pregunta importante que desee hacer
despus
4. Dentro de 2 o 3 das despus, enve un mensaje por
email para
Agradecer al entrevistado de nuevo
Confirmar que tiene la direccin de correo correcta,
y facilitar a sus entrevistados la comunicacin con Ud.
Pregunte cualquier pregunta que tenga an
El Estudiante Dice y
Hace:
1. El estudiante deber entrevistarse con su cliente y desarrollar la
ficha anterior, realizar como mnimo 3 entrevistas
2. El estudiante realizara un informe indicando que tipos de
recoleccin de datos realiz y mostrando los resultados de cada uno.
ESPECIFICACION DE REQUERIMIENTOS
38
Desarrollo de Proyectos Informticos
39
Desarrollo de Proyectos Informticos
40
Desarrollo de Proyectos Informticos
PERSONAL
Sin duda el elemento ms valioso en el desarrollo de proyectos
Quines participan en un proyecto de software?
Programadores
Lder de proyecto
Arquitectos de software
Usuarios
Analistas/Diseadores
Clientes
Ingenieros de requerimientos
Ingenieros de proceso
Ingenieros de pruebas
41
Desarrollo de Proyectos Informticos
RIESGOS
El riesgo siempre implica dos caractersticas:
42
Desarrollo de Proyectos Informticos
43
Desarrollo de Proyectos Informticos
44
Desarrollo de Proyectos Informticos
45
Desarrollo de Proyectos Informticos
DETALLE
DETALLE
DETALLE
Cules son los requerimientos de seguridad?
El acceso ser controlado con nombres de usuario y contraseas.
Solo los usuarios con derechos de administrador podrn accesar las
funciones administrativas, los usuarios normales no podrn.
Detalles:
Las contraseas debern tener de 4 a 14 caracteres de longitud
No utilizaremos comunicaciones encriptadas (SSL) para este sitio
DETALLE
Cules son los requerimientos de desempeo y escalabilidad?
PRRAFO
PRRAFO
Detalles:
DETALLE
DETALLE
DETALLE
Cules son los requerimientos de mantenimiento y actualizacin?
La capacidad de mantenimiento es nuestra habilidad para realizar cambios
al producto en el tiempo. Necesitamos una capacidad de mantenimiento
fuerte para retener a nuestros primeros clientes. Resolveremos esto
anticipando varios tipos de cambios y documentando cuidadosamente
nuestro diseo y nuestra implementacin.
La capacidad de actualizacin es nuestra habilidad para entregar nuevas
versiones del producto a bajo costo a los clientes con un mnimo de tiempo
de descarga o disrupcin. Una caracterstica clave para apoyar este
objetivo es la descarga automtica de parches o actualizaciones y
actualizaciones del equipo del usuario final. Tambin debemos utilizar
formatos para archivos de datos que incluyan suficientes meta-datos para
permitirnos trasformar con seguridad la informacin existente del usuario
durante una actualizacin.
Detalles:
DETALLE
DETALLE
DETALLE
Cules son los requerimientos de soportabilidad y operabilidad?
La soportabilidad es nuestra habilidad de proveer soporte tcnico eficiente
y a buen precio. Nuestro objetivo es limitar nuestros costos de soporte a
solo 5% de las tarifas de licenciamiento anual. Las caractersticas de
actualizacin automtica del producto no ayudar a entregar fcilmente
parches a los usuarios finales. La gua del usuario y el sitio web del
producto incluyen una gua de resolucin de problemas y una lista de
informacin que debe tener a la mano antes de contactar a soporte
tcnico.
La operabilidad es nuestra habilidad de hospedar y operar el software
como un ASP (Proveedor de Servicios de Aplicaciones). Las
caractersticas del producto debern ayudarnos a alcanzar nuestros
objetivos de 99.9% en lnea (con 43 minutos mximo fuera de lnea por
mes). Las caractersticas principales que soporten esto son la capacidad
46
Desarrollo de Proyectos Informticos
47
Desarrollo de Proyectos Informticos
El sistema deber leer y escribir archivos .XYZ vlidos para ser usados
por OTRA APLICACIN
[Mes de ao]
48
Desarrollo de Proyectos Informticos
Notas:
Los textos en color azul son indicaciones que deben eliminarse y, en su
caso, sustituirse por los contenidos descritos en cada apartado.
Los textos entre corchetes del tipo [Inserte aqu el texto] permiten la
inclusin directa de texto con el color y estilo adecuado a la seccin, al
pulsar sobre ellos con el puntero del ratn.
41
Desarrollo de Proyectos Informticos
42
Desarrollo de Proyectos Informticos
Contenido
FICHA DEL DOCUMENTO 3
CONTENIDO 4
1 INTRODUCCIN 6
1.1 Propsito 6
1.2 Alcance 6
1.3 Personal involucrado 6
1.4 Definiciones, acrnimos y abreviaturas 6
1.5 Referencias 6
1.6 Resumen 6
2 DESCRIPCIN GENERAL 7
2.1 Perspectiva del producto 7
2.2 Funcionalidad del producto 7
2.3 Caractersticas de los usuarios 7
2.4 Restricciones 7
2.5 Suposiciones y dependencias 7
2.6 Evolucin previsible del sistema 7
3 REQUISITOS ESPECFICOS 7
3.1 Requisitos comunes de los interfaces 8
3.1.1 Interfaces de usuario 8
3.1.2 Interfaces de hardware 8
3.1.3 Interfaces de software 8
3.1.4 Interfaces de comunicacin 8
3.2 Requisitos funcionales 8
3.2.1 Requisito funcional 1 9
3.2.2 Requisito funcional 2 9
3.2.3 Requisito funcional 3 9
3.2.4 Requisito funcional n 9
3.3 Requisitos no funcionales 9
3.3.1 Requisitos de rendimiento 9
3.3.2 Seguridad 9
3.3.3 Fiabilidad 9
3.3.4 Disponibilidad 9
3.3.5 Mantenibilidad 10
3.3.6 Portabilidad 10
3.4 Otros requisitos 10
4 Apndices 10
43
Desarrollo de Proyectos Informticos
Introduccin
[Inserte aqu el texto]
La introduccin de la Especificacin de requisitos de software (SRS) debe
proporcionar una vista general de la SRS. Debe incluir el objetivo, el alcance,
las definiciones y acrnimos, las referencias, y la vista general del SRS.
Propsito
[Inserte aqu el texto]
Propsito del documento
Audiencia a la que va dirigido
Alcance
[Inserte aqu el texto]
Identificacin del producto(s) a desarrollar mediante un nombre
Consistencia con definiciones similares de documentos de mayor nivel
(ej. Descripcin del sistema) que puedan existir
Personal involucrado
Nombre [Inserte aqu el texto]
Rol [Inserte aqu el texto]
Categora [Inserte aqu el texto]
profesional
Responsabilidades [Inserte aqu el texto]
Informacin de [Inserte aqu el texto]
contacto
Aprobacin [Inserte aqu el texto]
44
Desarrollo de Proyectos Informticos
45
Desarrollo de Proyectos Informticos
Debe contener una lista detallada y completa de los requisitos que debe
cumplir el sistema a desarrollar. El nivel de detalle de los requisitos debe ser el
suficiente para que el equipo de desarrollo pueda disear un sistema que
satisfaga los requisitos y los encargados de las pruebas puedan determinar si
stos se satisfacen.
La distribucin de los prrafos que forman este punto puede diferir del
propuesto en esta plantilla, si las caractersticas del sistema aconsejan otra
distribucin para ofrecer mayor claridad en la exposicin.
Requisitos comunes de los interfaces
[Inserte aqu el texto]
Descripcin detallada de todas las entradas y salidas del sistema de
software.
Interfaces de usuario
[Inserte aqu el texto]
Describir los requisitos del interfaz de usuario para el producto. Esto puede
estar en la forma de descripciones del texto o pantallas del interfaz. Por
ejemplo posiblemente el cliente ha especificado el estilo y los colores del
producto. Describa exacto cmo el producto aparecer a su usuario previsto.
Interfaces de hardware
[Inserte aqu el texto]
Especificar las caractersticas lgicas para cada interfaz entre el producto y
los componentes de hardware del sistema. Se incluirn caractersticas de
configuracin.
Interfaces de software
[Inserte aqu el texto]
Indicar si hay que integrar el producto con otros productos de software.
Para cada producto de software debe especificarse lo siguiente:
Descripcin del producto software utilizado
Propsito del interfaz
Definicin del interfaz: contiendo y formato
46
Desarrollo de Proyectos Informticos
Interfaces de comunicacin
[Inserte aqu el texto]
Describir los requisitos del interfaces de comunicacin si hay
comunicaciones con otros sistemas y cuales son las protocolos de
comunicacin.
Requisitos funcionales
[Inserte aqu el texto]
Definicin de acciones fundamentales que debe realizar el software al recibir
informacin, procesarla y producir resultados.
En ellas se incluye:
Comprobacin de validez de las entradas
Secuencia exacta de operaciones
Respuesta a situaciones anormales (desbordamientos, comunicaciones,
recuperacin de errores)
Parmetros
Generacin de salidas
Relaciones entre entradas y salidas (secuencias de entradas y salidas,
formulas para la conversin de informacin)
Especificacin de los requisitos lgicos para la informacin que ser
almacenada en base de datos (tipo de informacin, requerido)
Por ejemplo:
Requisitos culturales y polticos
Requisitos Legales
Apndices
[Inserte aqu el texto]
Pueden contener todo tipo de informacin relevante para la SRS pero que,
propiamente, no forme parte de la SRS.
49