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