Login

Search

Information Technology
Information Technology

Technology is a combination of techniques,analytics,methods.

Science
Science

Science is the pursuit and application of knowledge.

Education
Education

Education is a achieving certain aims activity directed.

Job Circular
Job Circular

We are help to student and everyone for get best job offer.

Exam Preparation
Exam Preparation

we are help to share best knowledge for Exam Preparation.

Health & Beauty
Health & Beauty

These beauty tips will help you achieve overall healthy skin.

Entertainment
Entertainment

Entertainment is a interest of an audience or gives pleasure.

Lifestyle
Lifestyle

Lifestyle is the interests, opinions, behaviours, culture.

Intranational
Intranational

International means between or involving different countries.

সফটওয়্যার প্রকৌশল Software Engineering

  • Share this:
সফটওয়্যার প্রকৌশল Software Engineering

প্রথমে সফটওয়্যার ইঞ্জিনিয়ারিং বলতে কী বোঝায় তা জেনে নেওয়া যাক। শব্দটি সফটওয়্যার এবং ইঞ্জিনিয়ারিং দুটি শব্দ দিয়ে তৈরি।

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

অন্যদিকে ইঞ্জিনিয়ারিং হল পণ্যগুলি তৈরি করা, ভালভাবে সংজ্ঞায়িত, বৈজ্ঞানিক নীতি এবং পদ্ধতি ব্যবহার করা।

সফ্টওয়্যার ইঞ্জিনিয়ারিং হল একটি প্রকৌশল শাখা যা সু-সংজ্ঞায়িত বৈজ্ঞানিক নীতি, পদ্ধতি এবং পদ্ধতি ব্যবহার করে সফ্টওয়্যার পণ্যের বিকাশের সাথে যুক্ত। সফ্টওয়্যার প্রকৌশলের ফলাফল একটি দক্ষ এবং নির্ভরযোগ্য সফ্টওয়্যার পণ্য।

  1. সফ্টওয়্যারের বিকাশ, পরিচালনা এবং রক্ষণাবেক্ষণের জন্য একটি পদ্ধতিগত, সুশৃঙ্খল, পরিমাপযোগ্য পদ্ধতির প্রয়োগ; অর্থাৎ, সফটওয়্যারে ইঞ্জিনিয়ারিং এর প্রয়োগ।
  2. উপরের বিবৃতি হিসাবে পদ্ধতির অধ্যয়ন.

ফ্রিটজ বাউয়ার, একজন জার্মান কম্পিউটার বিজ্ঞানী, সফ্টওয়্যার ইঞ্জিনিয়ারিংকে এভাবে সংজ্ঞায়িত করেছেন :

সফ্টওয়্যার ইঞ্জিনিয়ারিং হল অর্থনৈতিকভাবে নির্ভরযোগ্য সফ্টওয়্যার পেতে এবং বাস্তব মেশিনে দক্ষতার সাথে কাজ করার জন্য সাউন্ড ইঞ্জিনিয়ারিং নীতিগুলির প্রতিষ্ঠা এবং ব্যবহার।

সফটওয়্যার বিবর্তন :

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

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

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

সফ্টওয়্যার বিবর্তন আইন

লেহম্যান সফটওয়্যার বিবর্তনের জন্য আইন দিয়েছেন। তিনি সফটওয়্যারটিকে তিনটি ভিন্ন শ্রেণীতে ভাগ করেছেন :

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

ই-টাইপ সফ্টওয়্যার বিবর্তন

লেহম্যান ই-টাইপ সফ্টওয়্যার বিবর্তনের জন্য আটটি আইন দিয়েছেন :

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

সফ্টওয়্যার দৃষ্টান্ত

সফ্টওয়্যার দৃষ্টান্তগুলি পদ্ধতি এবং পদক্ষেপগুলিকে বোঝায়, যা সফ্টওয়্যার ডিজাইন করার সময় নেওয়া হয়। অনেকগুলি পদ্ধতি প্রস্তাবিত এবং আজ কাজ করছে, কিন্তু আমাদের দেখতে হবে সফ্টওয়্যার ইঞ্জিনিয়ারিংয়ে এই দৃষ্টান্তগুলি কোথায় দাঁড়িয়েছে। এগুলিকে বিভিন্ন বিভাগে একত্রিত করা যেতে পারে, যদিও তাদের প্রতিটি একে অপরের মধ্যে রয়েছে :


প্রোগ্রামিং প্যারাডাইম হল সফ্টওয়্যার ডিজাইন প্যারাডাইমের একটি উপসেট যা সফ্টওয়্যার ডেভেলপমেন্ট প্যারাডাইমের আরও একটি উপসেট।

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

এই দৃষ্টান্তটি সফ্টওয়্যার ইঞ্জিনিয়ারিং দৃষ্টান্ত হিসাবে পরিচিত যেখানে সফ্টওয়্যার বিকাশের সাথে সম্পর্কিত সমস্ত প্রকৌশল ধারণা প্রয়োগ করা হয়। এতে বিভিন্ন গবেষণা এবং প্রয়োজনীয়তা সংগ্রহ রয়েছে যা সফ্টওয়্যার পণ্য তৈরি করতে সহায়তা করে। ইহা গঠিত :

     1.প্রয়োজনীয় সমাবেশ
     2.সফটওয়্যার ডিজাইন
     3.প্রোগ্রামিং

সফটওয়্যার ডিজাইন প্যারাডাইম

এই দৃষ্টান্তটি সফটওয়্যার ডেভেলপমেন্টের একটি অংশ এবং এতে রয়েছে  :


      1.ডিজাইন
      2.রক্ষণাবেক্ষণ
      3.প্রোগ্রামিং

সফটওয়্যার ইঞ্জিনিয়ারিং এর প্রয়োজন :

সফ্টওয়্যার ইঞ্জিনিয়ারিংয়ের প্রয়োজনীয়তা দেখা দেয় কারণ ব্যবহারকারীর প্রয়োজনীয়তা এবং সফ্টওয়্যারটি যে পরিবেশে কাজ করছে তার পরিবর্তনের উচ্চ হারের কারণে।

বড় সফ্টওয়্যার : একটি বাড়ি বা বিল্ডিংয়ের চেয়ে একটি প্রাচীর তৈরি করা সহজ, একইভাবে, সফ্টওয়্যারের আকার বড় হয়ে গেলে এটিকে একটি বৈজ্ঞানিক প্রক্রিয়া দেওয়ার জন্য প্রকৌশলকে পদক্ষেপ নিতে হবে।

স্কেলেবিলিটি : সফ্টওয়্যার প্রক্রিয়াটি বৈজ্ঞানিক এবং প্রকৌশল ধারণার উপর ভিত্তি করে ছিল না, বিদ্যমান একটি স্কেল করার চেয়ে নতুন সফ্টওয়্যার পুনরায় তৈরি করা সহজ হবে।

কোয়ালিটি ম্যানেজমেন্ট :  সফ্টওয়্যার বিকাশের আরও ভাল প্রক্রিয়া আরও ভাল এবং মানসম্পন্ন সফ্টওয়্যার পণ্য সরবরাহ করে।

গতিশীল প্রকৃতি : সফ্টওয়্যারের সর্বদা ক্রমবর্ধমান এবং অভিযোজিত প্রকৃতি ব্যাপকভাবে ব্যবহারকারীর কাজ করা পরিবেশের উপর নির্ভর করে। যদি সফ্টওয়্যারের প্রকৃতি সর্বদা পরিবর্তিত হয়, তাহলে বিদ্যমান সফ্টওয়্যারটিতে নতুন উন্নতি করা দরকার। এখানে সফটওয়্যার ইঞ্জিনিয়ারিং একটি ভাল ভূমিকা পালন করে।


খরচ : যেহেতু হার্ডওয়্যার শিল্প তার দক্ষতা দেখিয়েছে এবং বিশাল উৎপাদনের ফলে কম্পিউটার এবং ইলেকট্রনিক হার্ডওয়্যারের দাম কমেছে। কিন্তু সঠিক প্রক্রিয়ায় অভিযোজিত না হলে সফটওয়্যারের দাম বেশি থাকে।

ভালো সফটওয়্যারের বৈশিষ্ট্য

একটি সফ্টওয়্যার পণ্য এটি কী অফার করে এবং এটি কতটা ভালভাবে ব্যবহার করা যায় তার দ্বারা বিচার করা যেতে পারে। এই সফ্টওয়্যার নিম্নলিখিত ভিত্তিতে সন্তুষ্ট করা আবশ্যক :

1.কর্মক্ষম

2. ক্রান্তিকালীন

3.  রক্ষণাবেক্ষণ

ভাল প্রকৌশলী এবং তৈরি সফ্টওয়্যারগুলির নিম্নলিখিত বৈশিষ্ট্যগুলি প্রত্যাশিত :

এটি পরিমাপ করা যেতে পারে:


অপারেশনাল এটি আমাদের বলে যে সফ্টওয়্যার অপারেশনে কতটা ভাল কাজ করে ৷

  • বাজেট
  • ব্যবহারযোগ্যতা
  • দক্ষতা
  • যথার্থতা
  • কার্যকারিতা
  • নির্ভরযোগ্যতা
  • নিরাপত্তা

ক্রান্তিকালীন

এই দিকটি গুরুত্বপূর্ণ যখন সফ্টওয়্যারটি এক প্ল্যাটফর্ম থেকে অন্য প্ল্যাটফর্মে সরানো হয় :

  • বহনযোগ্যতা
  • মানসিক যোগ্যতা
  • পুনর্ব্যবহারযোগ্যতা
  • অভিযোজনযোগ্যতা

রক্ষণাবেক্ষণ

এই দিকটি সংক্ষিপ্ত করে যে একটি সফ্টওয়্যার সদা পরিবর্তনশীল পরিবেশে নিজেকে বজায় রাখার ক্ষমতা রাখে :

  • মডুলারিটি
  • রক্ষণাবেক্ষণযোগ্যতা
  • নমনীয়তা
  • পরিমাপযোগ্যতা

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

Bangla Science























About Author
Hi there, I'm Nur Sami Noman from Bangladesh. I have been working as Software Engineer over the last 8 years. I have good experience on C, C++, React, Vue js, Node js, Next js, API, PHP, Laravel, Mysql, WordPress, Web Design & Development, Graphics Design,Technical Problem Solving, Networking, Hardware Servicing, Man Access Control System, IOT Device, IT Project & Team handling. In my spare time i like to thinking new technology.
View all posts (9) Follow:
Comments