प्रोजेक्ट चुनना
कैपस्टोन प्रोजेक्ट या तो किसी असली समस्या का प्रोग्राम वाला हल होता है, या अपने कोड पर आधारित जाँच (जैसे दो एल्गोरिद्म की तुलना या मशीन-लर्निंग मॉडल को परखना)।
- जाना-पहचाना क्षेत्र चुनो: शौक़, खेल, परिवार का व्यापार, स्कूल क्लब। तुम उपयोगकर्ताओं को समझोगे और महीनों तक रुचि बनी रहेगी।
- असली उपयोगकर्ता ढूँढो जो अपनी ज़रूरत बताए और तुम्हारा काम परखे।
- उदाहरण: सिमुलेशन (यातायात, महामारी, भौतिकी), कंप्यूटर विरोधी वाला खेल, AI या मशीन-लर्निंग टूल, डेटा-साइंस विश्लेषण, डेटाबेस वाला वेब या मोबाइल ऐप।
- पर्याप्त तकनीकी गहराई: जटिल डेटा संरचनाएँ (ग्राफ़, ट्री, हैश टेबल, ऑब्जेक्ट), कठिन एल्गोरिद्म (खोज, अनुकूलन, रिकर्शन), डेटाबेस डिज़ाइन या नेटवर्किंग। सवालों की सूची वाला साधारण क्विज़ ऐप आम तौर पर बहुत हल्का है।
- सही आकार: हुनर दिखाने लायक बड़ा, पूरा करने लायक छोटा। पहले मुख्य संस्करण, फिर अतिरिक्त सुविधाएँ।
रिपोर्ट के हिस्से और अंकों का बँटवारा
ज़्यादातर योजनाएँ यही पाँच हिस्से जाँचती हैं। एक आम A-level योजना में 75 अंक हैं:
| हिस्सा | अंक | हिस्सेदारी | क्या लिखें |
|---|---|---|---|
| विश्लेषण | 9 | 12% | समस्या, उपयोगकर्ता, शोध (बातचीत, मौजूदा सिस्टम), मापने योग्य उद्देश्य |
| दस्तावेज़ी डिज़ाइन | 12 | 16% | मॉड्यूल / क्लास आरेख, डेटा संरचना, फ़ाइल या डेटाबेस डिज़ाइन, मुख्य एल्गोरिद्म (स्यूडोकोड या फ़्लोचार्ट), स्क्रीन के स्केच |
| तकनीकी हल | 42 | 56% | पूरा कोड, जटिल तकनीकों और अच्छी शैली के साथ |
| परीक्षण | 8 | 11% | परीक्षण योजना और सबूत (स्क्रीनशॉट या वीडियो) |
| मूल्यांकन | 4 | 5% | हर उद्देश्य कितना पूरा हुआ, उपयोगकर्ता की राय, सुधार |
| कुल | 75 | 100% |
मापने योग्य उद्देश्य रीढ़ हैं। "तेज़ बनाओ" अस्पष्ट है; "10 000 रिकॉर्ड में खोज कर 1 सेकंड से कम में नतीजा दिखाओ" जाँचा जा सकता है। हर उद्देश्य ऐसा लिखो कि बाद में साफ़ कह सको: "पूरा हुआ" या "नहीं हुआ"।
तकनीकी कौशल और कोडिंग शैली
तकनीकी कौशल के स्तर
अंक योजनाएँ तकनीकों को कठिनाई से समूहों में बाँटती हैं। मोटे तौर पर:
- समूह A (सबसे कठिन): जटिल डेटा मॉडल (जुड़ी हुई तालिकाएँ, इनहेरिटेंस और पॉलिमॉर्फ़िज़्म वाले ऑब्जेक्ट), ग्राफ़ या ट्री ट्रैवर्सल, रिकर्शन, हैशिंग, जटिल गणितीय मॉडल, ख़ुद बनाई डायनामिक डेटा संरचनाएँ, क्लाइंट–सर्वर या नेटवर्किंग।
- समूह B: सरल OOP, बहु-आयामी ऐरे, फ़ाइलें या सरल डेटाबेस, रिकॉर्ड, मानक सॉर्ट और सर्च।
- समूह C (बुनियादी): एक तालिका, सरल ऐरे, रैखिक खोज, सीधा इनपुट-आउटपुट।
ऊँचे अंकों के लिए प्रोजेक्ट में कई काम करती, अपनी बनाई समूह A तकनीकें होनी चाहिए।
कोडिंग शैली
- बुनियादी: चर और सबरूटीन के अर्थपूर्ण नाम; एक जैसा लेआउट।
- अच्छी: मॉड्यूलर कोड (पैरामीटर और रिटर्न वाले सबरूटीन), कम ग्लोबल चर, नामित स्थिरांक, काम की टिप्पणियाँ।
- उत्कृष्ट: सुसंगठित (cohesive) मॉड्यूल (हर एक एक काम अच्छे से), ढीले जुड़े हिस्से जो साफ़ इंटरफ़ेस से बात करें, सुरक्षात्मक (defensive) कोड जो इनपुट जाँचे और त्रुटियाँ सँभाले (try/except, सीमा जाँच)।
परीक्षण और मूल्यांकन के सबूत
परीक्षण योजना
अच्छी परीक्षण तालिका में होता है: परीक्षण नंबर, क्या जाँचा (किस उद्देश्य से जुड़ा), परीक्षण डेटा, डेटा का प्रकार, अपेक्षित नतीजा, असली नतीजा, पास/फ़ेल और सबूत का हवाला।
- सामान्य डेटा: आम सही इनपुट (उम्र 15)।
- सीमा डेटा: अनुमत सीमा के किनारे के मान (11–18 मान्य हो तो 11 और 18)।
- ग़लत डेटा: अमान्य इनपुट जिसे ठुकराना है (उम्र −3, "abc")।
सबूत दिखाओ: टिप्पणी वाले स्क्रीनशॉट या छोटा वीडियो। परीक्षण फ़ेल हो तो बग, सुधार और दोबारा परीक्षण लिखो: यह असली विकास दिखाता है।
मूल्यांकन
- विश्लेषण के हर उद्देश्य को परखो: पूरा, आंशिक या नहीं, सबूत के साथ।
- उपयोगकर्ता की राय लो: असली उपयोगकर्ता से सिस्टम चलवाओ और उसकी बातें लिखो।
- व्यावहारिक सुधार सुझाओ और बताओ कि कैसे करोगे।
खुद करो: आज तीन उद्देश्य लिखो
घर की कोई छोटी समस्या चुनो (जैसे कौन कौन-सा काम करेगा, इसका हिसाब)। तीन जाँचने योग्य उद्देश्य लिखो, हर एक में कोई संख्या हो ("6 लोगों तक के इस हफ़्ते के काम एक स्क्रीन पर दिखाओ")। एक उद्देश्य के लिए सामान्य, सीमा और ग़लत डेटा वाला परीक्षण लिखो। फिर आख़िरी 3D चरण में देखो कि तुम्हारा काम किस हिस्से में आता है।
मुख्य सूत्र और परिभाषाएँ
- चरण: विश्लेषण → डिज़ाइन → तकनीकी हल → परीक्षण → मूल्यांकन
- मापने योग्य उद्देश्य = सबूत से पूरा / अधूरा कहा जा सके
- हिस्सेदारी = हिस्से के अंक ÷ कुल अंक × 100%
- परीक्षण डेटा: सामान्य, सीमा, ग़लत
- अच्छे मॉड्यूल: ज़्यादा सुसंगठन (cohesion), कम जुड़ाव (coupling)
- सुरक्षात्मक कोड = इनपुट जाँचो + त्रुटि सँभालो
- मूल्यांकन = उद्देश्य + सबूत + उपयोगकर्ता की राय + सुधार
हल किए गए उदाहरण
1. कौन-सा विचार बेहतर है: (a) 20 तय सवालों वाला पहाड़ा क्विज़, (b) ग्राफ़ और डाइकस्ट्रा एल्गोरिद्म से स्कूल बस का रास्ता बताने वाला प्रोग्राम?
(b)। इसमें असली उपयोगकर्ता, ग्राफ़ डेटा संरचना और कठिन एल्गोरिद्म है। (a) बहुत सरल है।
2. "ऐप चलाना आसान हो" को मापने योग्य उद्देश्य में बदलो।
जैसे: "नया उपयोगकर्ता अधिकतम 4 क्लिक में कक्षा बुक कर सके, और 5 में से 4 परीक्षक बिना मदद के ऐसा कर सकें।"
3. मान्य अंक 0 से 100 हैं। एक सामान्य, दो सीमा और एक ग़लत परीक्षण मान दो।
सामान्य: 57। सीमा: 0 और 100 (बाहर के 101 और −1 भी)। ग़लत: "दस" या −20।
4. 75 अंकों की योजना में तकनीकी हल कितने प्रतिशत है?
42 ÷ 75 × 100% = 56%।
आम गलतियाँ
- इतना सरल प्रोजेक्ट चुनना कि कठिन तकनीक दिखे ही नहीं, या इतना बड़ा कि पूरा न हो।
- अस्पष्ट उद्देश्य लिखना ("यूज़र-फ़्रेंडली") जिन्हें जाँचा न जा सके।
- सिर्फ़ सामान्य डेटा से परीक्षण करना, सीमा और ग़लत डेटा छोड़ देना, या सबूत न देना।
- मूल्यांकन को "मैंने क्या किया" की कहानी बना देना, बजाय हर उद्देश्य को सबूत और उपयोगकर्ता की राय से परखने के।