miércoles, 2 de diciembre de 2009

Perfil y Mapa Curricular Ing. Software







"Ingeniería de software es la disciplina o área de la informática que ofrece métodos y técnicas para desarrollar y mantener software de calidad."



Perfil de ingreso




Los aspirantes a ingreso deberán manifestar un interés y gusto por el desarrollo de programas computacionales que den solución a los problemas de las empresas, así como las siguientes cualidades:






  • Habilidad de expresión en forma oral y escrita.


  • Capacidad de razonamiento verbal.


  • Habilidad para el uso de las matemáticas.


  • Capacidad de análisis y síntesis.


  • Capacidad de identificar y resolver problemas.


  • Habilidad para el trabajo en equipo.


  • Conocimientos básicos de informática e idioma inglés.


  • Valores y actitudes, tales como iniciativa, creatividad, responsabilidad, disciplina y compromiso.



Perfil de Egreso








El ingeniero en software es un profesionista que desarrolla soluciones de software, mediante la aplicación de procesos, modelos y estándares de calidad de la industria del software, las cuales contribuyen al crecimiento y progreso de su sociedad, en un ambiente que provee vida sustentable y oportunidades a sus habitantes.






Objetivo del Programa Educativo




Formar de manera integral recurso humano comprometido con su labor, innovador y emprendedor, capaz de desarrollar soluciones de software de calidad en forma eficiente, que contribuyan al crecimiento y progreso de su sociedad.






Competencias:





  • El egresado del programa de Ingeniero de Software del Instituto Tecnológico de Sonora es un profesionista que posee las siguientes competencias profesionales:


  • Diseñar Soluciones de Software a través de la aplicación de metodologías, herramientas y estándares apropiados al problema.


  • Producir aplicaciones de software a partir de especificaciones de diseño y haciendo uso de las mejores prácticas que aseguren la calidad del producto.


  • Administrar Proyectos de Desarrollo de Software mediante la aplicación de procesos, modelos y estándares que contribuyan a la calidad total del producto.



Áreas y lugares de desempeño profesional





Áreas






  • Análisis, diseño, construcción y pruebas en el desarrollo de software


  • Administración de bases de datos


  • Administración de proyectos de desarrollo de software




Lugares






  • Empresas con áreas de desarrollo de Software, fábricas de software, empresas desarrolladoras de software y su propia empresa.


  • Empresas con necesidades en sistemas de información.



TABLA DE MATERIAS




Responsabilidad y Etica en la profesión


Dentro de la profecion de Ingeniero en Software existen retos fundamentales que conseguir.


  • El reto de la heterogeneidad. Desarrollar técnicas para construir software confiable que sea lo suficientemente flexible para adecuarse a esta heterogeneidad.

  • El reto de la entrega. Reducir los tiempos de entrega para sistemas grandes y complejos sin comprometer la calidad del sistema.

  • El reto de la confianza. Desarrollar técnicas que demuestren que los usuarios pueden confiar en el software.Los retos no son independientes. Es necesario desarrollar nuevas herramientas y técnicas, así como formas innovadoras de combinación y uso de métodos de ingeniería del software existentes.


Asi como importante es el cumplimiento de los mismos tambien lo es el hecho de hacerlo con responsabilidad y etica profesional.



  • La ingeniería del software se lleva a cabo dentro de un marco legal y social que limita la libertad de los ingenieros.

  • Los ISW deben aceptar que su trabajo comprende responsabilidades más amplias que simplemente la aplicación de habilidades técnicas.

  • Deben comportarse de una forma ética y moral responsable.

  • No basta con poseer estándares normales de honestidad e integridad.

  • No debería utilizar su capacidad y sus habilidades para comportarse de forma deshonesta o de forma que deshonre la profesión de la ingeniería del software.

  • Existen áreas donde los estándares de comportamiento aceptable no están acotados por las leyes, sino por la responsabilidad profesional.


ALGUNAS DE ESTAS SON..




  • Confidencialidad. Respetar la confidencialidad de sus empleadores o clientes, independientemente de que se haya firmado un acuerdo formal de confidencialidad.

  • Competencia. No debe falsificar su nivel de competencia, ni aceptar conscientemente trabajos que están fuera de su capacidad.

  • Derechos de propiedad intelectual. Debe ser consciente de las leyes locales que gobiernan el uso de la propiedad intelectual, como las patentes y el copyright. Debe asegurarse de que la propiedad intelectual de los empleadores y clientes está protegida.

  • Uso inapropiado de las computadoras. No debe emplear sus habilidades técnicas para utilizar de forma inapropiada las computadoras de otras personas. Desde los relativamente triviales (utilizar juegos en la máquina de un empleado, por ejemplo) hasta los extremadamente serios (difusión de virus).

Fases y diciplinas del modelo de RUP

FASE DE INICIO

Durante la fase de inicio las iteraciones hacen ponen mayor énfasis en actividades modelado del negocio y de requisitos.

Modelado del negocio.
En esta fase el equipo se familiarizará más al funcionamiento de la empresa, sobre conocer sus procesos.
Requisitos.
En esta línea los requisitos son el contrato que se debe cumplir, de modo que los
usuarios finales tienen que comprender y aceptar los requisitos que especifiquemos.

FASE DE ELABORACIÓN

En la fase de elaboración, las iteraciones se orientan al desarrollo de la baseline de la arquitectura, abarcan más los flujos de trabajo de requerimientos, modelo de negocios (refinamiento), análisis, diseño y una parte de implementación orientado a la baseline de la arquitectura.

Análisis y Diseño
En esta actividad se especifican los requerimientos y se describen sobre como se van a implementar en el sistemas
  • Transformar los requisitos al diseño del sistema.
  • Desarrollar una arquitectura para el sistema.
  • Adaptar el diseño para que sea consistente con el entorno de implementación.


FASE DE CONSTRUCCIÓN


Implementación
Se implementan las clases y objetos en ficheros fuente, binarios, ejecutables y demás. El resultado final es un sistema ejecutable.

  • Cada implementador decide en que orden implementa los elementos del subsistema.
  • Si encuentra errores de diseño, los notifica.
  • Se integra el sistema siguiendo el plan.

Pruebas
Este flujo de trabajo es el encargado de evaluar la calidad del producto que estamos desarrollando, pero no para aceptar o rechazar el producto al final del proceso de desarrollo, sino que debe ir integrado en todo el ciclo de vida.

TRANSICION

Despliegue

  • Esta fase se enfoca en asegurar que el software esté disponible para sus usuarios.
  • Se puede subdividir en varias iteraciones, además incluye pruebas del producto para poder hacer el entregable del mismo, así como realizar ajuste menores de acuerdo a ajuste menores propuestos por el usuario.
  • En este punto, la retroalimentación de los usuarios se centra en depurar el producto, configuraciones, instalación y aspectos sobre utilización.
  • Probar el producto en su entorno de ejecución final.
  • Instalar el software.

DURANTE TODO EL PROYECTO


Gestión del proyecto
Se vigila el cumplimiento de los objetivos, gestión de riesgos y restricciones para desarrollar un producto que sea acorde a los requisitos de los clientes y los usuarios.


Configuración y control de cambios.
El control de cambios permite mantener la integridad de todos los artefactos que se crean en el proceso, así como de mantener información del proceso evolutivo que han seguido.


Entorno
La finalidad de esta actividad es dar soporte al proyecto con las adecuadas herramientas, procesos y métodos. Brinda una especificación de las herramientas que se van a necesitar en cada momento, así como definir la instancia concreta del proceso que se va a seguir.

Ordena las fases correctamente y descubre la imagen. Haz click aqui

Una vez que hayas finalizado la lectura del contenido de este blog te invito a realizar el siguiente test para que midas tu conocimiento en relacion a las lecturas del modelo de RUP Quiz

martes, 1 de diciembre de 2009

Ciclo de vida y Caracteristicas

El ciclo de vida RUP es una implementación del Desarrollo en Espiral. Fue creado ensamblando los elementos en secuencias semi-ordenadas. El ciclo de vida organiza las tareas en fases e iteraciones.

RUP divide el proceso en cuatro fases, dentro de las cuales se realizan varias iteraciones en número variable según el proyecto y en las que se hace un mayor o menor hincapié en las distintas actividades. En la Figura muestra cómo varía el esfuerzo asociado a las disciplinas según la fase en la que se encuentre el proyecto RUP.

Las primeras iteraciones (en las fases de Inicio y Elaboración) se enfocan hacia la comprensión del problema y la tecnología, la delimitación del ámbito del proyecto, la eliminación de los riesgos críticos, y al establecimiento de una baseline (Linea Base) de la arquitectura.


Durante la fase de inicio las iteraciones hacen mayor énfasis en actividades de modelado del negocio y de requerimientos.


En la fase de elaboración, las iteraciones se orientan al desarrollo de la baseline de la arquitectura, abarcan más los flujos de trabajo de requerimientos, modelo de negocios (refinamiento), análisis, diseño y una parte de implementación orientado a la baseline de la arquitectura.


En la fase de construcción, se lleva a cabo la construcción del producto por medio de una serie de iteraciones.
Para cada iteración se selecciona algunos Casos de Uso, se refina su análisis y diseño y se procede a su implementación y pruebas. Se realiza una pequeña cascada para cada ciclo. Se realizan tantas iteraciones hasta que se termine la implementación de la nueva versión del producto.


En la fase de transición se pretende garantizar que se tiene un producto preparado para su entrega a la comunidad de usuarios.
Como se puede observar en cada fase participan todas las disciplinas, pero que dependiendo de la fase el esfuerzo dedicado a una disciplina varía.


Caracteristicas



  • Forma disciplinada de asignar tareas y responsabilidades (quién hace qué, cuándo y cómo)

  • Pretende implementar las mejores prácticas en Ingeniería de Software

  • Desarrollo iterativo

  • Administración de requisitos

  • Uso de arquitectura basada en componentes

  • Control de cambios

  • Modelado visual del software

  • Verificación de la calidad del software


El RUP es un producto de Rational (IBM). Se caracteriza por ser iterativo e incremental, estar centrado en la arquitectura y guiado por los casos de uso. Incluye artefactos (que son los productos tangibles del proceso como por ejemplo, el modelo de casos de uso, el código fuente, etc.) y roles (papel que desempeña una persona en un determinado momento, una persona puede desempeñar distintos roles a lo largo del proceso)....
Para medir tu conocimiento en relacion a la lectura te invito a realizar el siguiente juego

lunes, 30 de noviembre de 2009

¿Que es RUP?

El Proceso Unificado Racional (Rational Unified Process en inglés, habitualmente resumido como RUP) es un proceso de desarrollo de software y junto con el Lenguaje Unificado de Modelado UML, constituye la metodología estándar más utilizada para el análisis, implementación y documentación de sistemas orientados a objetos.


El RUP no es un sistema con pasos firmemente establecidos, sino un conjunto de metodologías adaptables al contexto y necesidades de cada organización.



Ademas de ser un proceso de ingeniería de software, orientado por disciplinas para lograr las tareas y responsabilidades de una organización que desarrolla software.



El RUP está basado en 3 principios clave que son:


Adaptar el proceso


El proceso deberá adaptarse a las características propias del proyecto u organización. El tamaño del mismo, así como su tipo o las regulaciones que lo condicionen, influirán en su diseño específico. También se deberá tener en cuenta el alcance del proyecto en un area subformal.


Equilibrar prioridades


Los requerimientos de los diversos participantes pueden ser diferentes, contradictorios o disputarse recursos limitados. Debe encontrarse un equilibrio que satisfaga los deseos de todos. Gracias a este equilibrio se podrán corregir desacuerdos que surjan en el futuro.


Demostrar valor iterativamente


Los proyectos se entregan, aunque sea de un modo interno, en etapas iteradas. En cada iteración se analiza la opinión de los inversores, la estabilidad y calidad del producto, y se refina la dirección del proyecto así como también los riesgos involucrados.