PV258 Requirements Engineering in Agile Software Development

Faculty of Informatics
Spring 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), doc. 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;
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.
The course is also listed under the following terms Spring 2015, Spring 2016, Spring 2018, Spring 2019, Spring 2020, Spring 2021.
  • Enrolment Statistics (Spring 2017, recent)
  • Permalink: https://is.muni.cz/course/fi/spring2017/PV258