সফটওয়্যার ডেভেলপমেন্ট লাইফ সাইকেল (sdlc)

সফটওয়্যার ডেভেলপমেন্ট লাইফ সাইকেল (sdlc)

সফটওয়্যার ডেভেলপমেন্ট লাইফ সাইকেল কি?

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

কেন SDLC গুরুত্বপূর্ণ?

রিকোয়ারমেন্ট পরিবর্তন, টেকনোলজি আপগ্রেড এবং একাধিক টিম এর কোলাবোরেশন এর জন্য সফটওয়্যার ডেভেলপমেন্ট চ্যালেন্জিং হতে পারে। এক্ষেত্রে, SDLC আমাদেরকে একটি প্রতিটি পর্যায় এর নির্দিষ্ট আউটপুটসহ একটি সুনির্দিষ্ট পদ্ধতি বা কাঠামো প্রদান করে। ফলস্বরূপ, সকল স্টেকহোল্ডাররা সফটওয়্যারটির লক্ষ্য এবং ডেভেলপমেন্ট প্রসেস এর সকল ধাপগুলো সম্পর্কে পরিষ্কার ধারণা থাকে।

সফটওয়্যার ডেভেলপমেন্ট লাইফ সাইকেল কিভাবে কাজ করে?

সফটওয়্যার ডেভেলপমেন্ট লাইফ সাইকেল প্রক্রিয়াতে বেশ কিছু ধাপ রয়েছে। একটি সফটওয়্যার তৈরীতে কোন কোন ধাপে কোন কোন কাজগুলো সম্পন্ন হয় তা নিয়ে নিচে আলোচনা করা হলো।

১. প্ল্যানিং এবং রিকোয়ারমেন্ট এনালাইসিস
এটি হচ্ছে একেবারে প্রথম ধাপ। এই ধাপে সফটওয়্যার তৈরীর মূল কারণ, এই সফটওয়্যার এ কি কি ফিচার ও ফাংশন থাকবে, কোন কোন ফিচার কোন কোন ব্যবহারকারী ব্যবহার করবে তা ফাইনালাইজড হয়। ডেভেলপার টিম বিভিন্ন স্টেকহোল্ডার যেমন কাস্টমার, ইন্টার্নাল এবং এক্সটার্নাল এক্সপার্ট, ম্যানেজার এর কাছ থেকে রিকোয়ারমেন্ট সংগ্রহ করে, সেগুলোকে এনালাইসিস করে একটি ডকুমেন্ট তৈরী করে। এই ডকুমেন্ট কে Software requirement specification (SRS) document বলে।

২. ডিজাইন
এই ধাপে SRS ডকুমেন্ট এর উপর ভিত্তি করে ডিজাইনগুলো তৈরী ও ফাইনালইজড করা হয় যার উপর ভিত্তি করে প্রোগ্রামার বা ডেভেলপার সফটওয়্যার এর কোড করেন। এই ডিজাইন এ বিভিন্ন রকম ডায়াগ্রাম, গ্রাফিক্যাল কনটেন্ট থাকে।এটিকে Design Document Specification (DDS) বলা হয়।

৩. ডেভেলপমেন্ট
এই ধাপে প্রোগ্রামাররা DDS কে অনুসরণ করে সফটওয়্যার ডেভেলপ বা তৈরী করেন। এই ধাপটা মোটামুটি প্রোগ্রামিং নির্ভর। ডেভেলপমেন্ট শেষে সফটওয়্যার এর সম্পুর্ণ বা আংশিক একটা অংশ টেস্টার দের কে দেওয়া হয় টেস্ট এর জন্য।

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

৫. ডিপ্লোয়
টেস্টিং এর পর ফাইনালাইজড সফটওয়্যারটি ব্যবহারকারীদের জন্য উন্মুক্ত করে দেওয়া হয়।

৬. মেইনটেন্যান্স
এই ধাপে মূলত সফটওয়্যার মার্কেট এ আসার পরে কোন নতুন ফিচার বা ফাংশন যোগ করা, অথবা নতুন কোনও ত্রুটি আসলে সেটা সমাধান করা এই ধরনের কাজগুলো হয়ে থাকে।

#sdlc #software_development