Courses given by the Department of Software Engineering


Course Code Course Name METU Credit Contact (h/w) Lab (h/w) ECTS
SE541 MULTIMEDIA AND WEB ENGINEERING 3 3.00 0.00 8.0

Course Content

Introduction to methodologies, techniques and tools used in the analysis, design and implementation of multimedia and web-based applications. Hands-on development of commercial web-based applications. A variety of software technologies relevant to web design and implementation. Including programming languages, scripting languages, network programming and security. Application development by going through all phases of eb engineering life cycle: specification, design, implementation and evaluation.

SE542 HUMAN COMPUTER INTERACTION 3 3.00 0.00 8.0

Course Content

Overview of next-generation user interfaces and underlying methodologies. A review of HCI concepts and history. Input devices and interaction techniques. User interface design paradigms. 3D user interfaces and adaptive interfaces. User modeling. Speech recognition and conversational interfaces. Wearable computers. Multimodal and perceptual interfaces.

SE546 SOFTWARE ARCHITECTURE 3 3.00 0.00 8.0

Course Content

Architectural level of software design. Major architectural styles. Architecture description languages and related tools. Architectural specification and analysis case studies. Relations with Frameworks, Design Patterns and Component Orientation.

SE547 INTRODUCTION TO FORMAL SPECIFICATIONS 3 3.00 0.00 8.0

Course Content

Overview of logical and set theoretic foundations. State of the art specification formalisms, such as Z, VDM, Larch, state charts, algebraic specifications, and related tools. Formal specification case studies.

SE548 PROCESS MODELLING 3 3.00 0.00 8.0

Course Content

Concept of software process and software process improvement, process concepts to industrial situations, process assessment techniques, software process improvement models, process capability models in related areas, modeling, assessment, analysis, reengineering, and integration of software processes.

SE549 OBJECT-ORIENTED CONSTRUCTION 3 3.00 0.00 8.0

Course Content

The object-oriented way of constructing software, CASE tools, testing tools, installation and configuration tools, formal and agile methods, pattern-oriented software construction and modern issues like object concurrency, distributed object management and object persistence.

SE550 SOFTWARE ENGINEERING 3 3.00 0.00 8.0

Course Content

A review of the breadth knowledge in software engineering, paradigms, process models, methodologies. Traditional, current and developing approaches to software development; their comparison and suitability to problem types. Definition and the techniques used for the lifecycle stages from specification to integration and standards, quality, reporting, estimation, planning, management, acquisiton, complexity, maintenance, reverse-engineering, validation and verification, and field operations on software systems.

SE554 SOFTWARE SYSTEM ANALYSIS AND DESIGN 3 3.00 0.00 8.0

Course Content

Introduction to software system analysis and design within process models and specification techniques perspective. Requirements elicitation and specification, analysis modeling and reporting, logical and detailed design. Various traditional, object oriented and contemporary methodology examples.

SE556 SOFTWARE PROJECT AND PROCESS MANAGEMENT 3 3.00 0.00 8.0

Course Content

State, in sequential order and without resorting to structured sentences, the main topics, issues, concerns, etc.covered in the course, separate individual items with a semi-colon or a full stop; only proper names and words beginning after a full stop should be capitalized.
Essentials of project management and process management with emphasis on software projects and processes. Project life-cycles and organization in connection with the basics of planning and project management processes. Project scope management. Project time management and estimation. Project cost management and estimation.Quality management and process improvement in relation to process management. Methods and tools for process analysis, modeling and improvement. Relationship between project management and processes. Agile project management: principles and practice. Team management, leadership and motivation. Project risk management. Project procurement management. Project closure.

SE560 SOFTWARE DEVELOPMENT STUDIO 3 1.00 4.00 8.0

Course Content

In this course the students will be given theoretical and practical skills related to software development lifecycle. The studio work will include different case studies in the form of teamwork and seminars related to real life applicatio projects.

SE599 TERM PROJECT 0 0.00 4.00 20.0

Course Content

For course details, see https://catalog2.metu.edu.tr.
SE701 SOFTWARE ARCHITECTURE 3 3.00 0.00 8.0

Course Content

For course details, see https://catalog2.metu.edu.tr.
SE702 PROCESS MODELING 3 3.00 0.00 8.0

Course Content

Introduction to the concept of software process. Modeling, assessment, analysis, reengineering, and intergration for software processes. Software process improvement and software process capability models.

SE703 ASPECT ORIENTED SOFTWARE DEVELOPMENT 3 3.00 0.00 8.0

Course Content

For course details, see https://catalog2.metu.edu.tr.
SE704 SOFTWARE REUSABILITY 3 3.00 0.00 8.0

Course Content

General Principles of Reusability. Forms of Reusability. Methods and Tools to Achieve Software Reusability. Domain Knowledge Management and Reuse. Software Product Lines. Model-Driven Architecture. Design Patterns and Anti-Patters. Class Libraries. Object-Oriented Frameworks. Patterns and Anti-Patterns in Frameworks. Reusability though Components and Web Services.

SE706 SOFTWARE SYSTEM CONSTRUCTION 3 3.00 0.00 8.0

Course Content

Overview of construction approaches. Basics of software reuse. Domain engineering for software construction. Application frameworks. Model-driven engineering Software product lines. Software testing with an emphasis on unit and integration testing. New approaches to software construction. Case study.

SE710 SOFTWARE ENGINEERING 3 3.00 0.00 8.0

Course Content

For course details, see https://catalog2.metu.edu.tr.
SE714 MULTIMEDIA AND WEB ENGINEERING 3 3.00 0.00 8.0

Course Content

For course details, see https://catalog2.metu.edu.tr.