Modern Software Technology for eHealth

Fall 2017 Course Outline



Last Update

Aug. 28, 2017


Dr. Reza Samavi

Office: ITB213, ext. 24895, Email: samavir, Web:


Teaching Assistants

  1. Yu Huang, email: huang223

  2. Andrew Sutton, email: suttonad


The regular schedule for the course lectures is Wed 14:30-17:30, BSB 105.

Office hours: Wednesdays 12:30-14:30. Please also email to make an appointment.


This course exposes the graduate students in software engineering, computer science, or related programs to the challenges in the field of electronic health (eHealth). The course introduces a collection of modern architectures and technologies that are recommended by standardization organizations (e.g. ISO, HL7, FHIR) to build the infrastructure that meets the emerging demands in the health care industry. Topics include: Healthcare information system development methodology and management, model driven requirements determination, healthcare service interoperability and data exchange, clinical terminology and data standards, cloud computing and service oriented architecture, health data analytics and decision support systems, healthcare information privacy and security management.

Course Objectives

A wide range of information technologies such as business intelligence and analytics, collaboration and social (and mobile) software, expert systems, natural language processing, visualization and imaging systems, coupled with the traditional transactional information systems and workflow management systems are being utilized to support work in current health care. This course describes some of the information technology challenges in the field of eHealth and prepares students to face the problems from two perspectives: (1) from the health care system perspective the course will help student understand Electronic Health Records (EHR) processes, system architecture, and the core components of current healthcare systems, (2) from the computer science perspective the course will provide opportunities to learn and apply modeling and analytical techniques from the software engineering discipline for system analysis and design in the context of Integrating the Healthcare Enterprise, cross-enterprise Document Sharing (IHE XSD) and eHealth in general.

Course Website

This website contains information related to the class, such as the course schedule, test dates and location, assignments, and other general information. It is the student's responsibility to be aware of the information on the course website, and to regularly check for announcements and course news.

The instructor and university reserve the right to modify elements of the course during the term. The university may change the dates and deadlines for any or all courses in extreme circumstances. If either type of modification becomes necessary, reasonable notice and communication with the students will be given with explanation and the opportunity to comment on changes. It is the responsibility of the student to check their McMaster email and course websites during the term and to note any changes.


Basic familiarity with a programming language (object-oriented) and relational databases or algorithms and data structures which are described as the pre-conditions for the eHealth program admission are prerequisites for this course. Students who do not have computer science background will be asked through the course survey to provide the specification and time of completion of the courses described in the program admission requirements page.


Class sessions will include lectures by the instructor, student seminars, intra-class activities, and guest lecturers.

Grading Scheme

Seminar and participation (individual)


Quizzes (individual)


Project Proposal (individual)


Final Project (group)




Course Seminar

Each student is expected to present and lead class discussion on assigned readings related to the objectives of the course. The student will summarize and present the main contributions of the readings in 10-15 minutes using presentation slides or any other approved media. The student will conclude the presentation with raising questions and leading class discussion for 5-10 minutes. The exact length of presentation and discussion will be communicated with the course commencement and when the number of students is finalized. A written report is not required but the presentation slides (including the discussion questions) need to be posted to the assigned folder on the course website 24 hours before the presentation. The seminar readings are distributed throughout the semester and is available on the course website. Each seminar reading has a code starting with the letter A or B. Students will select a paper from group A or B depending on which section (A or B) the student belongs to. Students should sign up (on FCFS basis) for the seminars by Friday, September 8, 2017, 22:00 EDT using the discussion thread created in Avenue with “Seminar presentation – Section A (or B)” subject. Each student will reply to the thread and include codes for three papers (e.g., A041 or B112) in order of priority. If you are in section A, all your selections should be from group A papers and likewise for section B. You should check previous postings to avoid duplicate selection. In the case of a duplicate, the first entry will be valid. Students will be randomly assigned if some spots are not filled in or the students choices are not available. In your seminar, you should cover the following questions:

  1. What are motivations for the paper?

  2. What is the proposed solution?

  3. What are the main contributions of the paper?

  4. What is your analysis of the identified problem, idea and evaluation (by inclusion of other closely related papers)?

  5. What questions are you left with that can be discussed in the class (2-3 questions)?

In answering the last two questions you should demonstrate your critical thinking skill and include your insights about the topic and the paper.

Seminars occur during the third lecture hours and attendance to both lectures and seminars are mandatory. The seminar is worth 15% of the course mark. 11% will be assigned to the depth, breadth and quality of the individual's seminar presentation (e.g. clarity in communication and class engagement) and 4% to the individual's participation in the class discussion during the lectures and while other students are presenting.


There are five quizzes distributed throughout the term. The quiz will be held at the beginning of the lecture and it takes up to 15 minutes to complete (depending on the number and complexity of the questions). For each quiz, students will be given a set of short questions to answer in the form of multiple choices, true or false, or short answer. The questions are related to the material covered in the required readings and lectures prior to the quiz. Each quiz is worth 4% of your final mark.

Design Project

Each student will carry out a design project of his or her choice (subject to the instructor's approval) in the context of eHealth for this class. The acceptable project themes will be posted on the course website, however, students are encouraged to select a sub-topic in the domain of eHealth related to their own research interests or work experience. Initially, everyone will work individually and hand in a written design project proposal and present it to the class. The proposal document is limited to 6 pages (including references and figures) and must be formatted according to the IEEE conference proceeding template.

Each student has 5 minutes to pitch his/her proposal to the class. After all project proposals have been turned in and presented to the class, individuals should choose to merge into four member teams. The team then identifies the requirements for the design problem, creates a design concept and implements it as a prototype, and evaluates the prototype. The team will present their work-in-progress (preferably covering the first iteration of the design) to the class (and/or instructor and teaching assistants) to receive feedback. Finally the work carried out in the project will then be described in a poster to be showcased and reported as a scientific contribution. The written report is limited to 10 pages (IEEE format) and should describe the motivation, the problem space, the solution space and how the prototype is being built and evaluated. The written report may include an appendix containing supporting materials that will help the reader evaluate your work.

The project proposal document and presentation (individual) are worth 20% of the course marks. The prototype and final report are worth 30% (team), and the poster presentation is worth 10% of the course marks.


The topics discussed in the following books will be substantially covered in lectures. Other sources will also be consulted. The following books and readings are available online via McMaster digital library. For off-campus access, you will need to login through proxy with macid.

Required Textbook:

[BEN16] Benson, Tim. Principles of health interoperability SNOMED CT, HL7 and FHIR. Third Edition, Springer, 2016.

Supplementary Textbook:

[SHO14] Shortliffe, Edward H and Cimino James J. Biomedical Informatics, Computer Applications in Health Care and Biomedicine, Springer-Verlag London 2014. (selected chapters)

Both books are available online via McMaster digital library. For off-campus access, you will need to login through proxy with macid.

Additional readings and the list of readings for the course seminars can be found here.

Click here for the details of course schedule, weekly readings and seminar presentations.

Note that the schedule and the contents are tentative and may be adjusted as we make our way through the course and based on the students' survey in the first lecture. Additional readings may be assigned.

Summary of Course Contents

This course is run through Avenue to Learn. Enrolled students should log in to access the most updated course schedule and contents, weekly readings and seminar presentations for each week.

Introduction to Software Technologies for eHealth

Methods of Information Systems Development

Health Process Modeling

Health Data Management

Health Information System Design

Clinical Terminologies and SNOMED CT

HL7 Standard for Health Data Exchange

Healthcare Information Privacy and Security

New trends and emerging research initiatives

Faculty's Note

"The Faculty of Engineering is concerned with ensuring an environment that is free of all discrimination. If there is a problem, individuals are reminded that they should contact the Department Chair, the Sexual Harassment Officer or the Human Rights Consultant, as the problem occurs."

"The instructor and university reserve the right to modify elements of the course during the term. The university may change the dates and deadlines for any or all courses in extreme circumstances. If either type of modification becomes necessary, reasonable notice and communication with the students will be given with explanation and the opportunity to comment on changes. It is the responsibility of the student to check their McMaster email and course websites weekly during the term and to note any changes."

Academic Integrity

You are expected to exhibit honesty and use ethical behaviour in all aspects of the learning process. Academic credentials you earn are rooted in principles of honesty and academic integrity.

"Academic dishonesty consists of misrepresentation by deception or by other fraudulent means and can result in serious consequences, e.g. the grade of zero on an assignment, loss of credit with a notation on the transcript (notation reads: "Grade of F assigned for academic dishonesty"), and/or suspension or expulsion from the university.

It is your responsibility to understand what constitutes academic dishonesty. For information on the various kinds of academic dishonesty please refer to the Academic Integrity Policy, specifically Appendix 3, located at

The following illustrates only three forms of academic dishonesty:


Students with accessibility needs may receive accommodations for completing assignments and exams. Please contact the Centre for Student Development for advice and for arranging assistance. Please contact the instructor to facilitate the process.