احراز هویت
یکی از مهمترین نیازمندیهای یک نرمافزار، توانایی احراز هویت و کنترل دسترسی در آن است. این اهمیت
در یک نرمافزار که با دادههای خاص و جمعآوری شده سر و کار دارد دوچندان میشود
چرا که اگر یک شخص خرابکار به این دادهها دسترسی پیدا کند میتواند
از آنها برای رسیدن به اهداف مخرب استفاده کند.
اولین نیازمندی این پروژه، قابلیت ایجاد کاربر، احراز هویت کاربران و کنترل دسترسی آنها است.
دادههای کاربران باید به صورت امن در پایگاهداده ذخیره شده و در هنگام ورود، بوسیله
بکاند بررسی شوند.
علاوه بر این، کاربران باید در سطوح دسترسی مختلفی قرار گرفته و در آینده با پیادهسازی بخشهای دیگر، سطح دسترسی آنها به هر یک از بخشها بررسی شود.
در حال حاضر میتوانید برای کاربران سه سطح دسترسی مدیر سیستم، مدیر داده و تحلیلگر را در نظر بگیرید. کاربران سیستم بوسیله مدیر ساخته میشوند و سطح دسترسی آنها در زمان ساخته شدن تعیین میشود اما باید در هر زمان و به طور پویا قابل تغییر باشد.
همچنین هر کاربر باید بتواند رمز عبور خود را تغییر دهد.
انتخاب پایگاهداده و نحوه احراز هویت بر عهده خودتان است و میتوانید با استفاده از دانشی که در طول دوره کارآموزی کسب کردید و مشورت با مسئولین پروژه، نرمافزار خود را طراحی کرده و توسعه دهید.
DevOps
در این بخش باید محیط مورد نیاز برای توسعه، تست و اجرای برنامه در محیط پروداکشن را با استفاده از ابزارهایی مانند داکر و پایپلاینهای CI فراهم کنید. علاوه بر این، با مشارکت در طراحی سیستم و مشورت دادن به توسعهدهندهها، سعی کنید نرمافزار بر اساس استانداردهای Cloud Native توسعه داده شود.