BİRİNCİ YIL 1. Yarıyıl MATH 111 Analiz I (3, 2, 4, 6) Fonksiyon ve modeller, limit ve türev, diferansiyel kurallar, diferansiyel uygulamaları, integral, integral uygulamaları, integral teknikleri, integral ileri uygulamaları, diferansiyel denklemler, parametrik denklemler ve kutupsal koordinatlar, sınırsız diziler ve seriler. MATH 111 Calculus I (3, 2, 4, 6) Functions and Models, Limits and Derivatives, Differentiation Rules, Applications of Differentiation, Integrals. Applications of Integration, Techniques of Integration, Further Applications of Integration, Differential Equations, Parametric Equations and Polar Coordinates, Infinite Sequences and Series. EENG 111 Fizik I (3, 2, 4, 6) Birimler, ölçümler, vektörler, bir ve iki boyutlu hareketler, dinamik, iş, enerji ve enerji korunumu, çarpışma ve momentum, dönme kinematiği ve dinamiği, denge, titreşimler,sıvı mekaniği, dalgalar,ses, sıcaklık,ısı,termal genleşme, termodinamik. EENG 111 Physics I (3, 2, 4, 6) Measurement; vectors. Motion in one dimension. Plane motion. Dynamics of particles. Work and energy. Collision. Kinetics of rotation. Oscillation. Inflection of the mass. Fluid mechanics. Heat and the first law of thermodynamics. Kinetic theory of gas. Second law of thermodynamics. CENG 141 Programlama ve Problem Çözme I (3, 2, 4, 6) Problem çözümüne vurgu yaparak bilgisayar bilimlerine giriş, programlama ve algoritma tasarımı, problem çözümünde ve program tasarım ve geliştirilmesinde yüksek düzeyli programlama dili kullanılması, temel programlama inşaası, terimler, koşullu ifadeler, döngüler, sınıflar ve nesneler, veri tipleri, diziler ve dizgiler. CENG 141 Programming and Problem Solving I (3, 2, 4, 6) Introduction to computer science with emphasis on problem solving, programming and algorithm design; use of a high-level programming language for solving problems and emphasizing program design and development; topics include basic programming constructs, expressions, conditional statements, loop statements, functions, classes and objects, data types, arrays, and strings. SOFL 101 Akademik Amaçlı İngilizce I (3, 0, 3, 3) Zamanlar, bağlaçlar ve çeviri metotları. SOFL 101 English for Academic Purposes I (3, 0, 3, 3) Tenses, conjunctions, the methods of translation.
SENG 101 Yazılım Mühendisliğine Giriş (3, 0, 3, 5) Yazılım mühendisliğinin temel prensip ve kavramları, yazılım mühendisliği kavram ve terminolojisi, temel modelleme ve UML kullanarak tasarım, gereksinim, yazılım mimarisi ve testin temelleri SENG 101 Introduction to Software Engineering (3, 0, 3, 5) Basic principles and concepts of software engineering. Terminology and concepts in software engineering, basic modeling and design particularly using UML. Basics of requirements, software architecture, and testing. TURK 011 Türkçe I (2, 0, 0, 1) Dil teorileri, dil sınıflandırmaları, Ural-Altay dil ailesi fonetiği, morfolojisi, sözdizimi, semantik, Türkçe fonetiği, kelime yapıları, cümle yapıları, seçilmiş kitapların analizi. TURK 011 Turkish I (2, 0, 0, 1) Language theories, classification of languages, Ural-Altaic language family, phonetics, morphology, syntax, semantics, phonetics of Turkish, structure of words, sentence structure, analysis of selected books. UFND 010 İnsan bilim (2, 0, 2, 2) İnsan bilimine giriş, sosyal antropoloji, psikoloji, tarihsel gelişim, temel terminoloji ve insan bilimi teorileri. UFND 010 Humanities (2, 0, 2, 2) Introduction to human science: sociology, social anthropology, psychology. Historical development, basic terminology and theories of human sciences. 2 Yarıyıl MATH 112 Analiz II (3, 2, 4, 6) Koordinat sistemleri, eğriler ve denklemler, doğrusal denklemler, ikinci dereceden denklemler, parametrik denklemler, kutupsal denklemler, analitik geometri, çokludeğişkenler fonksiyonu, limitler ve süreklilik, çoklu-değişkenlerin türevleri, çoklu integral. MATH 112 Calculus II (3, 2, 4, 6) Coordinate systems. Curves and equations. Linear equations. Quadratic equations. Parametric equations. Polar equations. Space analytic geometry. Multi-variable functions. Limits and continuousness. Derivatives for multi-variable functions. Multiple integration. EENG 112 Fizik II (3, 2, 4, 6) Elektrik yükü ve madde, elektrik alan, Gauss kanunu, elektriksel potansiyel, dielektrik ve sığalar, akım ve direnç, emk ve elektrik devreleri, manyetik alan, amper kanunu, Faraday kanunu, LCR devreleri, katıların manyetik özellikleri, alternatif akımlar, elektromanyetik dalgalar, dalga ve geometrik optik, girişim, kırınım, kuantum fiziği
EENG 112 Physics II (3, 2, 4, 6) Charge and matters, The electric fields and Gauss law, Electrical potential, Capacitors and dielectrics, Current and resistance, Electromototive force and electric circuits Magnetic field and Ampere s law, Faraday s law, Inductance and L-C-R circuits, Magnetic properties of solids, Alternating Currents, Electromagnetic waves, Optics, Wave optics and interference. Diffraction, Light and quantum physics. CENG 142 Programlama ve Problem Çözme II (3, 2, 4, 6) Nesneye dayalı programlamadan fikirler, metotlar, sınıflar, bilgi gizlenmesi, kalıtım, polimorfizm ve arayüzler, temel algoritmalar, temel sıralama ve arama, kullanıcı tanımlı sınıflar, özyineleme konsepti, yararlar ve problemler, kural dışı durum işlenmesi, API kullanımı, basit grafik programlama, yazılım tasarım kavramları. CENG 142 Programming and Problem Solving II (3, 2, 4, 6) Ideas from object-oriented programming, methods, classes, information hiding, inheritance, polymorphism and interfaces; fundamental algorithms, basic sorting and searching; user defined classes; concept of recursion, benefits and problems; exception handling; using APIs; simple graphics programming; concept of software design. SOFL 102 Akademik Amaçlı İngilizce II (3, 0, 3, 3) Rapor edilen konuşma, edilgen çatı, kıyas, ettirgen cümleler, zarf cümleleri. SOFL 102 English for Academic Purposes II (3, 0, 3, 3) Reported speech, passive voice, comparison, causative sentences, adverbial clauses. CENG 114 Ayrık Hesaplama Yapıları (3, 0, 3, 6) Kümelerin temel matematisel kavramları, ilişkiler ve fonksiyonlar ve aynı işlemleri kapsıyan, mantık ve rolu, önermeli mantık, doğruluk tabloları, denklik çıkarımları, sıırlamalar, yüklem mantığı, gücü ve limitleri, yazılım mühenlisliğine olan ilişkisi, çizge, ağaç konseptleri, temsili çıkarımlar ve bunların bilgisayar mühendisliğine ilişkisi, özyineleme, sayma, kombinasyon ve bu fikirlerin yazılım mühendisliğine olan ilişkisi. CENG 114 Discrete Computational Structures (3, 0, 3, 6) Basic mathematical notions of sets, relations, and functions, and operations involving the same; logic and its role, propositional logic, truth tables, issues of equivalence, limitations; predicate logic, its power and its limitations, relevance in the context of software engineering; proof techniques; commonly occurring mathematical concepts such as graphs, trees; representational issues; relevance of these to computer engineering; recursion; counting; combinatorics; relevance of these ideas to software engineering. TURK 012 Türkçe II (2, 0, 0, 1) Yazılı Türkçe üzerinden pratik ve çalışmalar, temel kurallar, noktalama ve dikte, makale ve kompozisyon, klasik ve modern Türk yazarların çalışmalarının incelenmesi, bilimsel makale örnekleri, raporlar ve yazılar.
TURK 012 Turkish II (2, 0, 0, 1) Practice and training in written Turkish, fundamental rules, punctuation and dictation, styles of writing and composition, survey of the works of classical and contemporary Turkish writers, examples of scientific writing: reports, articles etc FND 020 Raporlama ve Sunum Teknikleri (2, 0, 0, 2) Bir ürün fikrini görsel olarak sunmak için gerekli sunum teknikleri. Uygulanmadan önce farklı tasarımların üretici veya müşteriye sunulması. Bu işleme yardım eden bilgisayar programları ve teknikler FND 020 Techniques of Reporting and Presenting (2, 0, 0, 2) Presentation techniques required to visually present a product idea. Presentation techniques for various designs to customer or producer before implementation. Computer programs to assist this process and techniques to use them. 3. Yarıyıl CENG 213 Veri Yapıları (3, 2, 4, 7) Listeler, yığıtlar, kuyruklar, ağaçlar ve çizgeler, temel algoritmalar ve sıralama, arama, birleştirme, karım uygulamları, çizgelerin kavramsal modelleri ve özyinelemeli prosedürler. CENG 213 Data Structures (3, 2, 4, 7) The study of representations for lists, stacks, queues, trees, and graphs; fundamental algorithms and their implementation for sorting, searching, merging, hashing, graph theoretic models, and recursive procedures. STAT 200 İstatiksel Analiz (2, 2, 3, 4) Rasgelelik, sonlu olasılık uzayı, olasılık ölçümü, olaylar; koşullu olasılık, bağımsızlık, Bayes kuramı, ayrık rasgele değişkenler, binom ve Poisson dağılımı, ortalama ve varyans kavramı, Sürekli rasgele değişkenler, üstsel ve normal dağılımlar, olasılık yoğunluk fonksiyonları, ortalama ve varyans hesaplamaları, merkez limit teoremi ve normal dağılım içermesi, amaç ve örnekleme yapısı, tahminleme yapısı, tahminleme noktası, aralık tahminlemesi, maksimum benzerlik kuralı yaklaşımı, en az kareler yaklaşımı, güven aralığı. STAT 200 Statistical Analysis (2, 2, 3, 4) Randomness, finite probability space, probability measure, events; conditional probability, independence, Bayes theorem; discrete random variables; binomial and Poisson distributions; concepts of mean and variance; continuous random variables; exponential and normal distribution, probability density functions, calculation of mean and variance; central limit theorem and the implications for the normal distribution; purpose and the nature of sampling; nature of estimates, point estimates, interval estimates; maximum likelihood principle approach, least squares approach; confidence intervals
SENG 203 Ayrık Hesaplama Yapıları II (3, 0, 3, 5) Önkoşullu mantık, yinelemeli ilişkiler, çizgeler, ağaçlar, matrisler, hesapa dayalı karmaşıklık, temel hesaplanabilirlik ve ayrık olasılık. SENG 203 Discrete Computational Structures II (3, 0, 3, 5) Predicate logic, recurrence relations, graphs, trees, matrices, computational complexity, elementary computability, and discrete probability. MATH 213 Doğrusal Cebir (2, 2, 3, 5) Doğrusal denklemler, matris cebiri ve determinantlar. MATH 213 Linear Algebra (2, 2, 3, 5) Linear equations, matrix algebra, determinants. HIST 011 Atatürk İlkeleri ve İnkılap Tarihi I (2, 0, 0, 1) İnkılap, isyan, evrim. Türk devrim karakteristiği, Anadolu devrimi organizasyonu, Amasya genelgesi, Erzurum kongresi, Sivas kongresi, meclis temsilcilerinin oluşturulması, T.B.M.M nin açılması, Kurtuluş Savası: İzmir in işgali, Kuvayi milliyenin oluşturulması, 1. ve 2. İnönü savaşları, Eskisehir-Kütahya savaşları, Sakarya savası, Mudanya ateşkesi, Saltanatın kaldırılması, Lozan antlaşması. HIST 011 Atatürk's Principles and Hist. of Turkish Reforms I (2, 0, 0, 1) Revolution, Rebellion, Evolution: Characteristics of Turkish revolution, Organization of Anatolian revolution, Amasya Circular, Erzurum Congress, Sivas Congress, Forming Council of Representatives, Opening of Turkish Grand National Assembly; National Independence War: Occupation of İzmir; Forming Kuva-i Milliye, First and Second Battles of İnönü, Battles of Eskişehir-Kütahya, Battle of Sakarya, the Major Offensive; Mudanya Cease-fire Treaty; Abolition of the Sultanate; Lausanne Treaty. UFND 030 Tasarım Kültürü (2, 0, 0, 2) Sanat objeleri, günlük kullanılan objeler ve mimari yapılar gibi tasarımların kültürle etkileşimi. Kültürel yapıların mitoloji, din, hayat sitili ve ekonomiye yansıması. UFND 030 Design Culture (2, 0, 0, 2) Interaction of designs like art objects, daily used objects and architectural structures with culture. Reflection of cultural structures like mythology, religion, life styles and economy to art and design. UFND 050 Etik (2, 0, 0, 2) Plato, Aristo, Augustine, Kant, Mill, Schopenhauer, Nietzsche, Camus, Sartre gibi etik filozofların kuramları ve günümüz etik problemlerine yansıması. UFND 050 Ethics (2, 0, 0, 2) Study of basic theories of ethical philosophy of Plato, Aristotle, Augustine, Kant, Mill, Schopenhauer, Nietzsche, Camus, Sartre and their reflection to today s ethical problems
4. Yarıyıl SENG 202 Yazılım İnşası (2, 2, 3, 7) Formal yaklaşımları içeren alt seviyeli tasarım sorunları. Tekrarlamalı yazılım geliştirmesi, yazılım tekrar kullanımı, BDYM, kritik sistem geliştirilmesi, yazılım gelişimi. SENG 202 Software Construction (2, 2, 3, 7) Low-level design issues, including formal approaches. Iterative software development, software reuse, CBSENG, critical systems development, software evolution. SENG 204 İnsan Bilgisayar Etkileşimine Yazılım Mühendisliği Yaklaşımı (2, 2, 3, 6) Kullanıcı ara yüzlerini dizayn etme ve değerlendirme ile ilgili konular, insanları anlamak için gerekli bazı pisikolojik altyapı, Etkileşim için paradigmalar, etkileşim tasarımı temelleri, yazılım sürecinde HCI, değerlendirme teknikleri, sosyo-örgütsel sorunlar ve hak sahibi gereksinimleri SENG 204 Software Engineering Approach to Human Computer Interaction (2, 2, 3, 6) Topics relating to designing and evaluating user interfaces, as well as some of the psychological background needed to understand people, Paradigms for interaction, Interaction design basics, HCI in the software process, Evaluation techniques, Socioorganizational issues and stakeholder requirements SENG 206 Grup Dinamikleri ve İletişim (3, 0, 3, 6) Yazılım Mühendisleri için sözlü, yazılı ve grafiksel haberleşme temelleri. Teknik yazım temelleri, doküman tipleri ve bilgi elde edilmesi ve bilgi elde edilmesi için gerekli stratejiler ve döküman yazma. Tablo, grafik ve referansların uygun kullanımı. Diğerleriyle daha etkili çalışma teknikleri, insanları motive eden düşünceler, grup dinamikleri konsepti. Kişiler arası ve gruba yapılan sunumlarda etkin sözlü haberleşme kuralları, dinleme, algılama ve uzlaşma stratejileri. SENG 206 Group Dynamics and Communication (3, 0, 3, 6) Essentials of oral, written, and graphical communication for software engineers. Principles of technical writing; types of documents and strategies for gathering information and writing documents, including presentations. Appropriate use of tables, graphics, and references. How to be convincing and how to express rationale for one s decisions or conclusions. Basics of how to work effectively with others; notion of what motivates people; concepts of group dynamics. Principles of effective oral communication, both at the interpersonal level and when making presentations to groups. Strategies for listening, persuasion, and negotiation. CENG 204 Bilgisayar Organizasyonu ve Mimarisi (3, 2, 4, 6) Bilgisayar ve bilgisayar mimarisinin gelişimi, verinin temsili, hata tespiti ve düzeltme, yazmaç düzeyi tasarım, temel bilgisayar organizasyonu, adresleme yöntemleri, komut kümeleri, çevirici programlamaya giriş, MİB mimarisi, bellekler, sanal bellek, önbellek.
CENG 204 Computer Organization and Architecture (3, 2, 4, 6) Computers and evolution of computer architectures;.representation of data; error finding and correction; register level design; basic computer system organization; addressing methods; instruction sets; introduction to assembly programming; CPU architectures, memories, virtual memory, cache memory HIST 012 Atatürk İlkeleri ve İnkılap Tarihi II (2, 0, 0, 1) Cumhuriyetin ilanı, halifeliğin kaldırılması, Tekkelerin kaldırılması, Giyim, takvim, alfabe, politik ve adalet sistemi reformları, ulusal ekonomi politikası, ulusal rakam sisteminin kullanılması, Türkiye Cumhuriyeti tarafından imzalanan uluslararası antlaşmalar, Temel Atatürk ilkeleri; cumhuriyetcilik, milliyetçilik, halkçılık, devletçilik, laiklik devrimleri. HIST 012 Atatürk's Principles and Hist. of Turkish Reforms II (2, 0, 0, 1) Declaration of Republic; Abolition of the Caliphate; Abolition of the Tekkes; Reforms: Dress, Calendar, Alphabet, Political and Justice System reforms, National Economy Policy, The Use of International Number System; International treaties signed by Turkish Republic (up to 1938); Atatürk's Fundamental Principles: Republicanism, Nationalism. Populism, Etatism, Secularism, Revolutionism. FND 040 Estetik (2, 0, 0, 2) Sokrates, Plato, Aristo, Burke, Kant, Schiller, Hegel, Schopenhauer, Nietzsche, Benjamin, Heidegger, Brecht, Adomo nun estetik teorileri ve geçmiş ve günümüz sanatına yansımaları. FND 040 Aesthetics (2, 0, 0, 2) Theories of aesthetics theorists like Socrates, Plato, Aristotle, Hume, Burke, Kant, Schiller, Hegel, Schopenhauer, Nietzsche, Benjamin, Heidegger, Brecht, Adorno and their reflections to past and current art FND 060 Proje Tasarımı (2, 0, 0, 2) Değişik ürünlerin fikirden müşteriye kadar olan adımları ve bu sürecin tasarıma yansıması. Üretim teknikleri, iktisat, hedef kitle, pazarlama ve bunların tasarım ile ilişkisi. FND 060 Project Design (2, 0, 0, 2) Stages of various products from idea to consumer and reflection of this process to design. Production techniques, economics, target audience, marketing and their relationships to design 5. Yarıyıl SENG 301 Yazılım Gereksinim Analizi (3, 2, 4, 6) Etki alan mühendisliği. İhtiyaçları keşfetme ve öğrenme teknikleri. İhtiyaçları göstermek için modeller ve diller, analiz ve onaylama teknikleri ihtiyaç, hedef ve use-case analizi, sistem mühendisliği bağlamında gereksinimler. Harici kalite, performans, güvenilirlik, uygunluk, güvenlik ihtiyaçlarını belirlemek ve ölçmek. Gömülü sistemler, müşteri
sistemleri, ağ tabanlı sistemler, işletme sistemleri, bilim adamları ve mühendisler için sistemler gibi değişik tipte sistemlerde gereksinimleri belirlemek ve analiz etmek. Gereksinim belgeleme standartları. İzlenebilirlik. İnsan faktörü. Gereksinim yönetimi gereksinim değişikliklerinin idaresi. SENG 301 Software Requirements Analysis (3, 2, 4, 6) 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, 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. SENG 303 İşletim Sistemleri ve İletişim Ağları (3, 2, 4, 7) Olaya dayalı programlamaya giriş, API kullanımı, işletim sistemlerine genel bakış, işletim sistemleri kuralları, uyumluluk senkronizasyon kuralları, karşılıklı mahrum kalma problemi ve bazı çözümleri, çıkmaz durumdan sakınma, zaman çizelgelemesi ve gönderme, sonsuz öncelikli ve sonsuz öncelikli olmayan çizelgeleme, çizelgeleyiciler ve politikalar, süreç ve iş parçacıkları, bitiriş anı ve gerçek zamanlı sorunlar. Bellek yönetimi, fiziksel bellek ve bellek yönetimi donanımının tekrarı. Bindirme, değiş tokuş ve bölüntülemek, sayfalama ve kesimleme, yerleştirme ve tekrar yerleştirme politikaları, çalışan kümeler ve yararsız işleme, önbelleğe alma. Ağ merkezli hesaplama, ağ oluşturma ve Internetin tarihçesi ve artalanı, ağ mimarisi, ağ merkezli hesaplama içerisinde erim özelleştirilmesi. SENG 303 Operating Systems and Networking (3, 2, 4, 7) Introduction to event-driven programming, Using APIs, Overview of operating systems, Operating system principles, concurrency: Synchronization principles; the "mutual exclusion" problem and some solutions; deadlock avoidance, scheduling and dispatch: Preemptive and nonpreemptive scheduling; schedulers and policies; processes and threads; deadlines and real-time issues. Memory management: Review of physical memory and memory management hardware; overlays, swapping, and partitions; paging and segmentation; placement and replacement policies; working sets and thrashing; caching. Introduction to net-centric computing: Background and history of networking and the Internet; network architectures; the range of specializations within net-centric computing IENG 205 Mühendislik Ekonomisi (3, 0, 3, 5) Mühendislik ekonomisinin alanı, tedarik, talep ve üretim, paranın zaman değeri, paranın yönetimi, ekonomik analiz, risk hesaplaması.
IENG 205 Engineering Economics (3, 0, 3, 5) The scope of engineering economics; macroeconomics; supply, demand, and production; costs benefit analysis and break-even analysis; return on investment; analysis of options; time value of money; management of money: economic analysis, accounting for risk. CENG 303 Veritabanı Sistemleri (3, 2, 4, 7) Veri modelleme ve varlık-ilişki modelleri, ilişkisel model, ER diyagramlarının ilişkisel modele çevirimi, ilişkisel cebire giriş, fonksiyonel bağımlılık, normalizasyon, SQL standartı, sorgular, tetiklemeler ve şema kısıtları, ağ veri tabanları. CENG 303 Database Systems (3, 2, 4, 7) Data modeling and entity-relationship models; relational model; translation of ER diagrams to relational model; introduction to relational algebra; functional dependency; normal forms and normalization; SQL standard; queries, triggers and schema restrictions; web databases 6. Yarıyıl SENG 302 Yazılım Tasarım ve Mimarisi (3, 2, 4, 6) Yazılım tasarımına derin bir bakış, tasarım örüntüleri, çatı ve mimari çalışmalarına devam edilmesi, mevcut ara yazılım mimarilerine bakış. Ara yazılımlar kullanarak dağıtık sistemlerin tasarımı. Bileşen tabanlı tasarım. Ölçüm teorisi ve metriklerin tasarımda uygun şekilde kullanılması. Kalite amaçlı tasarım, performans, güvenlik, yeniden kullanabilirlik, güvenilirlik ve benzeri gibi iç kalitenin ölçülmesi ve yazılımın karmaşıklığı. Tasarım değer ve evrimi. Yazılım evriminin temelleri, yeniden yapılama, tersine tasarım. SENG 302 Software Design and Architecture (3, 2, 4, 6) 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. SENG 304 Yazılım Kalite Güvencesi ve Testi (3, 2, 4, 6) Kalite; nasıl garanti edilir ve gerçekleştirilir ve kültürün kaliteye olan gereksinimi. Hatalardan kaçınma ve diğer kalite problemleri. Denetleme ve yeniden inceleme. Doğrulama testi ve onaylama teknikleri. Kalite süreç standartları. Ürün ve süreç güvencesi. Problem analizi ve raporlama. Kalite kotrolüne istatistiksel yaklaşımlar. SENG 304 Software Quality Assurance and Testing (3, 2, 4, 6) Quality: how to assure it and verify it, and the need for a culture of quality. Avoidance of errors and other quality problems. Inspections and reviews. Testing, verification and validation techniques. Process assurance vs. Product assurance. Quality process
standards. Product and process assurance. Problem analysis and reporting. Statistical approaches to quality control. SENG 306 Web Programlama ve E-Ticaret (3, 2, 4, 6) WWW nin temel kavramları, XHTML ve CSS kullanarak WWW programlama, istemci tarafı betiği, obje ve olay modelleri, dinamik web programlama, sunucu tarafı betiği, sunucu uygulamaları, güvenlik, kullanılabilirlik, organizasyon, CRM, tedarik zinciri yönetimi, B2B ve B2C uygulamaları, e-iş kavramı, risk analizi, donanım altyapısı, güvenli ödeme yöntemleri. SENG 306 Web Programming and E-Commerce (3, 2, 4, 6) Basic concepts of WWW, web programming using XHTML and CSS, client side scripting, object and event models, dynamic web programming, server side scripting, serer applications, security, usability, organization, CRM, supply chain management, B2B and B2C applications, e-business concept, risk analysis, hardware infrastructure, secure payment methods. 7. Yarıyıl SENG 411 Yazılım Proje Yönetimi (3, 0, 3, 5) Proje planlama, maliyet tahmini ve zamanlama, proje yönetimi araçları, Üretkenliği ve başarıyı etkileyen faktörler. Üretkenlik ölçütleri, seçenek ve risklerin analizi. Değişim planlaması, yönetici beklentileri, yayım ve yapılanış yönetimi. Yazılım süreç standartları ve süreç uygulaması. Yazılım sözleşmesi ve intellektüel mülkiyet. Uzun dönemli yazılım geliştirme ve bakımına yaklaşımlar. Gerçek endüstriyel projeler üzerinde vaka calışmaları. SENG 411 Software Project Management (3, 0, 3, 5) 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. SENG 401 Mezuniyet Projesi I (0, 6, 3, 10) Amaçların belirlenmesi, kriterler, sentez, analiz, inşa, test ve değerlendirmede tecrübe kazandırmak amaçlı tasarlanan projeler; açık-uçlu sorulara çözümler, tasarım yöntemleri SENG 401 Senior Project I (0, 6, 3, 10) Individually designed projects oriented toward providing experience in the establishment of objectives, criteria, synthesis, analysis, construction, testing, and evaluation; solution of open-ended problems; design methodology.
8. Yarıyıl SENG 412 Yazılım Mühendisliğinde Mesleki Sorunlar (3, 0, 3, 5) Bilgisayar teknolojisi ile ilgili etik problemlerin incelenmesi; bu problemlerin klasik felsefi etik kuramların çatısında tartışılması; yasal ve yarı-yasal (politika ve düzenlemeler gibi) sorunlar; etik karar verme süreci, mahremiyet ve gizlilik, bilgisayar suçları, mesleki kurallar ve sorumluluklar, yazılım korsanlığı, bilgisayarların topluma etkileri SENG 412 Professional Issues in Software Engineering (3, 0, 3, 5) Critical examination of ethical problems associated with computer technology; discussion of these problems conducted within the framework of classical philosophical ethical theories; legal and quasi-legal (i.e., policy and regulative) issues; topics addressed include the process of ethical decision-making, privacy and confidentiality, computer crime, professional codes and responsibilities, software piracy, the impact of computers on society. SENG 402 Mezuniyet Projesi II (0, 6, 3, 10) SENG 491 dersinin proje tasarımının gerçekleştirilmesine odaklanmış devamı. SENG 402 Senior Project II (0, 6, 3, 10) Continuation of Senior Project I focused upon implementation of a project design. SEÇMELİ DERSLER SENG 351 Grafik Kullanıcı Arayüzü Programlama Teknikleri (3, 0, 3, 5) İnteraktif programlar geliştirmek için bir görsel programlama ortamının kullanılması. Kullanıcı arayüzü tasarımı, belgeleme, test ve hata ayıklama. SENG 351 GUI Programming Techniques (3, 0, 3, 5) Usage of a visual programming environment to develop interactive programs. User interface design, documentation, testing and debugging. SENG 353 Hareketli Yazılım Geliştirilmesi (3, 0, 3, 5) Mobil uygulamaların özellikleri, durum makinaları diyagramları, performans ve bellek yönetimi, Multithreading, XML, grafik ve kullanıcı arayüzü performansı, mobil uygulamaların paketlenmesi ve dağıtımı. SENG 353 Mobile Software Development (3, 0, 3, 5) Characteristics of Mobile Applications, State Machine diagrams, Performance and Memory Management, Multithreading, XML, Graphics and User Interface Performance. Packaging and Deploying Mobile Applications. SENG 352 Çevik Yazılım Mühendisliği (3, 0, 3, 5) Sürdürülebilir yazılım geliştirilmesi, sürdürülemeyen yazılım geliştirilmesi ve nedenleri, sürdürülebilir yazılım geliştirmenin prensipleri, çalışan ürün, kusur önlenmesi, tasarım vurgusu, sürekli geliştirme, kültür değişimi ve sürdürülebilir geliştirme.
SENG 352 Agile Software Engineering (3, 0, 3, 5) Sustainable Software Development, Unsustainable Software Development and Its Causes, The Principles of Sustainable Software Development, Working Product, Defect Prevention, Emphasis on Design, Continual Refinement, Culture Change and Sustainable Development SENG 354 İleri Veritabanı Sistemleri (3, 0, 3, 5) İleri varlık ilişki modellemesi, UML sınıf diagramları, SQL standartları, ileri ilişkisel özellikler, ilişkisel veri modeline nesneye dayalı konsept modelinin eşlenmesi, ilişkisel veri tabanlarına web üzerinden erişim, XML ve veritabanları, nesneye dayalı veritabanları ve ODMG standartı, SQL standartı, nesne-ilişkisel özellikler. SENG 354 Advanced Database Systems (3, 0, 3, 5) Enhanced Entity Relationship Modeling, UML conceptual class diagrams, SQL standard: advanced relational features, mapping object-oriented conceptual models to relational data model, Web access to relational databases, XML and databases, object-oriented databases and the ODMG standard, SQL standard: object-relational features SENG 356 Kritik Sistemler Mühendisliği (3, 0, 3, 5) Kritik sistemler, gerçek zamanlı sistemler, kritik system tanımlaması, geliştirme, onaylama, güvenlik mühendisliği, yazılım kalite yönetimi, hataya karşı tasarım, COTS tabanlı sistem mühendisliği. SENG 356 Critical Systems Engineering (3, 0, 3, 5) Critical Systems, real-time systems, critical systems specification, development, validation, security engineering, software quality management, design for failure, COTSbased system engineering SENG 358 Yazılım İşletimi ve Bakımı (3, 0, 3, 5) Yazılım bakımına giriş, bakım şekilleri, tersine mühendislik ve tekrar mühendislik, bakım modelleri ve bakım personeli. SENG 358 Software Operation and Maintenance (3, 0, 3, 5) Introduction to software maintenance, forms of maintenance, reverse engineering and reengineering, maintenance models, and maintenance personnel SENG 451 Ağ Mühendisliği (3, 0, 3, 5) Web tabanlı sistemler, web mühendisliği, haberleşme, planlama, modelleme, web uygulamaları tasarımı, etkileşim tasarımı, bilgi ve fonksiyonel tasarımı, inşaa ve açılma, teknoloji ve araçlar, test, değişim ve içerik yönetimi. SENG 451 Web Engineering (3, 0, 3, 5) Web based systems, web engineering, communication, planning, modeling, web application design, interaction design, information and functional design, construction and deployment, technologies and tools, testing, change and content management
SENG 453 Yazılım Değişiklik, Yapılanma ve Yayınlama Yönetimi (3, 0, 3, 5) Yazılım geliştirme projelerinin parçalarının proaktif olarak yönetimi, proje çıktılarının kontrolü ve belgelenmesi için proje bazlı yapılanma yönetimi oluşturulması, yapılanma belirlenmesi ile donanım ve yazılım kalemlerinin belirlenmesi. Yapılanış kontrol prosedürlerinin belirtilerek değişim isteklerinin etkilerinin yönetimi. Ürün sağlamlığını sağlamak için ana hat ve yayın denetimlerinin tasarımı. Değişiklik isteklerini uygulamak için bir sürüm planlanması ve planlı özellik açılımı SENG 453 Software Change, Configuration and Release Management (3, 0, 3, 5) Proactively managing the components of software development projects, constructing a project-based Configuration Management (CM) plan to control and document project deliverables, identifying hardware and software items managed through Configuration Identification. Managing the impact of change requests by specifying Configuration Control procedures. Design of baseline and release audits to ensure product stability. Planning a release to implement change requests and scheduled feature rollout. SENG 455 Dağıtık Yazılım Mühendisliği (3, 0, 3, 5) Tekniklerle tanışma ve dağıtık yazılım mühendisliği için programlama arayüzleri. Birkaç tabakada ağ protokolleri. Ağ protokol hizmetleri kullanarak dağıtık ve eşzamanlı yazılım inşaası. Internet ve ağ-temelli yazılımın uygulamaları SENG 455 Distributed Software Engineering (3, 0, 3, 5) Introduction to techniques and programming interfaces for distributed software engineering. Networking protocols at several layers. Construction of distributed and concurrent software using network protocol services. Applications of Internet and Webbased software SENG 457 Yazılım Mühendisliğinde Resmi Yöntemler ve Modeller (3, 0, 3, 5) Yazılım sistemlerini belirtmek, geçerli kılmak, ve doğrulamak için resmi mekanizmalar. Hoare'nin metodu ve Dijkstra'nın en zayıf önkoşulları ile program doğrulama. Cebirsel tanımlamalar kullanarak biçimsel tanımlamalar ve başlangıç tanımlamaları ve uygulama boyunca iyileştirmeleri de içeren soyut örnek tanımlamalar. Formal yöntemlerin mevcut programlama dilleri ile bütünleşmesi, ve Formal yöntemlerin test etme, emniyet analizi ve nesne-tabanlı yaklaşımlarının uygulaması, OCL kullanarak formal yöntemler. SENG 457 Formal Methods and Models in Software Engineering (3, 0, 3, 5) Formal mechanisms for specifying, validating, and verifying software systems. Program verification through Hoare's method and Dijkstra's weakest preconditions. Formal specification via algebraic specifications and abstract model specifications, including initial specification and refinement towards implementation. Integration of formal methods with existing programming languages, and the application of formal methods to requirements analysis, testing, safety analysis, and object-oriented approaches. Formal methods using the Object Constraint Language (OCL).
SENG 459 Yazılım Mühendisliği Ekonomisi (3, 0, 3, 5) Yaşam döngüsünün nicel modelleri, yazılım mühendisliğinde maliyet geçerliliği analizi, çeşitli-amaç karar analizi, belirsizlik ve risk analizi, yazılım maliyet tahmini, yazılım ölçütleri ve nicel yaşam döngüsü yönetim teknikleri. SENG 459 Software Engineering Economics (3, 0, 3, 5) Quantitative models of the software lifecycle, cost-effectiveness analysis in software engineering, multiple-goal decision analysis, uncertainty and risk analysis, software cost estimation, software engineering metrics; and quantitative lifecycle management techniques. SENG 461 Tekrar Kullanılabilir Yazılım Mimarileri (3, 0, 3, 5) Yazılım mimarisinde tekrar kullanımı yükselticek yazılım konseptleri. Yazılım diyaznına obje teknolojisinin etkisi ve tekrar kullanım. Tanım kümeli modelleme metotları, Ders ayrıca mimarı örütüleride iceren tekrar kullanılabilir yazılım örüntüleri vce yazılım bileşenleri ve nesneye yönelik programlamayı içerir. SENG 461 Reusable Software Architectures (3, 0, 3, 5) Software concepts that promote reuse of software architectures. The influence of object technology on software design and reuse is studied. Domain Modeling methods, which model the application domain as a software product family from which target systems can be configured, are investigated. The course also covers reusable software patterns including architecture patterns and design patterns, software components, and objectoriented frameworks. SENG 452 Yönetim Bilişim Sistemleri (3, 0, 3, 5) Arkaplan ve bağlam, birbiriyle ilişkililik, veri, bilgi ve kanaat, bilgi tabanlı ekonomi, küreselleşme, değişim oranı, değişim yönetimi, çeşitliliğin yönetimi, bilgi yönetim sistemleri, sanal organizasyon, evden çalışma, dağıtık takım çalışması, bilgi depoları, groupware SENG 452 Management Information Systems (3, 0, 3, 5) Background and context, Interrelatedness, Data, Information and Knowledge, The Knowledge Based Economy, Globalization, Rate of Change, change management, managing diversity, information management systems, knowledge management systems, virtual organization, home based working, distributed team working, knowledge repositories, groupware. SENG 454 Yazılım Ölçütleri (3, 0, 3, 5) Ölçüm kuramının temelleri, yazılım kalite ölçütlerine genel bakış, yazılım geliştirmede temel kalite araçları, etkinlikte kusur ayıklanması, Rayleigh modeli, üstsel dağılım ve güvenilirlik gelişme modeli, yazılım testi için süreç içindeki ölçütler, ölçüt karmaşıklığı ve modelleri, kullanılabilirlik ölçütleri, müşteri tatmininde ölçüm ve analiz, fonksiyon noktası ölçütlerini kullanarak yazılım süreci iyileştirmesi
SENG 454 Software Metrics (3, 0, 3, 5) Fundamentals in Measurement Theory, Software Quality Metrics Overview, Basic Quality Tools in Software Development, Defect Removal Effectiveness, The Rayleigh Model, Exponential Distribution and Reliability Growth Models, In-Process Metrics for Software Testing, Complexity Metrics and Models, Availability Metrics, Measuring and Analyzing Customer Satisfaction, Conducting Software Project Assessments Using Function Point Metrics to Measure Software Process Improvement SENG 456 Nesneye Dayalı Tasarım Örüntüleri (3, 0, 3, 5) Tasarım örüntülerinde nesneye dayalı tasarım prensipleri. Sistem gereksinimleri ya da yazılım sisteminin gereksinim tanımlaması yapıldıktan sonra, uygun nesneye dayalı yapının seçimi. Tasarım örüntülerinin yazılım sisteminin mantıksal görünümünde oluşturulması. Genelleştirilmiş yazılım tasarımı problemleri için geliştirilmiş tasarım çözümleri. Tasarım örüntülerinin yeniden kullanımı. Tasarım örüntülerinin bir nesneye dayalı dilde belirtilmesi. SENG 456 Object-Oriented Design Patterns (3, 0, 3, 5) Principles of object-oriented design through design patterns. A study of the selection of appropriate object-oriented structure after the system requirements or requirements specification of the software system have been developed. Design patterns are created in the logic view of the software system. A study of generalized design solutions for generalized software design problems. A study of the reuse of design patterns. Once developed, design patterns may be specified in any object-oriented language. SENG 458 Büyük Ölçekli Sistemler İçin Sistem Mimarisi (3, 0, 3, 5) Büyük ölçekli sistemlerinin teknik tanımlaması için sistem mimarisine giriş. Farklı mimari temsilleri arasındaki ilişkiler için detaylı bir çalışma ve ortaya çıkartılması için yöntemler. Pratik tanımlamalardan yapısal ve mimari tanımlamalara geçiş için sistem mühendisliği yaklaşımları. Varolan mimarilerin analizi ve yeni mimarilerin tasarımı. Modellemenin rolü, prototipleme ve mimari geliştirmede benzetim. Sistem mimarilerinin çalıştırılabilir modelleri ve performans değerlendirmesi. Sistem mimarının rolü, sistemler mimarisi süreci ve mimari ve tasarım faaliyetlerinin system yönetimi Birlikte işlevlik, bütünleştirme ve arayüzler. Büyük ölçekli kavramsal mimari sistemi kullanılarak, sistem mimari ilkelerinin uygulaması üzerine bir durum çalışması. SENG 458 Systems Architecture for Large-Scale Systems (3, 0, 3, 5) Introduction to system architecture for the technical description of large-scale systems. An intensive study of the relationships between the different types of architecture representations and the methodologies used to obtain them. Systems engineering approaches for transitioning from functional descriptions to structure and architectural descriptions. Analysis of existing architectures and design of new architectures. The role of modeling, prototyping, and simulation in architecture development. Executable models of system architectures and performance evaluation. The role of the systems architect, the systems architecting process, and systems management of architecture and design activities. System interoperability, integration, and interfaces. A case study of a largescale system conceptual architecture will be used to demonstrate application of systems architecture principles.
SENG 460 Bileşen Tabanlı Yazılım Geliştirme (3, 0, 3, 5) Yazılım bileşenlerinin ve bileşen tabanlı yazılımın temel ve kavramlarına giriş. Bileşen tabanlı yazılımın tasarım, modelleme, gerçekleştirme, test ve dağıtımı ile ilgili detaylı mühendislik ilkeleri. En ileri bileşen teknolojilerinin araştırılması. SENG 460 Component-Based Software Development (3, 0, 3, 5) Introduction to the concepts and foundations of software component and componentbased software. Detailed study of the engineering principles of modeling, designing, implementing, testing, and deploying component-based software. State-of-the-art component technologies will also be explored. SENG 462 Güvenli Yazılım Tasarım ve Programlaması (3, 0, 3, 5) Yazılım güvenliğinin teori ve pratiği, tampon taşmaları, yarış koşulları ve rasgele sayı üretimini içeren bazı yaygın yazılım risklerine odaklanarak, tasarım döngüsüsün erken adımlarında potansiyel tehdit ve açıkların teşhisi. Güvenlik açıklarını bulmak ve yoketmek için metodoloji ve araçların vurgulanması, güvenlik açıklarının olmadığını kanıtlayan teknikler ve yeni yazılımdaki güvenlik açıklarınından kaçınmak ve güvenli yazılım oluşturmak için gereken ilkeler: ilk adımdan başlayarak güvenlik odaklı yazılım geliştirilmesi ve yazılım yaşam döngüsü boyunca analiz ve risk yönetiminin entegre edilmesi. SENG 462 Secure Software Design and Programming (3, 0, 3, 5) Theory and practice of software security, focusing in particular on some common software security risks, including buffer overflows, race conditions and random number generation, and on the identification of potential threats and vulnerabilities early in the design cycle. The emphasis is on methodologies and tools for identifying and eliminating security vulnerabilities, techniques to prove the absence of vulnerabilities, and ways to avoid security holes in new software and on essential guidelines for building secure software: how to design software with security in mind from the ground up and to integrate analysis and risk management throughout the software life cycle.