Issuu on Google+

Universidad de Murcia

Curso Académico 2009-2010

Facultad de Informática Titulación de Ingeniería Informática 1. Identificación 1.1. De la asignatura Nombre de la signatura Código Curso / Grupos Tipo Créditos LRU Estimación del volumen de trabajo del alumno (ECTS)* Duración

Ingeniería de Requisitos 09BQ

Cuarto / 1 Troncal Teóricos: 3

Prácticos: 3

cuatrimestral (1º)

1.2. Del profesorado Nombre y apellidos (Coordinador) Área/ Departamento Despacho y Facultad dónde se ubica. Teléfono Correo electrónico y página web Horario de atención al alumnado

Nombre y apellidos Área/ Departamento Despacho y Facultad dónde se ubica. Teléfono Correo electrónico y página web Horario de atención al alumnado

José Ambrosio Toval Álvarez Lenguajes y Sistemas Informáticos/Departamento de Informática y Sistemas (DIS) 2.10- Facultad de Informática

4603 atoval@um.es Lunes 9:30-12:30; 17:00-18:30. Martes 16:4518:15 Fernando Molina Molina Lenguajes y Sistemas Informáticos-Departamento de Informática y Sistemas (DIS) 2.32- Facultad de Informática 8556

fmolina@um.es Martes 16:00 - 17:00; Viernes 10:00- 13:00

2. Presentación Esta asignatura persigue: −

Transmitir los conceptos básicos, estado actual y el futuro de la Ingeniería de Requisitos y del prototipado.

Mostrar ejemplos de casos reales que ilustren la importancia de aplicar adecuadamente Ingeniería de requisitos en el proceso de desarrollo de software

Comparar ventajas e inconvenientes de utilizar técnicas de especificación formal frente a técnicas clásicas en la especificación y análisis de requisitos. Se pretende que los alumnos analicen, y valoren, el uso de métodos formales en general como sólida base matemática sobre la que construir procedimientos automatizables en la producción de software. Apreciarán las ventajas e inconvenientes del uso de formalismos. Se profundizará en estos aspectos en la asignatura relacionada de Técnicas Formales en Ingeniería del Software.

Explicar los objetivos de las herramientas CARE (Computer-Aided Requirements Engineering) y sus funcionalidades esperadas. Se revisarán algunas de las herramientas actualmente existentes en el mercado.


Se enseñará cómo producir una documentación correcta y completa de especificación de requisitos de software de acuerdo con los estándares internacionales, guías nacionales y prácticas más comunes.

Comprender los conceptos del paradigma de orientación a objetos, desde una perspectiva de abstracción y modelado de requisitos. Los alumnos aprenderán la Notación UML y su uso como herramienta de ayuda en Ingeniería de Requisitos.

Distinguirán entre las dimensiones estructural, dinámica y funcional del modelado de sistemas de información y las ventajas de integrar esas dimensiones.

Conocerán los estándares internacionales en Ingeniería del Software y, especialmente, de Ingeniería de Requisitos, así como el estándar de facto para mejora de procesos, CMMi.

− Se mostrarán los principales enfoques, estrategias y modelos de proceso en la aplicación de la Ingeniería de Requisitos.

La realización de trabajos prácticos ayudará a los alumnos a alcanzar una cierta capacitación para valorar, planificar y controlar las primeras etapas en el proceso de producción de software, como miembros de un grupo de desarrollo.

3. Conocimientos previos

Prerrequisitos recomendados: Fundamentos de Ingeniería del Software (primer ciclo II o ITIG), o Construcción del Software (optativa en ITIS), o sus equivalentes del plan antiguo. 4. Contenidos 4.1 Sobre los conocimientos

Presentación de la asignatura – Se dedicará el primer día a presentar la asignatura, organización de prácticas, métodos de evaluación, etc.

Parte I: Conceptos Básicos Tema 1.

Introducción a la Ingeniería de Requisitos

1.1 Ingeniería del software: una revisión 1.2 Ingeniería de Requisitos e Ingeniería del Software 1.3 Importancia de la Ingeniería de Requisitos en la práctica 1.4 Factores de calidad del software 1.5 Estrategias más importantes de desarrollo de software 1.6 Familias de métodos 1.7 Resumen de fases genéricas en Ingeniería del Software e Ingeniería de Requisitos

Tema 2.

Actividades y conceptos básicos en Ingeniería de Requisitos

2.1 Definiciones, objetivos y actores relacionados con los requisitos 2.2 Tipos de requisitos que debe incluir la especificación 2.3 El documento de especificación de requisitos 2.4 Ámbito de la Ingeniería de Requisitos 2.5 Axiomas de la I.R. 2.6 Algunas realidades sobre I.R.


Parte II: Técnicas Tema 3.

Especificaciones textuales de los requisitos

3.1 Beneficios de un buen documento SRS 3.2 Un modelo de especificación de requisitos del software: el estándar IEEE 830-1998 3.3 ¿Qué se incluye en el documento de especificación de requisitos del software (SRS)? 3.4 Propiedades de un documento de especificación de requisitos 3.5 Gestión del Cambio 3.6 Estructura del documento SRS del IEEE 830-1998 3.7 Alternativas en la especificación de requisitos específicos, según IEEE 830-1998 3.8 Metainformación asociada a un requisito. Plantillas de requisitos 3.9 Algunos problemas prácticos con el documento de requisitos

Tema 4.

Técnicas y Herramientas en Ingeniería de Requisitos

4.1 Técnicas de obtención de los requisitos 4.2 La técnica de casos de uso y el documento de especificación 4.3 Otras técnicas relacionadas con los casos de uso: historias de usuario y escenarios 4.4 Técnicas formales 4.5 Técnicas formales frente a intuitivas 4.6 Otras técnicas intuitivas 4.7 CARE: revisión de herramientas de ayuda en I.R.

Tema 5.

Prototipado

5.1 Prototipado: conceptos, métodos y herramientas 5.2 Validación y Verificación (V&V) 5.3 Estrategias, herramientas y clases de prototipos 5.4 Validación y Verificación mediante prototipos 5.5 Prototipado: ventajas e inconvenientes

Parte III: Modelado de los requisitos Tema 6. 6.1 6.2 6.3 6.4 6.5

Modelado de requisitos con UML

Introducción a UML Diagrama de Casos de Uso Diagrama de Clases Diagrama de actividades Diagramas de interacción: 6.5.1 Diagrama de secuencias 6.5.2 Diagrama de colaboraciones 6.6 Statecharts (Diagramas de estado)


Tema 7. 7.1 7.2 7.3 7.4 7.5 7.6

Lenguaje de restricciones OCL (“Object Constraint Language”)

Introducción a OCL Relación con el metamodelo de UML Tipos básicos y predefinidos Objetos y Propiedades Expresiones y Colecciones Herramientas para OCL

Parte IV: Métodos y Mejora del Proceso Tema 8.

Métodos de Ingeniería de Requisitos

8.1 El enfoque orientado a objetivos y KAOS 8.2 Puntos de vista (Viewpoints) 8.3 Reutilización de requisitos 8.4 MAGERIT y requisitos de seguridad 8.5 Otras estrategias y tendencias futuras

Tema 9.

Ingeniería de Requisitos en CMMi

9.1 Los requisitos y los modelos de mejora del proceso 9.2 Estructura del modelo CMMi -DEV 9.3 Los requisitos y CMMi -DEV 9.4 CMMI. Situación actual en España 9.5 Líneas y Retos IR-CMMi 5.2 Sobre las competencias (*)

5.1 Objetivos formativos de cada tema(*)

6. Metodología docente

Las clases teóricas se desarrollarán en la forma convencional, con utilización de transparencias, software para presentaciones y pizarra. Las prácticas se realizarán en los laboratorios en grupos entre 2 y 4 personas, dependiendo del número total de alumnos matriculados y de los puestos de trabajo disponibles. Las horas y laboratorios concretos reservados a los alumnos de esta asignatura las gestiona el centro de cálculo de la Facultad y pueden encontrarse en los tablones del centro.


7. Temporalización o cronograma

Tema

1 2 3 4 5 6 7 8 9 Examen

Tiempo aproximado en horas (para fechas, calcular desde el inicio, teniendo en cuenta que cada semana se imparten 2 horas) 2 2 5 4 2 6 4 2 3 2

7.1 Estimación del volumen del trabajo del estudiante (*)

8. Evaluación 8.1 Evaluación del aprendizaje

Es necesario aprobar cada parte por separado (teoría y prácticas). Una vez aprobadas ambas partes, la nota tendrá las cuotas de participación siguientes: Parte de teoría: 60% del total de la asignatura, se aprobará superando el examen correspondiente al final de la impartición de la asignatura. Parte de prácticas: 40% del total de la asignatura, se aprobará mediante las entregas correspondientes, según los criterios que siguen a continuación. Se podrá obtener una valoración adicional –para subir nota- por actividades extraordinarias propuestas por el profesor o bien por los alumnos, previa aceptación de éste, resueltas y entregadas a lo largo del curso.

CRITERIOS DE VALORACIÓN DE PRÁCTICAS La calificación de prácticas forma parte de la nota total de la asignatura, en los porcentajes indicados anteriormente. Los siguientes criterios generales de evaluación de prácticas serán aplicables solamente en el caso de tener aprobada la parte teórica de la asignatura. Se considerará que la parte práctica está aprobada cuando: 1.- Se presente la documentación requerida (documentación general de la práctica que incluirá, además, PRD, SRS y TST, salvo que expresamente se pida sólo uno o dos de estos) en el plazo indicado, con un contenido completo y presentación correcta, de acuerdo con lo solicitado en el


enunciado complementario a la definición de prácticas. Este enunciado complementario será depositado por el profesor en la fotocopiadora del centro. Serán criterios especialmente tenidos en cuenta la presentación correcta del documento de prácticas: datos de identificación, curso, índice, bibliografía, paginación, etc...así como el resumen obligatorio que se exige en el enunciado de la práctica. 2.- La solución aportada sea correcta. 3.- En el proceso de evaluación individual (oral, escrito o sobre el ordenador) el alumno demuestre conocimientos sobre la solución aportada por el grupo a la práctica realizada. Teniendo en cuenta que la nota final de la práctica podrá ser la misma para todo el grupo, éste cuidará que todos sus participantes conozcan bien su contenido (IMPORTANTE: VER ANEXO). En general se valorará la claridad, originalidad, ausencia de errores y eficiencia de la solución aportada, así como la capacidad de síntesis en la documentación, que deberá adecuarse exactamente al modelo exigido en el enunciado de la práctica. La no entrega de alguna de las prácticas requeridas en el plazo indicado significa que no se podrá evaluar (y por tanto no aprobar) la parte práctica en esa convocatoria. Las prácticas se evaluarán de 0 a 10, según el tipo de práctica, y tendrán un peso del 40% sobre el total de la puntuación de la asignatura. En los enunciados que se entregarán para las prácticas P2 y P3 se ofrece más información sobre criterios de evaluación.

ANEXO: EVALUACIÓN DE PRÁCTICAS Y LLAMADAS A ENTREVISTAS TODOS LOS ALUMNOS QUE ENTREGUEN SUS PRÁCTICAS (JUNIO, FEBRERO, SEPTIEMBRE) DEBERÁN PASAR UNA ENTREVISTA, EN LAS HORAS, LABORATORIOS Y DÍA INDICADOS EN LLAMAMIENTO PREVIO, EN LA FACULTAD. NOTAS IMPORTANTES: 1. Deberá llevar la práctica repasada para la entrevista. 2. Las prácticas de REQUISITE serán evaluadas, sobre esta herramienta CARE, en las máquinas del laboratorio que se indique de la Facultad. El alumno previamente se habrá asegurado de su correcto arranque, acceso y completo funcionamiento, así como de la disponibilidad del equipo sobre el que se ejecute. 3. Si el grupo decide utilizar su propio equipamiento para la evaluación del punto anterior se avisa de que al menos deberán utilizar dos equipos similares que permitan la evaluación simultánea a dos miembros del grupo, si es el caso. 4. La entrevista tiene un tiempo limitado de ½ hora. Las cuestiones planteadas serán contestadas en ese tiempo, motivo por el cual se recomienda tengan en cuenta los puntos anteriores. 5. Para la entrevista, el alumno dispondrá de su documentación de prácticas. 6. Finalmente se recuerda que la entrevista es individual y que el resultado de ésta incidirá en la nota final de la práctica. Esta nota será la misma para todos los componentes del grupo. Por ello si algún grupo (o componente del mismo) desea reconsiderar su participación en la práctica deberá comunicarlo al profesor antes de las entrevistas.


8.2 Evaluación de la docencia (*) Los propios de la Universidad de Murcia 9. Bibliografía 9.1 Bibliografía básica

• El profesor facilitará los apuntes de los temas en formato pdf, que serán depositados en el sistema SUMA de la Universidad de Murcia. • Ingeniería del Software: Un enfoque práctico, Roger S. Pressman, McGraw Hill, sexta edición. (especialmente indicado para alumnos que no han cursado antes una asignatura de Ingeniería del Software, o para repaso de esta disciplina). • Just Enough Requirements Management. Alan M. Davis, Ed. Dorset House, 2005 9.2 Bibliografía complementaria

• Requirements Engineering. Processes and Techniques, Kotonya, G and Sommerville, I, John Wiley & Sons. 1998 • Mastering the requirement process. Robertson, S and Robertson, J, Addison-Wesley. 1999 • Software Requirements, Karl E. Wiegers, Microsoft Press, 1999 • Software Engineering (6th edition). Sommerville, I, Pearson Education Limited. 2001 • “Requirements Engineering: A Framework for understanding”, R.J. Wieringa, John Wiley&Sons LTD., 1996 • Software Requirements, A. Davis, Prentice Hall, 1.993 • REQUIREMENTS ENGINEERING: a good practice guide. Sommerville, I.Sawyer, Wiley, 30 APR 1997 • The Unified Modeling Language, G. Booch, J. Rumbaugh, I. Jacobson, Addison-Wesley 1999 • Formal Methods can deliver Provable Software, Nina Hall. Scientific Computing World. March 1995. b.- Recursos de Software y Hardware Software: b.1) La herramienta CARE RequisitePro, de IBM Rational Software b.2) Herramienta CASE Rose, de IBM Rational Software b.3) Cualquier software disponible en los laboratorios de la Facultad de Informática, para la realización de los prototipos, a elección del alumno Hardware: 1 puesto, por cada grupo de trabajo, con acceso a impresora. c.- Otros recursos PC y cañón de vídeo en el aula, Web, según referencias al final de cada tema (temas SUMA)


09BQ-0910