Artículo de la Revista ACM


Taller 

Se debe realizar un Ensayo relacionado a Requerimientos.  Para ello deben tomar artículos de la Revista ACM.  El ensayo  máximo de 2 hojas de contenido + la hoja de referencias. Deben adjuntar los pantallazos de las revistas que consultan.  El ensayo debe enviarse antes del sábado 23 de marzo. Pueden hacer el ensayo grupos de 2 personas, pero cada integrante debe entrar y regIstrarse en ACM y hacer la consulta.

Respuesta/


Este artículo describe una metodología con la cual se pretende automatizar el análisis y diseño de sistemas. Aunque el artículo es más descriptivo que empírico, ofrece una interesante metodología con la cual se puede atacar el proceso de diseño y modelado con ánimos de mejorar la ejecución y la eficiencia del desarrollo de todos los procesos de diseño de sistemas. Los desarrolladores de sistemas de información desempeñan dos funciones en el proceso de gestión de un proyecto de desarrollo: el desarrollador es tanto analista/diseñador como facilitador. Los libros de texto tradicionales para los cursos de análisis y diseño de sistemas enfatizan el rol de analista/diseñador, pero dicen poco sobre el rol de facilitador. Hemos desarrollado materiales de curso y métodos de enseñanza para abordar las habilidades de facilitación: pensamiento de resultados, proceso de grupo y comunicaciones. También enfatizamos algunas habilidades de analista/diseñador que no se abordan en los textos tradicionales, como el pensamiento creativo, los sistemas socio-técnicos y los conceptos de herramientas CASE. Nuestros métodos de enseñanza incluyen el diario personal, que permite a los estudiantes adaptar los materiales de clase a sus propias necesidades, así como otros métodos para proporcionar aprendizaje experimental de los materiales del curso.

Hoy en día la tecnología orientada a objetos ya no se aplica solamente a los lenguajes de programación, además se viene aplicando en el análisis y diseño con mucho éxito, al igual que en las bases de datos. Es que para hacer una buena programación orientada a objetos hay que desarrollar todo el sistema aplicando esta tecnología, de ahí la importancia del análisis y el diseño orientado a objetos.
La programación orientada a objetos es una de las formas más populares de programar y viene teniendo gran acogida en el desarrollo de proyectos de software desde los últimos años. Esta acogida se debe a sus grandes capacidades y ventajas frente a las antiguas formas de programar.

Existe un acuerdo acerca de qué características contempla la "orientación a objetos". Las características siguientes son las más importantes:
Abstracción: . El proceso de abstracción permite seleccionar las características relevantes dentro de un conjunto e identificar comportamientos comunes para definir nuevos tipos de entidades en el mundo real. La abstracción es clave en el proceso de análisis y diseño orientado a objetos, ya que mediante ella podemos llegar a armar un conjunto de clases que permitan modelar la realidad o el problema que se quiere atacar.
Encapsulamiento: Significa reunir todos los elementos que pueden considerarse pertenecientes a una misma entidad, al mismo nivel de abstracción.
Modularidad: Se denomina "modularidad" a la propiedad que permite subdividir una aplicación en partes más pequeñas (llamadas módulos), cada una de las cuales debe ser tan independiente como sea posible de la aplicación en sí y de las restantes partes.

Principio de ocultación :Cada objeto está aislado del exterior, es un módulo natural, y cada tipo de objeto expone una "interfaz" a otros objetos que especifica cómo pueden interactuar con los objetos de la clase. El aislamiento protege a las propiedades de un objeto contra su modificación por quien no tenga derecho a acceder a ellas; solamente los propios métodos internos del objeto pueden acceder a su estado.
Polimorfismo: Comportamientos diferentes, asociados a objetos distintos, pueden compartir el mismo nombre; al llamarlos por ese nombre se utilizará el comportamiento correspondiente al objeto que se esté usando.
Herencia: Las clases no se encuentran aisladas, sino que se relacionan entre sí, formando una jerarquía de clasificación. Los objetos heredan las propiedades y el comportamiento de todas las clases a las que pertenecen. La herencia organiza y facilita el polimorfismo y el encapsulamiento, permitiendo a los objetos ser definidos y creados como tipos especializados de objetos preexistentes.

La programación orientada a objetos fue el estilo de programación dominante a principio y mediados de los años noventa, en gran parte debido a la influencia de lenguajes como C++. Su predominio fue consolidado gracias al auge de las interfaces gráficas de usuario, para las cuales la programación orientada a objetos está particularmente bien adaptada. En este caso, se habla también de programación dirigida por eventos.

En conclusión el proceso de la Ingeniería de Requerimientos sirve para recopilar la información necesaria para establecer la funcionalidad que se quiere alcanzar con el sistema. Para ello, se debe de contar con buenos métodos y técnicas para hacerlo, además de una comunicación fluida y constante con el cliente,ya que los requerimientos deben reflejar las necesidades reales que el cliente quiere satisfacer. Las revisiones deben involucrar al cliente y al  grupo de contratistas para validar los requerimientos del sistema.Como proceso, la administración de requerimientos es fundamental en todo proyecto de desarrollo de software, ya que se debe de contar con una especificación clara y completa desde las fases iniciales.

Además, hoy en día, es importante tomar en cuenta el uso de patrones en el desarrollo de software. Un patrón es un conjunto de información que aporta una buena solución ya probada a un problema que representa en un contexto determinado. Para elaborarlo se aíslan sus aspectos esenciales y se añaden cuantos comentarios y ejemplos que sean necesarios. ¿En qué ayuda esto en la IR? Esto ayuda a diseñar correctamente en menos tiempo, ayuda a construir problemas re-utilizables y extensibles, y facilitara documentación y la comunicación con otros miembros del equipo de desarrollo, ventajas importantes que se deben de tomar en cuenta por parte los desarrolladores de software, ya que si se logra tener un lenguaje en común dentro del grupo de trabajo, se reduce el impacto de los riesgos al utilizar soluciones ya probadas, y amplía el conocimiento de los participantes del desarrollo, permitiéndoles representa rmejores sistemas de una manera más estructurada


REFERENCIAS BIBLIOGRAFICAS

Cristia, Maximiliano. (2011). Introducción a la Ingeniería de Requerimientos. Universidad Nacional de Rosario.
Chaves, M. A. (2005). La ingeniería de requerimientos y su importancia en el desarrollo de proyectos de software. InterSedes, 6(10).
Rivas, C. I; Corona, Verónica P.; Gutiérrez, José F. y Hernández, Lizeth (2015). Metodologías actuales de desarrollo de software. Revista Tecnología e Innovación.







No hay comentarios:

Publicar un comentario