David Parnas
David Lorge Parnas (lahir 10 Februari 1941) adalah seorang pionir di bidang rekayasa perangkat lunak yang mengembangkan konsep perancangan modular yang kini menjadi dasar pemrograman berorientasi objek.
Karier
suntingDavid meraih gelar Ph.D. di Carnegie Mellon University, dalam bidang kelistrikan dan kemudian bekerja di sana sebagai profesor. Dia juga mengajar di University of North Carolina at Chapel Hill (Amerika Serikat), Technische Hochschule Darmstadt (Jerman), dan di University of Victoria (British Columbia, Kanada). Kemudian ia pindah ke McMaster University di Hamilton, Ontario, Kanada pada tahun 1991. Sejak 2002, David bekerja di University of Limerick di Limerick, Ireland.
Perancangan modular
suntingKonsep utama yang dikembangkan David tentang perancangan modular ditulisnya dalam satu paper yang terkenal pada tahun 1972: On The Criteria To Be Used in Decomposing Systems into Modules Diarsipkan 2007-08-20 di Wayback Machine.. Di sini, ia mengajukan pendapat bahwa kohesi yang kuat dalam tiap modul dan hubungan yang lepas antar modul adalah dua prinsip dasar dalam perancangan perangkat lunak yang modular.
Penghargaan
sunting- ACM "Best Paper" Award, 1979
- Dua "Most Influential Paper" awards International Conference on Software Engineering
- Doctor honoris causa dari Faculté des Sciences Appliquées, Université catholique de Louvain, Belgium, 1996
- ACM SIGSOFT's "Outstanding Research" award, 1998
Kutipan
sunting...it is almost always incorrect to begin the decomposition of a system into modules on the basis of a flowchart. We propose instead that one begins with a list of difficult design decisions or design decisions which are likely to change. Each module is then designed to hide such a decision from the others.
I would advise students to pay more attention to the fundamental ideas rather than the latest technology. The technology will be out-of-date before they graduate. Fundamental ideas never get out of date. However, what worries me about what I just said is that some people would think of Turing machines and Goedel's theorem as fundamentals. I think those things are fundamental but they are also nearly irrelevant. I think there are fundamental design principles, for example structured programming principles, the good ideas in "Object Oriented" programming, etc.
Pranala luar
sunting- McMaster University homepage Diarsipkan 2007-04-12 di Wayback Machine.
- University of Limerick profile Diarsipkan 2006-07-12 di Wayback Machine. and CV Diarsipkan 2006-07-10 di Wayback Machine. (PDF)
- On The Criteria To Be Used in Decomposing Systems into Modules Diarsipkan 2007-08-20 di Wayback Machine.
- Software Fundamentals: Collected Papers by David L. Parnas Diarsipkan 2020-05-27 di Wayback Machine. at Addison Wesley online bookstore