Department of Software Engineering
Chairman’s Welcome Message

Welcome to the Near East University Department of Software Engineering web page. The department was established in 2013 within the Faculty of Engineering. In the department, English Bachelor (BSc) education is given. There is also a Master's program in English within the Graduate School of Applied Sciences.

Software engineering is an emerging interdisciplinary engineering department in the TRNC and Turkey. In the first year of undergraduate education, basic engineering education is given as in other engineering branches. In the following years, it focuses on educational software principles and the theory and practice of systems. Software Engineering is a department that requires intensive laboratory and computer use studies.

As the curriculums of both Software Engineering and Computer Engineering undergraduate programs observed it can be seen that they have very close similarities. While Computer Engineering curriculum has been prepared, more hardware and hardware related studies are thought and designed. However, in Software Engineering education, all the principles and methods required to develop software, software development processes are aimed. In addition to the former topics testing the software created in these processes, determine the determination and implementation of the analysis, test and maintenance repair steps, are considered in order to train the graduates with the ability to integrate different information systems.

The basic vision of our graduate program (MSc) is to give the best and highest quality education to our students, to make creative researches, to publish these researches in highly claimed international journals and magazines, as well as to provide the necessary service to the private and public sector about informatics.

We could suggest that students who are interested in software design, development and engineering issues, also in the future who want to work in area of government offices, municipalities, private companies, hospitals, as well as in their own workplace, diligent and rigorous students can choose the Software Engineering department.

Prof. Dr. Fadi Al-Turjman
Head of the Department of Software Engineering

Courses
  • Basic Departmental
  • Departmental
  • Departmental Elective
  • Non-Departmental Elective
Course CodeCourse NameCreditECTSPrerequisiteClass HoursLABPracticalLearning Sessions
PSCRT
1. YEAR / 1. SEMESTERCHM101General Chemistry45-3200221
ENG101English I33-0000111
MTH101Mathematics I45-4002110
ECC102Programming and Problem Solving45-4202211
PHY101General Physics I45-4202110
MTH113Linear Algebra35-3001110
YİT101/ TUR101Turkish for Foreign Students I Turkish for Turkish Students I22-2000201
1. YEAR /2. SEMESTERECC108Object Oriented Programming37ECC1024203111
ENG102English II33ENG1010000111
MTH102Mathematics II46MTH1014002110
ECC104Discrete Structures36-3000111
PHY102General Physics II46PHY1014202110
YİT102/ TUR102Turkish for Foreign Students II Turkish for Turkish Students II22YIT101 TUR1012000201
2. YEAR /1. SEMESTERMTH251Probability and Statistics36MTH1134002110
ECC201Data Structures and Algorithms46ECC1084202211
ECC001Logic Design46ECC1044202112
ENG201Oral Communication Skills33ENG1023001110
ECC003Software Engineering37ECC1043000111
AIT101/ AIT103Principles of Atatürk and the History of Turkish Revolution I (Foreign Students)22-2000201
2. YEAR /2. SEMESTERECC202Database Management Systems46ECC2014002110
ECC203Computer Architecture and Organisation36ECC0013000111
ECC427Management for Engineers35-3000111
SWE202Software Construction35ECC0033000111
SWE234Human-Computer Interaction34-3001110
SWE299Summer Practice I02-0000000
AIT102/ AIT104Principles of Atatürk and the History of Turkish Revolution II (Foreign Students)22AIT101 AIT1032000201
3. YEAR /1. SEMESTERECC302Operating Systems36ECC2023000111
ECC004Programming Languages I36ECC2013202111
ECC439Occupational Health and Safety I24-3000201
SWE301Software Design and Architecture48SWE2024000121
ECC311Management Information Systems36ECC4274001021
3. YEAR / 2. SEMESTERECC005Internet Programming36ECC0043101111
ECC303Data Communication and Networking46ECC0014102111
ECC440Occupational Health and Safety II24ECC4393000201
SWE302Software Quality Assurance and Test36SWE3013001011
SWE304Software Requirements Analysis36SWE3013001011
SWE399Summer Practice II02-0000000
4. YEAR / 1. SEMESTERSWE401Software Project Management34SWE3043001110
ECC430Principles of Information Security35ECC3033000111
SWE491Senior Project I26--------
TETechnical Elective35--------
TETechnical Elective35--------
TETechnical Elective35--------
4. YEAR / 2. SEMESTERECC429Engineering Ethics37-3000111
SWE492Senior Project II48SWE491-------
ECC426Introduction to Economics35-3000111
TETechnical Elective35--------
TETechnical Elective35--------
TOTAL143240

PS: Problem Solving C: Complementary R: Reformative T: Tutorial

Technical Elective Courses

  • Basic Departmental
  • Departmental
  • Departmental Elective
  • Non-Departmental Elective
Course CodeCourse NameCreditECTSClass HoursLABPracticalLearning Sessions
PSCRT
ECC431e-Commerce353000111
ECC412Database Applications353202111
ECC002System Simulation353001110
ECC404Neural Networks353201121
ECC419Image Processing353202111
ECC402Computer Graphics353202111
ECC405Computer Hardware353000111
ECC406System Programming353202111
ECC413Artificial Intelligence353000120
ECC417Mobile Programming353000210
ECC408Advanced Object Oriented Programming353202210
ECC409Object Oriented Programming II353202210
ECC407Programming Languages II353201121
SWE403Large Scale Software Development353000111
SWE404Software Patterns353000111
SWE406Distributed Software Patterns353000111
SWE407Real-Time Embedded Systems353000111
SWE408Formal Methods in Software Engineering353000111
SWE409Analysis and Design of User Interfaces353000111
SWE405Rapid Application Development353000111
ECC415Decision Making353000111

PS: Problem Solving C: Complementary R: Reformative T: Tutorial

Course Descriptions

YEAR 1

TUR101 Turkish for Turkish/Turkish Cypriot Students I (course type: only for Turkish/Turkish Cypriot Students) (2 Credits)
Course objective: The aim of this course is to introduce Turkish Language for Turkish/Turkish Cypriot Students of NEU.
Course Content: Definition and importance of language; the relationship between language and culture; written language and its features, external structure and rules in written expression, spelling rules and punctuation marks; plan, theme, point of view, helpful ideas, paragraph writing; concept of composition, composition writing rules and plans; composition, composition, paragraph review, composition correction studies, general expression disorders, thinking and expressing thoughts; various types of writing (memo, paragraph, story, criticism, novel, etc.) formal writings (curriculum vitae, petition, report, announcement, bibliography, official writings, scientific articles, articles, etc.), the introduction, development and conclusion of articles) will be studied.

TUR102 Turkish for Turkish/Turkish Cypriot Students II (course type: only for Turkish/Turkish Cypriot Students) (2 Credits)
Course objective: The aim of this course is to introduce Turkish Language for Turkish/Turkish Cypriot Students of NEU.
Course Content: In the lecture, the importance of speech, speech disorders, collective discussion types, body language and the successful use of speech are given to the students.
Prerequisite: TUR101

YİT101 Turkish for Foreigners I  (course type: only for Foreign Students) (2 Credits)
Course objective: The aim of this course is to introduce Turkish Language for Foreign Students of NEU.
Course Content: Fundamentals of Turkish phonology, simple sentence structures, vocabulary, simple sentence structure of Turkish, case endings and certain structures necessary for fluent communication, tenses and possessive constructions, reading articles and essays written in Turkish.

YİT102 Turkish for Foreigners II (course type: only for Foreign Students) (2 Credits)
Course objective: The aim of this course is to introduce Turkish Language for Foreign Students of NEU.
Course Content: Vocabulary of the Turkish (Recognition of words as words, relations between words), sentence information (sentence organizations, general structure and sentence types), reading-writing (reading rules and writing techniques, spelling rules, comprehension of speech and writing language, spelling rules.), reading comprehension (reading comprehension techniques, texts), applications on the texts suitable for their own professions. speech (learning the techniques of speech, specific emphasis, learning of the forms such as intonation on appropriate texts)
Prerequisite: YIT101

CHM101 G. Chemistry (course type: required) (4 Credits)
Course objective: The aim of this course is to give fundamentals of Chemistry to engineering students.
Course Content: A basic course with emphasizing the metric system. Introduction to atomic theory, stoichiometry. The structural and physical properties of matter. Periodic relationship among elements and periodic table. Gaseous state. Thermo-chemistry. Energy and enthalpy. Electronic structure of atoms. Chemical bonding.

ECC102 Programming and Problem Solving (course type: required) (4 Credits)
Course objective: This course provides an introduction to fundamental concepts of programming and use of built-in data structures in solving problems using the Python general-purpose programming language.
Course Content: In this course, students study how 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 into object-oriented programming.

ECC108 Object Oriented Programming (course type: required) (3 Credits)
Course objective: 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 a more advanced use of programming tools (mainly editors and debuggers) that were introduced in ECC102 (Programming and Problem Solving). 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. The course builds upon the knowledge of ECC102 and ECC201 and is the third course in line that uses Python as programming language.
Prerequisite: ECC102

ENG101 English I (course type: required) (3 Credits)
Course objective: This course aims at enabling students to understand their lessons and to express themselves in English
Course Content: Within a thematic approach, reading, writing, speaking, and listening skills will be               developed, with a language component in order to build onto the foundation established at the Department of English. In speaking and writing, students will be encouraged to use language forms that they learn through reading and listening. Under broad themes (or threads), the students will be exposed to extensive reading both in and outside the classroom. They will be encouraged to read a variety of texts such as short stories, academic articles, research reports, reviews and journalistic texts as well as chapters from textbooks.

ENG102 English II (course type: required) (3 Credits)
Course objective: This course aims to take students to intermediate advanced level of English.
Course Content: This course will be a continuation of ENG 101, with greater emphasis on student autonomy, research skills and synthesizing ability. In Eng-102, the ability to evaluate, analyze and synthesize information in written discourse will be highlighted. Documentation in writing will be introduced at the beginning of the course, in order to solidly establish the skill by the end. Students will learn the discourse patterns and structures to be used in different essay types. Students will prepare essays: 1. An academic essay with proper documentation. 2. A project report to be prepared throughout the course, including a literature review (displaying analysis/synthesis skills, and documentation), a definition/elaboration of a problem (using definition, description, cause/effect and comparison/contrast patterns) and suggestions for solution (including personal views and argumentation). Local and regional topics, personalizing the research and viewpoints will be recommended to prevent plagiarism. Instructors will have to keep in close contact with the students to guide them throughout the process.
Prerequisite: ENG101

MTH101 Mathematics I (course type: required) (4 Credits)
Course objective: This course aims to give fundamentals of Calculus to students.
Course Content: 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.

MTH102 Mathematics II (course type: required) (4 Credits)
Course objective: This course aims to give advances of Calculus to students.
Course Content: Plane and polar co-ordinates, area in polar co-ordinates, 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 numbers.
Prerequisite: MTH101

MTH113 Linear Algebra (course type: required) (3 Credits)
Course objective: This course aims to give details of Linear Algebra to students.
Course Content: Matrices and Systems of Equations, Determinants, Vector Spaces, Linear Transformations, Orthogonality, Eigenvalues, Numerical Linear Algebra.

ECC104 Discrete Structures (course type: required) (3 Credits)
Course objective: This course aims to introduce students about discrete structures.
Course Content: 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.

PHY101 Physics I (course type: required) (4 Credits)
Course objective: This course aims to introduce students about 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.

PHY102 Physics II (course type: required) (4 Credits)
Course objective: This course aims to introduce students about 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.
Prerequisite: PHY101

YEAR 2

AIT101 Ataturk’s Principles and Reforms I (course type: only for Turkish Students) (2 Credits)
Course objective: The aim of this course is to give detail introduction about the Turkish Republic History for Turkish students.
Course Content: General situation before 1st World War, Kurtulus War and manner of Ottoman Empire, Occupations, Ataturk and liberation of Samsun in 19 May 1919, Ataturk’s life and personal characteristics and variety features and reforms.

AIT102 Ataturk’s Principles and Reforms II (course type: only for Turkish Students) (2 Credits)
Course objective: The aim of this course is to give detail introduction about the Turkish Republic History for Turkish students.
Course Content: Mustafa Kemal Pasha, carried out in principle 29 October 1923 until his death from the Republic of Turkey and reforms are considered penny.
Prerequisite: AIT101

AIT103 Ataturk’s Principles and Reforms for Foreign Students I (course type: only for Foreign Students) (2 Credits)
Course objective: The aim of this course is to give detail introduction about the Turkish Republic History for Foreign students.
Course Content: Beside discussing the definition of the term “Revolution” by giving some examples such as French and Russian Revolutions, this course mainly focuses on the historical process that laid the basis of the foundation of Modern Turkey. In this context, after presenting a concise political history of the Ottoman Empire and its state mechanism, the political, social and economical developments between the Sultan Selim III Period (1789-1808) and the proclamation of Republic of Turkey by Mustafa Kemal Ataturk in 1923, are examined.

AIT104 Ataturk’s Principles and Reforms for Foreign Students II (course type: only for Foreign Students) (2 Credits)
Course objective: The aim of this course is to give detail introduction about the Turkish Republic History for Foreign students.
Course Content: The political, social, economical and cultural transformation in the Republic of Turkey; The six principles of Atatürk and Kemalizm; Turkish Foreign Policy during the Atatürk period.
Prerequisite: AIT103

ECC201 Data Structures and Algorithms (course type: required) (4 Credits)
Course objective: 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.
Course Content: 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.
Prerequisite: ECC108

ECC202 Database Management Systems (course type: required) (4 Credits)
Course objective: This course comprises an introductory exploration into 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.
Prerequisite: ECC201

ECC001 Logic Design (course type: required) (4 Credits)
Course objective: The aim of this course is to give the basics of Digital Logic Systems.
Course Content: Digital Systems and Information, Combinational Logic Circuits, Combinational Logic Design, Arithmetic Functions and HDLs, Sequential Circuits, Selected Design Topics, Registers and Register Transfers, Memory Basics, Computer Design Basics, Instruction Set Architecture, RISC and CISC Processors, Input-Output and Communication, Memory Systems.
Prerequisite: ECC104

ECC427 Introduction to Management (course type: required) (3 Credits)
Course objective: The aim of this course is to introduce the main aspects of management.
Course content: Principles of management. Functions of managers. Organisation and environment. Marketing management. Production management. Personnel management. Managerial control. Accounting and financial reports. Budgeting and overall control.

MTH251 Probability and Statistics (course type: required) (3 Credits)
Course objective: The aim of this course is to give details of probability to engineering students.
Course Content: 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.
Prerequisite: MTH113

ENG201 Oral Communication Skills (course type: required) (3 Credits)
Course objective: The aim of the course is to provide techniques for dealing with academic prose.
Course Content: Definition of Technical Communication, Profiling Audiences, The Technical Communication Process, Technical Communication Style, Researching, Designing Pages, Using Visual Aids, Summarizing, Defining, Describing, Sets of Instructions, Memorandums and Informal Reports, Developing Websites, Formal Reports, Recommendation and Feasibility Reports, Proposals, User Manuals, Oral Presentations, Letters, Job Application Materials.
Prerequisite: ENG102

ECC003 Software Engineering (course type: required) (3 Credits)
Course objective: The aim of the course is to prepare students to real life application 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.

SWE202 Software Construction (course type: required) (3 Credits)
Course objective: This course aims to engage students with concepts related to the construction of software systems at scale, building on their understanding of the basic building blocks of data structures, algorithms, program structures, and computer structures.
Course content: General principles and techniques for disciplined low-level software design. BNF and basic theory of grammars and parsing. Use of parser generators. Basics of language and protocol design. Formal languages. State-transition and table-based software design. Formal methods for software construction. Techniques for handling concurrency and inter-process communication. Techniques for designing numerical software. Tools for model-riven construction. Introduction to Middleware. Hot-spot analysis and performance tuning.
Prerequisite: ECC003

SWE234 Human Computer Interaction (Course type: required) (3 Credits)
Course objective: The main objective is to perform analysis, establish requirements, design and evaluate interactive computer-based systems and products. The purpose of this course is to give the student basic knowledge about human-computer interaction. It will discuss how to understand human cognition and human perspective by working with computers.
Course content: Psychological principles of human-computer interaction. Evaluation of user interfaces. Usability engineering. Task analysis, user-centred design, and prototyping. Conceptual models and metaphors. Software design rationale. Design of windows, menus, and commands. Voice and natural language I/O. Response time and feedback. Colour, icons, and sound. Internationalization and localization. User interface architectures and APIs. Case studies and project.

SWE299 Summer Practice I (Course type: required) (0 Credits)
Course objective: This course provides real working life experience for students. Students will be able to apply their theoretical knowledge into practice.
Course content: A minimum of 40 working days for this practice is required in a manufacturing or service organization.  This one can involve 20 working days minimum.

YEAR 3

ECC302 Operating Systems(course type: required) (3 Credits)
Course objective: 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.
Prerequisite: ECC108

ECC303 Data Communication and Networking (course type: required) (4 Credits)
Course objective: The aim of this course is to give details of computer networking and data communications.
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.
Prerequisite: ECC001

ECC311 Management Information Systems (course type: required) (3 Credits)
Course objective: The aim of the course is to provide knowledge about MIS.
Course Content: Introduction to Management Information Systems, Global E-Business, Foundations of Business Intelligence, Documenting Information Systems, Decision Making and Managing Knowledge, Building Information Systems and Managing Projects, Ethical and Social Issues in Information Systems.
Prerequisite: EAS103

ECC439 Occupational Health and Safety I
Course Objective: The aim of the course is to introduce students about safety applications in real life practices.
Course Content: Occupational Health and Historical Development of Safety, Occupational Health and Purpose and Importance of Safety, Occupational Health and Safety Concepts in the area, Overview of the Occupational Health and Safety, work accidents, occupational diseases, to be taken against the Work Accidents and Occupational Diseases precautions, accidents at work and Costs arising from occupational diseases.

ECC440 Occupational Health and Safety II
Course Objective: The aim of the course is to introduce students about safety laws.
Course Content: Occupational Health and Safety in National Laws, National and International Organizations and Contracts, Occupational Health and Safety Management Systems, Risk Management and Evaluation, Personal Protective Equipment

ECC004 Programming Languages I (course type: required) (3 Credits)
Course objective: The aim of the course is to introduce students to visual programming languages.
Course Content: Introduction to Visual Studio, An In-Depth Look at The IDE, Writing and Working With Code, Introducing the Object Automation Model, Extending and Customizing the Code Editor, Writing Macros, Writing Add-Ins and Wizards, Creating Enterprise Applications.
Prerequisite: ECC202

SWE301 Software Design and Architecture (Course type: required) (4Credits)
Course objective: The main aim of this course is to familiarize 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.
Prerequisite: SWE202

ECC005 Internet Programming (Course type: required) (3 Credits)
Course objective: The main aim of this course is to be familiar with the main uses of the Internet as the primary modern technology for online communication, understand the generic principles of computer programming as applied to implementing basic web-based applications.
Course content: Internet concepts. HTML programming principles. Graphical User Interface design principles. Using ASP to develop internet applications. Uploading and testing internet applications.
Prerequisite: ECC004

SWE302 Software Quality Assurance and Testing (Course type: required) (3 Credits)
Course objective: The aim of this course is to inform the students about Understand the fundamental concepts and theory of Software testing and Software Quality Management Implement process that ensures the Software is developed with good quality standards.
Course content: 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.
Prerequisite: SWE301

SWE304 Software Requirements Analysis (Course type: required) (3 Credits)
Course objective: The aim of this course is to understand the fundamental concepts of software requirements for implementation processes of a 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, 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.
Prerequisite: SWE301

SWE399 Summer Practice II (Course type: required) (0 Credits)
Course objective: This course provides real working life experience for students. Students will be able to apply their theoretical knowledge into practice.
Course content: A minimum of 40 working days for this practice is required in a manufacturing or service organization.  (This one can involve 20 working days minimum.)

YEAR 4

SWE401Software Project Management (Course type: required) (3 Credits)
Course objective: The aim of this course is to deliver successful software projects that support organization’s strategic goals and match organizational needs to the most effective software development model, as well as 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.
Prerequisite: SWE304

ECC417 Mobile Programming (course type: elective) (3 Credits)
Course objective: The aim of the course is to give the basics of mobile programming.
Course Content: Getting Mobile, Starting Your Mobile Site, Adapting to User Devices, Developing Standards- Compliant Sites, Sending Text Messages, Adding Spice to Messages: MMS, Making Money via Mobile Devices, Interactive Voice, Mobile AJAX, Mobile Web.
ECC431 E-commerce (course type: elective) (3 Credits)
Course objective: The aim of the course is to prepare students for design e-commerce sites.
Course Content: Starting an E-Commerce Site, Laying Out the Foundations, Starting a Project, Creating the Product Catalog, Product Attributes, Search Engine Optimization, Searching the Catalog, Receiving Payments Using PayPal, Catalog Administration, Creating Shopping Cart, Implementing AJAX Features, Accepting Customer Orders, Product Recommendations, Managing Customer Details, Storing Customer Orders, Implementing the Order Pipeline, Processing Credit Card Transactions, Product Reviews, Using Web Services.

ECC428 eGovernment (course type: required) (3 Credits)
Course objective: The aim of the course is to explain the eGovernment Systems to students.
Course Content: Understanding eGovernment, Approaches to Management of eGovernment Systems, eGovernment Strategy, Managing Public Data, Core Management Issues for eGovernment, Emerging Management Issues for eGovernment, eGovernment System Lifecycle and Project Assessment, Analysis of Current Reality, Design of the New eGovernment System, eGovernment Risk Assessment and Mitigation, eGovernment System Construction, Implementation and Beyond, Developing eGovernment Hybrids, Overall picture of the situation and progress of eGovernment and eInclusion in European countries, Local editions of the ePractice factsheets, European eID.
Prerequisite: -

ECC429 Engineering Ethics (course type: required) (3 Credits)
Course objective: The aim of the course is to provide knowledge about engineering ethics.
Course Content: 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.

ECC430 Principles of Information Security (course type: required) (3 Credits)
Course objective: The aim of the course is to prepare students for information security.
Course Content: Introduction to Information Security, The Need for Security, Legal, Ethical, and Professional Issues in Information Security, Risk Management, Planning for Security, Security Technology, Cryptography, Physical Security, Implementing Information Security, Security and Personnel, Information Security Maintenance.
Prerequisite: ECC303

ECC406 System Simulation (course type: elective) (3 Credits)
Course objective: The aim of the course is to give introduction to simulation as a problem solving tool.
Course Content: Methodology of simulation . The use of computers. Classification of simulation. Planning of a computer simulation experiment. Introduction to simulation programming languages.

SWE491 Senior Project I (Course type: required) (2 Credits)
Course objective: The aim of the course is to give senior design experience to students.
Course Content: This course is the first part of 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.

SWE492 Senior Project II (course type: required) (4 Credits)
Course objective: The aim of the course is to give senior design experience to students.
Course Content: Students continue the project they started in ISE491 course. Oral presentation and written reports are required.
Prerequisite: SWE491

ECC404 Neural Networks (course type: elective) (3 Credits)
Course Objective: Teaching the basics of neural networks. To illustrate the basic applications of neural networks using Matlab. To give the principles of neural networks approaches.
Course Content: The  Neural  network paradigm and fundamentals. Training by  error minimization. Back propagation algorithms. Feedback and recurrent  networks.  Hopfield network,  Genetic  algorithms.  Probability  and neural networks. Optimizations and constraint.

ECC406 System Programming (course type: elective) (3 Credits)
Course Objective: To  study    the  function  of  the  common  operating  system  kernel  routines  that  are  provided  by  an operating  system  and  accessible  from  a  systems programming  language.  Design,  write,  and  test moderately complicated low-level programs using a systems programming language. Proficiently use a  preprocessor  to  implement  code  that  is  portable  between  different  computing  platforms.  Use operating  system  kernel  calls  from  within  a  programming  language  to  allocate/free  virtual  memory, initiate  and  synchronize  multiple  threads/processes,  interact  with  the  file  system,  set  and  respond  to  timers/interrupts.
Course Content: Introduction  to  system  programming,  operating  systems  and  fundamental  concepts  of  programming language  processors,  one  and  two  pass  assemblers,  symbol  tables,  compilers  and  compiler  design, parsing, syntax and semantic phases, optimization, relocatable and linkable loaders, operating systems design principles.

ECC426 Economics for Engineers (course type: required) (3 Credits)
Course Objective: Discuss principles and economic analysis of decision  making.  Discuss  cost  concepts,  make-versus-purchase  studies;  Analyze  principles  of  money-time  relationships.  Work  on  cash  flow  analysis. Analyze application of money-time relations. Analyze supply and demand relations. Analyze price and demand   relations.Analyze   breakeven   point   analysis   and   effects   of   inflation   on  money-time  relationships
Course Content: Principles   and   economic   analysis   of   engineering   decision   making.   Cost   concept.   Economic environment. Price and demand relations. Competition. Make-versus-purchase studies. Principles and applications  of  money-time  relations. Depreciation.  Many  and  banking. Price  changes  and  inflation. Business and company finance.

ECC408 Advanced Object Oriented Programming  (course type: elective) (3 Credits)
Course Objective: Teaching  object-oriented  programming  using  C#  (C sharp).  To  develop  students'  skills  and dispositions  regarding  problem analysis  and  development  of  different  projects  using  object oriented   programming.   To   show   the   advantages   of   object   oriented   programming   and   visual  programming  in  project  development. To teach inheritance,  multiple  inheritance,  polymorphism, operator  overloading  and  implement  them  on  examples using C sharp.  Development  of  different programs  using  aggregation,  delegates,  Events.  To  teach the design of windows application using object-oriented and visual programming.
Course Content: Modeling   the  real  world using object-oriented software.   Overview   of   the   .NET   Framework. Components  and  Languages  in  the  .NET.  Structure of  a  C#  Program.  Input/Output.  Console  class, Namespace,  Generating  Extensible  Markup  Language  (XML)  document.  Data  Types.  Control Statements.  Methods,  Parameters.  Overloaded  Methods.  C#  and  Object  Orientation,  Classes  and Objects,  Encapsulation,  Constructors,  Creating  and  Destroying  Objects,  Destructors,  Inheritance, Interfaces, Aggregation,  Namespaces,  Modules,  Operator Overloading,  Delegates, Events. Windows Forms  Class  Hierarchy,  Properties,  Events,  Controls,  Dialogs,  Menus,  Multiple  Document  Interface, Data  Access  and  Data  Binding,  DataGridView,  ADO.NET,  .NET  Data  Providers,  Interacting with  XML Data, .NET controls.
Prerequisite: ECC108

ECC409 Object-oriented Programming Language II (course type: elective) (3 Credits)
Course Objective: Design,  compile  and  run  Java  applications  and  applets. Understand the role of the Java Virtual Machine  in  achieving  platform  independence.  Use  the  Object  Oriented  paradigm  in  design  of  Java programs.  Understand  the  division  of  classes  into  Java  packages.  Use  exceptions  to  handle  run  time  errors. Use threads in order to create more efficient Java programs. Design Java applications with database access.
Course Content: Introduction  to  Java.  Java  and  object-oriented  programming.  Introduce  advanced  Java  concepts  – inheritance,  polymorphism,  abstract  classes,  exception  handling,  use  of  collections  and  database connectivity. Gain more practi
cal experience by designing and writing Java applications. Components of Java  projects.  Designing  Graphic  User  Interface  GUI.  Java  Internet  applications. Java  applets.
Prerequisite: ECC108

Mission – Vision

Mission

The mission of the department of Software Engineering of the Near East University is to educate engineers that are meets the needs of society within the world standards also pursues scientific cooperation with national and international entities in academia, public and private sectors.

Vision

The vision of department is to be recognized as one of the leading institutions with Software Engineering programs, imparting the highest quality education to students and become a national and international center of research excellence in Software Engineering.

Program Information
Qualification Awarded

The students who successfully complete the program are awarded the degree of Bachelor of Science in Software Engineering.

Level of Qualification

This is a First Cycle (Bachelor’s Degree) program

Specific Admission Requirements

In the framework of the regulations set by Higher Education Council of Turkey (YÖK), student admission for this undergraduate program is made through a university entrance examination called ÖSYS. Following the submission of students’ academic program preferences, Student Selection and Placement Center (ÖSYM) places the students to the relevant program according to the score they get from ÖSYS.

  • International students are accepted to this undergraduate program according to the score of one of the international exams they take such as SAT, ACT and so on, or according to their high school diploma score.
  • Exchange student admission is made according to the requirements determined by bilateral agreements signed by NEU and the partner university.
  • Visiting students can enroll for the courses offered in this program upon the confirmation of the related academic unit. Additionally, they need to prove their English language level since the medium of instruction of the program is English.
Qualification Requirements and Regulations

The students studying in this undergraduate program are required to have a Cumulative Grade Points Average (Cum. GPA) of not less than 2.00/4.00 and have completed all the courses with at least a letter grade of DD/S in the program in order to graduate. The minimum number of ECTS credits required for graduation is 240. It is also mandatory for the students to complete their compulsory internship in a specified duration and quality.

Recognition of Prior Learning

At Near East University, full-time students can be exempted from some courses within the framework of the related bylaws. If the content of the course previously taken in another institution is equivalent to the course offered at NEU, then the student can be exempted from this course with the approval of the related faculty/graduate school after the evaluation of the course content.

Profile of the Program

The program's goal is to equip its graduates with both the fundamental scientific principles that underpin the key computing technologies in use today and the engineering skills that enable those principles to be applied in practice. Upon graduation, students should be equipped to pursue a career as computer professionals or, if they so wish, to pursue further academic studies. The graduates will be professionals who can be flexible and integrate in a relatively short time into a wide-range of different sectors of the industry.

Program Outcomes
  • To have adequate knowledge in Mathematics, Science, Computer Science and Management; to be able to use theoretical and applied information in these areas on complex engineering problems.
  • To be able to identify, define, formulate, and solve complex computer problems; to be able to select and apply proper analysis and modeling methods for this purpose.
  • To be able to design a complex system, process, device or product under realistic constraints and conditions, in such a way as to meet the requirements; to be able to apply modern design methods for this purpose.
  • To be able to devise, select, and use modern techniques and tools needed for analysis and solution of complex problems in Software Engineering applications; to be able to use information and software technologies effectively.
  • To be able to design and conduct experiments, gather data, analyze and interpret results for investigating complex engineering problems or Software Engineering research topics.
  • To be able to work efficiently in Software Engineering disciplinary and multi-disciplinary teams; to be able to work individually.
  • To be able to communicate effectively in Turkish, both orally and in writing; to be able to author and comprehend written reports, to be able to prepare design and implementation reports, to present effectively, to be able to give and receive clear and comprehensible instructions.
  • To have knowledge about global and social impact of Software Engineering practices on health, environment, and safety; to have knowledge about contemporary issues as they pertain to engineering; to be aware of the legal ramifications of Software Engineering solutions.
  • To be aware of ethical behaviour, professional and ethical responsibility; to have knowledge about standards utilized in engineering applications.
  • To have knowledge about industrial practices such as project management, risk management, and change management; to have awareness of entrepreneurship and innovation; to have knowledge about sustainable development.
  • To be able to collect data in the area of Software Engineering, and to be able to communicate with colleagues in a foreign language. ("European Language Portfolio Global Scale", Level B1)
  • To be able to speak a second foreign language at a medium level of fluency efficiently.
  • To recognize the need for lifelong learning; to be able to access information, to be able to stay current with developments in science and technology; to be able to relate the knowledge accumulated throughout the human history to Software Engineering.
Course and Program Outcomes Matrix
Occupational Profiles of Graduates

Graduates of Software Engineering program may work in the Information/Software Technologies department of a bank, a university, a hospital, a public institution, or a private company. Additionally, they may be employed as system analyst, application programmer, data base administrator, network designer, security administrator, system evaluator, system programmer, system designer, standard and methods inspector, final user support specialist in production, marketing, financial affairs, management, human resources and/or research and development departments of a production company.

Access to Further Studies

The students graduating from this program may apply to graduate programs.

Course Structure Diagram with Course Credits
Exam Regulations, Assessment and Grading
Graduation Requirements

In order to graduate from this undergraduate program, the students are required; to succeed in all of the courses listed in the curriculum of the program by getting the grade of at least DD/S with a minimum of 240 ECTS to have a Cumulative Grade Point Average (CGPA) of 2.00 out of 4.00 to complete their compulsory internship in a specified duration and quality.

Mode of Study

This is a full-time program.

Program Director (or Equivalent)

Assoc. Prof. Dr. Boran ŞEKEROĞLU, Head of Department, Faculty of Engineering, Near East University

Evaluation Questionnaires
  • Evaluation Survey
  • Graduation Survey
  • Satisfaction Survey