Dersin Adı Dersin Seviyesi Dersin Kodu Dersin Tipi Dersin Dönemi Yerel Kredi AKTS Kredisi Ders Bilgileri
SOFTWARE REQUIREMENTS ENGINEERING Birinci Düzey YZ 207 Zorunlu 3 5.00 5.00 Yazdır
   
Dersin Tanımı
Ön Koşul Dersleri -
Eğitimin Dili English
Koordinatör DR. ÖĞR. ÜYESİ BİLGE KAĞAN DEDETÜRK
Dersi Veren Öğretim Eleman(lar)ı DR. ÖĞR. ÜYESİ BİLGE KAĞAN DEDETÜRK
Yardımcı Öğretim Eleman(lar)ı -
Dersin Veriliş Şekli Formal education
Dersin Amacı This course teaches students how to gather, analyze, document, validate, and manage software requirements. Students will learn to identify stakeholders, understand business needs, model and specify requirements, and handle changes throughout a project. The course draws on both traditional and agile approaches. By the end, students should be able to produce clear requirements documents and work effectively between customers and development teams.
Dersin Tanımı SOFTWARE REQUIREMENTS ENGINEERING

Dersin İçeriği
1 Introduction to software requirements engineering. Definitions, levels, and types of requirements (business, user, functional, non-functional). Product vs. project requirements.
2 Requirements from the customer''s perspective. The expectation gap, customer–developer partnership, Requirements Bill of Rights and Responsibilities.
3 Good practices for requirements engineering. The business analyst role, essential analyst skills and knowledge.
4 Establishing business requirements. Vision and scope document, business objectives, success metrics, scope representation techniques (context diagram, feature tree, event list).
5 Finding the voice of the user. User classes, user personas, product champions, and connecting with user representatives.
6 Requirements elicitation techniques: interviews, workshops, focus groups, observations, questionnaires, document analysis, and system/user interface analysis.
7 Understanding user requirements. Use cases, user stories, and business rules. Classifying and documenting customer input.
8 Midterm exam.
9 Software requirements specification (SRS). Documenting functional requirements, writing quality requirements, SRS templates and conventions.
10 Requirements analysis and modeling. Data flow diagrams, entity-relationship diagrams, state-transition diagrams, dialog maps.
11 Prototyping, quality attributes (usability, performance, security, reliability), and specifying non-functional requirements.
12 Requirements validation and verification. Reviews, inspections, walkthroughs, acceptance criteria, and testing requirements.
13 Requirements management. Baselining, version control, requirements attributes, and managing scope creep.
14 Change management and traceability. Change control process, change control board, requirements traceability matrix, RE tools, and risk management.
15 Final exam.
16
17
18
19
20

Dersin Öğrenme Çıktıları
1 Ability to define and distinguish between business, user, and functional requirements.
2 Ability to identify stakeholders, user classes, and their roles in the requirements process.
3 Ability to apply elicitation techniques such as interviews, workshops, observations, and document analysis.
4 Ability to write use cases, user stories, and business rules to capture user requirements.
5 Ability to create a vision and scope document with business objectives, success metrics, and scope boundaries.
6 Ability to build analysis models including data flow diagrams, entity-relationship diagrams, and state-transition diagrams.
7 Ability to produce a well-structured software requirements specification (SRS) document.
8 Ability to specify and evaluate quality attributes such as usability, performance, and security.
9 Ability to validate and verify requirements through reviews, inspections, and acceptance criteria.
10 Ability to manage requirements changes using baselining, change control processes, and traceability matrices.

*Dersin Program Yeterliliklerine Katkı Seviyesi
1 Applies engineering knowledge related to mathematics, science, basic engineering, and computer-based calculations to solve engineering problems.
2 Gains the ability to develop engineering solutions using discipline-specific knowledge and methods.
3 Defines complex engineering problems and formulates them using fundamental science and engineering knowledge.
4 Defines and analyzes solutions to problems, taking into account the UN Sustainable Development Goals.
5 Designs creative solutions to complex engineering problems.
6 Gains the ability to design complex systems, processes, devices, or products by considering realistic constraints in the engineering problem-solving process.
7 For the analysis and solution of complex engineering problems, selects and effectively applies appropriate methods, techniques, resources, and modern engineering and computing tools, including estimation and modeling.
8 Aware of the limitations of the methods, techniques, and IT tools used, it produces and implements appropriate solutions.
9 Conducts literature research to examine complex engineering problems and collects data within the scope of these studies.
10 Using research methods, the student designs and conducts experimental or applied studies, analyze and evaluate the results.
11 Within the scope of the UN Sustainable Development Goals, the student is knowledgeable about the impacts of engineering solutions on society, health and safety, the economy, sustainability, and the environment, and analyze these impacts.
12 Gains awareness of the legal consequences of engineering solutions.
13 The student acts in accordance with professional principles and legal regulations in engineering practice and acquires knowledge about ethical responsibilities.
14 Gains awareness about non-discrimination, impartiality, and inclusiveness of diversity.
15 Gains the ability to work effectively as an individual, team member, or team leader in intra-disciplinary or multi-disciplinary team projects.
16 Gains the ability to communicate effectively in technical matters, both verbally and in writing by taking into account the differences in the target audience''s education, language, and profession.
17 Gains the ability to apply project management principles, perform time and resource planning, and conduct economic feasibility analysis.
18 Gains awareness about entrepreneurship and innovation.
19 Gains the ability to adapt to new and emerging technologies and to evaluate technological changes with a questioning and critical perspective.
20 Gains the ability to independently and continuously learn new knowledge and skills.
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Yıldızların sayısı 1’den (en az) 5’e (en fazla) kadar katkı seviyesini ifade eder

Planlanan Öğretim Faaliyetleri, Öğretme Metodları ve AKTS İş Yükü
  Sayısı Süresi (saat) Sayı*Süre (saat)
Yüz yüze eğitim 14 3 42
Sınıf dışı ders çalışma süresi (ön çalışma, pekiştirme) 14 1 14
Ödevler 0 0 0
Sunum / Seminer hazırlama 0 0 0
Kısa sınavlar 3 1 3
Ara sınavlara hazırlık 1 12 12
Ara sınavlar 1 1 1
Proje (Yarıyıl ödevi) 0 0 0
Laboratuvar 0 0 0
Arazi çalışması 0 0 0
Yarıyıl sonu sınavına hazırlık 0 0 0
Yarıyıl sonu sınavı 1 15 15
Araştırma 3 4 12
Toplam iş yükü     99
AKTS     4.00

Değerlendirme yöntemleri ve kriterler
Yarıyıl içi değerlendirme Sayısı Katkı Yüzdesi
Ara sınav 1 25
Kısa sınav 3 5
Ödev 0 0
Yarıyıl içi toplam   30
Yarıyıl içi değerlendirmelerin başarıya katkı oranı   0
Yarıyıl sonu sınavının başarıya katkı oranı   60
Genel toplam   60

Önerilen Veya Zorunlu Okuma Materyalleri
Ders kitabı Karl Wiegers and Joy Beatty, Software Requirements, 3rd Edition, Microsoft Press
Yardımcı Kaynaklar

Ders İle İlgili Dosyalar