हल्के वास्तुकला मूल्यांकन करने के लिए एक अच्छी विधि क्या है?


9

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

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

ATAM जैसे तरीके आमतौर पर सभी हितधारकों को वास्तुकला के बारे में गहराई से सोचने के लिए मजबूर करते हैं, जो तब तक चर्चा करता है जब तक कि हर कोई कम से कम इस बात पर सहमत नहीं हो जाता कि वास्तुकला क्या है

क्या किसी को हल्के-फुल्के फ्रंट आर्किटेक्चर मूल्यांकन करने का अनुभव है? यदि हां, तो अच्छी प्रथाएं क्या हैं?

जवाबों:


6

हल्के मूल्यांकन की कुंजी सही समय पर सही चीजों का मूल्यांकन करना है। दो तरीके हैं जो मुझे प्रभावी ढंग से करने के लिए पता है। साथ परिदृश्य के आधार पर मूल्यांकन आप मूल्यांकन केवल उच्च प्राथमिकता गुणवत्ता विशेषताओं पर ध्यान केंद्रित कर ड्राइव करने के लिए गुणवत्ता विशेषता परिदृश्यों और उपयोग के मामलों का उपयोग करें। साथ जोखिम के आधार पर मूल्यांकन आप जोखिम की पहचान करने और पहचान जोखिम अपने वास्तुकला डिजाइन गतिविधियों ड्राइव करते हैं।

ऐसी दो पुस्तकें हैं जिनकी मैं सिफारिश कर सकता हूं जो इन दोनों (कुछ संबंधित) दृष्टिकोणों का पता लगा सकते हैं।

एंथनी लट्टानज़े द्वारा आर्किटेक्चरिंग सॉफ्टवेयर इंटेंसिव सिस्टम्स आर्किटेक्चर सेंट्रिक डिज़ाइन मेथोडोलॉजी का परिचय देता है और हल्के वजन वाले परिदृश्य-आधारित मूल्यांकन को कवर करता है। आप एसईआई की गुणवत्ता विशेषताओं कार्यशाला से लट्टनज़े को पहचान सकते हैं और इसमें समान विचार शामिल हैं।

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

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

कोई फर्क नहीं पड़ता कि आप मूल्यांकन करने के लिए जिस दृष्टिकोण का उपयोग करते हैं वह सामान्य विचार समान होगा ...

इससे पहले कि आप शुरू करें:

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

मूल्यांकन सत्र के लिए बैठें:

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

एक बार सत्र समाप्त होने के बाद:

  • पहचाने गए मुद्दों की समीक्षा करें और निर्धारित करें कि गो / नो-गो मानदंड पूरे हुए हैं या नहीं। आमतौर पर सब कुछ ठीक होने में लगभग 3 समीक्षाएँ लगती हैं। यदि नहीं मिले हैं, तो रिफाइनिंग और प्रयोग करते रहें (या आर्किटेक्चर जोखिमों को कम करें)।
  • यह "सभी या कुछ भी नहीं" मूल्यांकन नहीं है - आपकी वास्तुकला के विभिन्न हिस्सों को "पास" हो सकता है, जबकि अन्य को अभी भी शोधन की आवश्यकता है।

परिदृश्य आधारित दृष्टिकोण कैसा दिख सकता है, इसके लिए आपको यह महसूस करने में मदद करने के लिए कि मैंने काॅपस्टोन परियोजना में कुछ सार्वजनिक दस्तावेज़ीकरण किया है, जो मैंने ग्रेड स्कूल में काम किया है। प्रलेखन थोड़ा मोटा है, लेकिन यह एसीडीएम के संदर्भ में परिदृश्य-आधारित दृष्टिकोण के कुछ उदाहरण देने में मदद कर सकता है। हम 5 की एक टीम थे और लगभग 35 KLOC जावा / GWT के बारे में एक विशिष्ट वेब-आधारित एप्लिकेशन बनाया।


धन्यवाद माइकल, उत्कृष्ट जवाब और कुछ मैं अभी लागू कर सकता हूं।
डेकार्ड

2

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

बेशक, अगर आपकी गैर-कार्यात्मक आवश्यकताओं को इसकी आवश्यकता है (मेमोरी की कमी, प्रतिक्रिया समय, समवर्ती उपयोगकर्ताओं की संख्या आदि), तो आपको सिस्टम को लागू करते समय इसे ध्यान में रखना चाहिए।


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