Monografias.com > Ingeniería
Descargar Imprimir Comentar Ver trabajos relacionados

RUP, Requerimientos




Enviado por sistemas



  1. Resumen
  2. Introducción
  3. Desarrollo del tema
  4. Conclusiones
  5. Referencias

Resumen

El objetivo principal es establecer lo que un sistema
debe hacer, brindar una guía para encontrar, organizar,
documentar, y seguir los cambios de los requerimientos
funcionales y restricciones. Utiliza una notación de Caso
de Uso y escenarios para representar los requerimientos; cuando
este término es empleado en la metodología RUP se
dice que son las necesidades de un usuario para resolver un
problema o alcanzar un objetivo, basándose este hecho a
una condición primordial presente en un sistema o
componente del mismo para satisfacer una especificación
dada. Cuando se inicia el proceso de desarrollo de software, se
debe comenzar con la recolección de requerimientos de
usuario. Para lograr un mayor acercamiento y entendimiento a
éstos requerimientos, se deben analizar y describir
diferentes enfoques, logrando así un diagnóstico de
la situación actual del negocio.

Palabras Claves:
Metodologías; Procesos; Enfoques; Requerimientos,
RUP.

ABSTRACT

The main objective is to establish what a system should
do, provide guidance to find, organize, document, and track
changes of functional requirements and constraints. It uses a
notation of use case and scenarios to represent the requirements,
when this term is used in the RUP methodology is said to be the
needs of a user to solve a problem or achieve an objective basis
this to a primordial condition present in a system or component
thereof to meet a given specification. When the software
development process starts, begin with gathering user
requirements. To achieve reconciliation and understanding to
these requirements, they must analyze and describe different
approaches, achieving a diagnosis of the current business
situation.

Key words: Methodologies, Processes, Approaches,
Requirements, RUP.

Introducción

La importancia que hoy en día se le da al
software radica en que prácticamente todas las
organizaciones dependen de éste para realizar sus
funciones diarias, también se considera la
Tecnología Informática como estrategia para obtener
ventaja competitiva. Por éstas razones y muchas
más, el desarrollo de proyectos de software se ha
convertido en una de las áreas con mayor campo de
acción dentro de las disciplinas
tecnológicas.

Pero el desarrollo de software no es sencillo, ya que
por medio de éste se modelan las principales
funcionalidades ofrecidas por el negocio, se abstrae el
funcionamiento de la organización y por lo mismo, se
vuelve más complejo en tanto más compleja sea la
organización.

Según, (Zavala, J), para trabajar en el
desarrollo de un software, existen metodologías que se
dividen en varias etapas que proporcionan procedimientos,
técnicas, herramientas y un soporte documental que ayuda a
los desarrolladores a crear software de calidad.

La metodología indica cómo hay que obtener
los distintos productos parciales y finales. Entre las
metodologías más importantes se encuentran la
Metodología de Rational Unified Process (RUP), Extreme
Programing (XP), Microsoft Solution Framework (MSF), el modelo en
espiral, en cascada, espiral, prototipos y Método en
V.

(Gary, K. 2002), menciona que a pesar de la
aplicación de las metodologías y estrategias de la
ingeniería en el desarrollo de software, se observa, con
el pasar de los años que el desarrollo de los proyectos de
software en la mayoría de los casos no culmina
exitosamente. El 75 % de los productos de software grandes se
entregaron a los clientes pero tienen fallas, son un fracaso
porque no se usan o no cumplen los requerimientos del cliente. Lo
que provoca grandes tasas de fracasos por la indefinición
precisa de las necesidades o requerimientos. Esto se puede notar
a partir del origen de los errores en el software; se estima que
el 56% de los errores en los proyectos se da por el mal
desarrollo en la etapa del Estudio y Análisis, 10% en el
diseño, 7% en el código y el 27% en errores varios.
Las anteriores cifras muestran la realidad de los fracasos de
proyectos software, por eso es indispensable que se reconozca la
importancia de cada una de las etapas de las metodologías
de desarrollo de software.

Resulta indispensable tomar en cuenta de que la parte
fundamental para el desarrollo de software es la
identificación de requerimientos, la cual se constituye
como una disciplina de la Ingeniería de Software llamada
Ingeniería de Requerimientos (IR). La IR, es una etapa en
la que el usuario define lo que quiera que haga el sistema;
identifica las funciones principales del sistema, el alcance del
modelamiento del mundo y documenta los procesos principales y las
políticas que el sistema va a soportar.

Desarrollo del
tema

Los requerimientos son declaraciones que identifican
atributos, capacidades, características y/o cualidades que
necesita cumplir un sistema (o un sistema de software) para que
tenga valor y utilidad para el usuario. En otras palabras, los
requerimientos muestran qué elementos y funciones son
necesarias para un proyecto.

• Los requerimientos de sistemas deben mostrar todo
lo que el sistema debe hacer más todas las restricciones
sobre la funcionalidad.

• Los requerimientos forman un modelo completo,
representando el sistema total a algún nivel de
abstracción.

Monografias.com

Fig. 1 ciclo de vida del RUP.

2.1 Clasificación de los
requerimientos

2.1.1 Requerimientos funcionales

Según (James, A. 2000). Son aquellos servicios
que el usuario espera del sistema. En general, al usuario no le
interesa cómo se aplican esos servicios, así que el
ingeniero de software debe evitar la inclusión de
conceptos de aplicación en esta sección del
documento de los requisitos. En principio, los requisitos
funcionales de un sistema deben ser completos y consistentes. Por
completo se entiende que todos los servicios requeridos por el
usuario deben especificarse, y la consistencia significa que
ninguna definición de requisitos debe contradecir a otra.
En la práctica, y para sistemas grandes y complejos, es
casi imposible lograr que los requisitos sean consistentes y
completos en la versión inicial del documento. A medida
que se descubren los problemas durante las revisiones o en las
etapas posteriores del ciclo de vida, el documento debe
modificarse en consecuencia, hay tres maneras de expresar los
requisitos funcionales de un sistema:

1. En lenguaje natural

2. En un lenguaje estructurado o en un formato que tenga
algunas reglas, pero no una especificación
sintáctica o semántica rigurosa,

3. En un lenguaje formal de especificación con
una sintaxis y semántica definidas.

2.1.2 Requerimientos no funcionales

Son restricciones u obligaciones impuestas al servicio
de éste. Ejemplos de requisitos no funcionales son las
obligaciones impuestas a los tiempos de respuesta del sistema,
las limitaciones en la cantidad de memoria que ocupará el
software y las restricciones en la representación de los
datos del sistema.

Aunque tanto los requisitos funcionales como los no
funcionales están sujetos a cambios, los requisitos no
funcionales se ven especialmente afectados por los cambios en la
tecnología de hardware, (James, A. 2000).

Rendimiento del sistema: fiabilidad, tiempo de
respuesta, disponibilidad

Interfaces: dispositivos de E/S, usabilidad,
interoperabilidad.

Proceso de desarrollo: estándares,
herramientas, plazo de entrega.

2.2 Etapas de la fase de
requerimientos

  • Obtención de requerimientos:
    búsqueda y obtención de los requerimientos
    desde los grupos de interés.

  • Análisis: comprobación de la
    consistencia y completitud de los requerimientos.

  • Verificación: constatación de
    que los requerimientos especificados son
    correctos.

2.3 Administración de
requerimientos

  • Licitar, organizar, y documentar la funcionalidad y
    restricciones requeridas.

  • Llevar un registro y documentación de cambios
    y decisiones.

  • Los requerimientos de negocio son fácilmente
    capturados y comunicados a través de casos de
    uso.

  • Los casos de uso son instrumentos importantes de
    planeación.

2.4 Análisis de requerimientos en
RUP

Markus R, and Wirkungsforschung, (2007). Dice que el
análisis da como resultado un modelo del sistema que
pretender ser correcto, completo, consistente y verificable. Los
desarrolladores formalizan la especificación del sistema
producida durante la obtención de requerimientos y
examinan con mayor detalle las condiciones de frontera y los
casos excepcionales. El cliente y el usuario están
involucrados, por lo general, en esta actividad, en especial
cuando se necesita cambiar la especificación del sistema y
cuando se necesita recopilar la información
adicional.

2.5 De donde provienen los
requerimientos

Monografias.com

Fuente: Monografías.com

2.6 Características que
deberían cumplir los requerimientos

  • Actual: el requerimiento no debe volverse
    obsoleto con el paso del tiempo.

  • Cohesión: el requerimiento debe
    dirigirse a solo una única cosa.

  • Completo: el requerimiento debe estar
    completamente declarado en un único lugar, sin
    información faltante.

  • Consistente: el requerimiento no debe
    contradecir ningún otro requerimiento y debe ser
    completamente consistente con toda la
    documentación.

  • Correcto/necesario: el requerimiento debe
    cumplir con la necesidad declarada por los interesados en el
    sistema/software.

  • Factible/viable: el requerimiento debe poder
    ser implementado.

  • No ambiguo: el requerimiento debe estar
    concisamente declarado. Debe expresar hechos objetivos, no
    opiniones subjetivas. Debe poder ser interpretado de una
    única manera.

  • Obligatorio: el requerimiento debe
    representar una característica definida por el grupo
    interesado en el desarrollo del sistema/software, su ausencia
    no puede ser reemplazada.

  • Observable externamente:

El requerimiento debe especificar una
característica observable externa o experimentable por el
usuario del producto.

  • Verificable/demostrable:

La implementación del requerimiento debe poder
ser resuelta en alguno de estos cuatro métodos:
inspección, análisis, demostración o
prueba

2.7 Ingeniería de Requerimientos
vs. Administración de Requerimientos

(Rumbaugh, J.), define que el proceso de recopilar,
analizar y verificar las necesidades del cliente para un sistema
es llamado Ingeniería de Requerimientos. La meta de la
ingeniería de requerimientos (IR) es entregar una
especificación de requisitos de software correcta y
completa.

Los requerimientos son la Pieza fundamental en un
proyecto de desarrollo de software, es ellos se basan muchos
participantes del proyecto para: Planear el proyecto y los
recursos que se usarán en él. Los líderes de
proyecto usan los requerimientos como una base para la
estimación del esfuerzo necesario en un
proyecto.

Especificar el tipo de verificaciones que se
habrán de realizar al sistema. Por ejemplo: cuando se
está tratando de alinearse a cierta norma oficial o
estándar. Planear la estrategia de prueba a la que
habrá de ser sometido el sistema. Los requerimientos son
la base sobre la cual se decide si un caso de prueba fue
ejecutado exitosamente por el sistema o no.

Son el fundamento del ciclo de vida del proyecto. Los
requerimientos documentados son la base para crear la
documentación del sistema de ahí su importancia y
la importancia de que deban de ser definidos y manejados de la
forma más adecuada posible.

2.8 SEMEJANZAS CONCEPTUALES: RUP and
PMBOK

El PMBOK (Project Management Body of Knowledge)
(cuerpo de conocimientos de gerenciamiento de proyectos) del PMI
(Project Management Institute) representa las mejores
prácticas en gestión de proyectos; El PMBOK
documenta la información necesaria para iniciar,
planificar, ejecutar, supervisar y controlar, y cerrar un
proyecto individual, e identifica los procesos de la
dirección de proyectos que han sido reconocidos como
buenas prácticas para la mayoría de los proyectos,
la mayor parte del tiempo. Estos procesos se aplican globalmente
y en todos los grupos de negocios o industriales.

  • a. Jerarquías de
    Proceso

Monografias.com

Fuente: PAGE Technologies

Ambos recomiendan dividir proyectos en varias
fases

  • b. Diferencias entre RUP and
    PMBOK

  • El PMBOK se describen directrices basadas en las
    mejores prácticas de la industria.

  • RUP ayuda a los equipos de desarrollo de software
    implementar las mejores prácticas de la industria de
    software. Mientras que RUP es una herramienta independiente,
    cuando se utiliza en combinación con las herramientas
    de desarrollo de software de IBM, puede mejorar
    significativamente la productividad, la integridad, la
    reutilización, y más.

  • El PMBOK describe un ciclo de vida del proyecto
    genérico.

  • RUP prescribe un ciclo de vida de desarrollo de
    software genérico dentro de un ciclo de vida del
    proyecto.

  • PMBOK describe las directrices para proyectos de
    cualquier tamaño.

  • RUP se puede adaptar para implementar cualquier
    proyecto de software.

Monografias.com

Fuente: PAGE Technologies

  • c. Fases del RUP and PMBOK

Monografias.com

Fuente: PAGE Technologies

  • APORTE SOCIAL

El cliente lo que busca es satisfacer sus prioridades
haciendo sus tareas más fáciles, por tal motivo
cuando se hace un sistema debe ser en lenguaje natural, sin dar
complicaciones al usuario, caso contrario daríamos realce
a lo que dice "Las soluciones de hoy son los problemas de
mañana". Los principales requerimientos para una sociedad
limpia son los valores.

  • APORTE ESPIRITUAL

En la vida espiritual; el requerimiento principal es el
Bautismo. En la vida diaria de cada persona se debe realizar
diferentes tipos de procesos para alcanzar la vida eterna, un
análisis a nuestra vida es lo primordial que debemos
hacer; cuando diseñamos un sistema tiene diferentes
requerimientos para satisfacción del usuario; tan igual
Dios nos brindó los requerimientos necesarios para heredar
las mansiones celestiales y las normas son tan claras que no hay
complicaciones para perdernos de esta maravillosa esperanza la
segunda venida de Jesús.

Conclusiones

  • Se cuenta con una visión sobre el proceso de
    desarrollo de software y se debe asumir el compromiso de
    establecer los requerimientos del sistema como parte esencial
    en el éxito de los proyectos.

  • Lo importante de los requerimientos al transmitirlos
    es que sean claros, únicos (no redundante o que se
    tengan conflictos con otros), que sean concretos y que ante
    todo se alineen al objetivo o visión
    inicial.

  • Siempre puede extenderse un método de
    análisis para que abarque el diseño
    arquitectural y procedimental del software. 

  • Uno de los requerimientos más importantes (y
    que muchas veces se nos olvida) es el personal con el que se
    cuenta para llevar a cabo el proyecto.

Referencias

  • James A. Senn, Análisis y Diseño de
    Sistemas de Información, Segunda Edición, Mc
    Graw Hill, Abril 2000.

  • Metodologías de Desarrollo de Software,
    disponible en, http://alarcos.inf-cr.uclm.es/doc/ SOFTWAREI/
    Tema04.pdf.

  • IBM. (2003). Rational Unified Process. Europa:
    Rational Unified Process.zip

  • Ingeniería de software, disponible en
    http://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_software.

  • Ingeniería de software, disponible en
    http://www.monografias.com/trabajos12/ingreq/ingreq.

  • Agile Requirements Change Management

  • Jesús María Zavala Ruiz, ¿Por
    Qué Fracasan los Proyectos de Software?; Un Enfoque
    Organizacional, 2004 disponible en,
    http://www.consol.org.mx/2004/material/63/por-que-fallan-los-proy-de
    soft.pdf.

  • PAGE Technologies, Inc., Proprietary, 2002
    www.pagetechnologies.com

 

 

Autor:

Joyse Baldwin Huamán
Labán1,

Herdy Jioberth Osorio
Palacios2

Autor – Estudiante de la Universidad
Peruana Unión

Monografias.com

UNIVERSIDAD PERUANA UNIÓN

DIRECCIÓN GENERAL DE
INVESTIGACIÓN

Monografias.comhttp://investigacion.upeu.edu.pe

Análisis y Diseño de Sistemas
I

Mag. Daniel Lévano
Rodríguez

Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

Categorias
Newsletter