paint-brush
সফ্টওয়্যার আর্কিটেকচার সিদ্ধান্ত: তথ্যের উপর ফোকাস করুন এবং অনুমান করবেন নাদ্বারা@inovak
452 পড়া
452 পড়া

সফ্টওয়্যার আর্কিটেকচার সিদ্ধান্ত: তথ্যের উপর ফোকাস করুন এবং অনুমান করবেন না

দ্বারা Ivan Novak4m2023/07/28
Read on Terminal Reader
Read this story w/o Javascript

অতিদীর্ঘ; পড়তে

YAGNI চরম প্রোগ্রামিং থেকে জন্ম নেওয়া একটি নীতি। এটি মূলত একটি বন্ধুত্বপূর্ণ অনুস্মারক যা প্রয়োজন না হওয়া পর্যন্ত কার্যকারিতা যোগ না করা। স্মিটির মতো হবেন না। যখন যা প্রয়োজন তা তৈরি করুন। স্ল্যাকের মতো হও; আপনার সফ্টওয়্যার আর্কিটেকচারের সিদ্ধান্তগুলিকে আপনার ব্যবহারকারীদের চাহিদাগুলিকে গাইড করতে দিন।
featured image - সফ্টওয়্যার আর্কিটেকচার সিদ্ধান্ত: তথ্যের উপর ফোকাস করুন এবং অনুমান করবেন না
Ivan Novak HackerNoon profile picture
0-item

আপনি সম্ভবত এই গেমটিতে আছেন কারণ আপনি এমন সফ্টওয়্যার তৈরি করতে চান যা কেবল কাজ করে না বরং ব্যবহারকারীদের আনন্দ দেয়, তাই না?


ভাল খবর! এটি একটি অনুমান খেলা নয়. এটি একটি গভীর বোঝার উপর ভিত্তি করে অবহিত সিদ্ধান্ত সম্পর্কে। এটা অনুমানের উপর তথ্য সম্পর্কে.


"সফ্টওয়্যার আর্কিটেকচারে, তথ্যগুলি বিশ্বস্ত সহযোগী, কিন্তু অনুমান? তারা আপনাকে কার্ডের একটি ডিজিটাল ঘর তৈরি করতে পারে।"


পথটি কঠিন পছন্দের সাথে ধাঁধাঁযুক্ত হতে পারে, তবে নিজেকে সঠিক জ্ঞান দিয়ে সজ্জিত করুন এবং আপনি এক ডজন (বা তার বেশি) অনুমানের চেয়ে আত্মবিশ্বাসের সাথে সঠিক পরবর্তী জিনিসটি তৈরি করবেন!

যজ্ঞীর শক্তি

যগ্নি? Y ou A ren't G onna N eed I t. এটি চরম প্রোগ্রামিং থেকে জন্ম নেওয়া একটি নীতি। YAGNI মূলত একটি বন্ধুত্বপূর্ণ অনুস্মারক যা প্রয়োজন না হওয়া পর্যন্ত কার্যকারিতা যোগ না করার জন্য। এবং আমাকে বিশ্বাস করুন, এটা খুবই প্রয়োজনীয়।


ওভার ইঞ্জিনিয়ারিং কফি-জ্বালানিযুক্ত গভীর রাতের কোডিং সেশনের মতোই সাধারণ। কোনটিই হওয়া উচিত নয়, তবে আপনি জানেন কিভাবে এটি যায় ...


আমাকে একটি গল্প শেয়ার করার অনুমতি দিন। আমি একবার একজন লোকের সাথে কাজ করেছি, আসুন তাকে স্মিটি বলে ডাকি। এখন, স্মিটি একজন অসাধারণ উত্সাহী বিকাশকারী ছিলেন। ক্লায়েন্ট যখন কেবল একটি সাইকেল চেয়েছিল তখন তিনি এমন একজন ছিলেন যিনি একটি সম্পূর্ণ মহাকাশযানের স্থপতি করতেন। এটা আশ্চর্যজনক ছিল, কিন্তু প্রায়ই, এটা শুধু অপ্রয়োজনীয় ছিল.


একদিন, স্মিটি একটি জটিল বৈশিষ্ট্য তৈরি করতে কয়েক সপ্তাহ অতিবাহিত করেছিল যা অনুমান করুন, ক্লায়েন্টরা কখনই ব্যবহার করেনি! যে সমস্ত সময়, শক্তি, এবং কফি - অপচয়.


এটি হল যগ্নি যা আপনাকে এড়াতে সাহায্য করে। স্মিটির মতো হবেন না। যখন যা প্রয়োজন তা তৈরি করুন।

আপনার পথপ্রদর্শক তারকা: ব্যবহারকারীর চাহিদা

কিন্তু আপনি কিভাবে জানেন কি প্রয়োজন? আপনার সফ্টওয়্যারটি আপনার প্রযুক্তিগত দক্ষতা দেখানোর বিষয়ে নয়। এটা আপনার ব্যবহারকারীদের জন্য সমস্যা সমাধান সম্পর্কে. আপনার পথপ্রদর্শক তারকা? আপনার ব্যবহারকারীদের চাহিদা, আপনার বা আপনার দলের ইচ্ছা এবং ইচ্ছা নয়।


এটি এমন একটি সমাধান তৈরি করা সম্পর্কে যা এতটাই নিরবচ্ছিন্ন যে এটি একটি ধাঁধার অনুপস্থিত অংশের মতো ব্যবহারকারীদের জীবনে ফিট করে।


সফ্টওয়্যার আর্কিটেকচারকে অবশ্যই ইচ্ছাকৃতভাবে বিবেচনা করতে হবে, এবং পুরো পণ্যটি মাথায় রেখে, ঘটনাক্রমে প্রকল্পের ক্রম থেকে উত্তরাধিকারসূত্রে প্রাপ্ত কিছু নয়। আসুন "দুর্ঘটনাক্রমে ডিজাইন" এড়ানো যাক।


স্ল্যাক বিবেচনা করুন, অনেক প্রিয় মেসেজিং প্ল্যাটফর্ম। স্ল্যাককে যা আলাদা করে তা হল গ্রাহকের ইচ্ছার উপর লেজার ফোকাস। এটা নিছক অন্য মেসেজিং অ্যাপ হতে নিয়তি ছিল না; এটি একটি সহযোগিতার কেন্দ্র হিসাবে তৈরি করা হয়েছিল যেখানে কাজ নির্বিঘ্নে প্রকাশ পায়।


তারা পর্যবেক্ষণ করেছে, অনুসন্ধান করেছে, ডেটা সংগ্রহ করেছে এবং সেই অন্তর্দৃষ্টিগুলিকে অ্যাপে ছড়িয়ে দিয়েছে যা আমরা ছাড়া করতে পারি না। স্ল্যাকের মতো হও; আপনার সফ্টওয়্যার আর্কিটেকচারের সিদ্ধান্তগুলিকে আপনার ব্যবহারকারীদের চাহিদাগুলিকে গাইড করতে দিন।

ডেটা-চালিত সিদ্ধান্তের সারাংশ

এখন, জ্ঞাত সিদ্ধান্ত নিতে, আপনার ডেটা দরকার - ঠান্ডা, কঠিন তথ্য। অনুমান করা একটি শত্রু যা আপনার জীবনে প্রয়োজন নেই। এটি একটি চোখ বেঁধে একটি বুলসি আঘাত করার চেষ্টা করার মতো - বেশিরভাগ ক্ষেত্রে, আপনি মিস করবেন।


হাঞ্চে নেওয়া সিদ্ধান্তগুলি একটি মুদ্রা উল্টানোর মতোই ভাল, যেভাবে সফল সফ্টওয়্যার তৈরি করা হয় তা নয়।


অ্যামাজন বিবেচনা করুন, এমন একটি সংস্থা যা কার্যত ডেটা পূজা করে। প্রতিটি স্থাপত্য সিদ্ধান্ত, প্রতিটি বৈশিষ্ট্য যোগ করা এবং করা প্রতিটি পরিবর্তন গ্রাহকের ডেটার একটি সম্পূর্ণ বিশ্লেষণের উপর ভিত্তি করে। ফলাফল? একটি হাইপার-ব্যক্তিগত কেনাকাটার অভিজ্ঞতা যা গ্রাহকদের ফিরে আসে।

তথ্য সংগ্রহের জন্য বিল্ডিং মেকানিজম

"আমি এই ডেটা কোথায় পাব?" ভাল প্রশ্ন! আপনি এটি জড়ো করার প্রক্রিয়া তৈরি করুন! এগুলি সরাসরি ব্যবহারকারীর প্রতিক্রিয়ার মতো সহজ বা স্বয়ংক্রিয় ডেটা বিশ্লেষণ পাইপলাইনের মতো জটিল হতে পারে। এটিকে অন্তর্দৃষ্টির জন্য ফাঁদ বিছানোর মতো মনে করুন - আপনি যত বেশি সেট করবেন, তত বেশি আপনি ধরতে পারবেন।


এটি বলেছিল, এটি মনে রাখা গুরুত্বপূর্ণ যে এটির জন্য ডেটা সংগ্রহ করা নয়। এটি কর্মযোগ্য অন্তর্দৃষ্টি সংগ্রহ করার বিষয়ে যা আপনাকে আপনার ব্যবহারকারীদের জন্য আরও ভাল, আরও দরকারী বৈশিষ্ট্য সরবরাহ করতে সহায়তা করে৷ এগিয়ে যান, আপনার অভ্যন্তরীণ ডেটা বিজ্ঞানীকে আলিঙ্গন করুন!

একটি ডেটা-চালিত, ব্যবহারকারী-কেন্দ্রিক পদ্ধতির দিকে যাত্রা

ডেটা-চালিত, ব্যবহারকারী-কেন্দ্রিক পদ্ধতির দিকে পিভোটিং করা রুক্ষ মনে হতে পারে, তবে ফলাফলগুলি একেবারেই সার্থক। নতুন পদ্ধতি অবলম্বন করা, ডেটা সাক্ষরতা গড়ে তোলা এবং ব্যবহারকারী-প্রথম সংস্কৃতি গড়ে তোলা হল দলগত পরিবর্তন।


হ্যাঁ, এটি চ্যালেঞ্জিং বলে মনে হতে পারে, কিন্তু পেঅফ একটি ক্ষীণ, আরও দক্ষ, মূল্য-চালিত সফ্টওয়্যার বিকাশ প্রক্রিয়া। যখন আমরা সঠিক জিনিসগুলিতে আরও প্রায়ই ফোকাস করি, তখন আমরা কম দিয়ে আরও বেশি অর্জন করতে পারি!

পরিবর্তন চ্যাম্পিয়ন করা

দেখুন, প্রতিরোধ হতে পারে। পুরানো উপায়, আরামদায়ক উপায় আঁকড়ে যারা আছে. কিন্তু নতুন যুগে চ্যাম্পিয়ন হওয়ার এটাই আপনার সুযোগ। আপনার দলকে ভবিষ্যতের দিকে নিয়ে যাওয়ার সুযোগ যেখানে সিদ্ধান্তগুলি অনুমান নয়, ঘটনা দ্বারা পরিচালিত হয়।


যেখানে সফ্টওয়্যার প্রকৃত সমস্যা সমাধানের জন্য তৈরি করা হয়, একজন বিকাশকারীর চুলকানি মেটানোর জন্য নয়।

আপনার কল টু অ্যাকশন

এখানে আপনার প্রথম পদক্ষেপ. ছোট শুরু করুন। পরের বার যখন আপনি একটি বৈশিষ্ট্য যুক্ত করতে বা একটি স্থাপত্য সিদ্ধান্ত নিতে চলেছেন, জিজ্ঞাসা করুন: "আমাদের কাছে কি এই সিদ্ধান্তের সমর্থন করার জন্য ডেটা আছে? এটি কি ব্যবহারকারীদের পরিবেশন করে, নাকি এটি একটি চকচকে নতুন জিনিস?"


মহান সফ্টওয়্যার whims বা hunches উপর নির্মিত হয় না; এটি জ্ঞাত সিদ্ধান্তের উপর নির্মিত।


শেষ পর্যন্ত, এটি আপনার ব্যবহারকারীদের কাছে বিশাল মূল্য প্রদানের বিষয়ে - এমন সফ্টওয়্যার তৈরি করার বিষয়ে যা লোকেরা ব্যবহার করে, ভালোবাসে এবং তাদের ছাড়া তাদের জীবন কল্পনা করতে পারে না। এবং আপনি এটা করতে সক্ষম বেশী.


সুতরাং, সেখানে যান, আপনার তথ্য সংগ্রহ করুন, আপনার ব্যবহারকারীদের প্রথমে রাখুন, এবং অবিশ্বাস্য সফ্টওয়্যার তৈরি করা শুরু করুন। আপনার ব্যবহারকারীরা অপেক্ষা করছে।