‫اولین تجربه با BugNET

BugNET یک نرم‌افزار Issue Tracking کد باز است که با ASP.NET نوشته شده است. قبلاً در سایت آن چیزهای خوبی راجع به امکانات آن خوانده بودم. با این که IssueTracker.NET خیلی رایج‌تر از BugNET است اما امکانات BugNET بیشتر و بهتر به نظر می‌رسید. به همین خاطر تصمیم گرفتم آن را نصب کرده و امکانات آن را از نزدیک ببینم.

خوشبختانه با تعریف اولین پروژه در BugNET فهمیدم که BugNET امکانات مدیریت پروژه را تا حد خوبی پوشش می‌دهد. چیزی که فکر می‌کردم به غیر از جیرا در هیچ نرم‌افزار Issue Tracking دیگری وجود نداشته باشد. BugNET هم امکان تعریف Category و Milestone را دارد و هم امکان استفاده از Issue Typeهایی غیر از نوع باگ. علاوه بر اینها امکان تعریف دسترسی‌ها، تعریف Queryهای مختلف و نگهداری History ایشوها را هم داراست. به همین دلیل می‌توان از آن به عنوان یک نرم‌افزار مدیریت پروژه هم استفاده کرد.

یکی دیگر از امکانات خوب BugNET امکان تعریف نوع Issueها، نوع Statusها، نوع اولویت‌ها و نوع Resolutionهای دلخواه بر حسب نیاز است. در واقع شما هر وقت که یک پروژه جدید تعریف می‌کنید خودتان باید تک تک انواع Issueها و غیره را با نسبت دادن اسم مناسب و تخصیص icon مناسب تعریف کنید. به این ترتیب BugNET را می‌توان کاملاً Customizable نامید.

به نظر می‌آید BugNET موارد امنیتی را به خوبی رعایت کرده باشد. چون هم Roleهای مختلفی را می‌توان تعریف کرد و هم به ازای هر Role می‌توان دسترسی‌های خیلی مختلفی را تعریف کرد. هر پروژه یا هر Issue را به دلخواه می‌توان به صورت غیر خصوصی تعریف کرد. امکان ثبت نام کاربران به طور خودکار هم وجود دارد. علاوه بر اینها ظاهراً می‌توان با استفاده از OpenID به BugNET لاگین کرد. همه اینها در کنار هم به شما امکان می‌دهد تا بتوانید BugNET را هم در محیط اینترانت و هم در محیط اینترنت مورد استفاده قرار دهید.

نصب BugNET یکی دو تا قلق کوچک دارد. BugNET نیاز به فریمورک 3.5 دارد. برای دیتابیس هم احتیاج به MS SQL 2005 و بالاتر و یا نسخه Express همان دیتابیس‌ها دارد. به هنگام نصب BugNET باید صفحه Install.aspx را اجرا کنید. در همین حین به چند خط web.config گیر داده می‌شود. من آنها را کامنت کردم و هیچ مشکل خاصی به وجود نیامد. قسمت بد BugNET تنظیم دسترسی‌ها است. در بیشتر برنامه‌های مشابه کافی است که به یکی دو تا فولدر خاص مثل App_Data دسترسی full داده شود. ولی در مورد bugNET باید به کل فولدری که فایل‌ها و فولدرهای bugNET در آن قرار دارد دسترسی full دارد. به همین علت نمی‌توان BugNET را در root یک domain یا حتی sub domain نصب کرد. چون ابزارهای سروری مثل Plesk اجازه تغییر دسترسی فولدرهای حاوی root مثل httpdocs را نمی‌دهند. متاسفانه در BugNET نمی‌توان از تقوم هجری استفاده کرد. مشکل راست به چپ نویسی هم مثل همیشه وجود دارد. مشکل راست به چپ نویسی را می‌توان با استفاده از کاراکترهای کمکی صفحه کلید استاندارد ۹۱۴۷ تا اندازه‌ای حل کرد. البته BugNET کدباز بوده و می‌توان در صورت علاقه کل آن را فارسی کرد.

‫‫جیرا – Jira

jira فرض کنید در شرکتی یا تیمی کار می‌کنید که یک نرم‌افزار تولید کرده و این نرم‌افزار در محل مشتری یا کاربران دیگر مورد استفاده است یا این که نرم‌افزار، مراحل آزمایشی خود را می‌گذراند. مشتری‌ها و کاربران نرم‌افزار به اشکالات زیادی برمی‌خورند و آن را به شما گزارش می‌کنند. به غیر از اشکال‌ها، درخواست‌هایی هم مبنی بر بهبود بخشی از نرم‌افزار یا افزودن یک امکان جدید به آن ارائه می‌دهند. در کنار همه این‌ها تیم شما مدام نسخ‌های جدیدتری از نرم‌افزار را منتشر می‌کند. در چنین حالتی باید روشی برای مدیریت اشکال‌ها و درخواست‌ها اتخاذ کرد. و گرنه همیشه دچار دوباره‌کاری، گم شدن درخواست‌ها و ایرادها و بی‌نظمی شدید در کارها می‌شوید.

راهی که برای غلبه بر این مشکل وجود دارد، استفاده از نرم‌افزار جیرا (Jira) است. این نرم‌افزار به عقیده اینجانب یکی از کامل‌ترین نرم‌افزارهای موجود برای اینکار است. جیرا قادر است هر نوع issue را با اطلاعات کاملی از جمله component، version، گزارش کننده، مسئول انجام و وضعیت را ثبت و نگهداری کند. جیرا مکانیزم گردش کار (workflow)، مدیریت نسخه، تاریخچه و… را برای مدیریت بهتر امور پیاده‌سازی و ارائه نموده است. با کمک جیرا و کمی آموزش و پشتکار اعضای تیم می‌توانید تاریخچه هر issue (مورد) را اعم از علت ایجاد، کارهای انجام شده در مورد آن، افراد درگیر، نتیجه کار و نسخه‌های مرتبط با آن را در مواقع مورد نیاز به راحتی به دست آورید. علاوه بر همه این‌ها جیرا می‌تواند با گزارشات مدیریتی و با استفاده از ایمیل همه اعضای تیم را در جریان همیشگی اطلاعات قرار دهد.

جیرا یک نرم‌افزار تحت وب خیلی سریع و تجاری است که البته اگر از آن برای مدیریت یک پروژه کدباز استفاده کنید می‌توانید از آن به صورت رایگان استفاده کنید. جیرا یک معادل کدباز و مجانی دارد به اسم BugZilla. امکانات باگ‌زیلا در حد جیرا نیست ولی خوبی آن این است که کدباز و مجانی است. هم جیرا و هم باگ‌زیلا در خیلی از پروژه‌های کدباز معروف دنیا مورد استفاده قرار گرفته است. مثلا جیرا در پروژه Nhibernate و Cuyahoga و باگ‌زیلا در پروژه OTRS مورد استفاده قرار گرفته است.

پ.ن.: اگر در شرکت‌تان همیشه بر سر انجام کارها دعوا دارید و معلوم نیست چه کسی چه کاری را انجام می‌دهد یا نه، حتماً از جیرا استفاده کنید.

پیوندها: