FI:PV258 Requirements Engineering - Course Information
PV258 Requirements Engineering in Agile Software Development
Faculty of InformaticsSpring 2017
- Extent and Intensity
- 2/0. 2 credit(s) (plus extra credits for completion). Type of Completion: zk (examination).
- Teacher(s)
- Bruno Rossi, PhD (lecturer), prof. RNDr. Tomáš Pitner, Ph.D. (deputy)
- Guaranteed by
- doc. RNDr. Eva Hladká, Ph.D.
Department of Computer Systems and Communications – Faculty of Informatics
Supplier department: Department of Computer Systems and Communications – Faculty of Informatics - Timetable
- Mon 10:00–11:50 A318
- Prerequisites
- No prerequisites are compulsory. The students are expected to have good understanding of software development models (as taught in PB007), and some basic knowledge about object-oriented development and programming (e.g. Java). Good level of spoken and written English is also appreciated.
- Course Enrolment Limitations
- The course is offered to students of any study field.
The capacity limit for the course is 40 student(s).
Current registration and enrolment status: enrolled: 0/40, only registered: 0/40, only registered with preference (fields directly associated with the programme): 0/40 - Course objectives
- At the end of the course students should:
have a clear idea of processes, tools and techniques used in requirements engineering;
understand concepts such as agile requirements elicitation, modelling, validation and verification.
be able to model requirements up to the design phase;
be able to conduct an agile development iteration;
making reasoned decisions about prioritization of requirements;
understand the differences between different requirements modelling approaches (agile and non-agile); - Syllabus
- Introduction, course modality and evaluation. Review of traditional development processes (waterfall, RUP, etc...);
From lean to agile. Overview of SCRUM, XP, and other agile approaches;
The Requirements Engineering (RE) process. RE differences for Agile and traditional development processes;
The traditional distinction in functional vs non-functional (quality) requirements and how these are managed within agile approaches;
The agile approach in modelling requirements: from user stories to acceptance testing;
User stories, CRC cards, acceptance tests. The product and sprint backlogs. How to automate acceptance testing. Code examples by using the Java programming language;
Managing requirements prioritization in traditional versus agile approaches. From the Analytic Hierarchy process to the planning game in agile;
Effort estimation: using planning poker for effort estimation and to determine project velocity;
Release planning in agile vs traditional development models;
Emergence of the software architecture from requirements: the agile view;
- Introduction, course modality and evaluation. Review of traditional development processes (waterfall, RUP, etc...);
- Literature
- LEFFINGWELL, Dean. Agile software requirements : lean requirements practices for teams, programs, and the enterprise. Upper Saddle River, NJ: Addison-Wesley, 2011, xxxv, 518. ISBN 9780321635846. info
- Teaching methods
- Frontal lectures and a small interesting group project developed during lectures to see the practical application of theory and techniques seen during the course;
- Assessment methods
- 100 minutes examination with questions about the material seen during the course.
- Language of instruction
- English
- Further comments (probably available only in Czech)
- Study Materials
The course is taught annually.
- Enrolment Statistics (Spring 2017, recent)
- Permalink: https://is.muni.cz/course/fi/spring2017/PV258