Você está na página 1de 5

Ficha 0001

Taller de Modelamiento de Software


Docente: Ing. Joselito Edin Santa Cruz Diaz
Alumno: ________________________________Turno: _________

El Objetivo es que el alumno tenga los conocimientos teóricos sobre


administración de redes y las capacidades y capacitaciones un administrador
de redes

1. Definición de Modelamiento de SW
En general un modelo puede ser entendido como una representación, bien
sea abstracta, análoga, fenomenológica o idealizada, de un objeto que puede
ser real o ficticio.
2. Definiciones de SW
 Conjunto de programas y rutinas que permiten a la computadora realizar
determinadas tareas.
 El software es un conjunto de programas, instrucciones y reglas
informáticas que permiten ejecutar distintas tareas en una computadora.
 Software es un término informático que hace referencia a un programa o
conjunto de programas de cómputo que incluye datos, procedimientos y
pautas que permiten realizar distintas tareas en un sistema informático.
 El software es un conjunto de instrucciones que utiliza el ordenador para
funcionar. Está formado por el sistema operativo (cuyo propósito es la
comunicación con el usuario y la gestión eficiente de los recursos) y las
aplicaciones (son distintos programas que resuelven necesidades del
usuario como dibujar, escribir, escuchar música).
3. Definiciones de modelamiento de software
 El modelado de sistemas software es una técnica para tratar con la
complejidad inherente a estos sistemas. El uso de modelos ayuda al
ingeniero de software a "visualizar" el sistema a construir. Además, los
modelos de un nivel de abstracción mayor pueden utilizarse para la
comunicación con el cliente.
 Se puede definir como representación de un tipo de visualización grafica
de manera detallada, de la estructuración, el cual concerniente cada uno
de los aspectos establecidos del software.
1
4. ¿Por qué modelar SW?
 Disminuye costos de falla
 Aumenta el tamaño de los proyectos SW
 Aspectos de calidad del software
 Externa(Observable)
 Interna (No Observable)
5. Importancia del modelamiento del SW
Para poder realizar un modelamiento se debe tener en cuenta la gran
importancia que este tiene para dar a conocer como es su uso y manejo en
Software.
o Comprender la realidad. Un modelo es una simplificación de la
realidad.
o Comprender el sistema. Un modelo permite comprender mejor el
sistema que estamos desarrollando: sus elementos y sus relaciones.
o Reducir la complejidad. Un modelo permite reducir la complejidad de
entender sistemas complejos en su totalidad.
o Comunicar con otros. Un modelo permite la comunicación entre los
desarrollos y los clientes.
6. Características del Modelamiento de SW
Estos beneficios podrán ayudar a que se mejore el modelamiento de
software:
 Aumenta la productividad.
 Reduce el número de defectos en el código.
 Incrementa la comprensión; lo que facilita la integración de nuevos
miembros en el equipo.
 Mejor descomposición y popularización del software.
 Incrementa la evolución y mantenimiento del software.
 Aumenta la reusabilidad.

2
7. Principios del Modelado de SW
 Elegir los modelados a utilizar que sirvan al propósito deseado.
 Los modelos pueden ser expresados en distintos niveles de precisión.
 Mientras más coherente sea un modelo con la realidad, mejor será su
manejo.
 Cualquier sistema no trivial se aborda mejor con varios modelos
independientes
8. Modelos para el desarrollo de SW Mas destacados
 Modelo en cascada
Este ciclo de vida está planteado en bloques individuales que se van
concatenando en el tiempo. Los grupos de actividades son los
siguientes:
Requisitos: se definen completamente todas las necesidades
del proyecto. Pueden ser tareas que ha de realizar la aplicación
(o producto), e incluso las limitaciones que existen, como, por
ejemplo, que una web esté desarrollada con PHP.
Diseño: en este paso se realiza la descripción de los
componentes necesarios, la arquitectura, el modelado de los
datos, etc. Se obtienen respecto a los requisitos ya definidos.
Implementación: aquí el equipo de desarrollo codifica la
solución con las tecnologías necesarias.
Verificación: se comprueba que todo funcione como está
definido en los requisitos.
Mantenimiento: como es improbable detectar todos los errores
en el proceso de desarrollo, se realiza un periodo de
mantenimiento que el cliente y la empresa acuerden. Además
de depurar fallos, también se incluye aquí la formación en el uso
de la aplicación. Como se puede observar, es muy importante
definir bien todo lo que se quiere en la primera fase. Hay que
definir todas las necesidades de la forma más detallada
posible. Este es un punto clave para obtener los resultados
bosquejados previamente. Cuando el cliente define todo de una
forma precisa, el desarrollador sabe lo que tiene que hacer sin
equívocos, por lo que los plazos no se alargan, los cambios de

3
última hora no son un lastre y el proyecto se realiza
correctamente. También es importante que quien realice el
desarrollo, bien sea un freelance o una empresa, ayude al
cliente a definir los requisitos, ya que son ellos los que tienen la
experiencia en desarrollo de software.
 Modelo incremental o iterativo
Este modelo es una adaptación del modelo en cascada para cuando
no tenemos totalmente claros los requisitos o queremos realizar un
proyecto en fases. La estrategia a seguir con el modelo incremental es
establecer varias entregas del producto, cada una con mayor
funcionalidad que la anterior. Por lo tanto, al acabar el primer
incremento, se empieza a desarrollar el siguiente, y así sucesivamente
hasta tener el producto finalizado. Esto permite dividir el resultado en
distintos paquetes y poder ver evolucionar el resultado con cada
entrega. La principal clave al utilizar este modelo es definir
previamente unos plazos de entrega y un presupuesto, ya que, si
vamos iterando sobre la solución, podemos llegar a un punto en el que
el desarrollo se alargue tanto que no se obtendrá el producto final. Este
detalle permite que se puedan modificar requisitos en cada entrega,
teniendo en cuenta que, si se modifica algún requisito, se consume
tiempo y presupuesto, teniendo como obligación descartar otros
requisitos para que el producto se realice dentro del plazo y
presupuesto previstos.
 Modelo por prototipos
El modelo por prototipos se utiliza principalmente para tener una
visión del producto, pero sin funcionalidad. Con este modelo el
cliente puede ver cómo va a quedar su aplicación y hacer las
modificaciones pertinentes. La estructura de este modelo se establece
como el desarrollo de una versión previa sin funcionalidad que se
entrega al cliente. Al revisar este prototipo se realizan correcciones,
cambios en el formato, etc., pero sin añadir funcionalidad. Cuando se
llega al prototipo deseado, se añade toda la funcionalidad. Una
estrategia eficaz para este modelo es definir un plazo para obtener
el prototipo final, con varios prototipos previos, y después establecer

4
los plazos para el desarrollo de la solución, que suele ser aplicando un
modelo en cascada.
 Metodologías ágiles
Cuando se habla de metodologías ágiles suele referirse a
metodologías que suscriben el manifiesto ágil: estamos descubriendo
formas mejores de desarrollar software tanto por nuestra propia
experiencia como ayudando a terceros. A través de este trabajo
hemos aprendido a valorar: Individuos e interacciones sobre procesos
y herramientas Software funcionando sobre documentación extensiva
Colaboración con el cliente sobre negociación contractual Respuesta
ante el cambio sobre seguir un plan. Esto es, aunque valoramos los
elementos de la derecha, valoramos más los de la izquierda. Hay
varios modelos que destacan dentro de las metodologías ágil, como
son Scrum y Kanban. Scrum es un modelo que define períodos dentro
del desarrollo, reuniones y roles, así como una documentación propia.
Se centra en lo que el equipo de trabajo es capaz de hacer y no en
crear una gran documentación la cual hay que seguir al pie de la letra.
Kanban, por otra parte, tiene elementos similares, pero es una
estrategia de trabajo visual, que se centra en seguir la evolución de las
tareas individualmente hasta que finalizan, pasando por distintos
estados y siendo asignadas a miembros del equipo. Para utilizar estas
metodologías, el cliente debe ser participativo, así como el equipo de
desarrollo, que debe ser unido, y hacer participar al cliente de forma
activa.