¿QUE ES INGENIERIA DE SOFTWARE?
Es aquella que ofrece métodos y técnicas
Es
la aplicación práctica del conocimiento científico al diseño y construcción de
programas de computadora y a la documentación asociada requerida para
desarrollar, operar y mantenerlos.
tratando
del establecimiento de los principios y métodos de la ingeniería a fin de
obtener software de modo rentable
En la actualidad para muchas
organizaciones, los sistemas de información basados en computadoras son el corazón de las actividades cotidianas y
objeto de gran consideración en la toma
de decisiones, las
empresas consideran con mucho cuidados las
capacidades de sus sistemas de
información cuando deciden ingresar o no en nuevos mercados o cuando planean la respuesta que
darán a la competencia.
Al establecer los sistemas
de información basados
en computadoras deben tener la certeza de que se logren dos objetivos principales: que sea un
sistema correcto y que este correcto el
sistema. Ningún sistema que deje satisfacer ambos objetivos será completamente
útil para la gerencia u organización.
Si los dispositivos de un sistema de
información no se adaptan a su población de clientes, no lograra sus objetivos
potenciales. A mismo tiempo, aun cuando se identifiquen
precisamente las necesidades del usuario, un sistema
de información va tener
un valor único si funciona en forma
adecuada.
CICLO DE VIDA DE UN SISTEMA DE
INFORMACION
El ciclo
de vida de un sistema
de información es un enfoque por fases del análisis y diseño que sostiene que los sistemas son
desarrollados de mejor manera mediante el uso de un ciclo especifico de
actividades del analista y del usuario.
Según James Senn, existen tres
estrategias para el desarrollo de sistemas: el método clásico del ciclo de vida de
desarrollo de sistemas, el método de desarrollo por análisis estructurado y el
método de construcción de prototipos de sistemas. Cada una
de estas estrategias tienen un uso amplio en cada una de los diversos tipos de
empresas que existen, y resultan efectivas si son aplicadas de manera
adecuada.
CICLO DE VIDA CLÁSICO DEL DESARROLLO DE SISTEMA
El método de ciclo de vida para el
desarrollo de sistemas es el conjunto de actividades que los analistas,
diseñadores y usuarios realizan para desarrollar e implantar un sistema de
información. El método del ciclo de vida para el desarrollo de sistemas consta
de 6 fases:
1). Investigación Preliminar: La solicitud para recibir ayuda de
un sistema de información puede originarse por varias razones: sin importar
cuales sean estas, el proceso se inicia siempre con la petición de una
persona.
2). Determinación de los
requerimientos del sistema: El aspecto fundamental del análisis
de sistemas es comprender todas las facetas importantes de la parte de
la
empresa que se
encuentra bajo estudio. Los analistas, al trabajar con los empleados y
administradores, deben estudiar los procesos de una
empresa para dar
respuesta a las siguientes preguntas clave:
¿Qué es lo que hace? ¿Cómo se
hace? ¿Con que frecuencia se presenta?
¿Qué tan grande es el volumen de transacciones o
decisiones?
¿Cuál es el grado de eficiencia con el que se efectúan las
tareas?
3). Diseño del sistema: El diseño de un sistema de
información produce los detalles que establecen la forma en la que el sistema
cumplirá con los requerimientos identificados durante la fase de análisis. Los
especialistas en sistemas se refieren, con frecuencia, a esta etapa como diseño
lógico en contraste con la del desarrollo del software, a la que denominan
diseño físico.
4). Desarrollo del
software: Los
encargados de desarrollar software pueden instalar software comprobando a
terceros o escribir programas diseñados a la medida del
solicitante. La elección depende del costo de cada alternativa, del tiempo
disponible para escribir el software y de la disponibilidad de los
programadores.
Por lo general, los programadores
que trabajan en las grandes organizaciones pertenecen a un grupo permanente de
profesionales.
5). Prueba de sistemas: Durante la prueba de sistemas, el
sistema se emplea de manera experimental para asegurarse de que el software no
tenga fallas, es decir, que funciona de acuerdo con las especificaciones y en la
forma en que los usuarios esperan que lo haga.
Se alimentan como entradas conjunto
de datos de prueba para su procesamiento y
después se examinan los resultados.
6). Implantación y evaluación: La implantación es el proceso de
verificar e instalar nuevo equipo, entrenar a los usuarios, instalar la
aplicación y construir todos los archivos de datos necesarios para
utilizarla. Una vez instaladas, las aplicaciones se emplean durante muchos años.
Sin embargo, las organizaciones y los usuarios cambian con el paso del tiempo,
incluso el ambiente es diferente con el paso de las
semanas y los meses.
Por consiguiente, es indudable que
debe darse mantenimiento a las aplicaciones. La evaluación
de un sistema se lleva a cabo para identificar puntos débiles y fuertes. La
evaluación ocurre a lo largo de cualquiera de las siguientes
dimensiones:
a)
Evaluación operacional: Valoración de la forma en que
funciona el sistema, incluyendo su facilidad de uso, tiempo de respuesta, lo
adecuado de los formatos de información, confiabilidad global y nivel de
utilización.
b)
Impacto
organizacional:
Identificación y medición de los beneficios para la
organización en áreas tales como finanzas, eficiencia operacional e impacto
competitivo. También se incluye el impacto sobre el flujo de información externo
e interno.
c)
Opinión
de loa administradores:
evaluación de las actividades de directivos y administradores dentro de
la
organización así como
de los usuarios finales.
d)
Desempeño del desarrollo: La evaluación de proceso de
desarrollo de acuerdo con criterios tales como tiempo y esfuerzo de desarrollo,
concuerdan con presupuestos y estándares, y otros criterios de
administración de proyectos. También se incluye la valoración
de los métodos y herramientas utilizados en el
desarrollo.
Muchos especialistas en sistemas de
información reconocen la dificultad de comprender de manera completa sistemas
grandes y complejos. El método de desarrollo del análisis estructurado tiene
como finalidad superar esta dificultad por medio de:
1). La división del sistema en
componentes
2). La construcción de un
modelo del sistema.
El análisis estructurado se
concentra en especificar lo que se requiere que haga el sistema o la aplicación.
Permite que las personas observen los elementos lógicos (lo que hará el sistema)
separados de los componentes físicos (computadora, terminales, sistemas de
almacenamiento, etc.). Después de esto se puede
desarrollar un diseño físico eficiente para la situación donde será
utilizado.
Herramientas
Las herramientas muestran todas las
características esenciales del sistema y la forma en que se ajustan entre si,
como es muy difícil entender todo un proceso de la empresa en forma verbal, las
herramientas ayudan a ilustrar los componentes esenciales de un sistema, junto
con sus acciones.
Diagrama de flujo de datos
Es el modelo del sistema. Es la
herramienta más importante y la base sobre la cual se desarrollan otros
componentes.
El modelo original se detalla en
diagramas de bajo nivel que muestran características adicionales del sistema.
Cada proceso puede desglosarse en diagramas de flujos de datos cada vez más
detallados. Repitiéndose esta secuencia hasta que se obtienen suficientes
detalles para que el analista comprenda la parte del sistema que se encuentra
bajo investigación.
El diagrama físico de datos da un
panorama del sistema en uso, dependiente de la implantación, mostrando cuales
tareas se hacen y como son hechas. Incluyen nombres de personas, nombres o
números de formato y documento, nombres de departamentos, archivos maestro y de
transacciones, equipo y dispositivos utilizados, ubicaciones, nombres de
procedimientos.
UML
Lenguaje Unificado de Modelado (LUM o UML, por sus siglas en inglés, Unified Modeling Language) es el lenguaje de modelado de sistemas de software más conocido y utilizado en la actualidad; está respaldado por el OMG (Object Management Group). Es un lenguaje gráfico para visualizar, especificar, construir y documentar un sistema. UML ofrece un estándar para describir un "plano" del sistema (modelo), incluyendo aspectos conceptuales tales como procesos de negocio, funciones del sistema, y aspectos concretos como expresiones de lenguajes de programación, esquemas de bases de datos y componentes reutilizables.
INTRODUCCIÓN A UML
UML es una especificación de notación orientada a objetos. Se basa en las anteriores especificaciones BOOCH, RUMBAUGH y COAD-YOURDON. Divide cada proyecto en un número de diagramas que representan las diferentes vistas del proyecto. Estos diagramas juntos son los que representa la arquitectura del proyecto.
Con UML nos debemos olvidar del protagonismo excesivo que se le da al diagrama de clases, este representa una parte importante del sistema, pero solo representa una vista estática, es decir muestra al sistema parado. Sabemos su estructura pero no sabemos que le sucede a sus diferentes partes cuando el sistema empieza a funcionar. UML introduce nuevos diagramas que representa una visión dinámica del sistema. Es decir, gracias al diseño de la parte dinámica del sistema podemos darnos cuenta en la fase de diseño de problemas de la estructura al propagar errores o de las partes que necesitan ser sincronizadas, así como del estado de cada una de las instancias en cada momento.
Diagrama de clases
Un diagrama de clases es un tipo de diagrama estático que describe la estructura de un sistema mostrando sus clases, atributos y las relaciones entre ellos. Los diagramas de clases son utilizados durante el proceso de análisis y diseño de los sistemas, donde se crea el diseño conceptual de la información que se manejará en el sistema, y los componentes que se encargaran del funcionamiento y la relación entre uno y otro.Representación de: - Requerimientos en entidades y actuaciones. - La arquitectura conceptual de un dominio - Soluciones de diseño en una arquitectura - Componentes de software orientados a objetosDiagrama de componentes
Un diagrama de componentes es un diagrama tipo del
Lenguaje Unificado de Modelado.
Un diagrama de componentes representa cómo un sistema de software es dividido en componentes y muestra las dependencias entre estos componentes. Los componentes físicos incluyen archivos, cabeceras, bibliotecas compartidas, módulos, ejecutables, o paquetes. Los diagramas de Componentes prevalecen en el campo de la arquitectura de software pero pueden ser usados para modelar y documentar cualquier arquitectura de sistema.
Diagrama de objetos
Un diagrama de componentes representa cómo un sistema de software es dividido en componentes y muestra las dependencias entre estos componentes. Los componentes físicos incluyen archivos, cabeceras, bibliotecas compartidas, módulos, ejecutables, o paquetes. Los diagramas de Componentes prevalecen en el campo de la arquitectura de software pero pueden ser usados para modelar y documentar cualquier arquitectura de sistema.
Diagrama de objetos
Los diagramas de objetos son utilizados durante el proceso de Análisis y Diseño de los sistemas
informáticos en la metodología UML.
Se puede considerar un caso especial de un diagrama de clases en el que se muestran instancias específicas de clases (objetos) en un momento particular del sistema. Los diagramas de objetos utilizan un subconjunto de los elementos de un diagrama de clase. Los diagramas de objetos no muestran la multiplicidad ni los roles, aunque su notación es similar a los diagramas de clase.
Una diferencia con los diagramas de clase es que el compartimiento de arriba va en la forma Nombre de objeto: Nombre de clase.
Por ejemplo, EVelin: Persona.
Diagrama de estructura compuesta Un diagrama de estructura compuesta es un tipo de diagrama de estructura estática en el Lenguaje de Modelado Unificado (UML), que muestra la estructura interna de una clase y las colaboraciones que esta estructura hace posibles. Esto puede incluir partes internas, puertas mediante las cuales, las partes interactúan con cada una de las otras o mediante las cuales, instancias de la clase interactúan con las partes y con el mundo exterior, y conectores entre partes o puertas. Una estructura compuesta es un conjunto de elementos interconectados que colaboran en tiempo de ejecución para lograr algún propósito. Cada elemento tiene algún rol definido en la colaboración.
Diagrama de despliegue
El Diagrama de Despliegue es un tipo de diagrama del Lenguaje Unificado de Modelado que se utiliza para modelar el hardware utilizado en las implementaciones de sistemas y las relaciones entre sus componentes.
Los elementos usados por este tipo de diagrama son nodos (representados como un prisma), componentes (representados como una caja rectangular con dos protuberancias del lado izquierdo) y asociaciones.
En el UML 2.0 los componentes ya no están dentro de nodos. En cambio, puede haber artefactos u otros nodos dentro de un nodo.
Se puede considerar un caso especial de un diagrama de clases en el que se muestran instancias específicas de clases (objetos) en un momento particular del sistema. Los diagramas de objetos utilizan un subconjunto de los elementos de un diagrama de clase. Los diagramas de objetos no muestran la multiplicidad ni los roles, aunque su notación es similar a los diagramas de clase.
Una diferencia con los diagramas de clase es que el compartimiento de arriba va en la forma Nombre de objeto: Nombre de clase.
Por ejemplo, EVelin: Persona.
Diagrama de estructura compuesta Un diagrama de estructura compuesta es un tipo de diagrama de estructura estática en el Lenguaje de Modelado Unificado (UML), que muestra la estructura interna de una clase y las colaboraciones que esta estructura hace posibles. Esto puede incluir partes internas, puertas mediante las cuales, las partes interactúan con cada una de las otras o mediante las cuales, instancias de la clase interactúan con las partes y con el mundo exterior, y conectores entre partes o puertas. Una estructura compuesta es un conjunto de elementos interconectados que colaboran en tiempo de ejecución para lograr algún propósito. Cada elemento tiene algún rol definido en la colaboración.
Diagrama de despliegue
El Diagrama de Despliegue es un tipo de diagrama del Lenguaje Unificado de Modelado que se utiliza para modelar el hardware utilizado en las implementaciones de sistemas y las relaciones entre sus componentes.
Los elementos usados por este tipo de diagrama son nodos (representados como un prisma), componentes (representados como una caja rectangular con dos protuberancias del lado izquierdo) y asociaciones.
En el UML 2.0 los componentes ya no están dentro de nodos. En cambio, puede haber artefactos u otros nodos dentro de un nodo.
No hay comentarios:
Publicar un comentario