Introduction
Software engineering is an established discipline based on requirement analysis, design, construction, testing, maintenance, economics, and management issues of software engineering. Software engineers are in demand in every segment of society affected by computing technology. Potential employers include all software vendors and Internet-based companies, electronic business organizations, businesses that build and sell computers, research and development laboratories, aerospace companies, government contractors, banks, insurance companies, and manufacturing organizations. Software engineers are concerned with the theoretical and practical aspects of technology, cost, and social impact of software systems that are both effective and efficient.
The Master of Science Degree in Software Engineering is designed for software engineers who want to expand their knowledge and experience in developing and modifying large, complex software systems. It emphasizes technical and management aspects of the software engineering process. The program offers experience from both academic and industrial perspectives. Through challenging curricula, innovative courses, and a technical emphasis, students learn and apply practices, tools, and techniques in a real-world project environment. The program is designed to produce industry leaders and researchers who are technically astute and possess advanced managerial, leadership, and communication skills. Individuals completing this program will be able to lead and improve the industry and the state of the practice in the years to come. This may certainly contribute to the diversification and strengthening of the Saudi economy, as measured by job creation, and new industry development and growth in GDP per capita.
Degree Name
Master of Science (MSc.) in Software Engineering.
Program Objectives
The program is designed to achieve the following:
- Producing industry leaders and practitioners who are technically astute and possess advanced managerial, leadership, and communication skills in software engineering field.
- Producing researchers, in the field of software engineering, who can pursue further post-graduate studies and contribute to the research community in Saudi Arabia.
- Producing research studies in the field of software engineering that contribute to advancing the technology in Saudi Arabia.
Admission Requirements
In addition to the general admission requirements of the university, the applicant to the MSc. Program in Software Engineering must meet the following requirements:
- Applicant should hold a B.Sc. degree from an accredited university in Software Engineering, Information Systems, Computer Science, or Computer Engineering. (Applicants with other equivalent B.Sc. degree in Computing may be considered with some prerequisite courses to meet the core courses of the Software Engineering B.Sc.)
- Applicants should have earned a grade point average of “Very Good” or better in the courses of undergraduate study.
- Applicant should have an English proficiency exam by submitting one of the following tests:
- TOEFL with minimum of 500 (paper based), 61 (internet based), or 173 (computer based).
- IELTS with minimum of 5.5.
- Applicant should have the ability of problem-solving by submitting the GRE quantitative reasoning part with minimum of 450.
- Applicant should pass the Software Engineering MSc program’s entry exam (oral, written, or both).
Program Options
The Master of Science degree in Software Engineering is based on two options:
Master’s degree with Thesis option (Option I)
Degree Requirements
In addition to the general requirements of the university, the MSc in Software Engineering (Option I) requires the student of to fulfill the following in order to be awarded the Master’s Degree in Software Engineering:
- Completion of 24 credit hours (SWE Master’s Degree Program courses) as follows:
- Minimum of 6 core courses (3 Credit Hours each).
- Minimum of 2 elective courses (3 Credit Hours each).
- Completion and defense of a Master’s thesis.
Program Structure & Study Plan
The Master’s Degree in Software Engineering (option I) is a two-year program consisting of four traditional semesters. The program begins in the fall semester, and concludes the following year in July. Students enrolled in Master’s degree with thesis option are expected to finish 24 credit hours of program courses and completion of a Master thesis as depicted in the following table:
Course Code |
Course type and Number |
Number of Credit Hours |
== |
6 core courses |
18 |
== |
2 core courses |
6 |
SWE 600 |
Master thesis |
== |
Total |
|
24 |
Program Courses Master’s degree with Thesis option (Option I)
Core courses
- SWE 501 Object-Oriented Software Engineering 3(3+0+0)
- SWE 502 Software Design and Architecture 3(3+0+0)
- SWE 503 Software Requirements Engineering 3(3+0+0)
- SWE 504 Distributed Software Engineering 3(3+0+0)
- SWE 505 Software Testing and Quality 3(3+0+0)
- SWE 506 Software Project Management 3(3+0+0)
- SWE 600 Thesis ==
Electives courses
- SWE 507 Formal Methodologies in Software Engineering 3(3+0+0)
- SWE 508 Object-based Design Patterns 3(3+0+0)
- SWE 509 Software Usability Engineering 3(3+0+0)
- SWE 510 Special Topics in Software Engineering 3(3+0+0)
- SWE 511 Reusable Software Architectures 3(3+0+0)
- SWE 512 Real-Time and Embedded Systems 3(3+0+0)
- SWE 513 Enterprise System Architecture 3(3+0+0)
- SWE 514 Software Engineering Process and Construction 3(3+0+0)
- SWE 515 Software Maintenance and Configuration 3(3+0+0)
- SWE 516 Software Engineering for the World Wide Web 3(3+0+0)
- SWE 517 Component-Based Software Development 3(3+0+0)
- SWE 518 Multimedia Systems 3(3+0+0)
- SWE 519 Web Engineering Methods and Tools 3(3+0+0)
- SWE 520 Complex Systems Engineering 3(3+0+0)
- SWE 521 Service Oriented Computing ( SOC) 3(3+0+0)
- SWE 522 Operations Research for Software Intensive Systems 3(3+0+0)
- SWE 523 Principles of C4I Systems 3(3+0+0)
- SWE 524 Modeling and Simulation for C4I systems 3(3+0+0)
- SWE 525 Sensor Data Fusion 3(3+0+0)
- SWE 526 Estimation and Tracking: Principles and Techniques 3(3+0+0)
- SWE 527 Introduction to Medical Software Engineering 3(3+0+0)
- SWE 528 Analysis, design and development of medical/health information Systems 3(3+0+0)
- SWE 529 Software Project Management in Medical Informatics 3(3+0+0)
- SWE 530 E-Health 3(3+0+0)
- SWE 531 Software Reliability Engineering 3(3+0+0)
- IS 531 Document Storage and Retrieval Systems 3(3+0+0)
- IS 533 Advanced Topics in Databases 3(3+0+0)
- CEN 531 Computer Networks 3(3+0+0)
Course Distribution of Master’s degree with Thesis option (Option I)
Level (1)
Course Code |
Course Name |
CrH |
SWE 501 |
Object-Oriented Software Engineering |
3(3+0+0) |
SWE 502 |
Software Design and Architecture |
3(3+0+0) |
SWE 503 |
Software Requirements Engineering |
3(3+0+0) |
Total |
|
9 |
Level (2)
Course Code |
Course Name |
CrH |
SWE 504 |
Distributed Software Engineering |
3(3+0+0) |
SWE 505 |
Software Testing and Quality |
3(3+0+0) |
SWE 506 |
Software Project Management |
3(3+0+0) |
Total |
|
9 |
Level (3)
Course Code |
Course Name |
CrH |
SWE |
Elective course-I |
3(3+0+0) |
SWE 600 |
Thesis – Part I |
- |
Total |
|
3 |
Level (4)
Course Code |
Course Name |
CrH |
SWE |
Elective course-II |
3(3+0+0) |
SWE 600 |
Thesis – Part II |
- |
Total |
|
3 |
Master’s degree with Non-thesis option (Option II)
Degree Requirements
In addition to the general requirements of the university, the MS in Software Engineering (option II) requires the student to fulfill the following in order to be awarded the Master’s Degree in Software Engineering:
- Completion of 42 credit hours (SWE Master’s Degree Program courses and project) as follows:
- Minimum of 8 core courses (3 Credit Hours each) including the graduation project.
- Minimum of 6 elective courses (3 Credit Hours each).
Program Structure & Study Plan
The Master’s Degree in Software Engineering (option II) is a two-year program consisting of four traditional semesters. The program begins in the fall semester, and concludes the following year in July. Students enrolled in Master’s degree with non-thesis option are expected to finish 42 credit hours of program courses including a graduation project as depicted in the following table:
Course Code |
Course type and Number |
Number of Credit Hours |
== |
6 core courses |
18 |
== |
6 core courses |
18 |
== |
2 project courses |
6 |
Total |
|
42 |
Program Courses Master’s degree with non-thesis option (Option II)
Core courses
- SWE 501 Object-Oriented Software Engineering 3(3+0+0)
- SWE 502 Software Design and Architecture 3(3+0+0)
- SWE 503 Software Requirements Engineering 3(3+0+0)
- SWE 504 Distributed Software Engineering 3(3+0+0)
- SWE 505 Software Testing and Quality 3(3+0+0)
- SWE 506 Software Project Management 3(3+0+0)
- SWE 598 Graduation Project-I 3(3+0+0)
- SWE 599 Graduation Project-II 3(3+0+0)
Electives courses
- SWE 507 Formal Methodologies in Software Engineering 3(3+0+0)
- SWE 508 Object-based Design Patterns 3(3+0+0)
- SWE 509 Software Usability Engineering 3(3+0+0)
- SWE 510 Special Topics in Software Engineering 3(3+0+0)
- SWE 511 Reusable Software Architectures 3(3+0+0)
- SWE 512 Real-Time and Embedded Systems 3(3+0+0)
- SWE 513 Enterprise System Architecture 3(3+0+0)
- SWE 514 Software Engineering Process and Construction 3(3+0+0)
- SWE 515 Software Maintenance and Configuration 3(3+0+0)
- SWE 516 Software Engineering for the World Wide Web 3(3+0+0)
- SWE 517 Component-Based Software Development 3(3+0+0)
- SWE 518 Multimedia Systems 3(3+0+0)
- SWE 519 Web Engineering Methods and Tools 3(3+0+0)
- SWE 520 Complex Systems Engineering 3(3+0+0)
- SWE 521 Service Oriented Computing ( SOC) 3(3+0+0)
- SWE 522 Operations Research for Software Intensive Systems 3(3+0+0)
- SWE 523 Principles of C4I Systems 3(3+0+0)
- SWE 524 Modeling and Simulation for C4I systems 3(3+0+0)
- SWE 525 Sensor Data Fusion 3(3+0+0)
- SWE 526 Estimation and Tracking: Principles and Techniques 3(3+0+0)
- SWE 527 Introduction to Medical Software Engineering 3(3+0+0)
- SWE 528 Analysis, design and development of medical/health information Systems 3(3+0+0)
- SWE 529 Software Project Management in Medical Informatics 3(3+0+0)
- SWE 530 E-Health 3(3+0+0)
- SWE 531 Software Reliability Engineering 3(3+0+0)
- IS 531 Document Storage and Retrieval Systems 3(3+0+0)
- IS 533 Advanced Topics in Databases 3(3+0+0)
- CEN 531 Computer Networks 3(3+0+0)
Course Distribution of Master’s degree with non-thesis option (Option II)
Level (1)
Course Code |
Course Name |
CrH |
SWE 501 |
Object-Oriented Software Engineering |
3(3+0+0) |
SWE 502 |
Software Design and Architecture |
3(3+0+0) |
SWE 503 |
Software Requirements Engineering |
3(3+0+0) |
Total |
|
9 |
Level (2)
Course Code |
Course Name |
CrH |
SWE 504 |
Distributed Software Engineering |
3(3+0+0) |
SWE 505 |
Software Testing and Quality |
3(3+0+0) |
SWE 506 |
Software Project Management |
3(3+0+0) |
Total |
|
9 |
Level (3)
Course Code |
Course Name |
CrH |
SWE |
Elective course-I |
3(3+0+0) |
SWE |
Elective course-II |
3(3+0+0) |
SWE |
Elective course-III |
3(3+0+0) |
SWE 598 |
Project – Part I |
3(3+0+0) |
Total |
|
12 |
Level (4)
Course Code |
Course Name |
CrH |
SWE |
Elective course-I |
3(3+0+0) |
SWE |
Elective course-II |
3(3+0+0) |
SWE |
Elective course-III |
3(3+0+0) |
SWE 599 |
Project – Part II |
3(3+0+0) |
Total |
|
12 |
Course Descriptions
The contents of the courses were established based on graduate software engineering curriculum guidelines and recommendations (GSwE 2009 – www.gswe.org) so that to cover the majority of the knowledge area as shown on table I. Gswe is sponsored by the IEEE Computer Society and the Association for Computing Machinery (ACM). GSwE2009 has also been endorsed by the international Council on Systems Engineering (INCOSE) and the National Defense Industrial Association (NDIA) Systems Engineering Division, a U.S.-based organization.
Core Courses
Course Code: SWE 501
Course Title: Object-Oriented Software Engineering
Credit Hours:3(3+0+0)
Course Outline: Software construction using a modern object-oriented language with support for graphical user interfaces and complex data structures. Specifications, design patterns, and abstraction techniques, including procedural, data, iteration, type, and polymorphic. Information hiding, classes, objects, and inheritance. Exception handling, event-based systems, and concurrency.
Course Code: SWE 502
Course Title: Software Design and Architecture
Credit Hours:3(3+0+0)
Course Outline: Concepts and methods for the architectural design of large-scale software systems. Fundamental design concepts and design notations. Design strategies and methods. Object-oriented analysis and design modeling using the Unified Modeling Language (UML) notation. Project on object-oriented software design.
Course Code: SWE 503
Course Title: Software Requirements Engineering
Credit Hours:3(3+0+0)
Course Outline: Basics of Requirement Engineering, Requirement Engineering process. Methods, tools, notations, and validation techniques for the analysis, specification, prototyping, and maintenance of software requirements. In-depth study of object-oriented requirements modeling, including use case modeling, static modeling and dynamic modeling using the Unified Modeling Language (UML) notation. Project on software requirements and specification using a modern method.
Course Code: SWE 504
Course Title: Distributed Software Engineering
Credit Hours:3(3+0+0)
Course Outline: 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 Web-based software.
Course Code: SWE 505
Course Title: Software Testing and Quality
Credit Hours:3(3+0+0)
Course Outline: Quality Assurance. Software quality factors. Development standards, models and methodologies. Process and product quality assurance. Software reviews and inspections. Verification and validation. Software configuration management. Software quality metrics. Concepts and techniques for testing software and assuring its quality. Equivalence partitioning. Test tools and automated testing. Verification and validation methods. Different Testing Framework: The JUnit, DBunit, Web unit testing framework ( will cover one or two). Black-box (functional) test design methods, white-box (structural) verification methods: code-directed methods; static testing techniques; program proving; code inspection; symbolic execution; data flow anomaly analysis. Dynamic white-box test design techniques control flow/data flow; Instrumentation/Code Coverage ; a-priori testing; adaptive testing; mutation testing; Grey-box (object-directed) test design methods: design & verification; fsm-based methods; checking platform dependencies; object-oriented test planning. testing distributed s/w and protocols. test description languages (ttcn3). Theoretical foundations of testing: computability. Summary - comprehensive software quality engineering.
Course Code: SWE 506
Course Title: Software Project Management
Credit Hours:3(3+0+0)
Course Outline: Project Management of software engineering projects. Software system engineering and organization methods; work breakdown structure and task determination; effort, duration and cost estimation; scheduling and planning. Monitoring and control; analysis of options; management of risks, change, and expectations. Process and product metrics, post-performance analysis, process improvement and maturity. Management of Agile Programming methodologies such as Extreme Programming; Case studies.
Course Code: SWE 600
Course Title: Thesis
Credit Hours:
Course Outline: a dissertation thesis that is accomplished via the formal, academic, and scientific approach.
Electives
Course Code: SWE 507
Course Title: Formal Methodologies in Software Engineering
Credit Hours:3(3+0+0)
Course Outline: 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).
Course Code: SWE 508
Course Title: Object-based Design Patterns
Credit Hours:3(3+0+0)
Course Outline: 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.
Course Code: SWE 509
Course Title: Software Usability Engineering
Credit Hours:3(3+0+0)
Course Outline: Introduction and background of Software Usability engineering concepts. This includes measuring usability, Heuristic evaluation, Video recorded evaluation, Task analysis, Cognitive walkthroughs and ethics, Experimentation, Internationalization, Accessibility - Usability for the Disabled, use of the different state-of-the-art tools for usability evaluation, and finally, integration of usability engineering into the software engineering lifecycle. This course will also focus on the different aspects of Human Computer Interaction from the perspective of user interface design and analysis. Group or individual project needs to be completed highlighting both practical as well as research aspects.
Course Code: SWE 510
Course Title: Special Topics in Software Engineering
Credit Hours:3(3+0+0)
Course Outline: topics not occurring in existing courses. Topics normally assume knowledge in one or more existing MS SWE courses.
Course Code: SWE 511
Course Title: Reusable Software Architectures
Credit Hours:3(3+0+0)
Course Outline: An in-depth study of 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 object-oriented frameworks.
Course Code: SWE 512
Course Title: Real-Time and Embedded Systems
Credit Hours:3(3+0+0)
Course Outline: The topics covered are: Real-time systems and principles supporting design and implementation. Emphasizes fundamental results from real-time scheduling theory and relevance to computer system design - System design issues for real-time applications involving communication networks, operating systems, databases, and multimedia.
Course Code: SWE 513
Course Title: Enterprise System Architecture
Credit Hours:3(3+0+0)
Course Outline: An in-depth study of the basic concepts and methodologies for the discipline known as Enterprise IT architecting within a framework, structure, and methodology - Enterprise IT Architecting as a step for designing and developing a system of information systems - Definition of the business, work, functional, information and technical perspectives - Development of complex information systems.
Course Code: SWE 514
Course Title: Software Engineering Process and Construction
Credit Hours:3(3+0+0)
Course Outline: Basics of Software construction, Formal methods for software construction, managing construction, Tools for model-driven construction. Software process definition, assessment and measurement. Practical consideration or group project: design of real-time systems and language analyzers using CASE tools, Design and verification of programs with concurrency, in the context of languages like UML State Machines (SDL) and Java.
Course Code: SWE 515
Course Title: Software maintenance and Configuration
Credit Hours:3(3+0+0)
Course Outline: Basics of Software maintenance and configuration. Key issues, Maintenance process, processes related to change requests and configuration management, Configuration control SWE release management, Maintenance techniques: reverse engineering, reengineering; code restructuring. Group or individual Project on the state of art research.
Course Code: SWE 516
Course Title: Software Engineering for the World Wide Web
Credit Hours:3(3+0+0)
Course Outline: Topics to be covered in this course: Architectural frameworks for Ecommerce, Banking etc. WEB 2.0, Web 3.0 and above – tags, RSS, authoring, web services, XML, Web APIs. Software usability – web accessibility initiative, multimodal interfaces for ease of use. Web application reliability – modeling, testing. Security – Standards and technologies. Scalability – issues and approaches to scalable web application. Maintainability – Metrics for maintainability estimates, maintainability models, etc. Client server architecture. Multi-tier architecture. Event-driven architecture. Database-centric architecture. Middleware – web servers, applications servers.
Course Code: SWE 517
Course Title: Component-Based Software Development
Credit Hours:3(3+0+0)
Course Outline: Introduction to the concepts and foundations of software component and component-based 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.
Course Code: SWE 518
Course Title: Multimedia Systems
Credit Hours:3(3+0+0)
Course Outline: Introduction to multimedia enabling technologies, services and applications; basic Internet concepts and protocols, compression and networking technology in multimedia system, Multimedia and the Internet, Quality of Service (QoS) and Resource Management, Scheduling and synchronization, conferencing and collaboration tools, Security
Course Code: SWE 519
Course Title: Web Engineering Methods and Tools
Credit Hours:3(3+0+0)
Course Outline: Web Engineering course topics include but not limited to: Design methodologies to support customizable systems. Development and maintenance models for Web Systems. Documents oriented system development. Server Side Programming: JSP, Java Beans, JDBC etc. System security signed applets and encrypted communications. Introduction to programming distributed web architectures. End-User application development and cultural aspects. Techniques for supporting mobile Web device.
Course Code: SWE 520
Course Title: Complex Systems Engineering
Credit Hours:3(3+0+0)
Course Outline: Complex systems engineering course topics include but are not limited to: Universality and unification: Complexity paradigms in nonlinear dynamics, networks and computation. Complexity concepts – universality, emergence, self-organisation, nonlinearity, order, criticality, evolution, modularity, competition and cooperation, feedback and adaptation - Interactions and Patterns. - Complex Systems Theories and Models: Mean-field theory and approximation. - Tools of complex systems modelling – simulation techniques; Monte Carlo, cellular automata, agent-based, power-law and heavy-tailed distributions, Networks: genetic networks, neural networks, scientific computing in Practice. - Applications in Biology, Business and Finance, Social and Environmental.
Course Code: SWE 521
Course Title: Service Oriented Computing – SOC
Credit Hours:3(3+0+0)
Course Outline: This course will cover recent papers and research results for Web Services, including: Web Services, Service Oriented Architecture (SOA), Service Selection, Service Composition, Service Management, QoS Issues, traditional, and nature inspired techniques for service computing, Security and Dependability for Web Services, P2P Services and Service Cloud.
Course Code: SWE 522
Course Title: Operations Research for Software Intensive Systems
Credit Hours:3(3+0+0)
Course Outline: This course provides a perspective on the analysis of systems that are stochastic in nature. Topics to be covered are: Probability Theory - Decision Making Under Uncertainty - Deterministic Inventory Models - Probabilistic Inventory Models - Markov Chains - Queueing Theory – Forecasting – Simulation.
Course Code: SWE 523
Course Title: Principles of C4I Systems
Credit Hours:3(3+0+0)
Course Outline: This course provides a broad introduction to fundamental principles of Command, Control, Communication, Computing, and Intelligence (C4I). The main topics to be covered are: Target Detection, Tracking, and Identification - Data Fusion, Situation Assessment - Communication & Networking - Combat Modeling - Decision Making – C4ISR Architectures – Queuing Theory and Applications. Case studies, assignments and group project.
Course Code: SWE 524
Course Title: Modeling and Simulation for C4I systems
Credit Hours:3(3+0+0)
Course Outline: This course will focus on the use and characteristics of combat simulations as aids to decision-making. The main topics to be covered are: Combat models - Principles of good analysis using combat models - Attrition algorithms for High-Resolution models: Physical models of attrition - Attrition algorithms for aggregated models - Target detection algorithms: glimpse, continuous-observation, DYNTACS, and ACQUIRE models - Battlefield environment representations - Command-and-control - Modeling Other Battlefield Functions: Force representation, Fire Support, Air Defense, Air Combat models, Logistics - The future of combat models: Object-oriented design, parallelism, and distributed combat simulations - High-Level Architecture overview - High-Level Architecture case studies.
Course Code: SWE 525
Course Title: Sensor Data Fusion
Credit Hours:3(3+0+0)
Course Outline: Investigate common fusion architecture, levels of fusion, well-known data fusion algorithms and look into the recent developments in the area. Study estimation algorithms and hypothesis-testing criteria for multisensory fusion. Analyze the adoption of sensor fusion approaches into different application areas. Topics to be covered in the course: Introduction to sensor data fusion - Basics of different sensors and data formats - Design issues of data fusion systems - JDL data fusion levels - Revised data fusion levels - Algorithms for sensor data fusion: Estimation algorithms for entity parameters or attributes, Identity estimation algorithms for recognition, and Several hypothesis-testing criteria such as data-entity association, situation analysis, etc. - Analyze the adoption of sensor fusion in the following application areas: Military, monitoring and tracking, Pervasive environment, Environment monitoring, Surveillance, Critical infrastructure protection, Intelligent transportation system.
Course Code: SWE 526
Course Title: Estimation and Tracking: Principles and Techniques
Credit Hours:3(3+0+0)
Course Outline: Topics to be covered: Principles and estimation techniques for static and dynamic systems, linear and nonlinear, discrete and continuous time. Estimation for kinematic models, track initiation, bearing-only tracking, tracking maneuvering targets with adaptive filtering, MM (Multiple Model) and interactive MM algorithms. Tracking single target in clutter, nearest neighbor algorithm, tracking and data association, Multiple hypothesis tracking. Tracking performance evaluation.
Course Code: SWE 527
Course Title: Introduction to Medical Software Engineering
Credit Hours:3(3+0+0)
Course Outline: The tentative topics may cover: Introduction and overview of basic concepts of Medical Informatics, Online Medical Resources and Search Engines, Patient Informatics, Electronic Health Records, Interoperability, Ubiquitous Technology, Clinical Practice Guidelines, Disease Management, Patient Safety and Information Technology and E-prescribing: Telemedicine and Medical Image Archiving and Communication Systems: Bioinformatics and Public Health Informatics (Public Health Information Network), Emerging Trends in Medical Informatics and Information Technology (Emerging technologies such as voice recognition, artificial intelligence, Service Computing, SOA, Re-HAVE, VoWiFi and biometrics).
Course Code: SWE 528
Course Title: Analysis, design and development of medical/health information Systems
Credit Hours:3(3+0+0)
Course Outline: Systems development methodologies; the systems development life cycle, and the concepts, tools and techniques. The fundamentals of database modeling, technologies and design such as entity-relationship, semantic data modeling, database technologies, and normalization. Basic knowledge of SQL. Case study on medical information systems (hospital, outpatient, nursing, laboratory, pharmacy, etc.), decision-support systems, clinical research and health-assessment systems, technology assessment and healthcare accounting. Course project on the design and development of a DBMS related to one or more of the following: Medical health record and/or medical information system, disease management and drug utilization.
Course Code: SWE 529
Course Title: Software Project Management in Medical Informatics
Credit Hours:3(3+0+0)
Course Outline: Project management (PM) methods and skills for healthcare. The latest project management techniques for medical informatics projects. Project initiation, planning, implementation and project termination. Issues related to project leadership, human resources, budgeting, and scheduling, risk identification and risk mitigation tactics. Case discussions highlight the state-or-the-art for project management practices as applied to health informatics in contemporary environments. Case study and hands on practice with some Project management software related to medical informatics. Group project on SPM in medical informatics.
Course Code: SWE 530
Course Title: E-health
Credit Hours:3(3+0+0)
Course Outline: The basic concepts such as privacy and security, language and terminologies, standards and interoperability, decision support systems, health informatics specialties. The concepts of organizing health information in a logical way to interface with an electronic information system. The design and role of various health classification systems such as the International Classification of Diseases (ICD), the International Classification of Primary Care (ICPC) and casemix systems (AR-DRGs, AN-SNAP, MH-CASC). Review of technology applications such as Telemedicine and health in the home, web-based applications, cyber-consultations and wireless technology.
Course Code: SWE 531
Course Title: Software Reliability Engineering
Credit Hours:3(3+0+0)
Course Outline: Software Reliability topics include but not limited to: cleanroom software development, fault avoidance, fault tolerance, exception handling, N-version programming, reliability metrics, recovery blocks, formal methods, functional specifications, and Z notation.
Course Code: IS 531
Course Title: Document Storage and Retrieval Systems
Credit Hours: 3
Course Outline: Information Systems types-An overview: Information Retrieval Systems, DBMS, MIS, Decision Support Systems, Dialog Systems. Fundamentals of Retrieval Systems: Adjacency and term frequency features, Text analysis and automatic indexing, Thesaurus rules and construction, Retrieval evaluation. Document storage technology and techniques. Emerging technology: Hypertext systems, Multimedia and hypermedia systems, Hardware requirements.
Course Code: IS 533
Course Title: Advanced Topics in Databases
Credit Hours: 3
Course Outline: Database Systems: Semantic data modeling, Object-oriented databases, Query optimization, Semantic Integrity. Distributed Databases (DDB), Data fragmentation and distributed transparency, Distributed query processing, Concurrence control methods: Serializability in a DDB and the two-phase locking method, Concurrence control based on timestamps, The two-phase COMMIT protocol. Recovery management.
Course Code: CEN 531
Course Title: Computer Networks
Credit Hours:3(3+0+0)
Course Outline: Review of OSI layered Architecture, TCP/IP Protocols, Data link layer: HDLC, Window flow control, Network layer: Datagram and virtual circuit, Transport protocol: Error-detection and recovery, Presentation layer: Security, Privacy, Text compression, Application layer: Distributed computing, Network operating systems.
Course Code: SWE 598
Course Title: Graduate Project -I
Credit Hours:3(3+0+0)
Course Outline: Students in the non-thesis option will normally complete their project in the last two terms of the program. Students should apply to the non-thesis option in their initial application rather than attempting to transfer to this option once registered in the program. The project supervisor must be a member of SWE dept. The project must represent a significant contribution to the state-of-the-art BUT does not involve the writing up of a dissertation. However, a project report summarizing the work is to be submitted to the project supervisor for grading. This part is dedicated to the literature review, analysis and design of the project.
Course Code: SWE 599
Course Title: Graduate Project-II
Credit Hours:3(3+0+0)
Course Outline: Students in the non-thesis option will normally complete their project in the last two terms of the program. Students should apply to the non-thesis option in their initial application rather than attempting to transfer to this option once registered in the program. The project supervisor must be a member of SWE dept. The project must represent a significant contribution to the state-of-the-art BUT does not involve the writing up of a dissertation. However, a project report summarizing the work is to be submitted to the project supervisor for grading. This second part is more dedicated to detailed design, implementation, and validation issues.