परियोजना की शुरुआत में चुस्त तरीके और डेटाबेस


12

चुस्त नया और मुझे यकीन नहीं है कि कैसे शुरू करें। स्प्रिंट में परियोजना के छोटे हिस्से बनाने का विचार है। हालाँकि, मैं जिस परियोजना के लिए काम कर रहा हूँ उसके लिए डेटाबेस की आवश्यकता होती है और परियोजना के साथ कुछ भी करने के लिए डेटाबेस लगभग कार्यात्मक होना चाहिए।

तो चुस्त परियोजनाएं इसे कैसे संभालती हैं, क्या आप डेटाबेस बनाकर शुरू करते हैं?

उदाहरण के लिए, यदि आप स्क्रैम का उपयोग करते हैं तो आप उपयोगकर्ता कहानियों को कैसे करेंगे और db का परीक्षण कैसे करेंगे, आप ऐसा कैसे करेंगे।

क्या आप इसके बजाय db के कुछ हिस्सों को एक ऐसी कहानी में करना चाहेंगे जिसके लिए भी कोड की आवश्यकता हो।

कहो कि आपके पास एक कहानी है जो "एक उपयोगकर्ता के रूप में आपको पंजीकृत करने में सक्षम होना चाहिए ..." आप इस कहानी के एक भाग के रूप में डेटाबेस में उपयोगकर्ता तालिका बनाएंगे?

डेटाबेस को डिज़ाइन करने में फुर्तीली आप कैसे मदद कर सकते हैं?


1
फिर से: "एक उपयोगकर्ता के रूप में आप रजिस्टर करने के लिए सक्षम होना चाहिए ..." मैं के माध्यम से पढ़ने का सुझाव था blog.gdinwiddie.com/2011/06/11/dont-you-have-to-login-first और पदों वह उल्लेख है । कोई "सही" उत्तर नहीं हो सकता है; चर्चा में विभिन्न तर्क को समझना अच्छा है।
स्टीवनवी

यदि आप एजाइल, या उस मामले के लिए कोई अन्य कार्यप्रणाली शुरू कर रहे हैं, तो कृपया यह सुनिश्चित करें कि यह आपकी टीम, परियोजना और संगठन की शैली के लिए सॉफ्टवेयर प्रोजेक्ट्स (या आपके ग्राहक) से निपटने के लिए फिट है। यह सच नहीं है कि हर पद्धति हर परियोजना और हर संगठन के लिए काम करती है।
NoChance

जवाबों:


14

हाँ, आप आवश्यक तालिकाओं और स्तंभों को जोड़कर डेटाबेस का निर्माण करेंगे क्योंकि वे कहानी द्वारा आवश्यक हैं। जब आप अपनी पहली कहानी शुरू करते हैं, तो आपको आमतौर पर पूरे डेटाबेस की आवश्यकता नहीं होती है - उदाहरण के लिए "एक उपयोगकर्ता के रूप में आपको पंजीकरण करने में सक्षम होना चाहिए ..." सबसे संभवतः स्तंभों के बिल्कुल निर्धारित सेट के साथ एकल तालिका की आवश्यकता होती है।

यदि आपके पास एक ऐसी कहानी है जिसके लिए वास्तव में पूरे डेटाबेस की आवश्यकता है तो कहानी महाकाव्य है - यह बस बहुत बड़ी है और इसे विभाजित किया जाना चाहिए।


5

चुस्त नया और मुझे यकीन नहीं है कि कैसे शुरू करें।

आपके पोस्ट को पढ़ने के बाद मुझे लगता है कि आप इसे गलत समझ रहे हैं और आपको यह पढ़ने के साथ शुरू करना चाहिए कि चुस्त वास्तव में क्या मतलब है और पूरा करने की कोशिश करता है।

स्प्रिंट में परियोजना के छोटे हिस्से बनाने का विचार है।

बंद करें, लेकिन पर्याप्त नहीं। विचार प्रत्येक स्प्रिंट के अंत में काम करने वाले सॉफ़्टवेयर को वितरित करना है (सिस्टम का एक हिस्सा एक स्प्रिंट में फिट हो सकता है, या नहीं)। डेटाबेस को कार्यशील सॉफ़्टवेयर के रूप में देखा जा सकता है यदि और केवल अगर डेटाबेस वह है जो आप ग्राहक को वितरित करते हैं।

हालाँकि, मैं जिस परियोजना के लिए काम कर रहा हूँ उसके लिए डेटाबेस की आवश्यकता होती है और परियोजना के साथ कुछ भी करने के लिए डेटाबेस लगभग कार्यात्मक होना चाहिए।

यह लगभग कार्यात्मक क्यों है? क्या सिस्टम की प्रत्येक सुविधा डेटाबेस की संपूर्ण या अधिकांश सामग्री का उपयोग करती है? क्योंकि अगर ऐसा नहीं होता है, तो पूरे डेटाबेस को पहले से डिज़ाइन करने का कोई मतलब नहीं है।

तो चुस्त परियोजनाएं इसे कैसे संभालती हैं, क्या आप डेटाबेस बनाकर शुरू करते हैं?

एजाइल डेटाबेस या सिस्टम डिज़ाइन को हैंडल नहीं करता है। यह बताता है कि आपको अपने प्रोजेक्ट का प्रबंधन कैसे करना है। इसे ध्यान में रखते हुए, आप सिस्टम की सभी विशेषताओं की पहचान करके शुरू करते हैं और उन्हें उत्पाद बैकलॉग में डालते हैं। फिर आप उत्पाद स्वामी के साथ बैकलॉग में सुविधाओं को प्राथमिकता देते हैं। ऐसा करने के बाद कि आप बैकलॉग से सुविधाएँ लेना शुरू करते हैं और स्प्रिंट बनाते हैं (आमतौर पर 2 से 4 सप्ताह लंबे)। जब एक स्प्रिंट खत्म हो जाता है, तो आपके पास उस सिस्टम में एक नया काम करना चाहिए जो ग्राहक को दिया जा सकता है।

उदाहरण के लिए, यदि आप स्क्रैम का उपयोग करते हैं तो आप उपयोगकर्ता कहानियों को कैसे करेंगे और db का परीक्षण कैसे करेंगे, आप ऐसा कैसे करेंगे।

मैं गलत हो सकता हूं, लेकिन डेटाबेस के परीक्षण का कोई मतलब नहीं है। आप डेटाबेस को अपडेट करने वाले कोड का परीक्षण कर सकते हैं। बेशक, आप डेटाबेस के अपने प्रोग्रामेबल भाग का परीक्षण कर सकते हैं, लेकिन इसे कॉल करने वाले कोड का परीक्षण करके प्राप्त किया जा सकता है।

क्या आप इसके बजाय db के कुछ हिस्सों को एक ऐसी कहानी में करना चाहेंगे जिसके लिए भी कोड की आवश्यकता हो।

हाँ।

एजाइल कोई मतलब नहीं है कि परियोजना प्रबंधन के लिए एक चांदी की गोली है और जब सही ढंग से लागू नहीं किया जाता है तो आपदा का जादू कर सकता है। इसके बारे में पढ़ते हुए कुछ समय बिताने की कोशिश करें (आप यहां ढेर सारे संसाधन या स्टैकओवरफ्लो पर पा सकते हैं), हो सकता है कि कोई ऐसा व्यक्ति मिल जाए जो पहले से चुस्त हो चुका हो और आपको गति प्राप्त करने में मदद कर सके।


4

डेटाबेस परियोजना के साथ कुछ भी करने के लिए लगभग कार्यात्मक होना चाहिए।

बड़ी झूठी बात है।

तो चुस्त परियोजनाएं इसे कैसे संभालती हैं, क्या आप डेटाबेस बनाकर शुरू करते हैं?

एक खाली डेटाबेस, हाँ। फिर एक स्प्रिंट खत्म करने के लिए आवश्यक के रूप में टेबल जोड़ें।

आप उपयोगकर्ता की कहानियों को कैसे करेंगे और db का परीक्षण करेंगे।

आप क्या पूछ रहे हो? एजाइल का डेटाबेस डिजाइन से कोई लेना-देना नहीं है।

आप कहानी लिखिए।

आप एक समाधान डिज़ाइन करें।

आप तालिकाएँ और कोड बनाएँ।

आप कोड का परीक्षण करें।

क्या आप एक कहानी में db के कुछ हिस्सों को करना चाहते हैं जिसमें कोड की भी आवश्यकता होती है?

और क्या विकल्प है? सभी डीबी पहले करो? यह असंभव है।

"एक उपयोगकर्ता के रूप में आपको पंजीकरण करने में सक्षम होना चाहिए ..." आप इस कहानी के एक भाग के रूप में डेटाबेस में उपयोगकर्ता तालिका बनाएंगे?

पहले, यह एक बेकार कहानी है, क्योंकि पंजीकरण में कोई मूल्य नहीं है। यह केवल एक तकनीकी बाधा है जिससे उपयोगकर्ता गुजरने को मजबूर हैं।

दूसरा, आप कहानी को लागू करने के लिए सिर्फ पर्याप्त टेबल बनायेंगे।

डेटाबेस को डिज़ाइन करने में फुर्तीली आप कैसे मदद कर सकते हैं?

आप क्या पूछ रहे हो?

चंचल परियोजना प्रबंधन है। यह किसी भी डिजाइन के साथ मदद नहीं करता है।

यह केवल एक बड़े काम को छोटे टुकड़ों में तोड़ने में आपकी मदद करता है।


2

अच्छी तरह से पहले एक वृद्धिशील दृष्टिकोण का पालन करें। एक मॉड्यूल का चयन अपनी आवश्यकताओं को परिभाषित, कार्यक्षमता बाहर चाक, एक कार्यात्मक क्षेत्र को लक्षित करें और फिर मॉडलिंग, डीबी डिजाइन, अल्गोस, कोड आता है और अंत में यह परीक्षण करते हैं और प्रक्रिया को दोहराते हैं।


2

आपका सवाल AgileFall विकास विरोधी पैटर्न की चीख ।

यह क्या है? यह आमतौर पर एक संगठन है जो परंपरागत रूप से वाटरफॉल पद्धति में सॉफ्टवेयर विकसित करता है, लेकिन फिर जब उन्हें पता चलता है कि यह काम नहीं कर रहा है, तो वे चुस्त तकनीक को अपनाने के लिए आंतरिक रूप से संघर्ष करते हैं। परिणामस्वरूप "फेल-गैसम" आमतौर पर होता है क्योंकि सही एजाइल डिमांड्स एक मौलिक संगठनात्मक शेकअप है जिस तरह से कई स्थापित वाटरफॉल की दुकानें संरचित हैं। और निश्चित रूप से वे उस तरह से संरचित रहना पसंद करेंगे, जब बहुत सारे शक्तिशाली और उत्साही लोगों को लगता है कि उन्हें इस प्रक्रिया में खुद को इंजेक्ट करने की आवश्यकता है जब एजाइल दिखाता है कि उन लोगों को कितना बेकार है जो सॉफ्टवेयर विकास के लिए हैं।

आपको इस धारणा से बचने की आवश्यकता है कि किसी भी तरह आप नीचे से शुरू करें, अपने डेटाबेस का डिज़ाइन और निर्माण करें, और फिर मध्य स्तर पर आगे बढ़ें और फिर कभी अपने डेटाबेस को स्पर्श न करें। यह एजाइल में करने का गलत तरीका है।

उपयोगकर्ता कहानी के लिए डोमेन मॉडल पर शुरू करें, और डेटाबेस तक अपना रास्ता काम करें, और मध्य-स्तरीय और प्रस्तुति के लिए डाउनलोड करें।


हाँ, मुझे इस पर सबसे अधिक उत्तर संकेत मिलते हैं और मैंने प्रश्न लिखते समय भी इसका अनुमान लगाया है। AgileFall के बारे में कोई चिंता नहीं है, यह ज्यादातर एक परीक्षण परियोजना है जहां मैं तरीकों और पैटर्न को जानने की कोशिश कर रहा हूं कि वे कैसे काम करते हैं, एक गंभीर परियोजना नहीं।
इंगो वाल्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.