Ingenierí
Software
La Ingeniería de Software
Vídeo de YouTube
Funte de información
http://unudad1conceptos.blogspot.mx/2013/02/unidad-1-fundamentos-de-
ingenieria-de.html
Comentarios
No tienes permiso para añadir comentarios.
INICIO
U1 Fundamentos Ingenieria de Software >
Comentarios
No tienes permiso para añadir comentarios.
URLde informacaión
http://ithuejutlajhh.blogspot.mx/2013/02/fundamentos-de-ingenieria-de-
software.html
http://www.youtube.com/watch?v=k5UzKfCBiIk
Comentarios
No tienes permiso para añadir comentarios.
Las fases del ciclo de vida del desarrollo de sistemas que cubren.
Su funcionalidad.
Las herramientas CASE, en función de las fases del ciclo de vida abarcadas, se
pueden agrupar de la forma siguiente:
1. Herramientas integradas, I-CASE (Integrated CASE, CASE integrado):
abarcan todas las fases del ciclo de vida del desarrollo de sistemas. Sonllamadas
también CASE workbench.
2. Herramientas de alto nivel, U-CASE (Upper CASE - CASE superior) ofront-end,
orientadas a la automatización y soporte de las actividades desarrolladas durante las
primeras fases del desarrollo: análisis y diseño.
3. Herramientas de bajo nivel, L-CASE (Lower CASE - CASE inferior) oback-end,
dirigidas a las últimas fases del desarrollo: construcción e implantación.
Vídeo de YouTube
UML son las siglas de “Unified Modeling Language” o “Lenguaje Unificado de Modelado”. Se trata de un
estándar que se ha adoptado a nivel internacional por numerosos organismos y empresas para crear
esquemas, diagramas y documentación relativa a los desarrollos de software (programas informáticos).
El término “lenguaje” ha generado bastante confusión respecto a lo que es UML. En realidad el término
lenguaje quizás no es el más apropiado, ya que no es un lenguaje propiamente dicho, sino una serie de
normas y estándares gráficos respecto a cómo se deben representar los esquemas relativos al software.
Mucha gente piensa por confusión que UML es un lenguaje de programación y esta idea es errónea: UML
no es un lenguaje de programación. Como decimos, UML son una serie de normas y estándares que dicen
cómo se debe representar algo.
UML es una herramienta propia de personas que tienen conocimientos relativamente avanzados de
programación y es frecuentemente usada por analistas funcionales (aquellos que definen qué debe hacer
un programa sin entrar a escribir el código) y analistas-programadores (aquellos que dado un problema, lo
estudian y escriben el código informático para resolverlo en un lenguaje como Java, C#, Python o
cualquier otro). Por tanto si estás dando tus primeros pasos en programación, te recomendaríamos que te
olvides de UML hasta que tengas unos conocimientos mínimos como uso de condicionales, bucles, y
conocimiento de la programación orientada a objetos. Esto es solo una recomendación, en realidad
prácticamente cualquier persona puede usar UML, incluso podría usarse para realizar esquemas o
documentación de procesos que no tengan que ver con la informática.
Hemos dicho que UML es un estándar. Vamos a aclarar primero qué es un estándar. Supongamos que
vamos a definir un estándar llamado “LMAPR” o lenguaje de modelado de aprenderaprogramar.com.
Ahora definimos dentro de nuestro estándar estas normas:
Un animal debe representarse con su nombre escrito enteramente en minúsculas enmarcado dentro de un
rectángulo doble. Encima del nombre debe etiquetarse el tipo de animal así: <<Tipo de Animal>>. Por
ejemplo, <<Gato>>.
Si un animal envía un mensaje a otro animal deben conectarse los dos animales con una línea punteada
terminada en flecha encima de la cual debe figurar el texto msg(“Contenido del mensaje”).
Ahora supongamos que tenemos dos gatos, uno de los cuales le dice al otro “Caza un ratón y tráemelo
aquí por favor”. Veamos formas de representar esto:
Esta es una forma de representación. Sin embargo, no se adapta al estándar que hemos definido por
varios motivos: no indica <<Gato>> encima de los nombres de los animales, no escribe los nombres en
minúsculas, no representa los animales con un rectángulo, etc.
Con este ejemplo sencillo hemos tratado de hacer explícito qué es y para qué sirve UML: un conjunto de
normas que nos dicen cómo hay que representar esquemas de software. En el caso del software orientado
a objetos, en vez de gatos tendremos clases u objetos instanciados, y dispondremos de numerosos tipos
de esquemas y diagramas para representar distintas cosas. Un esquema que cumple las normas UML
podría tener este aspecto:
¿Quién usa UML? UML lo suelen usar las empresas o medianos o grandes equipos de desarrollo software
con el objetivo de planificar y documentar cómo se construyen los programas informáticos complejos. Los
usuarios individuales o pequeños equipos de desarrollo de 2 ó 3 personas no suelen usar herramientas
UML. UML es un término que se relaciona mucho con “Ingeniería del software”. Al igual que un proyecto
de edificio requiere la participación de un arquitecto y unos plantos, un proyecto software requiere la
participación de ingenieros informáticos y una planificación y documentación.
Los antecedentes de UML se sitúan en la década de los 90 con distintos estándares para modelado de
software, no obstante podemos hablar de dos grandes versiones:
UML 1.X (comprende UML 1.1, 1.2, 1.3, 1.4, 1.5): desde finales de los 90 se empezó a trabajar con el
estándar UML. En los años sucesivos fueron apareciendo nuevas versiones que introducían mejoras o
ampliaban a las anteriores.
UML 2.X (comprende UML 2.1 hasta UML 2.5, 2.6, etc.): en torno a 2005 se difundió una nueva versión de
UML a la que podemos denominar UML 2.X. Comprenden varias revisiones.
Hay que tener en cuenta que UML es un conjunto muy amplio de normas. Prácticamente nadie las conoce
todas. Según la empresa o universidad, institución o centro de trabajo se usan determinados programas
para crear diagramas y se conocen ciertas partes de UML, pero no el conjunto de UML.
¿Qué versión usar? Para generar diagramas UML se usan programas informáticos. Usa un programa
actualizado pero no te preocupes en exceso por qué versión de UML usar, lo importante es que en tu
grupo de trabajo o personas a las que se les vaya a enviar documentación sobre un proyecto software
sepan interpretar lo que se les envía. A nivel profesional no se le presta demasiada atención a que se
cumpla estrictamente con las normas de una determinada versión de UML, sino a que los esquemas estén
bien construidos y razonados.
Usando UML se pueden construir numerosos tipos de diagramas. Vamos a citar algunos:
Diagramas de casos de uso: representan a los actores y casos de uso (procesos principales) que
intervienen en un desarrollo de software.
Diagramas de clases:para UML una clase es una entidad, no una clase software. Un diagrama de clases
UML puede ser un diagrama del dominio o representación de conceptos que intervienen en un problema,
o también un diagrama de clases software. El sentido de un diagrama UML se lo da la persona que lo
construye.
Hay muchísimos programas que permiten trabajar con UML, aunque aprender a usarlos requiere tiempo.
Astah community: herramienta sencilla, adecuada para aprender. Se puede descargar una versión
gratuita en http://astah.net/editions/community. Astah (antes conocido como Jude) también tiene una
versión profesional.
Lucidchart: herramienta que permite crear muchos tipos de diagramas, entre ellos UML. Puede probarse
visitando https://www.lucidchart.com/pages/es/ejemplos/diagrama-UML
Microsoft Visio: herramienta de Microsoft que permite la creación de muchos tipos de diagramas, entre
ellos diagramas UML.
Otros: Erwin, Oracle Designer, EasyCASE, Power Designer, etc. son herramientas que incorporan muchas
utilidades, entre ellas UML.
CRÍTICAS A UML
UML recibe numerosas críticas por parte de los miembros de la comunidad de desarrolladores software,
entre ellas el ser demasiado extenso, carecer de significados precisos para los elementos representados,
dificultad para representar algunos tipos de sistemas software o elementos, etc.
A pesar de ello y de no ser “perfecto”, es un estándar de amplio uso hoy día y una herramienta
fundamental en desarrollos software de gran envergadura.
Para hacer un comentario o consulta utiliza los foros aprenderaprogramar.com, abiertos a cualquier
persona independientemente de su nivel de conocimiento.
Descargar archivo:
DV00205D que es uml versiones uml para que sirve lenguaje unificado [] 77
modelado.pdf kB
DIVULGACIÓN
Lenguajes y entornos
Tendencias en programación
Empresas y emprendedores
Herramientas informáticas
Servicios web gratutitos
De todo un poco
Donar o colaborar
Este sitio se mantiene abierto gracias al apoyo de muchas personas. Si crees que merece la pena apoyar
económicamente este sitio web puedes realizar una donación o colaborar. Contacta con nosotros.
¿Puedo yo aprender?
Seas o no del área informática, si quieres aprender a programar te ofrecemos una solución guiada y
personalizada: realizar un curso tutorizado on-line. Con este tipo de curso, podrás aprender a programar
de forma ágil y amena.
Descargar archivo:
Leer más...
1. Todo es mentira.
4. En una empresa toda persona va ascendiendo hasta que llega a su máximo nivel de incompetencia
(Principio de Dilbert).
Descargar archivo:
Leer más...
Grandes empresas: hacia la industrialización del
software. Radarc, la apuesta de Icinetic por la
productividad.
Mario R. Rancel
Resumen: Este artículo explica cómo las grandes empresas están tendiendo a producir
software (programas o aplicaciones) de una forma industrial.
Las grandes multinacionales como las españolas Indra y Coritel entre otras, están tendiendo a agrupar sus
oficinas y centros productivos en un mismo emplazamiento, dando lugar a que se creen grandes centros
de producción de software que se están denominando “fábricas de software”. Estos centros distan
bastante de lo que puede ser una fábrica convencional (de automóviles por ejemplo), pero en cierta
medida se basan en conceptos semejantes, entre los que destacan la producción en cadena y la
automatización.
Descargar archivo:
Leer más...
Resumen: cuestiones básicas sobre la minería de datos (data mining). ¿Qué es? ¿Para qué
sirve?. Campos de aplicación y metodología habitual en trabajos de minería de datos.
Hay diferentes definiciones para minería de datos. Una muy simple sería decir que es el estudio y
tratamiento de datos masivos para extraer conclusiones e información relevante de ellos.
Vamos a tratar de explicar para qué sirve la minería de datos dando ejemplos de en qué situaciones se
aplica.
Descargar archivo:
DV00105A Mineria de datos data mining ques es para que sirve 1.pdf [ ] 29 kB
Leer más...
Resumen: Este artículo explica cuestiones básicas sobre la calidad del software y sobre qué
son las métricas y otras cuestiones relacionadas.
El software es un producto como cualquier otro, y por tanto podemos hablar de software de buena calidad
y software de mala calidad. La calidad del software comprende distintos aspectos como estética (que sea
agradable a la vista), funcionalidad (que sea fácil de usar), eficiencia (que ejecute con rapidez y precisión
los procesos), etc.
Descargar archivo:
Leer más...
Resumen: cuestiones básicas sobre la minería de datos (data mining), desde varios puntos
de vista (utilidad empresarial, campo para emprendedores y campo de investigación). ¿Qué
es? ¿Para qué sirve?. Modelos, técnicas y herramientas de uso habitual en trabajos de
minería de datos.
La minería de datos se aplica a todo tipo de datos imaginable: desde datos numéricos a imágenes de
satélite, mamografías, música, archivos de ordenador, imágenes, etc. Podemos decir que “cualquier cosa”
constituye un dato. Por tanto la minería de datos tiene infinitas aplicaciones: comerciales, marketing,
industria, internet, agricultura, etc.
Descargar archivo:
Leer más...
Resumen: Este artículo explica cuestiones básicas sobre la calidad del software y sobre qué
son las métricas y otras cuestiones relacionadas.
Un error común es pensar que si un proyecto de software con una persona se desarrolla en 12 meses, con
dos personas se desarrollará en 6 meses o con tres personas en 4 meses. Esto no es así por muchos
motivos, entre otros porque hay fases como las pruebas y el diseño que no pueden solaparse.
Descargar archivo:
Leer más...
DIVULGACIÓN
Lenguajes y entornos
¿Qué es UML? ¿Qué diagramas componen UML?
El Lenguaje Unificado de Modelado o UML (“Unified Modeling Language”) es
un lenguaje estandarizado de modelado. Está especialmente desarrollado para
ayudar a todos los intervinientes en el desarrollo y modelado de un sistema o
un producto software a describir, diseñar, especificar, visualizar, construir y
documentar todos los artefactos que lo componen, sirviéndose de varios tipos
de diagramas.
Estos diagramas contenidos en UML son la forma más común y más utilizada
de modelado de software. Modelar consiste en hacer un diseño previo de una
aplicación antes de proceder a su desarrollo e implementación. De forma
similar que un arquitecto dibuja planos sobre la casa que va a construir, un
analista de software (u otros perfiles) crea distintos diagramas UML que sirven
de base para la posterior construcción/mantenimiento del sistema. El modelado
es la principal forma de visualizar el diseño de una aplicación con la finalidad
de compararla con los requisitos antes de que el equipo de desarrollo comience
a codificar
UML ofrece ese modelado utilizando diagramas y se denomina lenguaje por ser
una forma común de expresarse por todos los analistas, desarrolladores y
usuarios. Está desarrollado para ayudar a todos estos (y más) perfiles a
especificar, visualizar, construir y documentar todos los componentes de un
proyecto. A pesar de que cada diagrama UML en particular aporta su visión
particular al modelado, el lenguaje en su conjunto tiene algunas características
que interesa resaltar:
Diagramas estructurales
Diagrama de componentes
Diagrama de despliegue
Diagrama de objetos
Diagrama de paquetes
Diagrama de perfiles
Diagramas de comportamiento
Diagramas de interacción.
Diagrama de secuencia
Diagrama de comunicación
Diagrama de tiempos
Se centran en las condiciones que cambian dentro y entre las líneas de vida a
lo largo de un eje de tiempo lineal.
Los diagramas global de interacciones brindan una descripción general del flujo
de control donde los nodos del flujo son interacciones o usos de interacción.
¿Qué versiones existen de UML?
Los creadores originales de UML son 3: Jim Rumbaugh, Grady Booch e Ivar
Jacobson.