Ira J Kalet
Special courses drawn from interdisciplinary groups in the natural sciences. Content varies. For University Honors Program students only.
Honors 396C addresses the complex software design issues that come up in biomedical and health informatics, programming for safety critical applications in medicine and health care, as well as in the application of computing to unlock the secrets of life. Examples from biology, medicine and health motivate software engineering topics such as: use of abstraction layers, design of tightly coupled but modular and extensible software, formal models and safety in real time control of medical equipment, design of network application protocols, integration of diverse biomedical data sources.
Student learning goals
explain why biomedical software safety must be considered in context with the hardware and user environment
explain how not understanding the algorithm(s) a medical program uses can lead to serious consequences
analyze a biomedical programming problem and give reasons for using or not using particular programming languages, software environments or methodologies
distinguish between software correctness, safety and quality in a biomedical context
identify issues that should be addressed in designing network based medical applications and network protocols for medical data
identify properties of software that may enhance or detract from effective use
General method of instruction
The course meets for two lecture/classroom sessions per week, each one hour and 50 minutes. Approximately 8 hours of outside time are expected to devote to homework, reading and study. There will be several homework assignments, and a course project, on which the student is expected to report both orally and in writing.
the student should be familiar with basic concepts of modern biology (genes, proteins, DNA, basic functions of living organisms), and have some experience with disease, treatment and the health care system.
More important than skill in any particular programming language is general familiarity with the programming environment, including operating system commands, editing files, copying files, installing and using software tools.
Mathematical skills and knowledge: Competence at basic algebra and trigonometry, and basic understanding of functions, variables and graphs.
Class assignments and grading
Homework assignments may involve problem solving, writing small computer programs, or writing analytical comments on reading assignments. A course project is also required, to result in a written report and an end of quarter oral presentation.
the grade is based on the homework assignments and a final project. The homework assignments collectively will comprise 50% of the grade, and the project will be 30%. The remaining 20% will be based on class participation.