استاد گرامی
با سلام
لطفا در خصوص نحوه تعریف project ACRs در ماژول Admin در قسمت user راهنمایی بفرمائید
دلیل وجود این ایتم در بعضی از پروژه ها چیست؟
چه تفاوتی با ایتم های Project teams دارد؟
با تشکر
با سلام و احترام
این بخش رو مفصل در اموزش توضیح دادم. اما مجدد دلیل ایجاد TEAM های متعدد رو در پروژه خدمتتون عرض میکنم:
در محیط ADMIN نرمافزار PDMS سه عنصر اصلی داریم: DB، TEAM و USER که به هم وابستهان و باید درست تعریف بشن تا کار طراحی در محیط PDMS بدون تداخل و با مدیریت درست انجام بشه. هر DB در واقع یه پایگاه دادهست که اطلاعات بخشی از پروژه توش ذخیره میشه؛ مثلاً طراحی سهبعدی، کاتالوگ، نقشه ایزومتریک و غیره. حالا برای اینکه یه نفر بتونه به یه DB خاص دسترسی پیدا کنه، نمیتونه مستقیم وارد اون DB بشه، بلکه باید از طریق یه TEAM که به اون DB متصل شده، وارد بشه. هر TEAM نقش واسطه رو داره و مشخص میکنه که چه کسانی (یعنی USERها) به کدوم DBها دسترسی دارن.
پس USER اول باید عضو یه TEAM بشه، و اون TEAM هم قبلاً به یه یا چند تا DB وصل شده. وقتی کاربر وارد PDMS میشه، باید انتخاب کنه با کدوم تیم و به تبعش با کدوم DB میخواد کار کنه. این ساختار باعث میشه پروژه بهتر مدیریت بشه، دسترسیها کنترلشده باشه، و چند نفر همزمان روی یه بخش تداخل نداشته باشن. در واقع این سیستم کمک میکنه که طراحی تیمی در پروژههای بزرگ صنعتی، منظم، دقیق و بدون تداخل انجام بشه.
این ساختار به ما کمک میکنه هم از نظر ایمنی اطلاعات، هم از نظر تقسیم وظایف بین تیمها، کنترل دقیقی روی پروژه داشته باشیم. مثلاً فرض کن تو پروژه قراره یه تیم فقط روی طراحی پایپینگ کار کنه، یه تیم روی سازه، و یه تیم دیگه روی نقشههای ایزومتریک. حالا اگه همه کاربرا آزاد باشن هر DBی رو باز کنن، احتمال داره اشتباهی چیزی تغییر بدن یا تداخل کاری پیش بیاد. ولی وقتی از طریق TEAM دسترسی داده میشه، فقط اعضای اون تیم خاص میتونن وارد DB مربوط به خودشون بشن و فقط روی همون بخش کار کنن. اینطوری هم کار تمیزتر انجام میشه، هم پیگیری مسئولیتها راحتتره.
از طرف دیگه، همین ساختار باعث میشه قفلگذاری (Locking) هم بهدرستی انجام بشه. یعنی وقتی یه نفر توی یه TEAM خاص داره یه قطعهای رو تو یه DB ویرایش میکنه، بقیه اعضای تیمهای دیگه نمیتونن همزمان اون قطعه رو تغییر بدن و این باعث میشه از تداخل دادهها و خراب شدن طراحی جلوگیری بشه. به همین خاطر در محیطهای حرفهای و پروژههای صنعتی بزرگ، تعریف دقیق و اصولی این سه بخش—DB، TEAM، USER—توی بخش ADMIN خیلی مهمه و پایهی درست کار کردنه.
یه بخش دیگهی خیلی مهم در محیط ADMIN نرمافزار PDMS، چیزی هست به اسم Project ACRs. ACR مخفف Access Control Record هست، و در واقع تعیین میکنه که کاربرها در هر بخش از پروژه چه سطح دسترسیای دارن. یعنی مشخص میکنه که کدوم کاربر میتونه یه عنصر رو فقط ببینه (read only)، کدوم یکی میتونه اون رو ویرایش کنه (write access)، و یا کدوم بخشها اصلاً برای یه کاربر خاص قابلمشاهده نباشه (no access). این سیستم، مکمل همون ساختاریه که با USER و TEAM و DB تعریف کردیم و اجازه میده کنترل دقیقتری روی دسترسیها داشته باشیم. ACRها معمولاً در سطح DB، عناصر داخل پروژه (مثل equipment، piping، structure)، و حتی در سطح ریشهای پروژه (Project Root) تعریف میشن. مثلاً ممکنه یک کاربر در تیم طراحی پایپینگ، فقط اجازه داشته باشه piping elements رو ویرایش کنه، ولی نتونه structure یا electrical رو حتی ببینه. یا برعکس، ممکنه یه نفر فقط ناظر پروژه باشه و تمام اجزا رو فقط بخونه بدون اینکه اجازهٔ هیچگونه تغییری داشته باشه. پس وقتی داریم یه پروژه جدید در PDMS تعریف میکنیم، بعد از ساختن DBها و تعریف TEAMها و اضافهکردن USERها، باید ACRها رو هم بهدرستی تنظیم کنیم تا همهچیز کنترلشده و ایمن پیش بره.
موفق باشید