AWS ఆర్కిటెక్చరల్ నిర్ణయ రికార్డుల ప్రక్రియ
ఆర్కిటెక్చరల్ నిర్ణయ రికార్డు (ADR) అనేది బృందం నిర్మించాలని ప్రణాళిక వేస్తున్న సాఫ్ట్వేర్ ఆర్కిటెక్చర్లోని ఒక ముఖ్యమైన అంశం గురించి వారు చేసే ఎంపికను వివరించే పత్రం. ప్రతి ADR ఆర్కిటెక్చర్ నిర్ణయాన్ని, దాని సందర్భాన్ని, దాని పర్యవసానాలను వివరిస్తుంది. ADRలకు స్థితులు ఉంటాయి, కాబట్టి అవి ఒక జీవనచక్రాన్ని అనుసరిస్తాయి. ADRకు ఉదాహరణ కోసం అనుబంధాన్ని చూడండి.
ADR ప్రక్రియ ఆర్కిటెక్చరల్ నిర్ణయ రికార్డుల సముదాయాన్ని ఉత్పత్తి చేస్తుంది. ఈ సముదాయం నిర్ణయ లాగ్ను సృష్టిస్తుంది. నిర్ణయ లాగ్ ప్రాజెక్ట్ సందర్భాన్ని, అలాగే వివరణాత్మక అమలు, డిజైన్ సమాచారాన్ని అందిస్తుంది. ప్రాజెక్ట్ సభ్యులు ప్రాజెక్ట్ సందర్భం యొక్క అవలోకనం కోసం ప్రతి ADR శీర్షికలను పరిశీలిస్తారు. ప్రాజెక్ట్ అమలులు, డిజైన్ ఎంపికలలోకి లోతుగా వెళ్లడానికి వారు ADRలను చదువుతారు.
బృందం ADRను అంగీకరించినప్పుడు, అది మార్పులేనిదిగా మారుతుంది. కొత్త అంతర్దృష్టులకు భిన్నమైన నిర్ణయం అవసరమైతే, బృందం కొత్త ADRను ప్రతిపాదిస్తుంది. బృందం కొత్త ADRను అంగీకరించినప్పుడు, అది మునుపటి ADRని భర్తీ చేస్తుంది.
ADR ప్రక్రియ పరిధి
సాఫ్ట్వేర్ ప్రాజెక్ట్ లేదా ఉత్పత్తిని ప్రభావితం చేసే ప్రతి ఆర్కిటెక్చర్ పరంగా ముఖ్యమైన నిర్ణయానికి ప్రాజెక్ట్ సభ్యులు ADRను సృష్టించాలి, వీటిలో ఇవి ఉంటాయి (Richards and Ford 2020):
నిర్మాణం (ఉదాహరణకు, మైక్రోసర్వీసెస్ వంటి నమూనాలు)
ఫంక్షనల్ కాని అవసరాలు (భద్రత, అధిక లభ్యత, తప్పిదాలను తట్టుకునే సామర్థ్యం)
ఆధారితాలు (భాగాల సంయోగం)
ఇంటర్ఫేస్లు (APIలు, ప్రచురించిన ఒప్పందాలు)
నిర్మాణ సాంకేతికతలు (లైబ్రరీలు, ఫ్రేమ్వర్క్లు, సాధనాలు, ప్రక్రియలు)
ఫంక్షనల్, ఫంక్షనల్ కాని అవసరాలు ADR ప్రక్రియకు అత్యంత సాధారణ ఇన్పుట్లు.
ADR విషయాలు
బృందం ADR అవసరాన్ని గుర్తించినప్పుడు, ఒక బృంద సభ్యుడు ప్రాజెక్ట్ వ్యాప్త మూస ఆధారంగా ADRను రాయడం ప్రారంభిస్తారు. (ఉదాహరణ మూసల కోసం ADR GitHub సంస్థను చూడండి.) మూస ADR సృష్టిని సులభతరం చేస్తుంది, ADR అన్ని సంబంధిత సమాచారాన్ని నమోదు చేసేలా చూస్తుంది. కనీసం, ప్రతి ADR నిర్ణయ సందర్భాన్ని, నిర్ణయాన్ని, ప్రాజెక్ట్కు, దాని డెలివరబుల్స్కు ఆ నిర్ణయం వల్ల కలిగే పర్యవసానాలను నిర్వచించాలి. (ఈ విభాగాల ఉదాహరణల కోసం అనుబంధాన్ని చూడండి.) ADR నిర్మాణంలోని అత్యంత శక్తివంతమైన అంశాలలో ఒకటి, బృందం దాన్ని ఎలా అమలు చేసింది అనే దానికంటే నిర్ణయం వెనుక ఉన్న కారణంపై అది దృష్టి పెట్టడం. బృందం ఆ నిర్ణయాన్ని ఎందుకు తీసుకుందో అర్థం చేసుకోవడం ఇతర బృంద సభ్యులు ఆ నిర్ణయాన్ని స్వీకరించడాన్ని సులభతరం చేస్తుంది, నిర్ణయ ప్రక్రియలో పాల్గొనని ఇతర ఆర్కిటెక్టులు భవిష్యత్తులో ఆ నిర్ణయాన్ని తోసిపుచ్చకుండా నివారిస్తుంది.
ADR స్వీకరణ ప్రక్రియ
ప్రతి బృంద సభ్యుడు ADRను సృష్టించవచ్చు, కానీ బృందం ADR యాజమాన్యం యొక్క నిర్వచనాన్ని ఏర్పరచాలి. ADR యజమాని అయిన ప్రతి రచయిత ADR విషయాలను చురుకుగా నిర్వహించి, తెలియజేయాలి. ఈ యాజమాన్యాన్ని స్పష్టం చేయడానికి, ఈ మార్గదర్శి తదుపరి విభాగాలలో ADR రచయితలను ADR యజమానులుగా సూచిస్తుంది. ఇతర బృంద సభ్యులు ఎల్లప్పుడూ ADRకు సహకరించవచ్చు. బృందం ADRను అంగీకరించే ముందు ADR విషయాలు మారితే, యజమాని ఆ మార్పులను ఆమోదించాలి.
బృందం ఆర్కిటెక్చర్ నిర్ణయాన్ని, దాని యజమానిని గుర్తించిన తర్వాత, ADR యజమాని ప్రక్రియ ప్రారంభంలో ADRను ప్రతిపాదించబడింది స్థితిలో అందిస్తారు. ప్రతిపాదించబడింది స్థితిలోని ADRలు సమీక్షకు సిద్ధంగా ఉంటాయి.
తర్వాత ADR యజమాని ADR సమీక్ష ప్రక్రియను ప్రారంభిస్తారు. ADR సమీక్ష ప్రక్రియ లక్ష్యం, బృందం ADRను అంగీకరిస్తుందా, దానికి మళ్లీ పని అవసరమని నిర్ణయిస్తుందా, లేక ADRను తిరస్కరిస్తుందా అని నిర్ణయించడం. యజమానితో సహా ప్రాజెక్ట్ బృందం ADRను సమీక్షిస్తుంది. సమీక్ష సమావేశం ADRను చదవడానికి ప్రత్యేక సమయ విభాగంతో ప్రారంభం కావాలి. సగటున, 10 నుండి 15 నిమిషాలు సరిపోతాయి. ఈ సమయంలో, ప్రతి బృంద సభ్యుడు పత్రాన్ని చదివి, అస్పష్టమైన అంశాలను గుర్తించడానికి వ్యాఖ్యలు, ప్రశ్నలు జోడిస్తారు. సమీక్ష దశ తర్వాత, ADR యజమాని ప్రతి వ్యాఖ్యను చదివి బృందంతో చర్చిస్తారు.
ADRను మెరుగుపరచడానికి బృందం చర్యాంశాలను కనుగొంటే, ADR స్థితి ప్రతిపాదించబడిందిగానే ఉంటుంది. ADR యజమాని చర్యలను రూపొందించి, బృందంతో కలిసి ప్రతి చర్యకు ఒక బాధ్యుడిని చేరుస్తారు. ప్రతి బృంద సభ్యుడు చర్యాంశాలకు సహకరించి, వాటిని పరిష్కరించవచ్చు. సమీక్ష ప్రక్రియను తిరిగి షెడ్యూల్ చేయడం ADR యజమాని బాధ్యత.
బృందం ADRను తిరస్కరించాలని కూడా నిర్ణయించవచ్చు. ఈ సందర్భంలో, అదే అంశంపై భవిష్యత్తు చర్చలను నివారించడానికి ADR యజమాని తిరస్కరణకు కారణాన్ని జోడిస్తారు. యజమాని ADR స్థితిని తిరస్కరించబడిందిగా మారుస్తారు.
బృందం ADRను ఆమోదిస్తే, యజమాని టైమ్స్టాంప్, వెర్షన్, భాగస్వాముల జాబితాను జోడిస్తారు. తర్వాత యజమాని స్థితిని అంగీకరించబడిందిగా నవీకరిస్తారు.
ADRలు, అవి సృష్టించే నిర్ణయ లాగ్ బృందం తీసుకున్న నిర్ణయాలను సూచిస్తాయి, అన్ని నిర్ణయాల చరిత్రను అందిస్తాయి. సాధ్యమైనప్పుడల్లా కోడ్, ఆర్కిటెక్చర్ సమీక్షల సమయంలో బృందం ADRలను సూచనగా వాడుతుంది. కోడ్ సమీక్షలు, డిజైన్ పనులు, అమలు పనులు చేయడంతో పాటు, ఉత్పత్తి వ్యూహాత్మక నిర్ణయాల కోసం బృంద సభ్యులు ADRలను సంప్రదించాలి.
మంచి ఆచరణగా, ప్రతి సాఫ్ట్వేర్ మార్పు సహచర సమీక్షల ద్వారా వెళ్లి, కనీసం ఒక ఆమోదం అవసరం కావాలి. కోడ్ సమీక్ష సమయంలో, కోడ్ సమీక్షకుడు ఒకటి లేదా అంతకంటే ఎక్కువ ADRలను ఉల్లంఘించే మార్పులను కనుగొనవచ్చు. ఈ సందర్భంలో, సమీక్షకుడు కోడ్ మార్పు రచయితను కోడ్ను నవీకరించమని కోరి, ADRకు లింక్ను పంచుకుంటారు. రచయిత కోడ్ను నవీకరించినప్పుడు, సహచర సమీక్షకులు దాన్ని ఆమోదించి, ప్రధాన కోడ్ బేస్లో విలీనం చేస్తారు.
ADR సమీక్ష ప్రక్రియ
బృందం ADRలను అంగీకరించిన లేదా తిరస్కరించిన తర్వాత వాటిని మార్పులేని పత్రాలుగా పరిగణించాలి. ఉన్న ADRలో మార్పులకు కొత్త ADRను సృష్టించడం, కొత్త ADRకు సమీక్ష ప్రక్రియను ఏర్పాటు చేయడం, ADRను ఆమోదించడం అవసరం. బృందం కొత్త ADRను ఆమోదిస్తే, యజమాని పాత ADR స్థితిని భర్తీ చేయబడిందిగా మార్చాలి.