চতুর বনাম ঐতিহ্যগত সফ্টওয়্যার উন্নয়ন পদ্ধতি
আজ সফ্টওয়্যার শিল্পে ব্যবহৃত বিভিন্ন সফ্টওয়্যার বিকাশের পদ্ধতি রয়েছে৷ জলপ্রপাত উন্নয়ন পদ্ধতি প্রাচীনতম সফ্টওয়্যার উন্নয়ন পদ্ধতিগুলির মধ্যে একটি। ভি-মডেল, আরইউপি এবং আরও কয়েকটি রৈখিক, পুনরাবৃত্তিমূলক এবং সম্মিলিত রৈখিক-পুনরাবৃত্ত পদ্ধতি, যা জলপ্রপাত পদ্ধতির পরে এসেছে, জলপ্রপাত পদ্ধতির অনেক সমস্যা মুছে ফেলার উদ্দেশ্যে। এই সমস্ত পূর্বের পদ্ধতিগুলিকে ঐতিহ্যগত সফ্টওয়্যার বিকাশ পদ্ধতি বলা হয়। চতুর মডেল হল একটি সাম্প্রতিক সফ্টওয়্যার ডেভেলপমেন্ট মডেল যা প্রথাগত মডেলগুলিতে পাওয়া ত্রুটিগুলি সমাধান করার জন্য চালু করা হয়েছে।Agile-এর মূল ফোকাস হল যত তাড়াতাড়ি সম্ভব পরীক্ষা করা এবং খুব তাড়াতাড়ি প্রোডাক্টের একটি কার্যকরী সংস্করণ প্রকাশ করা, সিস্টেমটিকে খুব ছোট এবং পরিচালনাযোগ্য উপ-অংশে ভেঙে দেওয়া।
ট্র্যাডিশনাল সফটওয়্যার ডেভেলপমেন্ট মেথডলজি কি?
সফ্টওয়্যার পদ্ধতি যেমন জলপ্রপাত পদ্ধতি, ভি-মডেল এবং আরইউপিকে ঐতিহ্যগত সফ্টওয়্যার বিকাশ পদ্ধতি বলা হয়। জলপ্রপাত পদ্ধতি হল প্রাচীনতম সফ্টওয়্যার বিকাশের মডেলগুলির মধ্যে একটি। নাম অনুসারে, এটি একটি অনুক্রমিক প্রক্রিয়া যেখানে অগ্রগতি বিভিন্ন পর্যায়ে প্রবাহিত হয় (প্রয়োজন বিশ্লেষণ, নকশা, উন্নয়ন, পরীক্ষা এবং বাস্তবায়ন) উপর থেকে নীচে, একটি জলপ্রপাতের অনুরূপ। ভি-মডেলকে ওয়াটারফল সফটওয়্যার ডেভেলপমেন্ট মডেলের একটি এক্সটেনশন হিসেবে বিবেচনা করা হয়। ভি-মডেল জলপ্রপাত মডেলে সংজ্ঞায়িত পর্যায়গুলির মধ্যে একই সম্পর্ক ব্যবহার করে। কিন্তু রৈখিকভাবে নামার পরিবর্তে (জলপ্রপাত মডেলের মতো) V-মডেলটি তির্যকভাবে নিচে নেমে আসে এবং তারপরে (কোডিং পর্বের পরে), V অক্ষরের আকার তৈরি করে।RUP (যৌক্তিক ইউনিফাইড প্রসেস) হল একটি অভিযোজনযোগ্য প্রক্রিয়া কাঠামো (একক কংক্রিট প্রক্রিয়া নয়), যা উন্নয়ন সংস্থা তাদের চাহিদা অনুযায়ী কাস্টমাইজ করতে পারে। জলপ্রপাতের অনুরূপ, এটির সূচনা, বিস্তার, নির্মাণ এবং রূপান্তর হিসাবে নির্দিষ্ট পর্যায় রয়েছে। কিন্তু জলপ্রপাতের বিপরীতে, আরইউপি একটি পুনরাবৃত্তিমূলক প্রক্রিয়া।
চতুরতা কি?
Agile একটি অতি সাম্প্রতিক সফ্টওয়্যার বিকাশ পদ্ধতি (বা আরও সঠিকভাবে, পদ্ধতির একটি গ্রুপ) চটপটে ঘোষণাপত্রের উপর ভিত্তি করে। এটি ঐতিহ্যগত সফ্টওয়্যার উন্নয়ন পদ্ধতির কিছু ত্রুটি সমাধান করার জন্য তৈরি করা হয়েছিল। চটপটে পদ্ধতিগুলি বিকাশের চক্রের প্রথম দিকে গ্রাহকদের অংশগ্রহণকে উচ্চ অগ্রাধিকার দেওয়ার উপর ভিত্তি করে। এটি গ্রাহকের দ্বারা যত তাড়াতাড়ি সম্ভব এবং প্রায়শই পরীক্ষা করার পরামর্শ দেয়। একটি স্থিতিশীল সংস্করণ উপলব্ধ হলে প্রতিটি পয়েন্টে পরীক্ষা করা হয়। এজিলের ভিত্তি প্রকল্পের শুরু থেকে পরীক্ষা শুরু করা এবং প্রকল্পের শেষ পর্যন্ত চালিয়ে যাওয়ার উপর ভিত্তি করে।স্ক্রাম এবং এক্সট্রিম প্রোগ্রামিং হল অ্যাজিল পদ্ধতির সবচেয়ে জনপ্রিয় দুটি ভিন্নতা।
Agile-এর মূল মান হল "গুণমান হল দলের দায়িত্ব", যা জোর দেয় যে সফ্টওয়্যারের গুণমান পুরো দলের দায়িত্ব (শুধু টেস্টিং দলের নয়)। এজিলের আরেকটি গুরুত্বপূর্ণ দিক হল সফটওয়্যারটিকে ছোট ছোট পরিচালনাযোগ্য অংশে বিভক্ত করা এবং খুব দ্রুত গ্রাহকের কাছে পৌঁছে দেওয়া। একটি কাজের পণ্য সরবরাহ করা একটি অত্যন্ত গুরুত্বপূর্ণ। তারপরে দলটি সফ্টওয়্যার উন্নত করতে এবং প্রতিটি বড় পদক্ষেপে ক্রমাগত বিতরণ করতে থাকে। খুব সংক্ষিপ্ত রিলিজ চক্র (যাকে স্ক্রামে স্প্রিন্ট বলা হয়) এবং প্রতিটি চক্রের শেষে উন্নতির জন্য প্রতিক্রিয়া পাওয়ার মাধ্যমে এটি অর্জন করা হয়। আগের পদ্ধতিতে ডেভেলপার এবং পরীক্ষকদের মতো দলের সাথে খুব বেশি মিথস্ক্রিয়া ছাড়াই অবদানকারীরা, এখন চতুর মডেলের মধ্যে একসাথে কাজ করে৷
চতুর এবং ঐতিহ্যগত সফ্টওয়্যার বিকাশ পদ্ধতির মধ্যে পার্থক্য কী?
যদিও চতুর পদ্ধতিটি কিছু ঐতিহ্যগত পদ্ধতির হিসাবে পুনরাবৃত্তিমূলক বিকাশের উপর ভিত্তি করে, চটপটে এবং ঐতিহ্যগত পদ্ধতির মূল পার্থক্য রয়েছে।ঐতিহ্যগত পন্থাগুলি পরিকল্পনাকে তাদের নিয়ন্ত্রণ প্রক্রিয়া হিসাবে ব্যবহার করে, যখন চতুর মডেলগুলি প্রধান নিয়ন্ত্রণ প্রক্রিয়া হিসাবে ব্যবহারকারীদের কাছ থেকে প্রতিক্রিয়া ব্যবহার করে। সনাতন পদ্ধতির চেয়ে চটপটকে একটি জনকেন্দ্রিক পদ্ধতি বলা যেতে পারে। চতুর মডেলটি প্রথাগত পদ্ধতির তুলনায় খুব তাড়াতাড়ি পণ্যটির একটি কার্যকরী সংস্করণ সরবরাহ করে যাতে গ্রাহক প্রথম দিকে কিছু সুবিধা উপলব্ধি করতে পারেন। Agile-এর টেস্টিং সাইকেল সময় ঐতিহ্যগত পদ্ধতির তুলনায় তুলনামূলকভাবে কম, কারণ পরীক্ষা উন্নয়নের সমান্তরালভাবে করা হয়। বেশিরভাগ ঐতিহ্যবাহী মডেলগুলি চতুর মডেলের তুলনায় খুব কঠোর এবং অপেক্ষাকৃত কম নমনীয়। এই সমস্ত সুবিধার কারণে, এই মুহুর্তে চিরাচরিত পদ্ধতির চেয়ে চটপটকে অগ্রাধিকার দেওয়া হয়৷