Timothy C. Lethbridge
|Alma mater||University of New Brunswick, University of Ottawa|
|Fields||Computer Science and Software Engineering|
|Institutions||University of Ottawa|
|Doctoral advisor||Doug Skuce|
Timothy Christian Lethbridge (born 1963) is a British/Canadian computer scientist and Professor of Computer Science and Software Engineering at University of Ottawa, known for his contributions in the fields of software engineering, knowledge managementand computer animation, and the development of Umple.
Born in London in 1963, Lethbridge grew up in Denmead and attended St John's College in Portsmouthuntil he immigrated with his family to Canada in 1975. He received his BSc in 1985 and his MSc in 1987 in Computer Science from the University of New Brunswick. In 1994, he received his PhD in Computer Science and Artificial Intelligence from the University of Ottawa under supervision of Douglas Skuce for a thesis about tools for knowledge management, entitled "Practical Techniques for Organizing and Measuring Knowledge."
In 1983, still studying, he started working as programmer and analyst for the Government of New Brunswick, where he assisted in the development of software for statistics, health insurance programs, and management information applications. At the university he also taught courses in Fortran programming and Interactive Computing. After graduation in 1987 he became researcher at the Bell-Northern Research, where he developed software for Computer Aided Design applications. From 1990 to 1995 he worked as consultant in multiple research projects.
In 1994 Lethbridge started his academic career at the Department of Computer Science of the University of Ottawa as Assistant Professor, in 2001 Associate Professor, and since 2005 Professor of Computer Science and Software Engineering at the University of Ottawa.He specializes in "Human Computer Interaction, Software Modeling, UML, Object Oriented Design, Software Engineering Education".
Lethbridge published one textbook and over 100 articles. Books:
Articles, a selection:
Software engineering is an engineering-style system of software development. A software engineer is a person who applies the principles of software engineering to design, develop, maintain, test, and evaluate computer software. The term programmer is sometimes used as a synonym, but may also lack connotations of engineering education or skills.
The following outline is provided as an overview of and topical guide to software engineering:
Grady Booch is an American software engineer, best known for developing the Unified Modeling Language (UML) with Ivar Jacobson and James Rumbaugh. He is recognized internationally for his innovative work in software architecture, software engineering, and collaborative development environments.
Peter Pin-Shan Chen is a Taiwanese American computer scientist. He is a (retired) distinguished career scientist and faculty member at Carnegie Mellon University and Distinguished Chair Professor Emeritus at LSU. He is known for the development of the entity–relationship model in 1976.
Diomidis D. Spinellis is a Greek computer science academic and author of the books Code Reading, Code Quality, Beautiful Architecture (co-author) and Effective Debugging.
The World Wide Web has become a major delivery platform for a variety of complex and sophisticated enterprise applications in several domains. In addition to their inherent multifaceted functionality, these Web applications exhibit complex behaviour and place some unique demands on their usability, performance, security, and ability to grow and evolve. However, a vast majority of these applications continue to be developed in an ad hoc way, contributing to problems of usability, maintainability, quality and reliability. While Web development can benefit from established practices from other related disciplines, it has certain distinguishing characteristics that demand special considerations. In recent years, there have been developments towards addressing these considerations.
StarUML is a software engineering tool for system modeling using the Unified Modeling Language, as well as Systems Modeling Language, and classical modeling notations. It is published by MKLabs and is available on Windows, Linux and MacOS.
Model-driven engineering (MDE) is a software development methodology that focuses on creating and exploiting domain models, which are conceptual models of all the topics related to a specific problem. Hence, it highlights and aims at abstract representations of the knowledge and activities that govern a particular application domain, rather than the computing concepts.
Timothy Wilking Finin is the Willard and Lillian Hackerman Chair in Engineering and is a Professor of Computer Science and Electrical Engineering at the University of Maryland, Baltimore County (UMBC). His research has focused on the applications of artificial intelligence to problems in information systems and has included contributions to natural language processing, expert systems, the theory and applications of multiagent systems, the semantic web, and mobile computing.
Jock D. Mackinlay is an American information visualization expert and Vice President of Research and Design at Tableau Software. With Stuart Card, George G. Robertson and others he invented a number of information visualization techniques.
Umple is a language for both object-oriented programming and modelling with class diagrams and state diagrams. The name Umple is a portmanteau of "UML", "ample" and "Simple", indicating that it is designed to provide ample features to extend programming languages with UML capabilities.
Philip S. Yu is an American computer scientist and Professor in Information Technology at the University of Illinois at Chicago, known for his work in the field of data mining.
Bernd Bruegge is a German computer scientist, full professor at the Technische Universität München (TUM) and the head of the Chair for Applied Software Engineering. He is also an adjunct associate professor at Carnegie Mellon University (CMU) in Pittsburgh.
Albert Y. Zomaya is currently the Chair Professor of High Performance Computing & Networking and Australian Research Council Professorial Fellow in the School of Information Technologies, The University of Sydney. He is also the Director of the Centre for Distributed and High Performance Computing. He is currently the Editor in Chief of IEEE Transactions on Sustainable Computing and Springer's Scalable Computing and Communications. He was past Editor in Chief of the IEEE Transactions on Computers.
John Mylopoulos is a Greek-Canadian computer scientist, Professor at the University of Toronto, Canada, and at the University of Trento, Italy. He is known for his work in the field of conceptual modeling, specifically the development an agent-oriented software development methodology. called TROPOS.
Axel van Lamsweerde is a Belgian computer scientist and Professor of Computing Science at the Universite catholique de Louvain, known for his work on requirements engineering and the development of the KAOS goal-oriented modeling language.
Philip H. Newcomb is an American software engineer and CEO of The Software Revolution, Inc., known for his work in the field of formal methods of software engineering.
Vijay K. Vaishnavi is a noted researcher and scholar in the computer information systems field with contributions mainly in the areas of design science research, software engineering, and data structures & algorithms, authoring over 150 publications including seven books in these and related areas, and co-owning a patent. He is currently Professor Emeritus at the Department of Computer Information Systems, Georgia State University. He is Senior Editor Emeritus of MIS Quarterly and is on the editorial boards of a number of other major journals. His research has been funded by the National Science Foundation (NSF) as well as by the industry.
Gregg Rothermel is an American computer scientist, software engineer and academic. He is Professor and Head of the Department of Computer Science at North Carolina State University.