এম্বেড থাকা সফ্টওয়্যারটির জন্য অবিচ্ছিন্ন একীকরণ এবং স্থাপন প্রক্রিয়া তৈরি করুন

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

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

সিআই / সিডি ফ্লো ওভারভিউ

এম্বেড থাকা সফ্টওয়্যারটি বিকাশের জন্য প্রাথমিক সিআই / সিডি প্রবাহ এক হবে

আসুন আরও গভীরতর হই এবং আমাদের প্রস্তাবিত প্রক্রিয়াটির বিশদ আলোচনা করুন:

আমরা ভিনসেন্ট ড্রিসেন প্রস্তাবিত গিট ফ্লো নিয়ে সিদ্ধান্ত নিয়েছি। ভবিষ্যতের পোস্টে, আমরা এম্বেড থাকা সফ্টওয়্যারটির জন্য গিট ফ্লো বাস্তবায়নের দিকে আরও ঘনিষ্ঠভাবে নজর রাখব।

আপডেট: এখানে গিট ফ্লো পোস্ট লিঙ্ক।

এটি সম্ভব করার জন্য, আমরা নিম্নলিখিত আইটি অবকাঠামো প্রস্তাব করি।

সিআই / সিডি প্রবাহের জন্য আইটি অবকাঠামো

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

সিআই / সিডি মাস্টার সার্ভার

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

উত্স নিয়ন্ত্রণ সার্ভার

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

সিআই বিল্ড সার্ভার

আমাদের বিল্ড সার্ভার স্থিতিশীল বিশ্লেষণ পরীক্ষাও করে। বিল্ড সার্ভারের জন্য, আমরা দুটি বিকল্পের মধ্যে একটি ব্যবহার করেছি:

  1. আইআর বিল্ড সার্ভার - নোড লক লাইসেন্স সহ একটি স্থানীয় উইন্ডোজ ভিএম। লক্ষ করুন যে স্থির বিশ্লেষণ সরঞ্জামগুলির জন্য আরও ব্যয়বহুল আইএআর লাইসেন্স প্রয়োজন।
  2. জিসিসি এআরএম বিল্ড সার্ভার - স্থানীয় বা ক্লাউড-ভিত্তিক লিনাক্স ভিএম (বা এমনকি ডকার-ভিত্তিক) হতে পারে।

নন-হোস্ট টেস্ট সার্ভার

একটি লিনাক্স-ভিত্তিক ভিএম, যার উপরে আপনি সমস্ত অ-লক্ষ্য-পরীক্ষামূলক পরীক্ষা করতে পারেন - ইউনিট টেস্ট এবং উপহাস সহ মডিউল পরীক্ষা। এম্বেড থাকা সি এর জন্য ইউনিট পরীক্ষার জন্য আমাদের পছন্দসই সরঞ্জাম হ'ল থ্রো দ্য সুইচ.আর.এক্স - ইউনিটি, সিএমক এবং সিডলিংয়ের সরঞ্জাম।

সিমুলেটেড পরীক্ষা সার্ভার

একটি লিনাক্স-ভিত্তিক ভিএম, যার উপর আপনি আপনার বাইনারিগুলি আপনার ডিভাইস এবং আপনার পুরো সিস্টেমের সিমুলেটরটিতে চালাতে পারেন। এর জন্য কেবল কয়েকটি অপশন রয়েছে, যেমন সিনোপসিস ভিডি কে, উইন্ড্রিভারস সিমিক্স, কিউইএমইউ, মেন্টার্স ভিস্তা ইত্যাদি We আমরা আমাদের নিজস্ব সমাধানটি সুপারিশ করি - জাম্পারের ভার্চুয়াল ল্যাব (এটি সম্পর্কে আমাদের আরও একটি নিবন্ধ রয়েছে)। একটি উপযুক্ত সিমুলেশন / এমুলেশন পরিবেশ আপনাকে সক্ষম করতে হবে

  1. ইউনিট পরীক্ষা
  2. সেন্সর এবং পেরিফেরিয়াল ডিভাইসগুলির সিমুলেশন
  3. ধোঁয়া পরীক্ষা - ডিভাইস এবং ডিভাইস ক্লাস্টার
  4. ব্ল্যাক বক্স পরীক্ষা (শেষ থেকে শেষ)
  5. সিস্টেম স্তরের পরীক্ষা - লোড / লোড, কর্মক্ষমতা, সুরক্ষা ইত্যাদি পরীক্ষা
  6. যোগাযোগ সিমুলেশন সহ ক্লাস্টার (স্কেলাবিলিটি) পরীক্ষা
  7. গ্রহণের পরীক্ষা
  8. পারফরম্যান্স পরীক্ষা

লক্ষ্য হার্ডওয়্যার পরীক্ষা সার্ভার

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

  1. ধোঁয়া পরীক্ষা
  2. ব্ল্যাক বক্স পরীক্ষা
  3. সিস্টেম স্তরের পরীক্ষা
  4. হার্ডওয়্যার বৈধতা এবং সময় সম্পর্কিত পরীক্ষা
  5. যোগাযোগ পরীক্ষার সাথে ক্লাস্টার পরীক্ষা (নোট করুন যে স্কেলাবিলিটি এখানে সীমাবদ্ধ রয়েছে)
  6. শংসাপত্র পরীক্ষা
  7. গ্রহণের পরীক্ষা

আপনার সিআই / সিডি প্রবাহটি অনুকূলিত করুন এবং পরীক্ষার স্বয়ংক্রিয় করুন

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

আপনি যদি এম্বেড থাকা সিস্টেমগুলির সাথে কাজ করেন এবং আপনার শারীরিক ডিভাইসের এম্বেড করা সফ্টওয়্যারটি সহজেই পরীক্ষা করতে চান তবে আপনি বিনামূল্যে জাম্পার চেষ্টা করতে পারেন।

সারাংশ

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

আপনার চিন্তা ভাগ করুন

আমাদের আপনার মতামত জানুন এবং মন্তব্য বিভাগে বা প্রতিক্রিয়া@jumper.io এ আমাদের সাথে যোগাযোগ করুন।