ECTS - - Software Engineering (Ph.D. on B.S.)

Compulsory Departmental Courses

MDES600 - Research Methodology and Communication Skills (3 + 0) 5

Rigorous, scholarly research, particularly theses or dissertations. Literature review, surveys, meta-analysis, empirical research design, formulating research questions, theory building, qualitative and quantitative data collection and analysis methods, validity, reliability, triangulation, building evidences, writing research proposal

SE650 - Advanced Topics in Software Engineering (3 + 0) 5

Introduction to software engineering and related topics; software process and project metrics; project planning; scheduling and tracking; configuration management; software quality assurance; requirement analysis; data flow diagrams and related topics; design concepts and methods; implementation; testing methods and test strategies; object-oriented

SE654 - Advanced Topics in Software Quality Management (3 + 0) 5

Introduction to software quality and assurance; components of software quality assurance; configuration management; reviews, inspection and audits; software testing strategies and techniques; software quality standards; certification and assessment; introduction of case studies related with software process improvement and quality metrics; quality

SE684 - Seminar (0 + 0) 5

Each PhD student is expected to give a presentation on his/her thesis work and attend the seminars conducted by the other students and academic staff.

SE689 - Qualification Exam (0 + 0) 30

The contents of the required courses in the Ph.D program

SE691 - Thesis Proposal (0 + 0) 20

The research area in the topic of software engineering

SE696 - Special Studies on Thesis Subject (0 + 0) 25

Literature review and field study on thesis subject

SE697 - Doctoral Thesis (0 + 0) 150

Areas in the thesis protocol.

Elective Courses

CMPE525 - Object-Oriented Design and Programming (3 + 0) 5

Thinking object-oriented, abstraction, object-oriented analysis and design concept, design patterns, UML: introduction, role of modeling, models and views, core diagrams, fundamental elements, sequence, class, and package diagrams, development lifecycle, Java and UML: Responsibility-Driven Design (RDD), and CRC, classes, messages, inheritance, sub

CMPE533 - Computer and Network Security (3 + 0) 5

Encryption techniques and algorithms, public-key encryption, hash functions, digital signatures, authentication, network security, web security, operating system security (Unix and Windows), Bell-LaPadulla model, software and database security.

CMPE538 - Advanced Computer Networks (3 + 0) 5

Advanced concepts of TCP/IP computer networks, routing principles and routing algorithms in TCP/IP networks, wireless-networking, multimedia networks, network security, network management.

CMPE541 - Advanced Databases (3 + 0) 5

Database system concepts, transaction processing, concurrency control and database recovery, object-oriented and object-relational databases, semi-structured data and XML, parallel and distributed databases, advanced concepts of distributed databases, introduction to big data, temporal databases.

CMPE543 - Big Data Analytics (3 + 0) 5

Infrastructure as a Service(IaaS), Hadoop framework, hive infrastrucure, data visualization, MapReduce model, NoSQL databases, large-scale data workflows, clustering, using R.

CMPE555 - Introduction to Recommender Systems (3 + 0) 5

Basic Concepts of recommender systems, collaborative filtering algorithms, content-based recommendation algorithms, knowledge-based recommendation algorithms, and hybrid recommendation algorithms, evaluating recommender systems, a case study to generate personalized recommendations.

CMPE562 - Multiagent Systems (3 + 0) 5

Agent paradigm, abstract agent architectures, design of intelligent agents, agent cooperation, auction systems, negotiation, argumentation, interaction languages and protocols, distributed problem solving, coordination, applications for multi-agent systems.

CMPE564 - Natural Computing (3 + 0) 5

Problem solving by search, hill climbing, simulated annealing, artificial neural networks, genetic algorithms, swarm intelligence (including ant colony optimization and particle swarm optimization), artificial immune systems.

CMPE571 - Biometric Identification and Verification Systems (3 + 0) 5

Biometric identification and verification, performance calculations of biometric systems, fingerprint verification, face recognition, iris and retina based identification, hand geometry and DNA based identification, multimodal biometric systems, biometric system standards.

CMPE572 - Fundamentals of the Theory of Computation (3 + 0) 5

Models of computation, Church-Turing thesis, decidability and undecidability, recursive enumerability, time complexity, classes P and NP, space complexity, LOGSPACE, PSPACE-completeness.

ISE511 - IT Strategy Planning and Governance (3 + 0) 5

The IT strategic planning process; structuring the strategic planning process, analyzing the business environment; identifying the mission and competencies of your organization; assigning value and weight to enterprise objectives; reviewing established IT portfolios; measuring your IT governance maturity; aligning IT to your business objectives, de

ISE542 - IT Security (3 + 0) 5

Introduction to IT security, security plans, security policies, security models: TCSEC, common criteria, ISE/IEC 27000, CIBIT, ITIL; security risk assessment and management; security solutions; IT services and security; personnel security; ethics in IT security.

ISE543 - Internet Security and Ethical Hacking (3 + 0) 5

Data encryption techniques and algorithms; public-key encryption, hash functions; digital signatures, authentication; network security; web security; system security, intruders, viruses, firewalls; the algorithms and data security tools; ethical hacking.

ISE552 - E-Commerce - A Managerial Perspective (3 + 0) 5

Introduction to e-business and e-commerce, electronic marketplaces; technical aspects and infrastructure of e-commerce; e-commerce business models; current state of the art; marketing online, legal environment in e-commerce, fiscal environment in e-commerce; introduction to enabling technologies and standards; workflow systems for e-commerce; curre

ISE553 - IT in Healthcare (3 + 0) 5

Health data management; uses and content of the medical record; health statistics, biomedical research, and quality management; health services organization and delivery; information technology and systems.

ISE554 - IT Strategies in E-Government (3 + 0) 5

Theoretical background of e-government; the use of e-government: local and global; technical and organizational aspects to realize e-government systems and contemporary sociotechnological methodologies; enterprise architectures, reference models and frameworks: Zachman, TOGAF, MoDAF, and DoDAF; interoperability standards: eGIF, EIF, SAGA, and other

ISE555 - IT Economy (3 + 0) 5

Basics of economics and accounting; strategic decision making; outsourcing; project evaluation techniques; IT operational budget: SaaS, pricing models; service economy; cost tracking and management; IT spending and staffing benchmarks, metrics; performance evaluation.

ISE563 - Application Management (3 + 0) 5

Introduction to application and service management; quality of service, ITIL and COBIT; event and incident management; problem management; configuration management; change management; release management; service level management; financial management; capacity management; IT service continuity and availability management; security management; appli

ISE564 - Architecture and Consultancy (3 + 0) 5

Alignment of IT initiatives with business objectives; efficiency and effectiveness of the IT infrastructure; Federal Enterprise Architecture (FEA); large scale software system development; product alternatives analysis; systems integration; ethical and professional representation.

SE503 - Information Systems Design (3 + 0) 5

Introduction to software architecture; design patterns; object-oriented modeling and architectural design with contemporary notation; experimentation in design; design prototyping; working on design teams and management of object-oriented projects; detailed design and implementation issues; design reviews; using design document for coding.

SE544 - Cognitive Aspects of Software Engineering (3 + 0) 5

Introduction to cognitive science and its methods; cognitive processes related to software engineering (memory, expertise, attention, decision making and problem solving, team cognition); basic experimental design; case studies on cognitive aspects of software engineering research.

SE546 - Decision Support in Health Informatics (3 + 0) 5

Choosing the correct information for different decisions and communicate its meanings to users; evaluation of statistical and other methods and tools; the difference between research databases and operational databases; techniques to effectively communicate quantitative healthcare data using tables and graphs; methods for choosing the right medium.

SE550 - Software Engineering (3 + 0) 5

Introduction to software engineering and related topics; software process and project metrics; project planning; scheduling and tracking; configuration management; software quality assurance; requirement analysis; data flow diagrams and related topics; design concepts and methods; implementation; testing methods and test strategies; object-oriented

SE552 - Advanced Software Project Management (3 + 0) 5

Introduction to project management; algorithmic cost estimation models; advanced cost estimation models; function points estimation; risk assessment; life cycle models; prototyping; management of software reuse; software maintenance; software maturity framework; case studies.

SE554 - Software Quality Management (3 + 0) 5

Introduction to software quality and assurance; components of software quality assurance; configuration management; reviews, inspection and audits; software testing strategies and techniques; software quality standards; certification and assessment; introduction of case studies related with software process improvement and quality metrics.

SE555 - Model Driven Software Development (3 + 0) 5

Introduction to MDD; modeling languages; software reusability; domain specific modeling; metamodeling; model transformations; metamodeling tools; code generation; MOF (meta object facility); software components.

SE556 - Software Construction and Evolution (3 + 0) 5

Software construction fundamentals; software complexity; construction management; construction models; construction planning; software measurement; construction languages; coding; construction testing; reuse; verification and standards in construction; construction quality; integration.

SE558 - Software Architecture (3 + 0) 5

Introduction to software architecture; architecture business cycle; creating an architecture; introducing a case study; understanding and achieving quality; design, document and reconstruct software architecture; methods for architecture evaluation; quantitative approach to architecture design decision making; software product lines; middleware, mo

SE559 - Software Testing and Maintenance (3 + 0) 5

Fundamentals of testing; testing through software lifecycle; lifecycle of testing; static testing techniques; test design techniques; defect management.

SE560 - Requirements Engineering (3 + 0) 5

Domain understanding and requirements eliciation; requirements evaluation; requirements specification and documentation; requirements quality assurance; requirements evolution; modeling system objectives with goal diagrams; risk analysis on goal models; modeling system agents and responsibilities; modeling system behaviours; integrating multiple sy

SE562 - Formal Methods in Software Engineering (3 + 0) 5

Introduction to formal specifications for software development; software specification and development with mathematical semantics; constructing formal specifications for software-intensive systems; specification languages, Z, object Z and OCL; relating specifications and implementations; role of formal specification in system life cycle; classific

SE566 - Service Oriented Architecture and Web Services (3 + 0) 5

Basics of SOA; SOA design principles; SOA standards: foundations, BPEL, SOAP, WSDL and UDDI; web services; REST; SOA governance.

SE570 - Mobile Software Engineering (3 + 0) 5

An overview of mobile platforms; application development in Android; UI overview, activities, application lifecycle; intents, intent filters, broadcasts, broadcastReceivers; shared preferences, files, SQLite DB, content provider; automated testing, test-driven development; Google maps, mapView, mapActivity; threads; services; status bar notificatio

SE571 - Agile Software Development Approaches (2 + 2) 5

Introduction to agile methods; extreme programming (XP); Lean, Scrum; Crystal; feature-driven development (FDD); Kanban; dynamic systems development method (DSDM); architecture and design issues in agile software methods.

SE577 - Software Measurement (3 + 0) 5

Measurement theory; measure design and validation; measurement requirements; measurement process; techniques and tools for software measurement; measurement frameworks; measurement management; project, organization, product, service and quality measurement; ISO measurement standards; software estimation; software measurement repositories.