Subject

Analysis of software requirements

1. Course Title Analysis of software requirements
Software requirements analysis
2. Code F23L2S002
3. Study Programme Software Engineering and Information Systems
4. Organizer of the study programme (unit, institute, department or division) Faculty of Computer Science and Engineering
5. Degree level (first, second, third cycle) First Cycle
6. Academic year / semester 4 / Summer
7. Number of ECTS credits 6
8. Teacher Eftim Zdravevski, Georgina Mircheva, Lupcho Antovski
9. Prerequisites for enrolling in the course Object-oriented analysis and design or Object-oriented programming
10. Objectives of the course programme (competences) Upon completion of the course, the student is expected to understand and have in-depth knowledge of applying techniques for extracting knowledge from the client, to understand techniques for documenting software and business requirements, and to understand and have in-depth knowledge of applying change management techniques for software and business requirements.
11. Course content (1) Defining requirements (e.g., product, project, constraints, system boundaries, external and internal)
(1) Requirements Engineering Process
(1) Layers/levels of requirements (e.g., needs, goals, user requirements, system requirements, and software requirements)
(1) Requirements characteristics (for example, testability, unambiguous, consistent, accurate, traceability, and priority)
(1) Analysis of the quality (nonfunctional) requirements (for example, safety, security, usability, and performance)
(1) Software Requirements in the Context of Systems Engineering
(1) Requirements evaluation, tracking, prioritization, trade-off analysis, risk analysis, and impact analysis
(1) Requirements management (for example, consistency management, release planning, and reuse), interaction between requirements and architecture
(1) Requirements elicitation, sources for extraction (e.g., stakeholders, domain experts, and operational and organizational environments), elicitation techniques (for example, interviews, questionnaires/surveys, prototypes, use cases, observation, and participation techniques)
(1) Requirements specification and documentation, basis for requirements documentation (e.g., types, purpose, structure, quality, attributes, and standards)
(1) Techniques for specifying software requirements (e.g., requirements documentation for plans, decision tables, user stories, and behavioral specifications)
(1) Requirements validation, reviews and inspections, prototyping to confirm the requirements
(1) Design for acceptance testing, verification of product quality attributes, analysis of requirements interaction (e.g., functional interaction), analysis of formal requirements
12. Learning methods Lectures supported by slide presentations, interactive lectures, practical classes (using equipment and software packages), teamwork, case studies, guest lecturers, independent preparation and defence of a project assignment and seminar paper, and learning in an electronic environment (forums and consultations).
13. Total available time 6 ECTS x 30 hours = 180 hours
14. Distribution of available time 30 + 45 + 15 + 15 + 75 = 180 hours
15. Forms of teaching activities
15.1. Lectures - theoretical instruction 30 hours
15.2. Exercises (laboratory, auditory), seminars, teamwork 45 hours
16. Other forms of activities
16.1. Project assignments 15 hours
16.2. Independent assignments 15 hours
16.3. Home study 75 hours
17. Assessment method
17.1. Tests 0 points
17.2. Seminar paper / project (presentation: written and oral) 15 points
17.3. Activities and learning 30 points
17.4. Final exam 30 points
18. Grading criteria (points / grade)
up to 50 points5 (five) (F)
from 51 to 60 points6 (six) (E)
from 61 to 70 points7 (seven) (D)
from 71 to 80 points8 (eight) (C)
from 81 to 90 points9 (nine) (B)
from 91 to 100 points10 (ten) (A)
19. Requirement for obtaining a signature and taking the final exam Regular class attendance (up to 3 absences), timely submission of all homework assignments, seminar papers, forum discussions, and the project.
20. Language of instruction Macedonian and English
21. Method for monitoring the quality of teaching internal evaluation and survey mechanism
22. Literature
22.1. Required literature
1. Karl E. Wiegers, Joy Beatty | Software Requirements | Microsoft Press | 2013
2. Ian K. Bray | An Introduction to Requirements Engineering | Addison Wesley | 2002
3. Ian F. Alexander, Richard Stevens | Writing better requirements | Addison-Wesley | 2002
22.2. Additional literature
No. Author Title Publisher Year