"সমস্ত তৃতীয় পক্ষের কোড" না হলে "ব্যবসায় যুক্তি" বলতে আসলে কী বোঝায়?


25

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

  • "ব্যবসায়ের যুক্তি আপনার প্রোগ্রামের অংশ যা প্রকৃত ব্যবসায়ের নিয়মগুলিকে এনকোড করে।" আমি যে সংজ্ঞাগুলি পড়েছি সেগুলির বেশিরভাগটি এ জাতীয় বৃত্তাকার।

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

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

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

এটা কি সম্ভব যে আমি আসলে এমন একটি দলে রয়েছি যা কেবল ব্যবসায় যুক্তি যুক্ত করে, এবং সমস্ত অ-ব্যবসায়িক যুক্তি অন্যান্য দলই করছে? বা "ব্যবসায় যুক্তি" এর সম্পূর্ণ ধারণাটি কোনও পৃথক সত্তা হিসাবে কেবল নির্দিষ্ট অ্যাপ্লিকেশন বা আর্কিটেকচারের জন্য কার্যকর?

উত্তরগুলি কংক্রিট করতে সহায়তা করার জন্য: আপনাকে ডোমিনো পিজ্জা অ্যাপ্লিকেশনটি পুনরায় প্রতিস্থাপন করতে হবে। ব্যবসায়ের যুক্তি কী এবং সেই অ্যাপ্লিকেশনটির অ-ব্যবসায়িক যুক্তি কী? এবং কীভাবে পিজ্জা-অর্ডারিং ব্যবসায়ের যুক্তিটিকে কোডের নিজস্ব "স্তর" এ রেখে দেওয়া সম্ভব হবে, বেশিরভাগ পিজ্জা তথ্য ডেটা অ্যাক্সেস এবং উপস্থাপনা স্তরগুলিতে রক্তপাত না করে?

আপডেট: আমি এই সিদ্ধান্তে পৌঁছেছি যে আমার দল সম্ভবত 90% ইউআই কোড করছে এবং বেশিরভাগ - তবে সমস্ত নয় - আপনি যে ব্যবসায়িক যুক্তিকে কল করবেন তা অন্য দল বা সংস্থাগুলি থেকে আসে। মূলত, আমাদের অ্যাপ্লিকেশনটি পর্যবেক্ষণের জন্যআর্থিক ডেটা এবং প্রায় সমস্ত বৈশিষ্ট্যই হ'ল ব্যবহারকারীরা কোন ডেটা দেখেন এবং তারা কীভাবে তা দেখে তা কাস্টমাইজ করার উপায়। এখানে কেনা বেচা চলছে না (যদিও আমরা আমাদের সংস্থার অন্যান্য অ্যাপ্লিকেশনগুলির সাথে কিছুটা একীভূত করি যা এটি করে) এবং প্রকৃত ডেটা বাহ্যিক উত্সের প্রচুর পরিমাণে সরবরাহ করা হয়। তবে আমরা ব্যবহারকারীদের তাদের "মনিটর" এর অনুলিপি অন্যান্য ব্যবহারকারীর কাছে প্রেরণের মতো জিনিসগুলি করার অনুমতি দিই, সুতরাং আমরা কীভাবে এটি পরিচালনা করি তার বিশদটি সম্ভবত ব্যবসায়ের যুক্তি হিসাবে যোগ্যতা অর্জন করবে। আসলে একটি মোবাইল অ্যাপ্লিকেশন রয়েছে যা বর্তমানে আমাদের কিছু ব্যাকএন্ড কোডের সাথে কথা বলেছে এবং আমি জানি যে আমাদের অগ্রভাগের কোডটির কোন অংশটি এটি একটি আদর্শ বিশ্বে আমাদের ইউআইয়ের সাথে ভাগ করে নিতে চাই (মূলত আমাদের অর্ধ-এমভিসির এম) তাই আমি অনুমান করছি যে এটি আমাদের জন্য বিএলএল।

আমি ব্যবহারকারীর 61852 এর উত্তর গ্রহণ করছি কারণ এটি "ব্যবসায়িক যুক্তি" কী করে এবং কী উল্লেখ করে না সে সম্পর্কে আমাকে আরও অনেক বেশি দৃ concrete় ধারণা দিয়েছে।


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

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

8
আপনি যদি 50 ডলারের বেশি অর্ডার করেন তবে আপনি নিখরচায় পনির-এনক্রাস্টেড ব্রেডস্টিকস পাবেন।
কেডিগ্রিগরি

1
@ raptortech97 তিনি / তিনি বলছেন যে "আপনি যদি 50 ডলারের বেশি অর্ডার করেন তবে আপনি বিনামূল্যে পনির-এনক্রাস্টেড ব্রেডস্টিকস পান" এটি ব্যবসায়ের যুক্তি is
ব্যবহারকারী 253751

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

উত্তর:


27

আমি আপনাকে সিআরইউডি অ্যাপ্লিকেশন সম্পর্কিত কিছু টিপস দেব , যেহেতু গেমস বা গ্রাফিকালি নিবিড় অ্যাপগুলিতে আমার খুব বেশি অভিজ্ঞতা নেই:

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

5

দেখে মনে হচ্ছে আপনার বেশিরভাগ কাজ ইউআই স্তরে থাকতে পারে। ব্যবসায়ের কারণে ডিসপ্লে ফর্ম্যাট পরিবর্তন করা কোনও ব্যবসায়িক যুক্তি বোঝায় না। পরিবর্তনটি হ'ল যুক্তিতে পরিবর্তন to

ফর্ম্যাটটি পরিবর্তন করতে সক্ষম হতে কিছু ব্যবসায়ের যুক্তি বোঝায় যে সম্ভবত পছন্দটির অধ্যবসায় জড়িত।

কোনও কুকিতে ফর্ম্যাট থাকা, দর্শন স্তরটিতেও প্রয়োগ করা যেতে পারে।

তবে এটি এমভিসি পদ্ধতিতে প্রয়োগ করা যেতে পারে। (কিছু মডেল পছন্দকে মোকাবেলা করতে সক্ষম তার নিজস্ব এমভিসি হিসাবে ভিউ বাস্তবায়ন করে))

  • ব্যবহারকারীর পছন্দটি মডেল (ডাটাবেস / কুকি) দ্বারা সঞ্চয় করা যেতে পারে।
  • নিয়ামক মডেলটিতে ব্যবহারকারীর পছন্দ পরিবর্তন করে অনুরোধগুলির বিন্যাসে প্রতিক্রিয়া জানায়।
  • দৃশ্যটি ব্যবহারকারীর পছন্দকে সামঞ্জস্য করবে। পছন্দটি মডেল থেকে অনুরোধ করা যেতে পারে, বা নিয়ামক দ্বারা সরবরাহ করা যেতে পারে।

আপনার আবেদন সম্পর্কে একটি শিক্ষিত অনুমান করা।

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

    • একটি অনুসন্ধান সম্পাদন করা হয়েছে এবং প্রদর্শনটি প্রদর্শনের জন্য সরবরাহ করা হচ্ছে।
    • একটি বন্ডের জন্য মূল্য সন্ধান করা এবং প্রদর্শনটি প্রদর্শনের জন্য সরবরাহ করা।
    • ফলন তুলনা এবং প্রদর্শন প্রদর্শনের জন্য ডেটা সরবরাহ।
    • প্রক্রিয়া অর্ডার এবং মডেল এগুলি সঞ্চয়।

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

এই ভাঙ্গন উদ্বেগকে আলাদা করতে দেয়।

  • মডেল দ্বারা উপস্থাপিত ডেটা স্তর তুলনামূলকভাবে স্থিতিশীল হতে থাকে।
  • ব্যবসায়ের স্তরটি যেখানে ব্যবসায়ের সিদ্ধান্তগুলি প্রয়োগ করা হয়: অনুরোধটি কি পূরণ করা যাবে? সমস্ত প্রয়োজনীয় তথ্য প্রাপ্ত করা হয়েছে? ব্যবহারকারী অনুমোদিত? লেনদেনে কোনও লাল পতাকা রয়েছে?
  • দৃশ্য স্তরটি কম স্থিতিশীল হতে থাকে এবং একের বেশি থাকতে পারে। অ্যাপ্লিকেশনটির চেহারা এবং অনুভূতি এখানেই রয়েছে। অন্য স্তরগুলি পরিবর্তন না করেই কোনও অ্যাপ্লিকেশনটিকে পুরোপুরি পুনরায় ত্বক করা সম্ভব।
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.