David Parnas
![](http://upload.wikimedia.org/wikipedia/commons/thumb/e/e4/David_Parnas.jpg/220px-David_Parnas.jpg)
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
David 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
Konsep 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
- 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
“ | ...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
- 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
- l
- b
- s
- Analisis persyaratan
- Analisis sistem
- Desain perangkat lunak
- Pemrograman komputer
- Metode formal
- Pengujian perangkat lunak
- Penyebaran perangkat lunak
- Pemeliharaan perangkat lunak
- Pemodelan data
- Arsitektur perusahaan
- Spesifikasi fungsional
- Bahasa pemodelan
- Paradigma pemrograman
- Perangkat lunak
- Arsitektur perangkat lunak
- Metodologi pengembangan perangkat lunak
- Proses pengembangan perangkat lunak
- Kualitas perangkat lunak
- Jaminan kualitas perangkat lunak
- Arkeologi perangkat lunak
- Analisis terstruktur
- Agile
- Berorientasi aspek
- Berorientasi objek
- Ontologi
- Orientasi layanan
- SDLC
Model pengembangan |
|
---|---|
Model lain |
|
Bahasa pemodelan |
|
Perangkat lunak
- Kent Beck
- Grady Booch
- Fred Brooks
- Barry Boehm
- Peter Chen
- Ward Cunningham
- Ole-Johan Dahl
- Tom DeMarco
- Martin Fowler
- C. A. R. Hoare
- Watts Humphrey
- Michael A. Jackson
- Ivar Jacobson
- James Martin
- Bertrand Meyer
- David Parnas
- Winston W. Royce
- Colette Rolland
- James Rumbaugh
- Niklaus Wirth
- Edward Yourdon
- Victor Basili
- Ilmu komputer
- Teknik komputer
- Rekayasa usaha
- Sejarah
- Manajemen
- Manajemen proyek
- Manajemen mutu
- Ergonomi perangkat lunak
- Rekayasa sistem
Kategori
Commons