Specification by example
ઉદાહરણ દ્વારા સ્પષ્ટીકરણ (એસ. બી. ઈ.) એ અમૂર્ત નિવેદનોને બદલે વાસ્તવિક ઉદાહરણોનો ઉપયોગ કરીને જરૂરિયાતોને કેપ્ચર કરવા અને સમજાવવા પર આધારિત સોફ્ટવેર ઉત્પાદનો માટે જરૂરિયાતો અને વ્યવસાય-લક્ષી કાર્યાત્મક પરીક્ષણોને વ્યાખ્યાયિત કરવા માટેનો એક સહયોગી અભિગમ છે. તે ચપળ સોફ્ટવેર વિકાસ પદ્ધતિઓના સંદર્ભમાં લાગુ કરવામાં આવે છે, ખાસ કરીને વર્તન-સંચાલિત વિકાસમાં. આ અભિગમ ખાસ કરીને નોંધપાત્ર ક્ષેત્ર અને સંગઠનાત્મક જટિલતાના મોટા પાયે પ્રોજેક્ટ્સ પર જરૂરિયાતો અને કાર્યાત્મક પરીક્ષણોના સંચાલન માટે સફળ છે. ઉદાહરણ દ્વારા સ્પષ્ટીકરણને ઉદાહરણ-સંચાલિત વિકાસ, એક્ઝેક્યુટેબલ આવશ્યકતાઓ, સ્વીકૃતિ પરીક્ષણ-સંચાલિત વિકાસ (એટીડીડી અથવા એ-ટીડીડી), ચપળ સ્વીકૃતિ પરીક્ષણ, પરીક્ષણ-સંચાલિત આવશ્યકતાઓ (ટીડીઆર) તરીકે પણ ઓળખવામાં આવે છે. ફાયદા અત્યંત અમૂર્ત અથવા નવીન નવી વિભાવનાઓને નક્કર ઉદાહરણો વિના સમજવી મુશ્કેલ હોઈ શકે છે. ઉદાહરણ દ્વારા સ્પષ્ટીકરણનો હેતુ સચોટ સમજણ બનાવવાનો છે, અને સોફ્ટવેર વિકાસમાં પ્રતિસાદ લૂપ્સને નોંધપાત્ર રીતે ઘટાડે છે, જે ઓછા પુનઃકાર્ય, ઉચ્ચ ઉત્પાદન ગુણવત્તા, સોફ્ટવેર ફેરફારો માટે ઝડપી ટર્નઅરાઉન્ડ સમય અને પરીક્ષકો, વિશ્લેષકો અને વિકાસકર્તાઓ જેવી સોફ્ટવેર વિકાસમાં સામેલ વિવિધ ભૂમિકાઓની પ્રવૃત્તિઓની વધુ સારી ગોઠવણી તરફ દોરી જાય છે. સત્યના એક જ સ્ત્રોત તરીકે ઉદાહરણો ઉદાહરણ દ્વારા સ્પષ્ટીકરણનું મુખ્ય પાસું એ છે કે તમામ દ્રષ્ટિકોણથી જરૂરી ફેરફારો વિશે સત્યનો એક જ સ્રોત બનાવવો. જ્યારે વ્યવસાય વિશ્લેષકો તેમના પોતાના દસ્તાવેજો પર કામ કરે છે, ત્યારે સોફ્ટવેર વિકાસકર્તાઓ તેમના પોતાના દસ્તાવેજો જાળવી રાખે છે અને પરીક્ષકો કાર્યાત્મક પરીક્ષણોનો એક અલગ સમૂહ જાળવી રાખે છે, સત્યના તે વિવિધ સંસ્કરણોને સતત સંકલન અને સુમેળ કરવાની જરૂરિયાત દ્વારા સોફ્ટવેર વિતરણની અસરકારકતામાં નોંધપાત્ર ઘટાડો થાય છે. ટૂંકા પુનરાવર્તિત ચક્ર સાથે, આવા સંકલન ઘણીવાર સાપ્તાહિક અથવા દ્વિસાપ્તાહિક ધોરણે જરૂરી હોય છે. ઉદાહરણ દ્વારા સ્પષ્ટીકરણ સાથે, વિવિધ ભૂમિકાઓ સત્યનો એક જ સ્રોત બનાવવામાં ભાગ લે છે જે દરેકની સમજણને મેળવે છે. ઉદાહરણોનો ઉપયોગ સ્પષ્ટતા અને ચોકસાઇ પ્રદાન કરવા માટે થાય છે, જેથી સમાન માહિતીનો ઉપયોગ સ્પષ્ટીકરણ અને વ્યવસાય-લક્ષી કાર્યાત્મક પરીક્ષણ બંને તરીકે થઈ શકે. વિકાસ અથવા વિતરણ દરમિયાન શોધાયેલી કોઈપણ વધારાની માહિતી, જેમ કે કાર્યાત્મક અંતરાયોની સ્પષ્ટતા, ગુમ થયેલ અથવા અપૂર્ણ જરૂરિયાતો અથવા વધારાના પરીક્ષણો, સત્યના આ એકમાત્ર સ્રોતમાં ઉમેરવામાં આવે છે. કાર્યક્ષમતા વિશે સત્યનો માત્ર એક જ સ્રોત હોવાથી, વિતરણ ચક્રની અંદર જ્ઞાનના સંકલન, અનુવાદ અને અર્થઘટનની જરૂર નથી. જ્યારે જરૂરી ફેરફારો પર લાગુ કરવામાં આવે છે, ત્યારે ઉદાહરણોનો શુદ્ધ સમૂહ અસરકારક રીતે એક સ્પષ્ટીકરણ અને સોફ્ટવેર કાર્યક્ષમતાની સ્વીકૃતિ માટે વ્યવસાય-લક્ષી પરીક્ષણ છે. ફેરફાર લાગુ થયા પછી, ઉદાહરણો સાથેનું સ્પષ્ટીકરણ હાલની કાર્યક્ષમતાને સમજાવતો દસ્તાવેજ બની જાય છે. આવા દસ્તાવેજોની માન્યતા સ્વચાલિત હોવાથી, જ્યારે તેમને વારંવાર માન્ય કરવામાં આવે છે, ત્યારે આવા દસ્તાવેજો અંતર્ગત સોફ્ટવેરની વ્યવસાયિક કાર્યક્ષમતા પર માહિતીનો વિશ્વસનીય સ્રોત છે. આવા દસ્તાવેજો અને લાક્ષણિક મુદ્રિત દસ્તાવેજો વચ્ચે તફાવત કરવા માટે, જે ઝડપથી જૂના થઈ જાય છે, ઉદાહરણો સાથે સ્પષ્ટીકરણોના સંપૂર્ણ સમૂહને જીવંત દસ્તાવેજીકરણ કહેવામાં આવે છે. મુખ્ય પદ્ધતિઓ જે ઉદાહરણ દ્વારા સ્પષ્ટીકરણ લાગુ કરે છે તે ટીમો સામાન્ય રીતે નીચેની પ્રક્રિયા પેટર્નને સફળતાપૂર્વક લાગુ કરે છેઃ લક્ષ્યોમાંથી અવકાશ મેળવવો સહયોગથી-તમામ-ટીમ સ્પષ્ટીકરણ કાર્યશાળાઓ, નાની બેઠકો અથવા ટેલિકોન્ફરન્સ સમીક્ષાઓ દ્વારા સ્પષ્ટ કરવું ઉદાહરણોનો ઉપયોગ કરીને જરૂરિયાતોને સચિત્ર કરવી સ્પષ્ટીકરણોને સુધારવી ઉદાહરણો પર આધારિત સ્વચાલિત પરીક્ષણો પરીક્ષણોનો વારંવાર ઉપયોગ કરીને અંતર્ગત સોફ્ટવેરને માન્ય કરવું ભવિષ્યના વિકાસને ટેકો આપવા માટે ઉદાહરણો સાથે સ્પષ્ટીકરણોમાંથી દસ્તાવેજીકરણ પ્રણાલી વિકસાવવી સોફ્ટવેર ટીમો કે જે ઉદાહરણ દ્વારા સ્પષ્ટીકરણને લાગુ કરે છે સ્ક્રમ માળખામાં સામાન્ય રીતે ઉત્પાદનના બેકલોગને સુધારવામાં તેમના સમયનો 5%-10% ખર્ચ કરે છે, જેમાં સહયોગથી સ્પષ્ટ કરવું, ઉદાહરણોનો ઉપયોગ કરીને જરૂરિયાતોને સમજાવવી અને ઉદાહરણોને શુદ્ધ કરવું શામેલ છે. ઉદાહરણ મેપિંગ ઉદાહરણ મેપિંગ એ એક સરળ તકનીક છે જે વાતચીતને આગળ ધપાવી શકે છે અને ટૂંકા સમયમાં સ્વીકૃતિ માપદંડ મેળવી શકે છે. આ પ્રક્રિયા વાર્તાઓને નિયમો અને ઉદાહરણોમાં વિભાજિત કરે છે જે ઉદાહરણ દ્વારા સ્પષ્ટીકરણના સ્વરૂપમાં દસ્તાવેજીકરણ કરવામાં આવે છે, અને બી. ડી. ડી. ક્ષેત્રમાં વ્યાપકપણે ઉપયોગમાં લેવાતી તકનીક છે. ઉદાહરણ દ્વારા લાગુ પડતી વિશિષ્ટતા વ્યવસાય ક્ષેત્રના દ્રષ્ટિકોણથી જરૂરિયાતોને સમજવામાં અથવા વાતચીત કરવામાં સમસ્યા ઊભી કરવા માટે પૂરતી સંગઠનાત્મક અને ક્ષેત્રની જટિલતા ધરાવતા પ્રોજેક્ટ્સને લાગુ પડે છે. તે સંપૂર્ણપણે તકનીકી સમસ્યાઓ પર લાગુ થતું નથી અથવા જ્યાં મુખ્ય જટિલતા જ્ઞાનને સમજવા અથવા વાતચીત કરવામાં નથી. ઇન્વેસ્ટમેન્ટ બેંકિંગ, નાણાકીય વેપાર, વીમા, એરલાઇન ટિકિટ આરક્ષણ, ઓનલાઇન ગેમિંગ અને ભાવની સરખામણી સહિતના ક્ષેત્રોમાં આ અભિગમના દસ્તાવેજી ઉપયોગો છે. પરમાણુ-પાવર પ્લાન્ટ સિમ્યુલેશન પ્રોજેક્ટમાં પણ સમાન અભિગમ દસ્તાવેજીકૃત કરવામાં આવ્યો છે. વહેંચાયેલ ઉદાહરણો પર આધારિત પરીક્ષણો વ્યવસાયિક દ્રષ્ટિકોણથી સોફ્ટવેર વિતરિત કરતી વખતે ટીમને ટેકો આપવા માટે રચાયેલ પરીક્ષણોની શ્રેણીમાં શ્રેષ્ઠ રીતે બંધબેસે છે (જુઓ ચપળ પરીક્ષણ ક્વાડ્રન્ટ્સ)-ખાતરી કરો કે યોગ્ય ઉત્પાદન બનાવવામાં આવ્યું છે. તેઓ એવા પરીક્ષણોને બદલતા નથી કે જે સોફ્ટવેર સિસ્ટમને શુદ્ધ તકનીકી દ્રષ્ટિકોણથી જુએ છે (જે ઉત્પાદનને યોગ્ય રીતે બનાવવામાં આવ્યું છે કે કેમ તેનું મૂલ્યાંકન કરે છે, જેમ કે એકમ પરીક્ષણો, ઘટક અથવા તકનીકી એકીકરણ પરીક્ષણો) અથવા એવા પરીક્ષણો કે જે ઉત્પાદન વિકસિત થયા પછી તેનું મૂલ્યાંકન કરે છે (જેમ કે સુરક્ષા પ્રવેશ પરીક્ષણો). સોફ્ટવેર પ્રોજેક્ટ પર સત્ય, જરૂરિયાતો અને સ્વચાલિત પરીક્ષણોના એકમાત્ર સ્રોત તરીકે વાસ્તવિક ઉદાહરણોનો સૌથી પહેલો દસ્તાવેજી ઉપયોગ વાયકેશ + પ્રોજેક્ટ છે, જેનું વર્ણન વોર્ડ કનિંગહામ દ્વારા 1996માં પેપર એ પેટર્ન લેંગ્વેજ ઓફ કોમ્પિટિટિવ ડેવલપમેન્ટમાં કરવામાં આવ્યું હતું. ઉદાહરણ દ્વારા સ્પષ્ટીકરણ નામ 2004 માં માર્ટિન ફોલ્લર દ્વારા રચવામાં આવ્યું હતું. ઉદાહરણ દ્વારા સ્પષ્ટીકરણ એ 1997 ની આસપાસ પ્રસ્તાવિત એક્સ્ટ્રીમ પ્રોગ્રામિંગની ગ્રાહક પરીક્ષણ પ્રથાની ઉત્ક્રાંતિ છે અને 2004 થી ડોમેન-સંચાલિત ડિઝાઇનમાંથી સર્વવ્યાપક ભાષા વિચાર છે, જેમાં 1989 માં વેઇનબર્ગ અને ગોઝ દ્વારા વર્ણવેલ જરૂરિયાતો તરીકે બ્લેક-બોક્સ પરીક્ષણોના વિચારનો ઉપયોગ કરવામાં આવ્યો છે. ઓટોમેશન મોટા પાયે પ્રોજેક્ટ પર ઉદાહરણ દ્વારા સ્પષ્ટીકરણના સફળ ઉપયોગ માટે ઉદાહરણો (પરીક્ષણો) ના મોટા સમૂહ સામે સોફ્ટવેર કાર્યક્ષમતાની વારંવાર માન્યતા જરૂરી છે. વ્યવહારમાં, આના માટે ઉદાહરણો પર આધારિત પરીક્ષણો સ્વચાલિત હોવા જરૂરી છે. એક સામાન્ય અભિગમ એ છે કે પરીક્ષણોને સ્વચાલિત કરવામાં આવે પરંતુ ઉદાહરણોને સત્યના એક જ સ્રોત તરીકે રાખીને, બિન-તકનીકી અને તકનીકી ટીમના સભ્યો માટે વાંચી શકાય તેવા અને સુલભ સ્વરૂપમાં ઉદાહરણો રાખવા. આ પ્રક્રિયાને ટેસ્ટ ઓટોમેશન ટૂલ્સના વર્ગ દ્વારા ટેકો આપવામાં આવે છે જે બે પાસાઓમાં વહેંચાયેલા પરીક્ષણો સાથે કામ કરે છે-સ્પષ્ટીકરણ અને ઓટોમેશન સ્તર. પરીક્ષણનું સ્પષ્ટીકરણ જે ઘણીવાર સાદા લખાણ અથવા એચ. ટી. એમ. એલ. સ્વરૂપમાં હોય છે અને તેમાં ઉદાહરણો અને સહાયક વર્ણનો હોય છે. ઓટોમેશન સ્તર ઉદાહરણને પરીક્ષણ હેઠળની સોફ્ટવેર સિસ્ટમ સાથે જોડે છે. આવા સાધનોના ઉદાહરણો છેઃ બીટ કોનકોર્ડિયન કાકડી ફિટનેસે ફ્રેમવર્ક ફોર ઇન્ટિગ્રેટેડ ટેસ્ટ રોબોટ ફ્રેમવર્ક સ્પેકફ્લો ફોર ડોટ નેટ ગેજ (સોફ્ટવેર) સંદર્ભો બાહ્ય લિંક્સ ગૂગલ ચર્ચા જૂથ પુસ્તકો, વીડિયો, સાધનો અને Specificationbyexample.com માંથી પ્રસ્તુતિઓ માર્ટિન ફોલ્લરની બ્લિકી સોફ્ટવેર વિકાસ ફિલસૂફીઓ પર વ્યાખ્યા સોફ્ટવેર પરીક્ષણ વ્યવસાય વિશ્લેષણ