DjGroup / exprolife

A social network for sharing projects and advanced moments.
3 stars 1 forks source link
مقدمه ======= * در عصر اطلاعات یا به عبارتی بهتر انفجار اطلاعات ، روزانه حجم بالایی از دانش تولید شده و در دسترس همگان قرار می‌گیرد. دسترسی آسان به اینترنت و امکانات فراوان آن سبب روبرو شدن بشر با دریایی از اطلاعات گشته است. این اقیانوس عظیم دانش و اطلاعات سبب سردرگمی و حیرانی افراد در سایت‌ها و مطالب گوناگون می‌گردد. این امر تا جایی به پیش رفته که امروزه توانایی جستجو کارا از طریق موتورهای جستجو و دست یافتن به اطلاعات مورد نیاز بسیار اهمیت پیدا کرده است. * حال این پرسش مطرح می‌شود که آیا می‌توان مدیریت این اطلاعات را به نوعی به دست خود افراد سپرد و بتوان از سردرگمی آن‌ها کاست؟ در پاسخ باید گفت که این امر تا حد زیادی قابل دسترسی است. تلاش‌های بسیاری در جهت تحقق این فرآیند صورت گرفته است. همانطور که می‌دانید سال‌هاست بشر به سمت وب مفهومی حرکت می‌کند. ماحصل این حرکت معرفی وب 2.0 و به تبع آن وب 3.0 را به دنبال داشته است. در اینجا تکنولوژی در اختیار کاربران قرار می‌گیرد و به آن‌ها امکان ایجاد محتوا را به سادگی و از طریق مرورگرشان فراهم می‌کند. هم اکنون کاربران نقش بزرگی را در ایجاد اطلاعات و دانش در گستره‌ وب بر عهده دارند. * امروزه سایت‌های مبتنی بر دانش به سمت کاربر محوری و کنترل و مدیریت محتوا به وسیله کاربران حرکت کرده‌اند. بدین معنی که افراد عضو در سایت بر اطلاعات قرار گرفته بر روی سایت نظارت کرده و به نوعی آن را مدیریت می‌کنند. ایده اصلی ما برای پروژه این درس نیز همین می‌باشد. ایجاد سایتی برای به اشتراک گذاری اطلاعات تخصصی و به بحث گذاشتن آن‌ها توسط سایرین. * محصول ما در ابتدا با هدف گذاری جامعه خاصی از افراد فعال در زمینه‌های مختلف کامپیوتری به دنبال ایجاد محتوا از طریق آن‌ها در سایت می‌باشد. این کار به صورت بیان تجربیات و فعالیت‌های تخصصی آن‌ها در قالب پروژه‌ها و کارهایی که انجام داده‌اند صورت می‌گیرد. آن‌ها می‌توانند از محصول ما به عنوان ابزاری برای معرفی خود و به عنوان یک رزومه برخط استفاده کنند. * پس از ایجاد محتوا توسط افراد خبره، سایر افراد توانایی جستجو و مشاهده مطالب، پرسش و پاسخ و سایر امکانات از قبیل دعوت به کار یا خرید پروژه را دارند. * به صورت کلی باید گفت که هدف محصول ما به اشتراک گذاری تجربیات و فعالیت‌های تخصصی افراد در محیطی کاملا علمی و تخصصی است. جذب افراد فعال در زمینه کامپیوتر و ایجاد صفحاتی از طریق آن‌ها و کنترل آن‌ها بر اطلاعات بیان شده سبب ایجاد محیطی کاملا علمی و مناسب برای افراد ناآشنا یا کمتر آشنا با موضوعات مطرح شده می‌شود. * همان‌طور که گفته شد کاربرد اصلی محصول ما ثبت اطلاعات تخصصی و تجربیات افراد می‌باشد. به دنبال آن مرجعی برای افراد تازه‌کار شکل می‌گیرد تا بتوانند از امکانات سایت بهره برده و هر چه بیشتر با مطالب آشنا شوند. مشکل ====== * در ابتدا باید بیان کنیم که دلیل و فلسفه ایجاد این وب‌سایت در ابتدا به خاطر اولین موردی که در ادامه ذکر می‌شود به ذهنمان رسید؛ اما پس از بررسی‌هایی که انجام دادیم به این نتیجه رسیدیم که مشکلاتی دیگری نیز موجود است که با محصول ما قابل مرتفع کردن هستند. * ابتدایی ترین دلیل ما برای ایجاد این محصول، عدم وجود فضای مناسبی در ایران برای ثبت، ارائه، نمایش و به طور کلی به اشتراک گذاری تجربیات و فعالیت‌های تخصصی در فضای مجازی است. شاید بتوان گفت رویکرد ما برای ایجاد این محصول در سایت‌های خارجی نیز کمتر مورد توجه قرار گرفته است. محصول ما به دنبال رفع کردن این مشکل برآمده است تا بتوان از طریق آن امکانات مناسبی برای مرتفع کردن این مشکل در اختیار قرار داد. * دلیل دیگر ما عدم وجود منبع متمرکز برای دسترسی به اطلاعات مناسب و کاملی در زمینه علم کامپیوتر است. محصول ما می‌تواند این مورد را عملیاتی کرده و تجربیات عملی را در اختیار عموم قرار دهد. * سایت‌های مختلفی در اینترنت برای ارائه رزومه وجود دارد. در این سایت‌ها افراد می‌توانند رزومه خود را بیان کنند. اما کمتر سایتی برای ارائه رزومه به صورت عملی وجود دارد. این موضوع دلیل دیگر ما برای ایجاد محصولمان می‌باشد. افراد می‌توانند از سایت ما به عنوان منبع خوبی برای ارائه عملی رزومه خود استفاده کنند. * بدست آوردن اطلاعات جامع و کامل در مورد یک مطلب خاص همواره مد نظر افراد در جستجوهای خود در فضای اینترنت بوده است. این موضوع همواره برای بسیاری از افراد مشکل‌ساز می‌باشد. محصول ما توانایی مرتفع کردن این مشکل را نیز خواهد داشت. البته این بخش از کار بستگی بسیاری به محتوا قرار گرفته بر روی سایت و کیفیت آن‌ها و به طور کلی میزان مشارکت افراد متخصص در سایت دارد. این مشکل می‌تواند به عنوان یک هدف بالقوه برای محصول ما همواره مطرح باشد. * در نهایت یکی از مشکلات دیگری که ما به آن‌ اندیشیدیم مشکل ناشناخته بودن قابلیت افراد، مشکل اشتغال و بازاریابی پروژه و محصولات آن‌هاست. محصول ما می‌تواند این قابلیت را نیز برای افراد فراهم کرده و برای آن‌ها درآمد ایجاد کند. البته در صورت دستیابی به این هدف و فروش پروژه ما می‌توانیم از این راه و همچنین از طریق تبلیغات درآمدزایی داشته باشیم. راه حل ======= * مشکلاتی مانند نبودن فضای مناسبی در ایران برای ثبت، اشتراک‌گذاری تجربیات و فعالیت‌های تخصصی در فضای مجازی و هم‌چنین نبود منبع متمرکز برای دسترسی به اطلاعات مناسب و کاملی در زمینه علم کامپیوتر در معنای واقعی کلمه مشکل محسوب نمی‌شوند بلکه ضعف دنیای مجازی در سطح کشورمان را می‌رساند. ما به عنوان بخشی از جامعه‌ی مهندسین نرم‌افزار ایران، برای رفع این نقص باید دست به کار شویم و فضایی ایجاد کنیم تا جامعه‌ی متخصصین با هم در ارتباط باشند و محصول ما بهانه‌ای شود برای رشد افراد در زمینه‌های تخصصی. * محصولی که برای این منظور در نظر گرفتیم وب سایتی است که تا حد خوبی نیازهای مشخص شده را حل می‌کند. حال نیازها را به صورت موردی بیان می‌کنیم‌. * نیازهای کیفی عبارتند از: امنیت از لحاظ محرمانگی و خرید پروژه، راحتی کار با سایت، قابلیت هندل کردن تعداد زیاد کاربران و ... * نیازهای عملیاتی عبارتند از: قابلیت ساخت پروفایل، لحاظ کردن قوانینی برای خرید پروژه، قابلیت ساخت صفحه‌ی موضوعی، سوال پرسیدن، دنبال کردن افراد، ثبت رزومه و کارهای تخصصی و جستجو افراد یا پروژه‌ها و ... * اهداف کلی و اهداف جزئی که برای رسیدن به اهداف اصلی که تعریف شده‌اند را مشاهده کردید. در بخش بعدی به بررسی ویژگی‌های محصول می‌پردازیم. ویژگی‌های محصول ---------------- * ابتدا بخش‌های مختلف سایت را توضیح می‌دهیم و در هر بخش قابلیت‌های مربوطه و نیاز‌هایی که توسط آن جواب داده می‌شوند را بیان می‌کنیم. ###صفحه شخصی کاربر * در این صفحه بخشی متعلق به اطلاعات شخصی، میزان تحصیلات، محل تحصیل، علاقه‌مندی‌ها و ... می‌باشد که عکسی ازهر کاربر یا به صورت آواتار یا از سایت های نظیر [Gravatar](http://en.gravatar.com/) و یا عکسی از کامپیوتر شخصی‌شان در بالای اطلاعات قرار می‌گیرد. و در بخشی از آن صفحه پروژه‌هایی که شخصا خود کار کرده و محصولی ایجاد کرده و یا مقاله‌ای نوشته است به صورت موضوعی توسط کاربر گذاشته می‌شود. گزینه‌هایی که از جمله سوال در مورد پروژه، امتیاز دهی، خرید پروژه و ... در زیر آن ظاهر می‌شود که گزینه‌ها به صورت زیر عمل می‌کنند: * "خرید" به این معناست که کاربر می تواند تحت ضوابطی سورس کد و یا مقاله‌ی آن طرف را بخرد. * "سوال" کاربر را به صفحه ای هدایت می کند تا بتواند در آنجا سوال خودش را مطرح کند. * "امتیاز" توسط دیگر کاربران کار ایشان میتواند امتیاز مثبت یا منفی بگیرد. * و در قسمتی از آن سایت گزینه ای تحت عنوان "صفحه ی من" که کارهایی که کاربر انجام داده، سوالاتی که تحت عنوان عمومی‌اش مطرح کرده است با ثبت تاریخ در آنجا آورده می‌شود. * و در گوشه ای از همان صفحه تعداد "تریسرها و تریسینگ ها" آمده و لینکی برای رفتن به صفحه ای که آن شخص می‌تواند سوالات و تغییرات کسانی را که تریس کرده را ببیند. ###صفحه خانگی * با این قضیه که کاربران می‌توانند کارهای همدیگر را با گزینه "تریس" دنبال کنند و نظر دهند آشنا شدیم. در این صفحه این امکان گنجاده شده است که هر کاربر می‌تواند کارهای زیر را انجام دهد. * "پرسیدن سوال" کاربر می‌تواند تحت عنوان کلی سوالی مطرح کند و بقیه می‌توانند زیر آن یا نظر دهند و یا پاسخ را اگر می‌دانند بدهند . * "جستجو" می‌تواند شامل جستجوی افراد و پروژه‌ها باشد. ###صفحه موضوعی * این صفحه توسط کاربران، درباره موضوعی ساخته می شود و عنوان می‌گیرد. حال افراد به آن مراجعه کرده و می‌تواند به سوالاتی که در آن مطرح شده جواب دهد یا آن را تریس کند و یا خود سوالی طرح کند. و دوستان خود را دعوت به دیدن این صفحه کند. مزیت‌های محصول --------------- * با ویژگی های محصول در بخش قبل آشنا شدیم و نوع خدمتی که می‌کرد را شناختیم. حال باید به این سوال جواب دهیم که "چرا افراد بایستی از این سیستم استفاده کنند؟" مسلما اجباری در استفاده از این سایت وجود ندارد و خود مخاطب تشخیص می دهد که می تواند این سیستم برایش مفید باشد تا مقدار زمانی از وقت خود را صرف استفاده از این سیستم کند. محصول ما این امکان را به مخاطب می دهد که خود اطلاعات مربوطه را وارد و مدیریت کند و این یک حس استقلال در آن فرد ایجاد می کند. و دیگر اینکه کاربر می تواند کارهای تخصصی خود را ثبت کند و با توجه به امتیازی که می گیرد صحت آن مشخص شود. این را می تواند به عنوان رزومه به محل کار یا به استاد دانشگاهی که میخواهد اپلای کند نشان دهد و آن شخص و یا استاد با توجه به فعالیت کاربر در سایت بتواند نکاتی را بسنجد و انتخاب خود را انجام دهد . * در جواب سوال بالا می توان به این اشاره کرد که کاربر می تواند ازین پس دارای صفحه ی شخصی باشد که علاوه بر نشان دادن تجربیات علمی میتواند سوالات خود را مطرح کند و جواب خود را بیابد که حتی می تواند توسط دیگران کاربران راهنمایی شوند و لینک هایی از پروژه های افراد دیگر که آنرا انجام داده اند قرار دهند تا آن شخص بتواند به جواب سوالش برسد. * قابلیت دیگری که در بخش قبل از آن سخنی به میان آمد این بود که کاربران می تواند در میان مطالب به جستجو بپردازند و و در جواب به سوالات مطرح شده توسط کاربران و کارهای تخصصی افراد انجام داده اند میرسند که با توجه به امتیاز و میزان مرتبط بودن با واژه‌ی سرچ شده به ترتیب نشان داده می شوند. * چون در این سیستم افراد متخصص باهم ارتباط پیدا می کنند می تواند زمینه ی خوبی برای ایجاد پروژه های مشترک با افرادی باشد که مناسب آن کار بوده و از این طریق پیشرفتی به تجربیات خود دهند و آن را در سایت ما بگذارند و یا این سایت می تواند با فروش سورس کدها درآمد زایی برای کسی باشد که پروژه خود را به نحو احسن انجام داده باشد. * موضوع دیگری که مطرح است مربوط به امنیت سیستم است که کابران با خیال راحت می تواند فعالیت کنند و این موضوع در بخش خود بحث می شود. نمونه‌های مشابه ---------------- * سایت ما به صورت یک شبکه ی اجتماعی عمل می کند مانند [Twitter](https://www.twitter.com)، [Facebook](https://www.facebook.com/) ولی با این تفاوت که محیط به کارهای تخصصی و کامپیوتری اختصاص داده شده است و مانند [LinkedIn](http://www.linkedin.com/) فضایی هست برای نشان دادن مهارت های تخصصی و دادن امتیاز برای نشان دادن صحت آن رزومه ولی با این تفاوت که قابلیت پرسیدن سوال مانند فروم های موجود می باشد. * سایت های زیر مشابه محصول ما هستند ولی آنچه که مد نظر ماست ایجاد سایتی که حداکثر امکانات آکادمیک را دارا باشد. * [Academia](http://www.academia.edu/) * [StackOverFlow](http://stackoverflow.com/) مدیریت پروژه ============ * بی‌شک یکی از موضوعات بسیار مهم در موفقیت یا عدم موفقیت هر پروژه‌ای بحث مدیریت درست و دقیق آن پروژه می‌باشد. این بخش به حدی حساس و حیاتی است که ضعف در آن می‌تواند به شکست کل پروژه و از دست رفتن منابع و کار افراد منجر شود. بنابراین به دلیل اهمیت بالای آن در این بخش به بررسی موارد مدیریتی پروژه می‌پردازیم. متدولوژی توسعه نرم افزار --------------- * با در نظر گرفتن بسیاری از جوانب کار ما و با توجه به زمان‌بندی خاص این پروژه و ارتباطات بین اعضای پروژه در محیط دانشگاه، پس از بحث و بررسی‌های انجام گرفته و مشورت سرگروه تیم با اعضا به این نتیجه رسیدیم که ما در این پروژه نیازمند شیوه خاصی از مدیریت هستیم. مستندات تحلیل و طراحی پروژه و همچنین گزارشات پیاده‌سازی و تست پروژه توسط مدرسین درس خواسته شده و وابسته به متدولوژی و روش خاصی از مدیریت تولید نرم‌افزار نیست. بنابراین ما به سمت متدولوژی `agile` کشیده شدیم که بیشتر مبتنی بر تکرارهای کوتاه مدت می‌باشد و ما نیز نیازمند همین شکل از مدیریت پروژه هستیم چون چهار فاز کار و پیاده‌سازی و تحویل پروژه ما با فاصله سه هفته از هم قرار دارند و ما می‌توانیم با بهره‌مندی از فواید این متدولوژی بهترین شیوه مدیریت را داشته باشیم. از طرفی چون‌که در این درس پروژه عملیاتی و قابل اجرا و عرضه مد‌نظر است بنابراین ما باید بیشتر به پیاده‌سازی و تست محصولمان توجه کنیم تا مستندات جامع و کامل. * این متدولوژی بیشترین کارایی و تطابق را با مسیر ما در تولید و توسعه محصول مد نظرمان دارد؛ پس ما به مفاهیم آن پایبندیم و از شکل نمایش داده شده که راهکار اصلی این متدولوژی را نمایش می‌دهد پیروی می‌کنیم. فازهای توسعه ------------- * این پروژه شامل 5 فاز توسعه می‌باشد. سعی بر آن است که در طی این 5 فاز، محصول به مرور کامل شده و در انتها بتوانیم سایت را به صورت کامل در اختیار کاربران قرار دهیم. ###فاز اول * در این فاز بیشتر کار ما معطوف به پیاده‌سازی ویژگی‌های ابتدایی و لازم برای استفاده از سایت می‌باشد. در واقع ماحصل این فاز نمایش صفحه خانگی و قابلیت‌های ثبت‌نام و ورود به سایت خواهد بود. همچنین سایر ویژگی‌ها به فراخور زمان و توانایی افراد پیاده‌سازی خواهند شد. ###فاز دوم * محصول ما در غالب یک شبکه اجتماعی ارائه خواهد شد. از اولین ویژگی‌های چنین محصولی توانایی تولید محتوا توسط کاربران است. پس از فراغت ما از ویژگی‌های ابتدایی اولین کار ما ایجاد ویژگی‌های افزودن پست و پروژه خواهد بود. همچنین بعضی از ویژگی‌های مدنظر ما از قبیل جستجوی افراد یا پروژه‌ها و سایر ویژگی‌های تکمیلی پروژه در خلال فازهای مختلف تکمیل خواهند شد. ###فاز سوم * ویژگی دیگری که در به ثمر رسیدن یک شبکه اجتماعی موثر است قابلیت دنبال‌کردن فعالیت دیگران می‌باشد. سایت ما این ویژگی را در غالب `Trace` و `Traceback` در اختیار قرار خواهد داد. این ویژگی در فاز سوم دنبال خواهد شد. همچنین نمایش فعالیت دیگران هم در این فاز کلید می‌خورد. ###فاز چهارم * در این فاز ویژگی اصلی محصول ما یعنی نمایش برترین افراد و پروژه‌ها پیاده‌سازی می‌شود. لازم به ذکر است که این ویژگی نیازمند به قابلیت رتبه‌دهی به پروژه‌ها خواهد بود؛ پس این ویژگی قبل از نمایش برترین‌ها پیاده‌سازی خواهد شد. همچنین قابلیت نظردادن برای پست‌ها و پروژه‌ها نیز دنبال خواهد شد. ###فاز پنجم * اهم فعالیت ما در آخرین فاز کامل کردن سایت و رسیدن به محصول آماده ارائه است. در این راستا ویرایش و حذف قابلیت‌های قبلی مانند افزودن پروژه و پست و ... پیاده‌سازی خواهند شد. همچنین ایجاد لیست‌های پیشنهاد افراد و پروژه‌ها نیز در دستور کار قرار دارند. در انتهای این فاز محصول تقریبا کاملی که بتوان آن را عملیاتی کرد مدنظر خواهد بود. تخمین زمان و نیروی لازم -------------------- * زمان نیازی به تخمین ندارد چونکه تمامی فازها دارای زمانبندی مشخص و دقیقی می‌باشند. * تخمین ما از نیروی لازم داشتن یک نفر به منظور تهیه مستندات لازم، دو نفر به منظور انجام تست‌های محصول و 3 تا 5 نفر توسعه دهنده برای بخش‌های مختلف است. تکنولوژی‌ها ============== * در این بخش به تکنولوژی‌های استفاده شده در پروژه می‌پردازیم که شامل معماری استفاده شده در پروژه و ابزارها و چارچوب و زبان برنامه‌نویسی و پایگاه داده‌ها می‌شود. معماری نرم‌افزار ----------------- * اتفاقی که در یک `web application` دائما در حال رخ دادن است در ۳ بخش خلاصه می‌شود: * کاربر درخواست خود را به سرور ارسال می‌کند. * سرور معمولا با توجه به نوع درخواست کاربر به `database` وصل می‌شود و دنبال چیزی میگردد یا چیزی را تغییر می‌دهد (می‌تواند این مرحله اتفاق نیافتد). * سرور پس از انجام کارهای لازم نتیجه را در قالب یک صفحه به کاربر نشان می‌دهد.به این صفحه ساخته شده توسط سرور معمولا `template` گفته می‌شود. * اگر دقت کنیم می بینیم که بهترین معماری برای انجام این کارها `MVC` است. ابزارها و چارچوب‌ها ------------------- ###ابزارها * `JQuery`: این کتابخانه که به طور کامل با `JavaScript` نوشته شده است و بسیار کم حجم و سریع و قدرتمند است. دارای توابع خود برای بکارگیری `AJAX` می‌باشد که کار را برای برنامه نویس بسیار راحت‌تر می‌کند. علاوه بر این موارد می‌توان به قدرت آن در بوجود آوردن انیمیشن `(animation)` درقسمت‌های مختلف سایت اشاره کرد. بطور مثال محو شدن یک فرم و نمایش فرم دیگر و یا حرکت کشویی یک قسمت به بیرون و یا به سمت داخل. در حالت کلی میتوان گفت `JQuery` باعث بهبود تعامل کاربر با سایت خواهد شد. چند مورد از سایت هایی که با این ابزار ساخته شده اند: * [meetinnov](http://www.meetinnov.com) * [studiostylistik](http://www.studiostylistik.ca) * `AJAX`: این تکنولوژی باعث سریع‌تر شدن کار با سایت خواهد شد. با استفاده از آن هم کاربر و هم سرور زمان کمتری را تلف خواهند کرد و پهنای باند کمتری مصرف می‌شود. سایت‌های که با این تکنولوژی ساخته شده‌اند معمولا خیلی روان به نظر می‌رسند برخی از معروف‌ترین آن‌ها که با آن‌ها سر و کار داریم می‌توان به موارد زیر اشاره کرد: * [facebook](http://facebook.com) * [google](http://google.com) * [youtube](http://youtube.com) ###چارچوب‌ها * از چارچوب `django` برای انجام پروژه استفاده می کنیم. پایگاه‌داده‌ها و زبان برنامه‌نویسی --------------------------------- ###پایگاه‌داده‌ها * از پایگاه داده رابطه‌ای استفاده می کنیم. ###زبان برنامه‌نویسی * از زبان برنامه نویسی `python` استفاده می کنیم. تضمین کیفیت =========== * تضمین کیفیت نرم افزار بیانگر روش‌های اطلاع از کیفیت و کارایی محصول نهایی است. البته باید توجه کرد که اعلام رضایتمندی مشتری از محصول نهایی وابسته به فرایند تضمین کیفیت مناسب است. برای اینکه رضایت مشتری در حداکثر سطح خود باشد، محصول نهایی باید با امکانات و نیازهای تعریف شده توسط مشتری مطابقت داشته باشد. محصول نهایی ارائه شده توسط گروه ما، این اطمینان را ایجاد می‌کند که تمام امکانات و نیازهای مشخص شده به بهترین وجه ممکن طراحی و پیاده سازی شده اند و همین گونه نیز خواهد بود. * به منظور ایجاد اطمینان بیشتر علاوه بر پیاده سازی امکانات تعریف شده و رفع نیازهای اولیه، به دو موضوع امنیت و آزمون نرم افزار نیز توجه خواهد شد. امنیت ------ * در بحث امنیت به دو موضوع پایداری نرم افزار و محرمانگی داده ها پرداخته می‌شود. ###پایداری * پایداری نرم افزار به این معنی است که نرم افزار به دفعات متعدد با شکست مواجه نشود. اگر محصول نهایی به دفعات متعدد با شکست مواجه شود قابلیت اطمینان آن از بین می‌رود. با توجه به اینکه تمام شکست‌های نرم افزاری به مرحله طراحی و پیاده سازی مرتبط است، سعی گروه `exprolife` بر این است که تمام ماژول‌های نرم افزار و بخش‌های مختلف آن به گونه‌ای طراحی و پیاده سازی شوند که میزان مواجه با شکست در محصول نهایی به هنگام اجرا به حداقل تعداد خود برسد و یا حتی به طور کامل از بین برود. ###محرمانگی * با توجه به اینکه اطلاعات قرار گرفته در سایت (پروژه گروه) برای کاربران و استفاده کنندگان بسیار حساس و حیاتی است، این اطلاعات در پایگاه داده به گونه‌ای ذخیره می‌شوند که هیچ کس به جز کاربران مجاز، اجازه دسترسی به این اطلاعات را ندارد. این اطلاعات شامل رمز عبور کاربران و همچنین اطلاعات تماس (با توجه به تنظیمات خود کاربر) است. اطلاعات محرمانه با استفاده از الگوریتم‌های رمزنگاری در پایگاه داده ذخیره می‌شوند. آزمون --------- * با توجه به اینکه پروژه تعریف شده تحت وب می‌باشد و به وسیله مرورگر قابل استفاده خواهد بود، توسط انواع مرورگرها در پلتفرم‌های مختلف تست خواهد شد. در مرحله طراحی و پیاده سازی، اجرای تست مرورگر و دیگر تست‌ها به روند کلی پروژه کمک شایانی خواهد کرد. این تست‌ها باعث می‌شوند که قابلیت اطمینان و پایداری نرم افزار افزایش یابد. نحوه گسترش ========== آینده محصول ------------- * همگام با گسترش محبوبیت و تقاضا برای پیوستن به این سیستم برای اشتراک گذاری تجربیات و پیوستن به مجموعه ای واحد جهت تبادل اطلاعات تخصصی ، نیاز ها و محدوده کاری این محصول نیز بر اساس تنوع و تراکم کاربران دستخوش تغییر خواهد شد لذا باید پاسخگوی درخواست های تمام اقشار بود . ازین رو در راستای گسترش محدوده کاری و افزایش راحتی کاربران و جذب متقاضی بیشتر ، از نسخه های مختلف نرم افزاری اعم از `Windows application` ، `Andriod` ، `Ios` و `...` استفاده خواهد شد تا طیف وسیع تری از کاربران را در اختیار گیرد و هم چنین سعی بر آنست تا زمینه ی کاری نیز گسترش یابد به نحوی که کاربران تمامی رشته ها بتوانند از تجربیات یکدیگر استفاده کنند. راه‌های معرفی محصول ------------------- * نخستین گام معرفی محصول به دانشجویان و به خصوص اساتید دانشگاه ها از طریق ایجاد همایش های مختلف در سطح دانشگاه ها می باشد ، زیرا آنها در صورت متقاعد شدن براحتی قادر به معرفی طیف وسیعی از افراد می باشند . * گام بعدی نوبت به معرفی محصول در سطح وب می باشد که این مهم از طرق مختلفی از قبیل تبلیغات در سایت های مختلف، ایجاد لینک در سایت های پر بازدید ، شناساندن لینک به موتورهای جستجو و ... انجام خواهد گرفت. * گام دیگر تبلیغات در داخل سایت می باشد به نحوی که قابلیت های سایت را به کاربران معرفی کند تا بتوانند از تمامی امکانات سایت به نحو احسن استفاده کنند * در آخر به گونه ای کاربران تشویق خواهند شد تا افراد بیشتری را معرفی کنند و با کاربران بیشتری در ارتباط باشند تا در رتبه و سطح بهتری برای کار در سایت قرار گیرند و دسترسی های بیشتری را داشته باشند.