مشخصات فنی نرم افزارهای توسعه یافته ​​​​​​​

شرکت پرشیا شبکه برای توسعه نرم افزارهای تحت وب خود Framework اختصاصی و منحصر به فردی را با نام تجاری پاپیروس (Papyrus) توسعه داده که دارای مشخصات زیر می باشد:​​​​​​​

​​​​​​​محیط توسعه برنامه های ما، هم در لایه سرور و هم در لایه کلاینت Microsoft Visual Studio 2019 می باشد.
برای نگهداری Source Code ها و مدیریت موارد کاری در چارچوب Scrum و همچنین Build و Release اتوماتیک و Continuous Integration (CI) از Microsoft Team Foundation Server 2018 استفاده می کنیم.

محیط توسعه و مدیریت پروژه و نگهداری منابع​​​​​

معماری

معماری این زیر ساخت از دو لایه کلاینت و سرور تشکیل شده است که در هر لایه از به روزترین و آخرین تکنولوژی ها و فناوری ها استفاده شده و لایه کاربری نرم افزار به صورت Single Page Application یا به اختصار SPA می باشد.

در این سیستم از ASP.Net Web API برای ایجاد سرویس های HTTP استفاده شده است. ASP.Net Web API پلتفرم ایده آلی برای تولید برنامه های RESTful در چارچوب .Net می باشد.
نسخه ASP.Net استفاده شده ASP.NET Core 2 می باشد.
در این سیستم برای تولید RESTful APIs از OData نیز استفاده شده است. با استفاده از OData قادریم تمامی منابعی که از طریق URL شناسایی شده و در Data Model تعریف شده اند را با استفاده از HTTP Message های ساده منتشر و یا ویرایش کنیم.
ORM استفاده شده در سیستم Entity Framework Core 2 می باشد. در این مجموعه از رویکرد Entity Framework Code-First استفاده شده است.
ضمن اینکه برای مدیریت  احراز هویت و اختیارات کاربران از ASP.NET Identity استفاده شده است.
دیتابیس پیشنهادی ما برای راه اندازی سیستمها، Microsoft SQL Server 2014 و نسخه های بعد از آن است.​​​​​​​

لایه سرور

معماری لایه کلاینت MVVM بوده و لایه ارتباطی بین دیتابیس سرور (Odata Services) و دیتابیس کلاینت (Indexed DB) کتابخانه Jay Data می باشد.
واسط کاربری سیستم به صورت یکپارچه با استفاده از امکانات Web Component موجود در HTML5 که توسط کتابخانه Polymer (توسعه داده شده به صورت متن باز توسط Google) به صورت اختصاصی توسط شرکت پرشیا شبکه ایجاد شده است.
زبان توسعه View Model های لایه کلاینت Type Script می باشد.
گزارشها و زیرسیستم های گزارش ساز با استفاده از کتابخانه های Stimulsoft (نسخه JS) توسعه داده شده است.
همچنین به منظور بهینه سازی کارایی سیستم از آخرین امکانات Service Worker برای Cache کردن فایلهای استاتیک در ساختار SPA استفاده کرده ایم.

لایه کلاینت

در توسعه نرم افزارهای پرشیا شبکه از متدولوژی Scrum  استفاده می شود و بر اساس آن توسعه نرم افزار در اسپرینتهای دو هفته ای انجام می شود. با توجه به کاربرد کامل Microsoft Team Foundation Server به عنوان ابزار مدیریت منابع و گردش کار توسعه در پرشیا شبکه، امکانی برای نمایندگان محترم کارفرما فراهم خواهد شد تا بتوانند به صورت به روز و دقیق در جریان مراحل پیشرفت پروژه قرار گیرند.

متدلوژی​​​​​​​ توسعه