Mühendislik ve Mimarlık Fakültesi
Bölüm 2023 yılında kurulmuştur ve İngilizce Lisans Diploması (BSc) derecesi sunmaktadır. Öğrencilere yazılım mühendisliğinin hem teorileri hem de uygulamaları konusunda güçlü bir altyapı kazandırmayı ve alanlarına yön verecek mühendisler yetiştirmeyi amaçlamaktadır.
Program, ACM/IEEE Yazılım Mühendisliği Eğitim Bilgisinde belgelenen yazılım geliştirme sektörünün kriterlerini karşılamak ve Mühendislik ve Teknoloji Akreditasyon Kurulunun (ABET) Mühendislik Akreditasyon Komisyonu tarafından gerekli görülen akreditasyon kriterlerini karşılamak üzere geliştirilmiştir.
Yazılım Mühendisliği programı, gerçek dünyadaki kısıtlamalar altında pratik, uygun maliyetli yazılım çözümlerinin geliştirilmesini teşvik eder. Yaklaşımımız, yazılım mühendisliği ilkelerine ve gelişen en iyi uygulamalara ilişkin sağlam bir anlayışa dayanmaktadır.
Öğrenciler farklı işletim sistemlerini, çeşitli programlama dillerini, yazılım tasarımı ve geliştirme ilkelerini ve proje yönetimini uygulamaya koymayı öğrenirler. Son sınıf öğrencileri tercihlerine göre çeşitli alanlarda uzmanlaşırlar. Bölümde teorik ve teknolojik gelişmelere dayalı olarak güncel konu ve dersler verilmektedir. Mezuniyete hak kazanabilmek için 40 iş günü yaz stajı yapılması gerekmektedir. Öğrencilerin her dersten en az geçme notuna ve en az 2.00/4.00 genel not ortalamasına (kümülatif genel not ortalaması) sahip olmaları gerekir. Mezunlarımıza Yazılım Mühendisi (Lisans Derecesi/Bologna Sisteminde birinci aşama) unvanı verilmektedir.
Program dört yıllık bir programdır, yılda iki yarıyıldır ve çalışma şekli tam zamanlıdır. Yazılım Mühendisliği müfredatı toplam 134 kredi ve 240 AKTS’den oluşmaktadır.
Yrd. Doç. Dr. Selin Ü. Koçyiğit
Bölüm Başkanı
selin.kocyigit@wpu.edu.tr
Misyon
Misyonumuz, başarılı kariyerler ve lisansüstü eğitim için başarılı ve iyi donanımlı yazılım mühendislerini, kapsamlı bir yazılım mühendisliği anlayışı ve bu bilgiyi gerçek dünyadaki sorunları çözmek için uygulayacak deneyimsel öğrenme fırsatları ile mezun etmektir.
Vizyon
Vizyonumuz, geleceğin teknolojilerine katkıda bulunmak amacıyla araştırma ve eğitim ortamı sağlayan, seçkin bilim insanlarına ev sahipliği yapan öncü bir bölüm olmaktır.
Yazılım Mühendisliği Programı Eğitim Amaçları:
Yazılım mühendisliği programımız, yazılım mühendislerini hızla gelişen bir bilgi işlem alanında başarı için eğitmek üzere proje dostu öğrenme deneyimleri sağlar. Programımız öğrencileri aşağıdaki konularda hazırlayacaktır:
- Yazılım mühendisliğinin sağlam temel bilgisine sahip, alanında başarılı profesyoneller olun;
- Çok disiplinli ekiplerin üyeleri ve liderleri olarak görev yaparken güçlü iletişim ve kişilerarası becerilerin yanı sıra mesleki ve etik ilkelerden yararlanın ve sergileyin;
- Uygun teoriyi, ilkeleri ve süreçleri kullanarak hızla değişen ortamlara uyum sağlamak için temellerini yazılım mühendisliğine uygulayın.
Yazılım Mühendisliği Programı Sonuçları:
ABET, sektör ve öğrencilerin beklentilerine dayanarak, program mezunlarının aşağıdakileri göstermesi beklenmektedir:
- bilim, mühendislik ve matematik ilkelerini uygulayarak karmaşık mühendislik problemlerini tanımlama, formüle etme ve çözme becerisi;
- halk sağlığı, güvenliği ve refahının yanı sıra yerel, küresel, kültürel, sosyal, çevresel ve ekonomik faktörleri de dikkate alarak belirlenen ihtiyaçları karşılayan çözümler üretmek için mühendislik tasarımını uygulama becerisi;
- iletişim, planlama, analiz, tasarım, inşaat ve dağıtım konularında yeterlilik göstererek yazılım mühendisliği yaşam döngüsünü uygulama becerisi;
- çeşitli hedef kitlelerle etkili bir şekilde iletişim kurma yeteneği;
- mühendislik durumlarında etik ve profesyonel sorumlulukları tanıma ve mühendislik çözümlerinin küresel, ekonomik, çevresel ve toplumsal bağlamlardaki etkisini dikkate alması gereken bilinçli kararlar verme becerisi;
- üyelerinin birlikte liderlik sağladığı, işbirlikçi ve kapsayıcı bir ortam yarattığı, hedefler belirlediği, görevleri planladığı ve hedefleri karşıladığı bir ekipte etkili bir şekilde çalışabilme becerisi;
- kaliteli yazılım geliştirmek ve sunmak için bireysel olarak ve çok disiplinli bir ekibin parçası olarak çalışabilme becerisi;
- uygun deneyler geliştirme ve yürütme, verileri analiz etme ve yorumlama ve sonuç çıkarmak için mühendislik yargısını kullanma becerisi;
- uygun öğrenme stratejilerini kullanarak yeni bilgileri gerektiği gibi edinme ve uygulama becerisi;
YEAR 1 | |||||||||
FALL | |||||||||
No | Course Code | Course Name | Course Category | Credit | Pre-requisite | ||||
T | P | C[1] | ECTS |
| |||||
1 | PHYS101 | General Physics I | FC | 3 | 2 | 4 | 6 |
| |
2 | MATH105 | Calculus I | FC | 4 | 0 | 4 | 6 |
| |
3 | MATH111 | Linear Algebra | FC | 3 | 0 | 3 | 6 |
| |
4 | WENG101 | Academic English I | UC | 3 | 0 | 3 | 6 |
| |
5 | WTUR101 | Turkish I | UC | 2 | 0 | 2 | 2 |
| |
6 | WATA101 | Principles of Atatürk I | UC | 2 | 0 | 2 | 2 |
| |
7 | AIAI101 | Introduction to Artificial Intelligence | UC | 0 | 2 | 1 | 2 |
| |
|
| ||||||||
Total Credits | 17 | 4 | 19 | 30 |
| ||||
SPRING | |||||||||
8 | PHYS102 | General Physics II | FC | 3 | 2 | 4 | 6 | ||
9 | MATH106 | Calculus II | FC | 4 | 0 | 4 | 6 | ||
10 | SWEN102 | Introduction to Programming | DC | 3 | 2 | 4 | 6 | ||
11 | WENG102 | Academic English II | UC | 3 | 0 | 3 | 6 | ||
12 | WTUR102 | Turkish II | UC | 2 | 0 | 2 | 2 | ||
13 | WATA102 | Principles of Atatürk II | UC | 2 | 0 | 2 | 2 | ||
14 | ACYP102 | Cyprus History and Culture | UC | 1 | 0 | 1 | 2 | ||
Total Credits | 18 | 4 | 20 | 30 |
| ||||
| |||||||||
YEAR 2 | |||||||||
FALL | |||||||||
15 | SWEN201 | Discrete Structures | DC | 3 | 0 | 3 | 6 |
| |
16 | MATH201 | Probability and Statistics | FC | 3 | 0 | 3 | 6 |
| |
17 | SWEN 205 | Introduction to Engineering Management | FC | 3 | 0 | 3 | 6 |
| |
18 | SWEN203 | Object-Oriented Programming | DC | 3 | 2 | 4 | 6 |
| |
19 | WETH201 | Principles of Ethics | UC | 3 | 0 | 3 | 6 |
| |
Total Credits | 15 | 2 | 16 | 30 |
| ||||
SPRING | |||||||||
20 | SWEN202 | Data Structures and Algorithms | DC | 3 | 2 | 4 | 6 |
| |
21 | SWEN204 | Introduction to Software Engineering | DC | 3 | 0 | 4 | 6 | ||
22 | SWEN206 | Introduction to Computer Organization | DC | 4 | 2 | 4 | 6 |
| |
23 | XXXXXX | Faculty Elective | FE | 3 | 0 | 3 | 6 |
| |
24 | WXXXXX | Free Elective | FRE | 3 | 0 | 3 | 6 |
| |
Total Credits | 16 | 4 | 18 | 30 | |||||
| |||||||||
YEAR 3 | |||||||||
FALL | |||||||||
25 | SWEN301 | Software Requirements Engineering | DC | 3 | 0 | 3 | 6 |
| |
26 | RMET301 | Research Methods and Ethics | FC | 3 | 0 | 3 | 6 |
| |
27 | SWEN303 | Database Management Systems | DC | 3 | 0 | 3 | 6 |
| |
28 | SWEN305 | Software Project Management | DC | 3 | 0 | 3 | 6 |
| |
29 | WXXXXX | University Elective | UE | 3 | 0 | 3 | 6 |
| |
Total Credits | 15 | 0 | 15 | 30 |
| ||||
SPRING | |||||||||
30 | SWEN302 | Software Design | DC | 4 | 0 | 4 | 6 |
| |
31 | SWEN304 | Operating Systems | DC | 3 | 0 | 3 | 6 |
| |
32 | SWEN306 | Web Design and Application Development | DC | 3 | 0 | 3 | 6 |
| |
33 | XXXXXX | Free Elective | FRE | 3 | 0 | 3 | 6 |
| |
34 | WXXXXX | University Elective | UE | 3 | 0 | 3 | 6 |
| |
Total Credits | 16 | 0 | 16 | 30 |
| ||||
| |||||||||
YEAR 4 | |||||||||
FALL | |||||||||
35 | MISY401 | Management Information Systems | FC | 3 | 0 | 3 | 6 |
| |
36 | SWEN401 | Data Communication and Computer Networking | DC | 3 | 0 | 3 | 6 |
| |
37 | SWEN403 | Software Systems Security | DC | 3 | 0 | 3 | 6 |
| |
38 | SWENXXX | Departmental Elective | DE | 3 | 0 | 3 | 6 |
| |
39 | SWEN481 | Senior Project I | DC | 2 | 0 | 2 | 6 |
| |
Total Credits | 14 | 0 | 14 | 30 |
| ||||
SPRING | |||||||||
40 | SWEN402 | Software Process and Management | DC | 3 | 0 | 3 | 6 |
| |
41 | SWEN482 | Senior Project II | DC | 3 | 0 | 3 | 6 |
| |
42 | SWENXXX | Departmental Elective | DE | 3 | 0 | 3 | 6 |
| |
43 | SWENXXX | Departmental Elective | DE | 3 | 0 | 3 | 6 |
| |
44 | SWENXXX | Departmental Elective | DE | 3 | 0 | 3 | 6 |
| |
Total Credits | 15 | 0 | 15 | 30 |
| ||||
Elective Courses
No | Course Code | Course Name | Credit | Pre-requisite | |||
T | P | C | ECTS |
| |||
1. | SWEN 411 | Advanced Object-Oriented Programming I | 3 | 0 | 3 | 6 | |
2. | SWEN 412 | Advanced Object-Oriented Programming II | 3 | 0 | 3 | 6 | |
3. | SWEN 208 | Machine Learning | 3 | 0 | 3 | 6 | |
4. | SWEN 209 | Cloud Computing | 3 | 0 | 3 | 6 | |
5. | SWEN 210 | Internet Programming | 3 | 0 | 3 | 6 | |
6. | SWEN 211 | Embedded Systems | 3 | 0 | 3 | 6 | |
7. | SWEN 212 | Wireless Communication | 3 | 0 | 3 | 6 | |
8. | SWEN 213 | Image Processing | 3 | 0 | 3 | 6 | |
9. | SWEN 307 | Introduction to Artificial Intelligence | 3 | 0 | 3 | 6 | |
10. | SWEN 308 | Artificial Neural Networks | 3 | 0 | 3 | 6 | |
11. | SWEN 309 | Advanced Database Management Systems | 3 | 0 | 3 | 6 | |
12. | SWEN 310 | Computer Graphics | 3 | 0 | 3 | 6 | |
13. | SWEN 311 | Application Development on Android Devices | 3 | 0 | 3 | 6 | |
14. | SWEN 312 | IOS Programming with Swift | 3 | 0 | 3 | 6 | |
15. | SWEN 313 | Internet of Things | 3 | 0 | 3 | 6 | |
16. | SWEN 404 | Game Development | 3 | 0 | 3 | 6 | |
17. | SWEN 405 | e-Government | 3 | 0 | 3 | 6 | |
18. | SWEN 406 | e-Commerce | 3 | 0 | 3 | 6 | |
19. | SWEN 407 | System Simulation | 3 | 0 | 3 | 6 | |
20. | SWEN 408 | System Programming | 3 | 0 | 3 | 6 | |
21. | SWEN 409 | Mobile Programming | 3 | 0 | 3 | 6 | |
22. | SWEN 410 | Human-Computer Interaction | 3 | 0 | 3 | 6 | |
COURSE BREAKDOWN
| Total | ||||||||||
Number | Credit | ECTS | |||||||||
All Courses | 44 | 133 | 240 | ||||||||
University Compolsory Courses | 9 | 19 | 30 | ||||||||
University Elective Courses | 2 | 6 | 12 | ||||||||
Free Elective Courses | 2 | 6 | 12 | ||||||||
Faculty Compolsory Courses | 9 | 31 | 54 | ||||||||
Faculty Elective Courses | 1 | 3 | 6 | ||||||||
Departmental Compolsory Courses | 17 | 56 | 102 | ||||||||
Departmental Elective Courses | 4 | 12 | 24 | ||||||||
|
| ||||||||||
Semester | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | |||
Number of courses | 7 | 7 | 5 | 5 | 5 | 5 | 5 | 5 | |||
Total credits | 19 | 20 | 16 | 18 | 15 | 16 | 14 | 15 | |||
Total ECTS | 30 | 30 | 30 | 30 | 30 | 30 | 30 | 30 | |||
ABBREVIATIONS
- T: Theoretical
- P: Practical
- C: Credits
- ECTS: European Credit Transfer System
- UC: University Compulsory (courses which are compulsory for all students)
- UE: University Elective (elective course opened by the university)
- FRE: Courses selected from different departments based on students’ interests.
- FC: Faculty Compulsory (compulsory courses opened by another department within the faculty)
- FE: Faculty Elective (elective course opened by another department within the faculty)
- DC: Departmental Compulsory (compulsory course opened by the department)
- DE: Departmental Elective (elective course opened by the department)
COURSE DESCRIPTIONS
Compulsory Courses
PHY101 General Physics I
This course aims to introduce students to general physics. Course Content: Measurement, vectors, kinematics, force, mass. Newton’s laws, applications of Newton’s laws. Work and kinetic energy. Conservation of linear momentum. Impulse, collisions, rotation, moments of inertia. Torque, angular momentum, conservation of angular momentum, static equilibrium.
MATH105 Calculus I
Functions, limits, and continuity. Derivatives. Mean value theorem. Sketching graphs. Definite integrals, infinite integrals (antiderivatives). Logarithmic, exponential, trigonometric, and inverse trigonometric functions and their derivatives. L’Hospital’s rule. Techniques of integration. Applications of the definite integral, improper integrals.
MATH111 Linear Algebra
Matrices and Systems of Equations, Determinants, Vector Spaces, Linear Transformations, Orthogonality, Eigenvalues, and Numerical Linear Algebra.
WENG101 – Academic English I
WENG 101 is a first semester freshman academic English course. It is designed to help students improve the level of their English to B1+ level, as specified in the Common European Framework of Reference for Languages. The course connects critical thinking with language skills and incorporates learning technologies. The purpose of the course is to consolidate students’ knowledge and awareness of academic discourse, language structures and lexis. The main focus will be on the development of productive (writing and speaking) and receptive (reading and listening) skills in academic settings.
WTUR101 – Turkish I
This course is designed to introduce students with the basic grammar and writing skills and help students to further develop their Turkish language abilities and have a better understanding of the culture. The students will be able to participate in simple conversations, read and comprehend various authentic texts, listen to conversations and answer questions.
WATA101 – Principles of Atatürk I
The content of the course covers the history of the revolution that the Turkish nation went through under the leadership of Ataturk. The reasons for the collapse of the Ottoman Empire are examined and how the State of the Republic of Turkey was established from a de facto destroyed state is evaluated in the light of documents. The founder of the Republic of Turkey, Mustafa Kemal realized by Atatürk Turkish Revolution, the nation-state and modernity and secularism case of Turkey in the context of phrases and meanings corresponding to the Kemalist thought to teach the students.
AIAI101–Introduction to Artificial Intelligence
This course provides a foundational overview of Artificial Intelligence (AI) concepts, applications, and ethical considerations for students from all disciplines. It introduces basic AI principles, including machine learning, data-driven decision making, and everyday AI technologies, without requiring prior technical knowledge. Students will explore how AI impacts society, industry, education, and creative practices, and develop critical awareness of its opportunities and limitations.
WENG102 – Academic English II
This course is designed to further help students improve their English to B2 level, as specified in the Common European Framework of References for Languages. The course aims to reconsolidate and develop students’ knowledge and awareness of academic discourse, language structures, and critical thinking. The course also incorporates use of technologies. The course will focus on reading, writing, listening, speaking and introducing documentation, and will also focus on presentation skills in academic settings.
WTUR102 – Turkish II
Basic rules of Turkish, phonetics (sounds, alphabet reading rules), vocabulary (words as structure) recognition, relations between words), sentence knowledge (sentence structures, general structure and sentence types), reading and writing (reading rules and writing techniques, spelling rules, comprehension of spoken and written language. spelling rules.), reading –comprehension (reading comprehension techniques, applications on texts), listening (listening comprehension, listening comprehension) making necessary comments by taking notes, applications on texts suitable for students’ own professions), speaking (learning speaking techniques, learning shapes such as certain emphasis, and intonation).
WATA102 – Principles of Atatürk II
This course focuses on the political, social, economic, and cultural reforms implemented during the early Republican period in line with Atatürk’s principles. It examines the core concepts of Kemalism—such as republicanism, nationalism, populism, statism, secularism, and reformism—and analyzes their role in shaping modern Turkish society. Through historical examples and key texts, students develop an understanding of the lasting impact of Atatürk’s principles on Turkey’s contemporary political and social structure.
ACYP102- Cyprus History and Culture
This course introduces the historical, cultural, and social development of Cyprus from ancient times to the present. It examines the island’s diverse civilizations, cultural heritage, traditions, and identity within a broader Mediterranean and regional context. Students will gain an understanding of Cyprus’s historical transformations and cultural diversity, fostering awareness of its contemporary social and cultural dynamics.
PHY102 General Physics II
This course aims to introduce students to electricity. Course Content: Electrical charges. Coulomb’s law. Electrical fields. Gauss’s law. Electrical potential. Capacitance and dielectrics. Current and resistance. Direct current circuits. Magnetic fields. Sources of the magnetic field. Faraday’s law of induction. Inductance and inductors.
MATH106 Calculus II
Plane and polar coordinates, area in polar coordinates, arc length of curves. Limit, continuity, and differentiability of function of several variables, extreme values, method of Lagrange multipliers. Double integral, triple integral with applications. Line integrals, Green’s theorem. Sequences, infinite series, power series, Taylor’s series. Complex
SWEN102 Introduction to Programming
This course provides an introduction to fundamental concepts of programming and the use of built-in data structures in solving problems using the Python general-purpose programming language.
Course Content: In this course, students study how to write user-defined functions using iteration as well as recursion in Python. This course also stresses the importance of programming tools such as programming editors and debuggers. The students are expected to work within a GNU/Linux environment. The course provides a basic introduction to object-oriented programming.
WETH201 – Principles of Ethics
This course discusses the ethical questions raised by the pursuit of a good life, especially in relation to the notions of academic integrity and civic duties. Cases where the boundary between private and public interests has been blurred will be examined in order to understand how ethical theory might inform academic and public life.
SWEN203 Object-Oriented Programming
This course provides an in-depth discussion of object-oriented programming and how object-oriented programming can be used in solving real-life problems. Course Content: This course requires more advanced use of programming tools (mainly editors and debuggers) . This course uses Python 3 to teach the fundamental concepts of object-oriented programming. The students are expected to work within a GNU/Linux environment.
MATH201 Probability and Statistics
This course aims to give details of probability to engineering students. Course Content is Statistics, Data and Statistical Thinking, Methods for Describing Sets of Data, Probability, Random Variables, and Probability Distributions, Inferences Based on Samples, Design of Experiments and Analysis of Variance, Categorical Data Analysis, Simple Linear Regression, Multiple Regression and Model Building, Methods for Quality Improvement: Statistical Process Control, Time Series, Nonparametric Statistics.
SWEN202 Data Structures and Algorithms
This course comprises an introductory exploration into the design and implementation of Abstract Data Types (ADTs) along with the study of algorithm design and complexity analysis.
Even though the discussions during lectures about ADTs are language-independent, this course uses Python, a very high-level general programming language, to implement these ideas using object-oriented programming. This class starts with a brief introduction to object-oriented programming.
SWEN201 Discrete Structures
This course aims to introduce students to discrete structures. Sets and Logic, Proofs, Functions, Sequences and Relations, Algorithms, Introduction to Number Theory, Counting Methods and the Pigeonhole Principle, Recurrence Relations, Graph Theory, Trees, Network Models, Boolean Algebras and Combinatorial Circuits, Automata, Grammars and Languages, Computational Geometry.
WEN205 Introduction to Engineering Management
This course comprises an introductory exploration of Management. Course Content: Principles of Management. Functions of managers. Organization and environment. Marketing management. Production management. Personnel management. Managerial control. Accounting and financial reports. Budgeting and overall control.
SWEN204 Introduction to Software Engineering
The aim of the course is to prepare students for real-life applications of software engineering. Course Content: Introduction to Software Engineering, Modeling with UML, Project Organization and Communication, Requirements Elicitation, Analysis, System Design, Object Design, Mapping Models to Code, Testing, Rationale Management, Configuration Management, Project Management, Software Life Cycle, Methodologies.
SWEN206 Introduction to Computer Organization
The main objective of this subject is to understand the overall basic computer hardware structure, including the peripheral devices. Course content: Introduction to computers. Micro-programming control. Memory organization. Input/output system. Non-standard computer architectures, pipeline, RISC, and vector computers.
SWEN301 Software Requirements Engineering
The aim of this course is to understand the fundamental concepts of software requirements for implementation processes of software development. Course content: Domain engineering. Techniques for discovering and eliciting requirements. Languages and models for representing requirements. Analysis and validation techniques, including need, goal, and use case analysis. Requirements in the context of system engineering. Specifying and measuring external qualities: performance, reliability, availability, safety, security, etc. Specifying and analyzing requirements for various types of systems: embedded systems, consumer systems, web-based systems, business systems, and systems for scientists and other engineers. Resolving feature interactions. Requirements documentation standards. Traceability. Human factors. Requirements in the context of agile processes. Requirements management: Handling requirements changes.
SWEN303 Database Management Systems
This course comprises an introductory exploration of the design and implementation of database systems. Course Content: Introduction to Databases, Relational Data Model and SQL, Conceptual Modeling and Database Design, Models, Database Programming Techniques, Database Normalization Theory, File Structures-Indexing and Hashing, Query Processing-Optimization and Database Tuning, Transaction Processing-Concurrency Control and Recovery, Security and Distribution, Advanced Database Models-Systems and Applications.
SWEN305 Software Project Management
This course aims to deliver successful software projects that support the organization’s strategic goals, match organizational needs to the most effective software development model, and develop the skills for tracking and controlling software deliverables. Course content: Project planning, cost estimation, and scheduling. Project management tools. Factors influencing productivity and success. Productivity metrics. Analysis of options and risks. Planning for change. Management of expectations. Release and configuration management. Software process standards and process implementation. Software contracts and intellectual property. Approaches to maintenance and long-term software development. Case studies of real industrial projects.
RMET301 Research Methods and Ethics
This course introduces students to engineering ethics, conceptual and practical tools for gathering primary data, and the knowledge which are necessary for completing an academic project. The course includes an overview of Ethics, Ethics for IT Professionals, Computer and Internet Crime, Privacy, Freedom of Expression, Intellectual Property, Software Development, The Impact of Information Technology on the Quality of Life, Social Networking, Ethics of IT Organizations, Introduction to Research and the Research Process, Research Ethics and Integrity, Quantitative Research, Study Designs, Analysis and Interpretation of Quantitative Data, Qualitative Research, Analysis and Interpretation of Qualitative Data, Mixed Methods Research.
SWEN302 Software Design
The main aim of this course is to familiarize students with concepts and methods of software design and architecture, learn how to perform architectural design and OO design and basic project management tasks using examples, and experience design and architecture in a larger project. Course content: An in-depth look at software design. Continuation of the study of design patterns, frameworks, and architectures. Survey of current middleware architectures. Design of distributed systems using middleware. Component-based design. Measurement theory and appropriate use of metrics in design. Designing for qualities such as performance, safety, security, reusability, reliability, etc. Measuring internal qualities and complexity of software. Evaluation and evolution of designs. Basics of software evolution, reengineering, and reverse engineering.
SWEN304 Operating Systems
The aim of this course is to give details of operating systems and how they work to students. Course Content: Principles of operating systems. Memory management. Multiprocessing. Virtual memory concepts. Memory protection. Scheduling. Process management. Time-slicing and priorities, deadlocks, and process synchronization. Peripheral control. Filing system management. Resource control and monitoring. Linux and Windows Operating Systems.
SWEN306 Web Design and Application Development
Introduction to HTML, Dynamic HTML, Web Development Software, Publishing a Site, An Introduction to XML, Creating Mobile Documents, CSS Basics, Beginning server programming using PHP, Expressions and Control Flow in PHP, PHP Functions-Objects and Arrays, MySQL, Accessing MySQL Using PHP, Form Handling, Cookies, Sessions and Authentication, JavaScript, JavaScript Functions-Objects and Arrays, AJAX and Web Services.
MISY401 Management Information Systems
This is a principal course for the students of business administration. The course provides information on information systems and their importance for business success. This course includes organizational and technical foundations of information systems, theory of information systems design, fundamental database principles, network systems, and e-commerce and supply chain systems. Different information technology applications in business and support to decision makers for strategic business decisions will also be discussed.
SWEN401 Data Communication and Computer Networking
The aim of this course is to give details of computer networking and data communication. Course Content: Introduction to Computer Networks and Data Communications, Fundamentals of Data and Signals, Conducted and Wireless Media, Making Connections, Making Connections Efficient, Errors, Error Detection and Error Control, Local Area Networks, Introduction to Metropolitan Area Networks and Wide Area Networks, The Internet, Voice and Data Delivery Networks, Network Security, Network Design and Management.
SWEN403 Software Systems Security
The aim of the course is to prepare students for software systems security. Course Content: Introduction to Software Systems and Security, The Need for Security, Legal, Ethical, and Professional Issues in Information Security, Risk Management, Planning for Security, Security Technology, Cryptography, Physical Security, Implementing Software and Information Security, Security and Personnel, Software and Information Security Maintenance.
SWEN481 Senior Project I
The course aims to give senior design experience to students. This course is the first part of a design project. The senior design project can be a software or a networking project under the supervision of a faculty member. Oral presentations and written reports are required.
SWEN482 Senior Project II
Students continue the project they started in the SWEN480 course. Oral presentation and written reports are required.
SWEN402 Software Process Management
In this course, software project processes and project management methodologies will be studied. Basic principles and methods for initiation, planning, and execution of software projects by considering software process management issues are discussed.
ELECTIVE COURSES
SWEN411 Advanced Object-Oriented Programming I
For an Advanced Object-Oriented Programming course, the topics should go deeper than SWEN203 Advanced Object-Oriented Programming:
Design Patterns in OOP,SOLID Principles of OOP Design, Metaprogramming and Reflection, Advanced Polymorphism, Interfaces and Abstract Classes,Mixin Classes and Multiple Inheritance, Generics and Templates,Dependency Injection and Inversion of Control,Concurrency in OOP,Memory Management and Performance Optimization,Behavioral Design Patterns,Structural Design Patterns, Creational Design Patterns,Unit Testing and Mocking in OOP,Designing Scalable OOP Systems,Object-Oriented Analysis and Design (OOAD),Code Refactoring in OOP,Event-Driven Programming in OOP,Decorators and Wrappers,Domain-Driven Design (DDD)
SWEN412 Advanced Object-Oriented Programming II
For a Advanced Object-Oriented Programming II course, the topics would explore even more sophisticated techniques, focusing on advanced design, performance, and architecture. Here are the titles for such a course:
Advanced Object-Oriented Design Patterns,Object-Oriented Framework Design,Dynamic Binding and Late Binding,
Aspect-Oriented Programming (AOP),Message Passing and Distributed Objects,,Component-Based Development in OOP,Object Serialization in Distributed Systems,Advanced Dependency Injection Techniques,Functional Programming Integration with OOP,Concurrency Patterns in OOP,OOP in Cloud-Native and Microservice Architectures,Behavioral and Structural Adaptation in OOP
SWEN208 Machine Learning
Introduction to Machine Learning,Supervised Learning,Unsupervised Learning,Reinforcement Learning,Linear Regression ,Logistic Regression,Decision Trees,K-Nearest Neighbors (KNN),Support Vector Machines (SVM),
Clustering Algorithms (K-Means, Hierarchical),Dimensionality Reduction Techniques (PCA, LDA)
SWEN209 Cloud Computing
Introduction to Cloud Computing,Cloud Computing Service Models (IaaS, PaaS, SaaS)
Cloud Deployment Models (Public, Private, Hybrid, Community),Virtualization and Cloud Infrastructure, Cloud Storage and Data Management,Networking in Cloud Computing,Elasticity and Scalability in the Cloud,Cloud Security and Privacy,
Cloud Cost Management and Optimization,Cloud Service-Level Agreements (SLAs),Cloud Automation and Orchestration, Microservices and Cloud-Native Architecture,Introduction to Edge Computing
SWEN210 Internet Programming
Introduction to Internet Programming,The Internet and Web Architecture,HTML and HTML5,CSS and CSS3 for Styling Websites,JavaScript Basics,Client-Side Scripting with JavaScript,Introduction to DOM (Document Object Model),Responsive Web Design (RWD),Web Forms and User Input Handling,Introduction to HTTP/HTTPS Protocols,Introduction to Frontend Frameworks (React, Angular, Vue),Web Accessibility and Usability,Introduction to Backend Programming (Node.js, PHP),Working with Databases (MySQL, MongoDB),Client-Server Communication (AJAX, Fetch API)
SWEN211 Embedded Systems
Characteristics of Embedded Systems,Microcontrollers and Microprocessors Overview,Embedded System Architecture and Design,Embedded Programming Languages (C, C++, Assembly),Interfacing with Hardware Components (Sensors, Actuators),Real-Time Operating Systems (RTOS) Basics,Memory Management in Embedded Systems,Input/Output (I/O) Devices and Communication Protocols (UART, SPI, I2C),Power Management and Energy Efficiency in Embedded Systems,Debugging Techniques for Embedded System, Development Tools for Embedded Systems (IDEs, Compilers),System-Level Design and Hardware/Software Co-Desig,Testing and Verification of Embedded System
SWEN212 Wireless Communications
Introduction to Wireless Communications,Fundamentals of Electromagnetic Waves,Wireless Transmission and Modulation Techniques,Radio Frequency (RF) Spectrum,Cellular Networks and Architecture,Introduction to Wireless Standards (2G, 3G, 4G, 5G, Medium Access Control (MAC) in Wireless Networks,Wi-Fi (IEEE 802.11) Protocols,Bluetooth and Short-Range Wireless Technologies,Antenna Design and Propagation Models,Spread Spectrum Techniques (FHSS, DSSS), Multiple Access Techniques (FDMA, TDMA, CDMA, OFDMA),Error Detection and Correction Techniques,Introduction to MIMO (Multiple Input Multiple Output),Wireless Network Security,Wireless Sensor Networks (WSN),Energy Efficiency in Wireless Communication
SWEN213 Image Processing
Introduction to Image Processing,Digital Image Representation,Image Acquisition and Sampling,Histogram Processing and Equalization,Spatial Filtering and Convolution,Edge Detection and Gradient Operators, Image Smoothing and Noise Reduction,Image Enhancement in Spatial Domain,Frequency Domain Processing (Fourier Transform), Image Filtering in the Frequency Domain,Color Image Processing, Morphological Image Processin, Image Segmentation Techniques,Thresholding and Region-Based Segmentation,Feature Extraction and Object Recognition, Geometric Transformations and Image Registration,Image Compression (Lossy and Lossless), Introduction to Computer Vision
SWEN307 Introduction to Artificial Intelligence
Introduction to Artificial Intelligence,History and Evolution of AI,Intelligent Agents and Environments,Problem-Solving and Search Algorithms,Uninformed Search Strategies (BFS, DFS),Adversarial Search and Game Theory,Constraint Satisfaction Problems (CSP),Knowledge Representation and Reasoning,Propositional and First-Order Logic,Planning in AI,Machine Learning Overview, Supervised Learning and Classification,Unsupervised Learning and Clustering,Reinforcement Learning,Natural Language Processing (NLP) Basics,Introduction to Neural Networks,Computer Vision and AI,AI in Robotics,Ethics and Implications of AI
SWEN308 Artificcial Neural Networks
Introduction to Neural Networks,Biological Inspiration: Neurons and Brain Function,Neural Network Architecture and Terminology,Feedforward Neural Networks,Activation Functions (Sigmoid, ReLU, Tanh),Loss Functions and Optimization,Backpropagation Algorithm,Training Neural Networks: Gradient Descent,Overfitting and Regularization Techniques, Batch Normalization and Dropout,Convolutional Neural Networks (CNNs),Recurrent Neural Networks (RNNs),Long Short-Term Memory (LSTM) Networks,Autoencoders and Dimensionality Reduction,Generative Adversarial Networks (GANs),Transfer Learning and Fine-Tuning,Hyperparameter Tuning and Model Selection,Neural Networks for Computer Vision,Neural Networks for Natural Language Processing
SWEN309 Advanced Database Management Systems
Database Design and Normalization,Advanced SQL Queries and Optimization,Transaction Management and Concurrency Control,Distributed Databases and Their Architectures,Database Replication and Partitioning,Data Warehousing and OLAP (Online Analytical Processing),Big Data Technologies and NoSQL Databases,Graph Databases and Query Languages (e.g., Cypher, Gremlin),Document Stores and Key-Value Databases,Column-Family Stores and Time-Series Databases,Data Modeling Techniques for Complex Data,Database Security and Access Control, Backup, Recovery, and High Availability,Database Performance Tuning and Monitoring,Advanced Indexing Techniques,Stored Procedures and Triggers,In-Memory Databases and NewSQL Solutions,Cloud Database Services (AWS RDS, Google Cloud SQL),Emerging Trends in Database Technologies (Blockchain, AI Integration)
SWEN310 Computer Graphics
Graphics System and Architecture,2D Graphics: Basic Concepts and Primitives,2D Transformations (Translation, Rotation, Scaling),Line Drawing Algorithms (Bresenham’s Algorithm),Polygon Filling Algorithms (Scan-Line, Flood Fill),Clipping Algorithms (Cohen-Sutherland, Liang-Barsky),3D Graphics: Coordinate Systems and Transformations,3D Object Representation (Wireframe, Solid Models),Perspective and Orthographic Projections,Lighting Models and Shading Techniques (Phong, Gouraud),Texture Mapping and Filtering, Rendering Techniques (Ray Tracing, Rasterization),Basic Animation Techniques,Introduction to OpenGL or DirectX,Computer Graphics APIs and Libraries, Color Models and Management,Graphical User Interfaces (GUIs)
SWEN311 Application Development on Android Devices
Introduction to Android and its Ecosystem,Setting Up the Development Environment (Android Studio),Understanding Android Architecture,Android Application Components (Activities, Services, Broadcast Receivers, Content Providers),User Interface (UI) Design Principles for Android,Layouts and Views (LinearLayout, RelativeLayout, ConstraintLayout),Working with Resources (Strings, Colors, Images),Intents and Intent Filters,Data Storage Options (SharedPreferences, SQLite, Room),Networking in Android (HTTP, REST APIs, Retrofit),Handling User Input and Events,Fragments and Navigation,Background Processing (AsyncTask, Services, WorkManager),Using Libraries and Dependencies (Gradle)
SWEN312 IOS Programming with Swift
Introduction to Swift and its Ecosystem, Setting Up the Development Environment (Xcode),Basic Syntax and Data Types in Swift,Variables and Constants,Control Flow (Conditional Statements and Loops),Functions and Parameter Passing,Optionals and Optional Binding,Collections: Arrays, Dictionaries, and Sets,String Manipulation in Swift,Error Handling in Swift,Object-Oriented Programming in Swift (Classes and Structs),Protocols and Protocol-Oriented Programming,Extensions and Generics,Closures and Higher-Order Functions,Memory Management and ARC (Automatic Reference Counting),Basic Input and Output Operations,Introduction to SwiftUI for UI Development,Using Frameworks and Libraries in Swift,Testing and Debugging Swift Code,Best Practices in Swift Programming
SWEN313 Internet of Things
Introduction to IoT: Concepts and Definitions,History and Evolution of IoT,IoT Architecture and Components,Communication Protocols for IoT (MQTT, CoAP, HTTP),Wireless Technologies for IoT (Wi-Fi, Zigbee, LoRa, NB-IoT),Sensors and Actuators in IoT,Data Acquisition and Processing in IoT,Cloud Computing and IoT Integration,Edge Computing and Fog Computing in IoT, Data Analytics and Visualization in IoT,Security and Privacy Issues in IoT, IoT Platforms and Frameworks (AWS IoT, Google Cloud IoT, Azure IoT),IoT Protocol Stacks and Standards (IEEE 802.15.4, IPv6, 6LoWPAN),Device Management in IoT, Energy Management and Optimization in IoT,IoT Application Development (Prototyping with Raspberry Pi, Arduino),Smart Home Technologies and Applications
SWEN404 Game Development
Game Design Principles and Concepts, Game Genres and Platforms,Game Development Process and Lifecycle,Prototyping and Iterative Design,Game Engines Overview (Unity, Unreal Engine, Godot, 2D Game Development Fundamentals,3D Game Development Fundamentals, Graphics and Animation in Games,User Interface (UI) Design for Games,Game Physics and Mathematics,Artificial Intelligence in Games,Scripting and Programming for Games (C#, C++, GDScript),Sound and Music in Games,Multiplayer Game Design and Networking,Level Design and Environment Creation,Game Monetization Strategies,Testing and Quality Assurance in Games,Publishing and Marketing Games
SWEN405 e-Government
History and Evolution of e-Government,Benefits and Challenges of e-Government,e-Government Frameworks and Models
Digital Government vs. Traditional Government,Policy and Regulation for e-Government,e-Government Services and Applications, e-Government Infrastructure and Architecture,Citizen Engagement and Participation,Digital Identity Management and Authentication,Data Privacy and Security in e-Government,Interoperability in Government System, Open Data and Transparency Initiatives,Social Media and Communication in e-Government,Mobile e-Government (m-Government),Cloud Computing in e-Government,e-Government in Developing Countries,Case Studies of Successful e-Government Implementations,Emerging Trends in e-Government (AI, Blockchain, IoT),Future Directions and Innovations in e-Government
SWEN406 e-Commerce
Types of e-Commerce (B2B, B2C, C2C, C2B),e-Commerce Business Models and Strategies, Building an e-Commerce Website: Platforms and Tools, User Experience (UX) and User Interface (UI) Design in e-Commerce,Shopping Cart and Payment Gateway Integration, Digital Marketing Strategies for e-Commerce,Search Engine Optimization (SEO) for e-Commerce,Social Media Marketing for e-Commerce,Email Marketing and Customer Relationship Management (CRM) Inventory Management and Supply Chain in e-Commerce,Legal and Regulatory Considerations in e-Commerce,Security and Privacy Issues in e-Commerce,Mobile Commerce (m-Commerce),Data Analytics and Performance Measurement in e-Commerce,Customer Service and Support in e-Commerce
SWEN407 System Simulation
Types of System Simulation (Discrete-Event, Continuous, Hybrid),Simulation vs. Analytical Methods,Simulation Modeling and Design Process,Understanding System Components and Interactions,Mathematical Modeling Techniques,Statistical Methods for Simulation, Discrete-Event Simulation (DES) Basics, Continuous Simulation Techniques,Simulation Software and Tools (e.g., AnyLogic, Arena, Simul8),Random Number Generation and Variate Generation,Input Data Analysis for Simulation Models, Model Validation and Verification Techniques,Output Analysis and Performance Metrics,Sensitivity Analysis in Simulation Models,Case Studies in System Simulation (Manufacturing, Healthcare, Logistics), Simulation in System Design and Optimization,Real-Time Simulation and Control,Agent-Based Modeling and Simulation,Future Trends in System Simulation (AI Integration, Cloud Simulation)
SWEN408 System Programming
Operating System Fundamentals, System Calls and APIs,Programming Languages for System Programming (C, C++),Data Structures and Algorithms in System Programming,Memory Management: Allocation, Deallocation, and Garbage Collection,Process Management and Scheduling, Threading and Concurrency in System Programming, Inter-Process Communication (IPC) Mechanisms, File Systems and Data Storage Management,Device Drivers: Introduction and Programming,Network Programming Basics (Sockets, Protocols),Error Handling and Debugging Techniques,Linking and Loading Concept, Low-Level Programming: Assembly Language Basics,Security and Access Control in System Programming, Performance Optimization Techniques, Using System Libraries and Tools (e.g., Makefiles, GDB)
SWEN409 Mobile Programming
Overview of Mobile Platforms (iOS, Android, Cross-Platform),Mobile Application Development Lifecycle,Setting Up Development Environments (Xcode, Android Studio),Understanding Mobile Architecture and Design Patterns,User Interface (UI) Design for Mobile Applications,Mobile UX Principles and Best Practices,Working with Layouts and Views,Data Management in Mobile Apps (Local Storage, Databases),Networking in Mobile Applications (APIs, RESTful Services),Handling User Input and Gestures,Integrating Multimedia (Camera, Audio, Video), Mobile Security Best Practices, Testing and Debugging Mobile Applications,Performance Optimization Techniques for Mobile Apps,Publishing Mobile Applications on App Stores,Using Mobile Libraries and Frameworks (e.g., Retrofit, Alamofire)
SWEN410 Human-Computer Interaction
History and Evolution of HCI,Theoretical Foundations of HCI (Cognitive Psychology, Ergonomics),User-Centered Design Principles,Interaction Styles and Techniques (Direct Manipulation, Command Line, etc.),Designing User Interfaces (UI),Usability and Accessibility in HCI,User Research Methods (Surveys, Interviews, Observations),Personas and Scenarios in Design,Prototyping and Wireframing Techniques,User Testing and Evaluation Methods,Information Architecture and Navigation Design,Visual Design Principles in HCI,Mobile Interaction Design,Gestural and Touch Interaction,Multimodal Interaction (Voice, Gesture, Touch),Social and Ethical Considerations in HCI,Emerging Technologies in HCI (AR/VR, AI),Case Studies of Effective HCI Designs
[1] To calculate total credits practical credits should be divided by two and added to theoretical credits.
Bölüm Başkanı: Yrd. Doç. Dr. Selin Ü. Koçyiğit
E-mail: selin.kocyigit@wpu.edu.tr
Tel: +90 392 444 49 78 (444 4 WPU)
Adres: Sht.Kemal Ali Omer Street, No: 22, Yenisehir, Nicosia, TRNC, Mersin 10 Turkey.
