Skip to main content
TR

ADVANCED TOPICS IN SOFTWARE ENGINEERING

Course
ISYE555 - ADVANCED TOPICS IN SOFTWARE ENGINEERING
Department
Information Systems Engineering - English - Master
Course Type
Course
Status
Required
Language
English
Credit
3
ECTS
0
T+P+L
3 + 0 + 0
Course Coordinator(s)
-
Prerequisite
-
Keywords
-

Course Description

The main topics discussed in this course are development methodologies and design patterns. Software life cycle phases like requirements, design, implementation, testing and deployment will be discussed with methodologies like Waterfall, prototyping and Extreme Programming. Also design patterns like creational, structural and behavioral patterns will be evaluated.

ADVANCED TOPICS IN SOFTWARE ENGINEERING

Evaluation Tools (Active Term)

No evaluation items have been defined.

Course outcomes

  1. 01 Identify principles, methods and techniques used in Software Engineering.
  2. 02 Describe and Discuss Software Development Life Cycle processes.
  3. 03 Explain the importance of Agile development and recognise the techniques used in this area.
  4. 04 Implement Process Requirements engineering.
  5. 05 Practice System Modelling techniques, tools and methods.
  6. 06 Describe and outline System Testing stages and System Evolution.

Course Syllabus

Week Topic
Week 1 IceBreaking, Introduction to Software Engineering
Week 2 Software Process models
Week 3 Agile Development
Week 4 Project Management
Week 5 Requirements Engineering: Functional, Non-Functional and Domain Requirements
Week 6 Requirements Engineering: Requirements eliction and specification
Week 7 System Modelling, Design and Implementation: Behaviour of the System
Week 8 Midterm Exam
Week 9 System Modelling, Design and Implementation: Structure of the System
Week 10 System Modelling, Design and Implementation: Object-Oriented Design & Development
Week 11 Software Architecture : Model View Controller, Layered Architecture, Repository Architecture, Client - Server Architecture, Pipe - Filter Architecture
Week 12 Software Testing : Developing Testing, Test Driven Development, User Testing
Week 13 Software Evolution: Legacy System and Software Maintenance
Week 14 Review and Exercises
Week 15 Final Exam

Reference Books & Course Materials

  1. 01 Ian Sommerville, Software Engineering, 10th Edition, Addison Wesley, 2016.

Learning Outcomes

  1. L01 Identify principles, methods and techniques used in Software Engineering.
  2. L02 Describe and Discuss Software Development Life Cycle processes.
  3. L03 Explain the importance of Agile development and recognise the techniques used in this area.
  4. L04 Implement Process Requirements engineering.
  5. L05 Practice System Modelling techniques, tools and methods.
  6. L06 Describe and outline System Testing stages and System Evolution.

Program Outcomes

No program outcomes have been defined.

Po-Lo Matrix

The PO-LO matrix has not been populated yet.