En Popüler 50 JCL Mülakat Soruları ve Cevapları (2026)

JCL mülakatına mı hazırlanıyorsunuz? Karşılaşabileceğiniz soruları ve bunlara en iyi nasıl cevap vereceğinizi düşünmenin zamanı geldi. JCL mülakatına doğru hazırlık, bilgi birikiminiz ve problem çözme yaklaşımınız hakkında fikir vererek işe alım uzmanlarına hem teknik hem de pratik hazırlığınızı gösterir.

Bu alandaki fırsatlar, temel becerilerini sergilemek isteyen yeni mezunlardan 10 yıllık alan uzmanlığına sahip kıdemli profesyonellere kadar çeşitli kariyer aşamalarını kapsar. Mülakatçılar teknik uzmanlığı, analiz becerilerini ve profesyonel deneyimi değerlendirir ve genellikle köklü deneyim ve pratik uygulama ararlar. İster genel soru-cevaplar, ister teknik sözlü sınavlar veya senaryo tabanlı analizler olsun, adaylar beceri setlerini ve ekiplere, yöneticilere ve liderlere gerçek iş zorluklarını çözmede yardımcı olma konusundaki istekliliklerini sergileyebilirler.

Araştırmamız, 45'ten fazla yöneticinin görüşlerini, 60'tan fazla teknik liderden toplanan geri bildirimleri ve alanda çalışan 80'den fazla profesyonelin paylaştığı bakış açılarını içermektedir. Bu kapsamlı çalışma, hem temel hem de ileri düzey alanların güvenilirlik ve yetkinlikle ele alınmasını sağlar.

JCL Mülakat Soruları ve Cevapları

1) JCL nedir ve ana bilgisayar ortamlarında neden önemlidir?

İş Kontrol Dili (JCL), iş uygulamalarında kullanılan bir betik dilidir. IBM Sisteme toplu işlerin nasıl yürütüleceğini bildirmek için ana bilgisayarlar kullanılır. Hangi programların çalışması gerektiğini, hangi kaynaklara ihtiyaç duyduklarını ve giriş/çıkışın nasıl yönetileceğini tanımlar. Ana bilgisayar işleri genellikle verimlilik, güvenlik ve doğruluğun kritik öneme sahip olduğu büyük veri kümelerinin işlenmesini içerdiğinden, JCL kritik bir rol oynar. JCL olmadan, işletim sistemi iş adımlarını nasıl koordine edeceğini, depolama alanını nasıl yöneteceğini veya kaynakları nasıl etkili bir şekilde tahsis edeceğini bilemezdi.

Örnek: Bir bankacılık sisteminde JCL, COBOL programlarını ve kullanılacak girdi veri kümelerini belirleyerek gün sonu işlem mutabakatını otomatikleştirebilir.

👉 Ücretsiz PDF İndirme: JCL Mülakat Soruları ve Cevapları


2) JCL bir işin yürütme yaşam döngüsünde nasıl çalışır?

JCL yaşam döngüsü, bir işin gönderilmesiyle başlar, JES2 veya JES3 tarafından iş planlamasıyla devam eder ve yürütme ve çıktı oluşturmayla son bulur. JCL, iş adımlarını ve kaynak gereksinimlerini açıklayan bir taslak görevi görür. Sistem yorumlayıcısı sözdizimini doğrular, veri kümelerini ayırır ve kontrolü iş yürütme alt sistemlerine aktarır. Yürütme tamamlandığında, JCL veri kümelerinin ve günlüklerin doğru şekilde işlenmesini sağlar.

Yaşam Döngüsü Aşamaları:

  1. İş başvurusu
  2. Sözdizimi denetimi ve zamanlama
  3. Veri kümesi tahsisi
  4. Program yürütme
  5. Çıktı yönetimi

3) JCL ifadelerinin farklı türlerini örneklerle açıklayınız.

Üç ana JCL ifadesi türü vardır:

Açıklama Amaç Örnek E-posta
İŞ İşi işletim sistemine tanımlar //PAYJOB JOB 'ACCT123',CLASS=A
YÖNET Çalıştırılacak programı veya prosedürü belirtir //STEP1 EXEC PGM=PAYROLL
DD Giriş, çıkış veya geçici kullanım için veri kümelerini tanımlar //INPUT DD DSN=EMP.FILE,DISP=SHR

Bu ifadeler birlikte bir JCL betiğinin iskeletini oluşturur. Örneğin, bir bordro işi kendini tanımlamak için bir JOB ifadesi, bir COBOL bordro programını çağırmak için bir EXEC ifadesi ve çalışan dosyalarını belirtmek için DD ifadeleri kullanabilir.


4) JCL ifadesini oluşturan temel bileşenler nelerdir?

Bir JCL beyanı genellikle dört unsurdan oluşur:

  • Ad alanı: Okunabilirlik için isteğe bağlı tanımlayıcı.
  • Operation alanı: JOB, EXEC veya DD'yi belirtir.
  • Operands: Parametreleri veya veri kümesi ayrıntılarını sağlar.
  • Yorumlar: Dokümantasyonun sürdürülmesine yardımcı olur.

Örnek:

//STEP1 EXEC PGM=PAYROLL

Burada, STEP1 adıdır, EXEC operasyondur, PGM=PAYROLL işlenendir ve yorumlar eklenebilir //*.


5) JCL'nin kurumsal bilişimdeki avantajları ve dezavantajları nelerdir?

Görünüş Avantajlar Dezavantajlar
verim Büyük ölçekli toplu işlemeyi otomatikleştirir Karmaşık sözdizimi öğrenme eğrisi
Kaynak Kontrolü Veri kümelerini, belleği ve G/Ç'yi yönetir Hatalar işin aksamasına neden olabilir
Reus yeteneği Prosedürler ve sembolik parametreler emek tasarrufu sağlar Ana bilgisayarların dışında taşınabilirliğin olmaması
Güvenilirlik Tutarlı iş yürütmeyi sağlar Uygun araçlar olmadan hata ayıklama zordur

Büyük organizasyonlarda avantajları dezavantajlarından daha ağır bastığından JCL vazgeçilmezdir.


6) JOBLIB ve STEPLIB JCL'de nasıl kullanılır?

JOBLIB ve STEPLIB, JCL'ye programları nerede arayacağını bildiren veri kümesi kütüphaneleridir.

  • İŞ LİB Bir işteki tüm adımlar için geçerlidir.
  • STEPLIB yalnızca kodlandığı adıma uygulanır.

Örnek:

//JOBLIB DD DSN=MY.LIB,DISP=SHR

Bu, iş referans programlarındaki tüm adımların MY.LIB.


7) DISP=OLD ve DISP=SHR arasındaki farkı örneklerle açıklayınız.

Parametre anlam Kullanım çantası
DISP=ESKİ Özel erişim; verileri üzerine yazar Mevcut ay için bordro dosyasının güncellenmesi
DISP=SHR Paylaşılan salt okunur erişim Birden fazla işin çalışan ana dosyasını okumasına izin verme

kullanma DISP=OLD Dikkatsizce hareket etmek kritik verilerin üzerine yazılmasına neden olabilirken, DISP=SHR güvenli eş zamanlı okumaları sağlar.


8) JCL işini belirli bir adımdan nasıl yeniden başlatabilirsiniz?

Başarısız veya belirli bir adımdan yeniden başlamak için şunu kullanın: RESTART parametresi JOB ifadesinde. Örneğin:

//PAYJOB JOB RESTART=STEP2

Bu, sisteme önceki adımları atlayıp STEP2'den devam etmesini söyler.

Pratik senaryolar arasında, tüm işi yeniden işlemek yerine yalnızca başarısız olan adımın yeniden çalıştırılması gereken, birden fazla sıralı veri dönüşümü içeren işler yer alır.


9) JCL’de EXEC ifadesinin rolü nedir?

EXEC ifadesi, çalıştırılacak programı, prosedürü veya yardımcı programı belirtir. PGM veya PROC gibi konumsal parametreleri ve PARM gibi isteğe bağlı anahtar sözcük parametrelerini içerir.

Örnek:

//STEP1 EXEC PGM=IEBGENER

Bu, veri kümelerini kopyalamak veya düzenlemek için IEBGENER yardımcı programını çalıştırır. EXEC, iş kontrolünü gerçek yürütme mantığıyla bağladığı için JCL için merkezi bir öneme sahiptir.


10) GDG'nin (Generation Data Group) ne olduğunu ve nasıl yönetildiğini açıklayınız.

GDG, nesil numaralarıyla ayırt edilen ilişkili veri kümelerinden oluşan bir gruptur. Her nesil mantıksal olarak zaman damgalıdır ve JCL, bunlara göreli gösterim kullanarak başvurabilir.

Örnek:

  • (+1) yaratılacak bir sonraki nesli ifade eder.
  • (0) güncel sürümü ifade eder.

Kullanım çantası: Bordro sistemleri, aylık işlem kayıtlarını GDG'ler olarak tutar. track tarihsel versiyon.


11) Adımlar arasında birden fazla GDG nesline nasıl referans verirsiniz?

Veri kümelerini bir adımdan diğerine geçirmek için:

  • Göreceli nesil gösterimini kullanın.
  • Örneğin, STEP1 şunu oluşturursa (0) ve STEP2 oluşturur (+1), o zaman STEP3 kullanılabilir ( +2 ) STEP2'nin çıktısına referans vermek için.

Bu, mutlak isimlerin sabit kodlanmasına gerek kalmadan veri kümelerinin esnek bir şekilde zincirlenmesine olanak tanır.


12) JES2 ile JES3 arasındaki farkı açıklayabilir misiniz?

Özellik JES2 JES3
Veri Kümesi Tahsisi Adım yürütme sırasında İş planlamasından önce
Çizelgeleme Bağımsız işler hızla yönetilir Kaynak dengelemesi için merkezi planlama
Kullanım çantası Yüksek hacimli bağımsız işler Koordinasyon gerektiren karmaşık iş yükleri

Seçim iş yükü türüne bağlıdır. JES2 dağıtılmış, daha hızlı ortamlara uygundur, JES3 ise koordineli toplu işler için idealdir.


13) JCL'de SOC4 hatası nasıl ele alınır?

SOC4, genellikle aşağıdakilerden kaynaklanan bir depolama ihlalini gösterir:

  • Geçersiz veri kümesi adresi.
  • Başlatılmamış belleğe erişim.
  • Program mantık hataları.

Çözüm, DD ifadelerinin doğrulanmasını, veri kümesi niteliklerinin kontrol edilmesini ve COBOL veya montajcı kodunun doğru işaretçileri kullandığının sağlanmasını içerir.

Örnek: Eksik bir veri kümesine erişim DISP=SHR Geçersiz referans nedeniyle SOC4'e neden olabilir.


14) JCL'den COBOL programlarına veri aktarmanın farklı yolları nelerdir?

Veriler şu şekilde aktarılabilir:

  1. DD ifadelerinde tanımlanan dosyalar.
  2. SYSIN DD bildirimi satır içi veriler için.
  3. PARM parametresi kontrol bilgilerini iletmek için.

Örnek:

//STEP1 EXEC PGM=MYPGM,PARM='2025'

Bu da 2025 yılını parametre olarak geçiyor.


15) SYSOUT parametresinin amacını açıklayınız.

SYSOUT, sistem çıktısının (mesajlar, günlükler) yazıcılara veya makara veri kümelerine nasıl yönlendirileceğini kontrol eder.

Örnek:

//OUTPUT DD SYSOUT=*

Bu, çıktıyı varsayılan makaraya yönlendirir. SYSOUT, üretim izleme sırasında hata günlüklerinin ve mesajlarının etkili bir şekilde incelenmesini sağlar.


16) DSN parametresini tanımlayan özellikler nelerdir?

DSN parametresi, JCL'deki veri kümesi adlarını tanımlar. Aşağıdaki kurallara uyar:

  • Maksimum 44 karakter.
  • Periyotlarla ayrılmış elemelere bölünür.
  • Her niteleyici 1–8 alfanümerik karakterden oluşur.

Örnek: PAYROLL.MONTHLY.JAN2025

Özellikler, veri kümelerinin mantıksal olarak düzenlenmesini sağlar.


17) Geçici veri kümeleri nasıl oluşturulabilir ve ne zaman kullanılır?

Geçici veri kümeleri, yalnızca iş yürütme sırasında ara sonuçlara ihtiyaç duyulduğunda kullanışlıdır. Bunlar, && DSN'de.

Örnek:

//TEMP DD DSN=&&WORK,UNIT=SYSDA,SPACE=(CYL,1),DISP=(NEW,DELETE)

Bu tür veri kümeleri iş sona erdiğinde otomatik olarak silinir ve depolama alanından tasarruf edilir.


18) IEBGENER yardımcı programının kullanımı nedir?

IEBGENER, veri kümelerini kopyalamak, yeniden biçimlendirmek veya yazdırmak için çok yönlü bir yardımcı programdır.

Kullanım Durumları:

  • PS'yi PS'ye kopyala.
  • PDS üyesini PS'ye kopyala.
  • PS'yi PDS üyesine kopyalayın.

Genellikle dosya yedekleme veya test veri kümeleri oluşturmak için kullanılır.


19) JCL'deki kataloglanmış prosedürler, akış içi prosedürlere göre avantaj sağlar mı?

Evet. Kütüphanelerde ayrı ayrı saklanan kataloglanmış prosedürler, yeniden kullanılabilirlik, standardizasyon ve daha kolay bakım imkânı sunar.

Görünüş Kataloglanmış Prosedür Akış İçi Prosedür
Depolama kütüphanelerde JCL'nin içinde
Bakım Merkezi ve yeniden kullanılabilir İş başına düzenleme gerektirir
Avantajları Emek tasarrufu sağlar, gereksiz tekrarları azaltır Tek seferlik işler için kullanışlıdır

20) JCL kullanarak bir dosyanın boş olup olmadığını nasıl kontrol edebilirsiniz?

IDCAMS yardımcı programını kullanırken, giriş dosyası boşsa, iş 4 dönüş koduyla tamamlanır.

Örnek:

//STEP1 EXEC PGM=IDCAMS  
//SYSIN DD *  
 PRINT INFILE(INPUT) COUNT(1)  
/*

Eğer kayıt bulunamazsa dönüş kodu boş olduğunu gösterir.


21) PROC'ta sembolik parametreler ile normal parametreler arasındaki fark nedir?

Sembolik parametreler, kataloglanmış prosedürlerde kullanılan ve yürütme sırasında değiştirilebilen yer tutuculardır.

Örnek:

//STEP1 EXEC PGM=&PROG

Burada, &PROG semboliktir ve çağrıldığında gerçek program adıyla değiştirilir. Ancak normal parametreler sabit kodlanmıştır.


22) Başka bir veri setiyle aynı özelliklere sahip bir veri seti nasıl oluşturulur?

DCB kalıtımıyla IEBGENER veya IDCAMS kullanın.

Örnek:

//SYSUT1 DD DSN=OLD.FILE,DISP=SHR  
//SYSUT2 DD DSN=NEW.FILE,DISP=(NEW,CATLG),DCB=*.SYSUT1

Bu, NEW.FILE ile aynı özelliklere sahiptir OLD.FILE.


23) JCL performans optimizasyonunu etkileyen faktörler nelerdir?

Performansı belirleyen birkaç faktör vardır:

  • Verimli veri seti düzenlemesi.
  • Doğru alan dağılımı.
  • Mantıksal veri kümesi organizasyonu için GDG'lerin kullanılması.
  • Gereksiz akış içi verilerin önlenmesi.
  • İş yüküne göre JES2 ile JES3 arasında seçim yapmak.

Performans ayarlaması CPU kullanımının azaltılmasını ve işlerin daha hızlı tamamlanmasını sağlar.


24) JCL'de COND=ONLY veya COND=EVEN ne zaman kullanılmalıdır?

Parametre Amaç Örnek E-posta
COND=SADECE Önceki adım iptal edilirse yürütülür Hata işleme adımı
COND=ÇİFT Önceki sonuçlara bakılmaksızın yürütülür Temizlik rutinleri

Bu koşullar yürütme akışı üzerinde kontrol sağlar.


25) DD ifadelerinde DCB parametresinin rolünü açıklayınız.

DCB (Veri Kontrol Bloğu), kayıt uzunluğu, blok boyutu ve kayıt biçimi gibi veri kümesi özelliklerini tanımlar.

Örnek:

//DATA DD DSN=MYFILE,DISP=SHR,DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)

Bu, sistemin veri setini doğru şekilde yorumlamasını sağlar. Yanlış DCB, abendlere neden olur.


26) Geçici veri kümelerinin yoğun olarak kullanılmasının dezavantajları var mıdır?

Evet, geçici veri kümeleri kalıcı depolama alanından tasarruf sağlarken, aşırı kullanım:

  • Tahsis/tahsis kaldırmada sistem yükünü artırın.
  • İş tamamlandıktan sonra veri kümeleri kaybolacağından yeniden kullanılabilirliği azaltın.
  • Ara sonuçların tekrar istenmesi durumunda iş tekrar çalıştırma başarısızlıklarına yol açar.

Dengeli bir yaklaşım şart.


27) JCL'de koşul kontrolünün (COND parametresi) amacı nedir?

COND, önceki adımların dönüş kodlarına dayalı olarak adımların koşullu olarak yürütülmesini sağlar.

Örnek:

//STEP2 EXEC PGM=REPORT,COND=(4,LT,STEP1)

Bu, yalnızca STEP1'in dönüş kodu şuysa STEP2'yi çalıştırır: 4'den az değil.


28) Akış içi veri ile SYSIN DD arasında nasıl bir fark vardır?

  • Akış içi veriler: JCL'ye doğrudan dahil edilen veriler DD *.
  • SİSTEM DD: Giriş kontrol verilerine işaret eden DD ifadesi.

Örnek:

//SYSIN DD *  
DATA LINE 1  
DATA LINE 2  
/*

SYSIN, SORT veya IDCAMS gibi yardımcı programlarla sıklıkla kullanılır.


29) JCL'de sıklıkla kullanılan yardımcı programlar hangileridir ve amaçları nelerdir?

Yarar Amaç
İEBGENER Veri kümelerini kopyala
IEBCOPY PDS üyelerini yönetin
SIRALAMA Veri kümelerini sıralayın veya birleştirin
IDCAMS VSAM veri kümelerini yönetin
IEHLIST Katalog girişlerini görüntüle

Mülakatlarda bu yardımcı programlara aşinalık hayati önem taşır.


30) GDG'nin avantajları ve dezavantajları nelerdir?

Görünüş Avantajlar Dezavantajlar
organizasyon Veri kümesi sürümlemesini basitleştirir Katalog alanını tüketebilir
giriş Kolay bağıl referanslama Katalog bakımı gerektirir
Kullanım çantası Tarihsel kayıtlar, yedeklemeler Kötü yönetilirse kurtarılması karmaşıktır

31) JCL prosedürleri toplu işlerin sürdürülebilirliğini nasıl iyileştirebilir?

Prosedürler, yeniden kullanılabilir iş adımlarını kapsayarak gereksiz tekrarları ve hataları azaltır. Kataloglanmış prosedürler, kuruluşların departmanlar arasında yürütmeyi standartlaştırmasına olanak tanır.

Örnek: Aylık bordro için kataloglanmış bir PROC, her iş biriminin JCL'yi yeniden yazmadan aynı doğrulanmış işi çalıştırmasını sağlar.


32) Bir PROC'da akış içi verileri kodlamak mümkün mü?

Hayır, akış içi veriler bir PROC'ta kodlanamaz çünkü prosedürler kütüphanelerde saklanır. Yalnızca sembolik parametreler veya DD ifadeleri kullanılabilir.


33) JCL'de veri kümelerini birden fazla birime nasıl tahsis edersiniz?

Kullan ÜNİTESİ hem de VOL DD ifadelerindeki parametreler.

Örnek:

//DATA DD DSN=MYFILE,UNIT=3390,VOL=SER=VOL001

Büyük dosyalar için sistem otomatik olarak birden fazla birime yayılır.


34) İŞ beyannamesinde muhasebe bilgilerinin önemi nedir?

JOB bildirimi, muhasebe parametrelerini içerebilir. track kaynak tüketimi. Bu, doğru faturalandırma, maliyet dağılımı ve denetimi sağlar.

Örnek:

//JOB1 JOB (12345),'PAYROLL',CLASS=A,MSGCLASS=X

Burada, (12345) hesap bilgilerini temsil eder.


35) Veri seti düzenleme parametreleri (DISP) iş kurtarmayı nasıl etkileyebilir?

DISP, veri kümesinin kullanılabilirliğini yürütme sonrasında belirler:

DISP Değeri Amaç
YENİ Yeni bir veri kümesi oluşturur
ESKİ Özel kontrol
Şşş Paylaşılan salt okunur
MOD Ekleme modu
SİL Veri kümesini siler
CATLG Katalog veri kümesi

Doğru DISP kodlaması, işlerin başarısızlıktan sonra sorunsuz bir şekilde kurtarılmasını sağlar.


36) JOB ifadesinde MSGCLASS ve CLASS parametrelerinin rolü nedir?

  • SINIF yürütme önceliğini ve kaynak sınıfını tanımlar.
  • MSGSINIFI sistem mesajlarının yönlendirilmesini belirler.

Örnek: Yüksek öncelikli işler için CLASS=A; mesajları biriktirme kuyruğuna yönlendirir.


37) JCL iş kazasının yaygın nedenlerini açıklayabilir misiniz?

Yaygın nedenler şunlardır:

  • Yanlış DD parametreleri.
  • Yetersiz depolama alanı tahsisi.
  • Geçersiz DISP kodlaması.
  • JOBLIB/STEPLIB'de eksik kütüphaneler.
  • Yanlış DCB parametreleri.

Önleyici uygulamalar, üretim öncesinde JCL'nin QA'da test edilmesini içerir.


38) JCL betiklerinin uyumluluk ve denetim gerekliliklerini karşıladığından nasıl emin oluyorsunuz?

Uyumluluk şunları içerir:

  • İŞ kartındaki muhasebe bilgilerinin kullanımı.
  • Hassas veri kümelerine erişimin kısıtlanması.
  • SYSOUT ve iş raporlarının kaydedilmesi.
  • DSN'ler için isimlendirme standartlarını takip ediyoruz.

Denetçiler, uygun katalog yönetimi ve kontrollü erişim için JCL'yi sıklıkla incelerler.


39) JCL'de desteklenen farklı veri seti organizasyon türleri nelerdir?

Menşei Açıklama
Sıralı (PS) Doğrusal kayıt depolama
Bölümlenmiş (PDS/PDSE) Birden fazla üyesi olan kütüphaneler
VSAM Yüksek performanslı indeksli veri kümeleri
GDG Nesil bazlı veri kümeleri

Her veri seti türünün iş yüküne bağlı olarak kendine özgü avantajları vardır.


40) Günümüzde JCL'nin işletmelerdeki önemini hangi trendler etkiliyor?

Onlarca yıllık geçmişine rağmen JCL şu sebeplerden dolayı önemini korumaktadır:

  • Zowe gibi araçlar aracılığıyla DevOps süreçleriyle entegrasyon.
  • COBOL-JCL ekosistemlerini koruyan modernizasyon projeleri.
  • Bankacılık, sağlık ve hükümet alanlarında kritik iş yüklerini yöneten ana bilgisayarlar.

Kuruluşlar, eski istikrarı modern otomasyonla dengeleyerek JCL bilgisini değerli hale getiriyor.


41) JCL hatalarını etkili bir şekilde nasıl ayıklayabilirsiniz?

JCL hata ayıklama, sistem mesajlarını, dönüş kodlarını ve günlükleri yorumlamak için sistematik bir yaklaşım gerektirir. Bir iş yürütüldükten sonra JES, abend kodları (örneğin, S0C4, S322) ve adım dönüş kodları gibi değerli tanılama bilgileri içeren çıktı listeleri oluşturur. SDSF or ISPF Geliştiricilerin makara çıktısını analiz etmelerine, veri kümesi tahsislerini kontrol etmelerine ve DD ifadelerini doğrulamalarına olanak tanır.

En İyi Uygulamalar:

  • Değerlendirme SYSOUT Başarısızlık noktasını anlamak için mesajlar.
  • Dönüş kodlarını kontrol edin (COND (her adım için değerler).
  • Veri kümesi niteliklerini (DCB, DISP ve SPACE) doğrulayın.
  • Şu tür yardımcı programları kullanın: IDCAMS Veri kümesinin varlığını doğrulamak için LISTCAT veya ISPF 3.4.

Geliştiriciler, olası nedenleri sistematik olarak daraltarak iş tekrar döngülerini azaltırlar.


42) Sembolik parametrelerin kullanımının avantajları ve dezavantajları nelerdir?

Sembolik parametreler, çalışma zamanında değerleri dinamik olarak değiştirerek yeniden kullanılabilir JCL prosedürleri yazarken esneklik sağlar.

Görünüş Avantajlar Dezavantajlar
Esneklik Aynı prosedür farklı giriş veri kümeleri veya programlarla çalıştırılabilir Aşırı kullanım JCL'nin okunmasını zorlaştırabilir
İdame İşler arasında tekrarı azaltır Sıkı dokümantasyon gerektirir
Reus yeteneği Standartlaştırılmış kataloglanmış prosedürleri teşvik eder Yeni kullanıcılar ikame kurallarıyla ilgili zorluk yaşayabilir

Örnek:

//STEP1 EXEC PGM=&PROG

Burada, &PROG ile değiştirilebilir PAYROLL or HRREPORT Uygulama anında, prosedürü çok yönlü hale getirir.


43) PROC ve INCLUDE ifadeleri arasında hangi farklar vardır?

Hem PROC hem de INCLUDE, JCL'yi modülerleştirmeye yardımcı olur ancak farklı amaçlara hizmet eder.

Özellik PROC DAHİL
Amaç Yeniden kullanılabilir bir dizi iş adımını kapsüller Harici JCL ifadelerini satır içi olarak ekler
Depolama Kataloglanmış kütüphanelerde saklanır Veri kümelerinde JCL üyeleri olarak saklanır
infaz EXEC ifadesiyle çağrıldı Gönderim zamanında genişletildi
Esneklik Sembolik parametrelere izin verir Tipik olarak statik metin dahil etme

Örnek:

  • PROC: Standart bordro iş adımı kütüphanesi her ay yeniden kullanılıyor.
  • DAHİL: Birden fazla işte yer alan günlük kaydı veya muhasebe bilgisi gibi paylaşılan DD ifadeleri.

44) Kataloglanmış bir prosedürde parametreler nasıl geçersiz kılınır?

Geçersiz kılmalar, temel PROC'u değiştirmeden kataloglanmış prosedürlerin özelleştirilmesine olanak tanır. Bu, adım düzeyinde DD geçersiz kılmaları veya sembolik ikameler kullanılarak yapılır.

Geçersiz Kılma Yöntemleri:

  1. DD Geçersiz Kılma – Veri setini veya düzenlemeyi değiştirin:
    //STEP1.DD1 DD DSN=NEW.FILE,DISP=SHR
  2. Sembolik Geçersiz Kılma – PROC'ta tanımlanan yer tutucuları değiştirin:
    //MYJOB EXEC PROCNAME,PROG=PAYROLL

Bu teknikler kataloglanmış prosedürlerin hem yeniden kullanılabilir hem de departmanlar arasında uyarlanabilir olmasını sağlar.


45) JCL'de veri kümelerini adlandırmak için en iyi uygulamalar nelerdir?

Veri kümesi adlarının (DSN'ler) açıklık ve uyumluluğu sağlamak için anlamlı, hiyerarşik ve standartlaştırılmış olması gerekir.

En İyi Uygulamalar:

  • Kullanım elemeleri mantıksal olarak (örneğin, ORG.DEPT.APP.TYPE).
  • İsimleri 44 karakterle sınırlayın.
  • Niteleyicileri alfabetik karakterlerle başlatın.
  • Zamansal veri kümeleri için versiyonlama veya GDG'leri kullanın.
  • Denetlenebilirlik için kurumsal adlandırma kurallarına uyun.

Örnek:

BANKING.CUST.TRANS.JAN2025.BACKUP İşletmenin işlevini, veri kümesi türünü ve zaman çerçevesini açıkça aktarır.


46) SORT gibi yardımcı programlar veri işleme konusunda COBOL'a göre avantaj sağlıyor mu?

Evet. SORT yardımcı programı, eşdeğer COBOL kodu yazmaya kıyasla dosya düzenleme için oldukça optimize edilmiştir. Filtreleme, birleştirme, toplama ve sıra kontrolü gibi yerleşik işlevler sunar.

SORT'un COBOL'a göre avantajları:

  • Performans: Büyük veri kümeleri için optimize edilmiş, daha düşük CPU çevrimleri.
  • Basitlik:Birkaç kontrol ifadesiyle elde edilen karmaşık dönüşümler.
  • Bakım: Daha az kod gerektirir, değiştirilmesi daha kolaydır.

Örnek:

SORT FIELDS=(1,10,CH,A)

Bu, kayıtları ilk 10 karaktere göre sıralar; aksi takdirde bu, birkaç satır COBOL mantığı gerektirecektir.


47) Akış içi prosedürler ile kataloglanmış prosedürler arasındaki fark nedir?

Özellik Akış İçi Prosedür Kataloglanmış Prosedür
Tanım JCL işinin içinde doğrudan tanımlanan prosedür Harici olarak bir prosedür kitaplığında (PROCLIB) saklanır
kapsam Yalnızca kodlandığı iş için kullanılabilir Sistem genelinde birden fazla iş için kullanılabilir
Reus yeteneği Sınırlı Yüksek, standardizasyonu teşvik eder
Bakım İş başına düzenlemeye ihtiyaç var Merkezi güncellemeler tüm işlere fayda sağlar

Sonuç: Kataloglanmış prosedürler, sürdürülebilirlikleri nedeniyle kurumsal ölçekte toplu işlemler için tercih edilir.


48) MOD eğilim parametresini ne zaman kullanmalısınız?

DISP=MOD Mevcut bir veri kümesinin üzerine yazmak yerine, yeni kayıtlar eklerken kullanılır. Bu, iş çalıştırmaları arasında veri sürekliliğini sağlar.

Örnek:

//REPORT DD DSN=PAYROLL.REPORTS,DISP=MOD

Bu, önceki raporları değiştirmek yerine yeni raporlar ekler.

Kullanım Durumları:

  • Günlük işlem kayıtları aylık rapor dosyalarına eklenir.
  • Toplu verilerin korunması gereken toplu işleme işleri.

49) JCL'yi üretimde kodlamadan önce hangi faktörler göz önünde bulundurulmalıdır?

JCL'yi üretime geçirmeden önce, birkaç kritik kontrolün tamamlanması gerekir:

  1. Veri Kümesi Doğrulaması – DSN'lerin mevcut olduğundan, DISP kodlarının doğru olduğundan ve birimlerin kullanılabilir olduğundan emin olun.
  2. Güvenlik – RACF veya ACF2 izinlerini onaylayın.
  3. Hata işleme – Güvenli adım atlaması için COND parametrelerini ekleyin.
  4. Kaynak Tahsisi – SPACE, REGION ve CLASS parametrelerini optimize edin.
  5. Denetlenebilirliğin – Muhasebe bilgilerini ve yorumlarını ekleyin. tracyetenek.

Kapsamlı bir kontrol listesi, yüksek riskli üretim ortamlarında başarısızlıkları azaltır.


50) JCL modern DevOps uygulamalarıyla entegre olabilir mi?

Evet. JCL, aşağıdaki gibi modern çerçeveler aracılığıyla DevOps hatlarına entegre edilebilir: Zowe CLI hem de REST API'leriBu araçlar, modern uygulamalarla birlikte toplu işlerin gönderilmesine, izlenmesine ve otomatikleştirilmesine olanak tanır.

DevOps Entegrasyonunun Faydaları:

  • Ana bilgisayar iş yüklerinin sürekli teslimi.
  • Modern gösterge panelleri aracılığıyla birleşik izleme.
  • Toplu işlerin otomatik regresyon testi.
  • İş yükü orkestrasyonu için hibrit bulut entegrasyonu.

Örnek: Jenkins Zowe CLI kullanarak işlem hatları JCL gönderimlerini tetikleyebilir ve böylece eski toplu işleme süreçlerini modern CI/CD iş akışlarıyla birleştirebilir.


🔍 Gerçek Dünya Senaryoları ve Stratejik Yanıtlarla En İyi JCL Mülakat Soruları

1) İş Kontrol Dili'nin (JCL) amacını açıklayabilir misiniz?

Adaydan beklenenler: Görüşmeyi yapan kişi, JCL ve ana bilgisayar ortamlarındaki rolüne ilişkin temel anlayışınızı değerlendirmek istiyor.

Örnek cevap: “JCL, işletim sistemine bir toplu işin nasıl çalıştırılacağını veya bir alt sistemin nasıl başlatılacağını bildirmek için kullanılır. Hangi programların çalıştırılması gerektiğini, hangi giriş ve çıkış veri kümelerinin gerekli olduğunu ve başarılı bir çalıştırma için gereken kaynakları tanımlar. Temelde uygulama programları ile işletim sistemi arasında bir iletişim köprüsü görevi görür.”


2) JCL'deki JOB, EXEC ve DD ifadeleri arasındaki temel farklar nelerdir?

Adaydan beklenenler: Görüşmeyi yapan kişi JCL bileşenleri hakkındaki teknik bilginizi doğrulamak istiyor.

Örnek cevap: "JOB ifadesi işi tanımlar ve muhasebe ve öncelik ayrıntıları gibi bilgiler sağlar. EXEC ifadesi, yürütülecek program veya prosedürü belirtir. DD ifadesi, girdi, çıktı ve geçici dosyalar dahil olmak üzere kullanılacak veri kümelerini açıklar."


3) Karşılaştığınız zorlu bir JCL hatasını ve bunu nasıl çözdüğünüzü anlatın.

Adaydan beklenenler: Görüşmeyi yapan kişi sorun giderme ve problem çözme becerilerinizi değerlendiriyor.

Örnek cevap: "Son görevimde, eksik veri kümesi tahsisi nedeniyle bir işin sürekli olarak esnediği bir sorunla karşılaştım. Sistem günlüklerini ve SYSOUT mesajlarını kullanarak DD ifadesinde veri kümesi adında bir yazım hatası olduğunu tespit ettim. Veri kümesi adını düzeltip depolama yönetimi ekibiyle doğrulama yaptığımda hata çözüldü."


4) JCL'de eksik veya tanımsız veri kümelerini nasıl ele alıyorsunuz?

Adaydan beklenenler: Görüşmeyi yapan kişi, veri seti yönetimine ilişkin pratik bilginizi kontrol ediyor.

Örnek cevap: "Veri kümesi yönetimini kontrol etmek için genellikle DISP parametrelerini kullanırım. Örneğin, DISP=MOD, CATLG, DELETE, mevcut olmayan bir veri kümesinin oluşturulmasını ve gerektiğinde uygun şekilde kataloglanmasını veya silinmesini sağlar. Ayrıca, işi göndermeden önce ISPF yardımcı programları aracılığıyla veri kümesinin varlığını doğrularım."


5) JCL sorununu çözmek için birden fazla ekiple koordinasyon sağlamak zorunda kaldığınız bir zamanı anlatır mısınız?

Adaydan beklenenler: Görüşmeyi yapan kişi ekip çalışması ve iletişim becerilerini ölçüyor.

Örnek cevap: "Önceki bir görevimde, bir JCL işi, başka bir ekibin süreciyle çakışan bir zamanlama nedeniyle başarısız oldu. Zamanlamayı ve bağımlılıkları analiz etmek için operasyon ekibi ve uygulama geliştiricileriyle koordineli çalıştım. Gelecekteki çakışmaları önlemek için iş zamanlamasını ayarladık ve yeni sırayı belgeledik."


6) Beklenenden daha uzun süren bir JCL işini nasıl optimize edersiniz?

Adaydan beklenenler: Görüşmeyi yapan kişi performans ayarlama yaklaşımınızı değerlendirmek istiyor.

Örnek cevap: "Öncelikle, büyük veri kümelerinin gereksiz yere okunup okunmadığını kontrol etmek için G/Ç işlemlerini gözden geçiriyorum. Ardından, uygun parametrelerle yapılandırıldıklarını doğrulamak için SORT veya IDCAMS gibi yardımcı programların kullanımını analiz ediyorum. Son olarak, performansı önemli ölçüde artırabilecek optimum veri kümesi tahsisini doğrulamak için depolama ekibiyle görüşüyorum."


7) Bir üretim işinin sabah 2'de başarısız olduğunu düşünün. Bu durumda nasıl davranırsınız?

Adaydan beklenenler: Görüşmeyi yapan kişi kriz yönetimi ve önceliklendirme becerilerinizi test ediyor.

Örnek cevap: "Sebebi belirlemek için SYSOUT ve hata kodlarını hemen incelerdim. Basit bir JCL sözdizimi veya veri kümesi sorunuysa, düzeltip işi yeniden gönderirdim. Sorun sistem kaynakları veya ekipler arası destek gerektiriyorsa, sorunu üst birime iletir ve aynı zamanda arızayı son durum analizi için belgelerdim."


8) Karmaşık JCL betikleri yazarken doğruluğu nasıl sağlıyor ve hataları nasıl en aza indiriyorsunuz?

Adaydan beklenenler: Görüşmeyi yapan kişi sizin ayrıntılara gösterdiğiniz özeni ve önleyici uygulamalarınızı değerlendirmek ister.

Örnek cevap: "Okunabilirliği artırmak ve karmaşıklığı azaltmak için büyük JCL betiklerini her zaman modüler prosedürlere bölerim. Önceki görevimde, tekrarlayan görevler için standart şablonlar oluşturup kullandım. Ayrıca, işleri üretime geçirmeden önce daha düşük bir ortamda test ettim."


9) Ana bilgisayar ortamında JCL ile çalışmaya sizi motive eden şey nedir?

Adaydan beklenenler: Görüşmeyi yapan kişi sizin role olan tutkunuzu anlamaya çalışıyor.

Örnek cevap: "JCL'de beni motive eden şey, kurumsal düzeydeki iş yüklerini yönetmedeki kritik rolü. Yaşına rağmen JCL, bankacılık ve sigortacılık gibi sektörlerde hala büyük önem taşıyor. Onunla çalışmaktan keyif alıyorum çünkü karmaşık iş sorunlarını çözmeme ve kritik görev sistemleri için istikrar sağlamama olanak tanıyor."


10) Geçmişte JCL süreçlerini nasıl otomatikleştirdiğinizi anlatabilir misiniz?

Adaydan beklenenler: Röportajı yapan kişi inovasyon, otomasyon ve verimlilik iyileştirmeleri hakkında bilgi almak istiyor.

Örnek cevap: "Önceki işimde, birden fazla işte tekrarlayan JCL kodlarını değiştirmek için prosedürler (PROC'ler) oluşturdum. Bu, gereksiz tekrarları azalttı, sürdürülebilirliği iyileştirdi ve hata riskini düşürdü. Ayrıca, manuel müdahale olmadan işlerin zamanında tamamlanmasını sağlayan CA-7 gibi zamanlama araçlarıyla da çalışarak yürütmeyi otomatikleştirdim."

Bu yazıyı şu şekilde özetleyin: