2014-04-22 11 views
5

मैं स्कूल के लिए एक परियोजना के लिए एक केस केस बना रहा हूं। मैं थोड़ी देर पूर्व शर्त टैब के बारे में उलझन में हूं।एक प्रयोग मामले में प्रीकंडीशन

कुछ मायनों में वास्तव में की तरह "में लॉग इन करने की है" या

लेकिन क्या होगा अगर सॉफ़्टवेयर एक स्थानीय सेटअप है "कोई खाता की जरूरत है" एक पूर्व शर्त है?

मेरे लिए यह तर्क है कि एक पूर्व शर्त है कि

लेकिन दूसरी तरफ क्योंकि अन्यथा आप पहली जगह में इस प्रयोग करें प्रकरण नहीं होगा यह पूर्व शर्त अजीब लग रहा है "सॉफ्टवेयर स्थापित किए जाने की आवश्यकता है" लगता है।

तो मेरा प्रश्न छोटा है। क्या सिस्टम आवश्यकताएं या सॉफ़्टवेयर स्थापना पूर्व शर्त का हिस्सा हो सकती है?

उत्तर

6

वास्तव में अच्छा सवाल है कि यूएमएल समस्याओं के दिल को हल करता है - यह कमजोर अर्थशास्त्र है। इसलिए आपके प्रश्न का उत्तर सही है - गलत हो सकता है, गलत हो सकता है। यूएमएल नोटिकल नियम निर्धारित करता है, और केवल मूल तत्व अर्थशास्त्र को परिभाषित करता है (उदाहरण के लिए "एक पूर्व शर्त को क्रम में पूरा किया जाना चाहिए ...")।

हम "ऑपरेटिंग सिस्टम को सही ढंग से कॉन्फ़िगर किया जाना चाहिए" या इससे भी बदतर "पूर्व में कंप्यूटर चालू हो जाना चाहिए" जैसी पूर्व शर्त के साथ आगे जा सकते हैं ... ये चर्चाएं दार्शनिक रूप से आसानी से बदल सकती हैं। :)

मेरे अनुभव में उपयोग के मामलों को कुशल बनाने का एक तरीका है - एक और यूएमएल मॉडल बनाएं, एक पूरक, जिसका उपयोग पूर्व शर्त, पोस्टकंडिशन और यहां तक ​​कि केस परिदृश्यों का उपयोग करने के लिए किया जाएगा (वही प्रश्न जो आपने पूर्व शर्त के लिए किया था परिदृश्यों के लिए भी बनाया जा सकता है - जो परिदृश्य के लिए एक सही अमूर्त है? या, परिदृश्य में एक वैध चरण "कंप्यूटर चालू करें?" है?)।

इसे प्राप्त करने के लिए मैं आमतौर पर वैचारिक वर्ग आरेखों का उपयोग करता हूं - मैं अपने डोमेन को मॉडल करता हूं और फिर इन तत्वों (कक्षाओं और उनके गुणों) के संदर्भ में पूर्व/पोस्ट स्थितियों और परिदृश्यों को व्यक्त करता हूं और केवल इन तत्वों का उपयोग करता हूं। यह बहुत समझ में आता है, विशेष रूप से यह जानना कि प्री/पोस्टकंडिशन क्वेरी सिस्टम का राज्य, वस्तुओं/मूल्यों द्वारा अच्छी तरह से परिलक्षित होता है।

यदि आप पूर्व शर्त "सॉफ़्टवेयर को स्थापित करने की आवश्यकता है" के बारे में सोचते हैं, तो आप बस अपने आप से पूछें, "क्या मुझे वास्तव में एक वर्ग 'सॉफ़्टवेयर' की विशेषता है 'इंस्टॉल किया गया है'?

तो आपको सबसे अधिक संभावना है कि आपको शायद इस पूर्व शर्त की आवश्यकता नहीं है क्योंकि यह केवल "निम्न स्तर" और मेरे डोमेन के दायरे से बाहर है। अब आपको बस अपने डोमेन को परिभाषित करने की आवश्यकता है। :) यहाँ एक ऐसी ही स्थिति का एक सरल उदाहरण है, विचार का प्रदर्शन (ध्यान रखें कि मामले और वर्ग के मॉडल का उपयोग में रखने के अलग चित्र पर तैयार कर रहे हैं):

enter image description here

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

शुभकामनाएँ और मज़े करें!

+0

Thanx इतना ! यह मेरी समस्या हल करता है! स्कूल के लिए परियोजना उपयोग के मामलों को लिख रही है लेकिन सॉफ्टवेयर के लिए जो पहले से ही बनाई गई है। किंडा उलट गई ... लेकिन यह अवधारणा है जिसे हमें समझना चाहिए। मैंने पिरिफॉर्म से प्रोग्राम स्क्लेनर के लिए चुना है। मैंने पहले ही एक उपयोग केस लिखा है ... वह मामला जहां उपयोगकर्ता एचडीडी की सफाई करने की कार्रवाई करता है। चित्रों और स्पष्टीकरण के लिए Thanx! fosa – Fosa

1

मेरे लिए, सिस्टम आवश्यकताएं और/या सॉफ्टवेयर स्थापना पूर्व शर्त का हिस्सा हो सकती है लेकिन हमेशा के रूप में यह आपके उपयोग के संदर्भ के संदर्भ में प्रासंगिक होना चाहिए। उदाहरण के लिए, यदि हार्डवेयर या तृतीय उपकरण स्थापित है या स्थापित नहीं है, तो आपके सिस्टम का एक अलग व्यवहार होगा।

1

आइए ध्यान रखें कि मामलों का उपयोग वास्तव में उच्च स्तर की आवश्यकताओं के बारे में है जो आपके सॉफ़्टवेयर/सिस्टम को लागू करने की आवश्यकता है। इस तरह, पूर्व शर्त केवल उस सॉफ्टवेयर (या सिस्टम) से संबंधित होनी चाहिए जो आप बना रहे हैं, बाहरी तत्वों के लिए नहीं (उदाहरण के लिए, "कंप्यूटर कनेक्ट है और चालू है" एक अच्छी पूर्व शर्त नहीं है)। जैसे ही आप अनुक्रम या गतिविधि आरेखों के रूप में अपने उपयोग के मामलों को महसूस करना शुरू करते हैं, उदाहरण के लिए, पूर्व शर्त आपको कुछ सुराग देती है कि सॉफ़्टवेयर में एक चेक होने की आवश्यकता हो सकती है, हो सकता है कि किसी अन्य ऑपरेशन/मॉड्यूल/क्लास को कॉल की आवश्यकता हो। यह अहसास अभ्यास आपको उस फॉर्म को निर्धारित करने में मदद करेगा जो पूर्व शर्त लेगा, और यहां तक ​​कि यदि आपके आवेदन की संरचना के आधार पर अभी भी आवश्यक है।

उदाहरण लेने के लिए, यदि आप लॉग इन हैं या नहीं, या यदि ऑपरेशन के लिए अलग-अलग विशेषाधिकारों की आवश्यकता है, तो आप अलग-अलग व्यवहार की अपेक्षा करते हैं, तो "पूर्व में लॉग इन होना आवश्यक" हो सकता है।

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

संबंधित मुद्दे