CENG 551

İleri Yazılım Mühendisliği

Bu ders yazılım mühendisliği kavramını ortaya koyarak başlayacaktır. Ardından yazılım geliştirme süreci anlatılacaktır. Ders kapsamında yazılım gereksinimleri, yazılım spesifikasyonu, yazılım analizi ve biçimsel analiz konuları işlenecektir. Ayrıca kalite yönetimi, ürün metrikleri, süreç metrikleri, COTS ve yazılım psikolojisi konuları da ele alınacaktır.

Dersin Amacı

Lisansüstü öğrencilere yazılım mühendisliği tekniklerini ve yaklaşımlarını değerlendirme yeteneği kazandırmak Yazılım mühendisliği uygulamalarının vardığı son durumu ortaya koymak ve tarihsel süreçte yaşananları aktarmak Belli bir proje için doğru yaklaşımların seçiminde profesyonel karar alma becerisini kazandırmak,

Kaynakça

Glass, Robert L.;2003; “One Giant Step Backward.” Communications Of the ACM 46, no. 5. ,Gray, Lewis.;1998; “Gray Rebuts Bach: No Cowboy Programmers!” Computer pp 102, 103 and 105. ,Hatton, Les.;1998; “Does OO Sync with How We Think?” IEEE Software pp 46-54. ,Hoare, C. A. R.;1969; “An Axiomatic Basis For Computer Programming.” Communications of the ACM 12, no. 10 pp 576-583. ,Howard, Alan.;2001; “Software Engineering Project Management.” Communications Of The ACM 44, No. 5 pp 23 and 24. ,Kearney, Joseph K., Robert L. Sedlmeyer, William B. Thompson, Michael A. Gray, and Michael A. Adler.;1986; “Software Complexity Measurement.” Communications of the ACM 29, No. 11 pp 1044-1050. ,Krueger, Charles W.;1992; “Software Reuse.” ACM Computing Surveys 24, No. 2 pp 132-183. ,Lawrence, Brian, Karl Wiegers, and Christof Ebert.;2001; “The Top Risks of Requirements Engineering.” IEEE Software pp 62 and 63. ,Ledgard, Henry F.;2001; “The Emperor with No Clothes.” Communications of the ACM 44, no. 10 pp 126-128. ,Mackeyn, Karen.;2000; “Mars versus Venus.” IEEE Software pp 14-15. ,Mantei, Marilyn.;1981; “The Effect of Programming Team Structures on Programming Tasks.” Communications of the ACM 24, no. 3 pp 106-113. ,Martin, Robert C.;2000; “eXtreme Programming Development through Dialog.” IEEE Software pp 12 and 13. ,McConnell, Steve.;1998; “Problem Programmers.” IEEE Software pp 126-128. ,McConnell, Steve.;2000; “Cargo Cult Software Engineering.” From The Editor column, IEEE Software pp 11-13. ,Meyer, Bertrand.;1999; “A Really Good Idea.” Computer pp 144-147. ,Parnas, David Lorge.;1985; “Software Aspects of Strategic Defense Systems.” Communications of the ACM 28, 12 pp 1326-1335. ,Paulk, Mark C., Bill Curtis, Mary Beth Chrissis, and Charles V. Weber. “The Capability Maturity Model for Software.” IEEE Software. ,Pressman, Roger S.;1998; “Can Internet-Based Applications Be Engineered?” IEEE Software pp 104-109. ,Rettig, Mark.;1990; “Software Teams.” Communications of the ACM 33, no. 10 pp 23-27. ,Rothman, Johanna.;1998; “Of Crazy Numbers and Release Criteria.” Computer pp 127-128. ,Saiedian, Hossein.;1996; “An Invitation to Formal Methods.” Computer pp 16-30, New York. ,Schaible, Dawn, and Keith Britton.;2003; “Testing in NASA Human-Rated Spacecraft Programs: How Much is Just Enough?” SDM Master s thesis. MIT, Chaps. 2, 4, and 5. ,Shapiro, Stuart.;1997; “Splitting the Difference: The Historical Necessity of Synthesis in Software Engineering.” IEEE Annals of the History of Computing 19, no. 1 pp 20-54. ,Watkins, Robert, and Mark Neal.;1994; “Why and How of Requirements Tracing.” IEEE Software pp 104-106. ,Weyuker, Elaine J.;1998; “Testing Component-Based Software: A Cautionary Tale.” IEEE Software pp 54-59. ,Williams, Laurie, Robert R. Kessler, Ward Cunningham, and Ron Jeffries.;2000; “Strengthening the Case for Pair Programming.” IEEE Software pp 19-25. ,Wing, Jeannette M.;1990; “A Specifier s Introduction to Formal Methods.” Computer pp 8-24. ,Wirth, Niklaus.;1971; “Program Development by Stepwise Refinement.” Communications of the ACM 14, no. 4 pp 221-227. ,Wirth, Niklaus.;1995; “A Plea for Lean Software.” Computer pp 64-68. ,Yamaura, Tsuneo.;1998; “How to Design Practical Test Cases.” IEEE Software pp 30-36. ,Highsmith, Jim, and Alistair Cockburn.;2001; “Agile Software Development: The Business of Innovation.” Computer pp 120-122. ,Bollinger, Terry;1997; “The Interplay of Art and Science in Software.” Computer pp 125-127 and 128. ,Brooks.;1987; “No Silver Bullet: Essence and Accidents of Software Engineering.” Computer. ,Budgen, David.;1999; “The Loyal Opposition: Software Design Methods: Life Belt or Leg Iron?” IEEE Software pp 133-136. ,Cockburn, Alistair, and Jim Highsmith.;2001; “Agile Software Development: The People Factor.” Computer pp 131-133. ,DeMillo, Richard A., Richard J. Lipton, and Alan J. Perlis.;1979; “Social Processes and Proofs of Theorems and Programs.” Communications of the ACM 22, no. 5. ,Ferdinandi, Patricia L.;1998; “Facilitating Communication.” Culture At Work column, IEEE Software pp 92-96. ,Garlan, David, and Mary Shaw.;1993; “An Introduction to Software Architecture.” In Advances in Software Engineering and Knowledge Engineering. Vol. 1. Edited by V. Ambriola, and G. Tortora. New Jersey: World Scientific Publishing Company. Also appears as CMU Software Engineering Institute Technical Report CMU/SEI-94-TR-21, ESC-TR-94-21. ,Glass, Robert L.;1998; “The Loyal Opposition: Reuse: What s Wrong With This Picture?” IEEE Software pp 57-59.

Öğrenim Çıktıları

1. Yazılım mühendisliği kavramlarına hakim

2. Sıkça rastlanan yazılım mühendisliği hatalarından ders almış

3. Yazılım mühendisliği problemlerini tartışabilir

4. Profesyonel karar alma becerisine sahip

Konu
Problem
Süreç ve Yaşam Döngüsü Modelleri
Gereksinimler ve Spesifikasyonu I
Gereksinimler ve Spesifikasyonu II
Tasarım I
Tasarım II
Güven Tesis Etme (Sınama, Analiz, Kalite Güvencesi, Gözden Geçirmeler)
Metrikler ve Güvenilirlik Değerlendirmesi
COTS ve Yeniden Kullanım
Biçimsel Doğrulama
Takım Organizasyonu ve İnsan Yönetimi
Programlama Dillerinin Yazılım Mühendisliği Bakış Açıları
Yazılım Emniyeti ve Genel Özetleme
Örnek Olaylar

Notlandırma

Ödev %100