نرم‌افزار

نرم‌افزار (به انگلیسی: Software) یا برنامه، مجموعه‌ای از دستورالعمل‌های دقیق و مرحله به مرحله است که هدف خاصی را دنبال می‌کنند.

ظاهراً، اولین بار جان توکی در سال ۱۹۵۸ این واژه را به‌این معنا به‌کار برده‌است. احتمالاً این واژه در مقابل سخت‌افزار (به انگلیسی: Hardware) به کار برده‌اند که بسیار پیش از پیدایش رایانه (به معنای اسباب و اشیاء) به‌کار می‌رفته‌است.







دو گروه کلی نرم‌افزارها

نرم‌افزارهای رایانه را می‌توان به دو دسته بزرگ تقسیم کرد:

نرم‌افزار سیستم (به انگلیسی: System software)
نرم‌افزار کاربردی (به انگلیسی: Application software)

می‌توان گفت نرم‌افزارهای کاربردی، برنامه‌های مورد استفاده کاربرند و نرم‌افزارهای سیستمی، مدیریت رایانه را برعهده دارند. مهم‌ترین نرم‌افزار سیستم، سیستم‌عامل است.






سیستم عامل

وقتی برنامه‌ای را روی رایانه خود نصب می‌کنید، اجزای سخت‌افزاری آن به فرمان آن برنامه در می‌آیند. برای نمونه هنگامی که با یک برنامه اجرای موسیقی کار می‌کنید، کارت صدای رایانه تان با برنامه پخش موسیقی همکاری می‌کند و یک آهنگ یا پرونده (فایل) صوتی را از طریق بلندگوی رایانه تان پخش می‌کند.

این ارتباط میان نرم‌افزار و سخت‌افزار توسط سیستم عامل انجام می‌شود. این تنها قسمتی از کار سیستم عامل است.
سیستم عامل خود یک برنامه نرم افزاری است با این تفاوت که چون تمام منابع و امکانات سخت افزاری در اختیار وی می باشد دارای ویژگی منحصر به فرد می باشد بنابراین آن را در رده نرم افزارها می خوانیم با این ویژگی که از اهمیت خاصی برخوردار است. به بیان دیگر سیستم عامل یک برنامه جامع است که اجازه در اختیار قراردادن منابع و امکانات سخت افزاری را برای نرم افزارها صادر می کند و این سیستم عامل است که مسئول صحت عملکرد سیستم و منابع آن است.
سیستم عامل شامل 4 بخش مهم است
1- مدیریت پردازش و پردازشگر
2- مدیریت حافظه
3- مدیریت دستگاههای ورودی و خروجی (I/O)
4- مدیریت فایل
سه گروه کلی نرم‌افزارهای معماری

از دیدگاه ساختاری (معماری) (architecture)، نرم‌افزارها به دسته‌های زیر تقسیم می‌شوند:

کاربر-بنیان یا Client Base
کارگزار-بنیان یا Server Base
کاربر کارگزار بنیان یا Client-Server Base

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






رقابت نرم‌افزاری

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






نرم‌افزار سیستم

نرم‌افزار سیستم به نرم‌افزاری در رایانه گفته می‌شود که به کارکرد سیستم رایانه یا کاربردهای سطح پایین (یا Low Level) رایانه مربوط باشد. این نرم‌افزارها به ساختار فیزیکی سخت‌افزار رایانه وابسته هستند و در نوشتن آن‌ها از زبان‌های سطح پائین مانند زبان اسمبلی استفاده می‌شود. سیستم‌عامل و درایورها از نرم‌افزارهای سیستم هستند. از جمله زبان هایی که برای نگارش نرم‌افزارهای سیستمی استفاده می‌شود، زبان برنامه نویسی C می‌باشد. کار کردن با سی برای برنامه نویسان راحت تر است و آنان این زبان را به اسمبلی ترجیح می‌دهند. اگر برای نگارش نرم‌افزار سیستمی مشکل محدودیت فضای سخت‌افزاری داشته باشیم بهتر است با زبان اسمبلی کار کنیم که حجم آن پایین تر است. نرم‌افزارهای سیستمی به سخت‌افزار وابسته اند.

در برابر نرم‌افزار سیستم، نرم‌افزار کاربردی قرار دارد که برای کاربردهای سطح بالا و غیرسیستمی رایانه است و معمولاً به زبان‌های سطح بالا نوشته می‌شود که از جزئیات سخت‌افزاری سیستم مستقل است.







نرم‌افزار کاربردی

نرم‌افزار کاربردی (به انگلیسی: Application software) عبارت است از نرم‌افزاری که با استفادهٔ مستقیم از منابع و قابلیت‌های رایانه کاری را مستقیماً برای کاربر انجام می‌دهد. باید توجه داشت که این عبارت در مقابل عبارت نرم‌افزار سیستمی معنی پیدا می‌کند.

نرم‌افزار سیستمی در مقابل در پس‌زمینه عمل می‌کند و خدماتی را فراهم می‌کند که دیگر نرم‌افزارها و یا سیستم‌عامل می‌توانند برای انجام کارهای خود از آن استفاده کنند. اما در عوض معمولاً مستقیماً با کاربر عادی در تماس نیست و خدماتی را به او ارایه نمی‌دهد.

در عمل بیشتر نرم‌افزارهایی که کاربران با آن‌ها سر و کار دارند از این دسته محسوب می‌شوند. برای مثال می‌توان به نرم‌افزارهای رومیزی یعنی واژه‌پردازها، صفحه گسترده‌ها، نرم‌افزارهای طراحی گرافیکی، بازی‌های رایانه‌ای و امثال آن‌ها اشاره کرد.

بسیاری نرم‌افزارهای کاربردی، برای توسعه‌دهندگان ابزار رابط برنامه‌نویسی کاربردی هم فراهم می‌کنند تا بتوان از قابلیت‌های نرم‌افزار در نرم‌افزارهای جدید استفاده کرد. برای مثال نرم‌افزار ادوبی آکروبات هنگام نصب ای‌پی‌آی فراهم می‌کند که برنامه‌نویس می‌تواند با استفاده از آن توانایی‌های آکروبات را در برنامهٔ خود به کار گیرد.

برای عنوان نمونه‌های دیگر می‌توان به نرم‌افزارهای پردازش متن، برگه‌های گسترده (صفحات گسترده) و نرم‌افزارهای پخش نوا و نما اشاره کرد.







نرم‌افزار فروشگاه اینترنتی

نرم افزار فروشگاه اینترنتی نوعی نرم افزارتجارت الکترونیکی بر پایه وب است که به عرضه کنندگان یا فروشنده کالا ها و خدمات این امکان را می‌دهد تا محصول ها و خدمات خود را از طریق شبکه جهانی اینترنت به سراسر دنیا معرفی کرده و بازاری جهانی برای تجارت خود ایجاد کنند، همچنین این نوع خرید و فروش امکان مقایسه و خرید کالا‌ها و سرویس‌های مورد نیاز را مستقیما از طریق فروشگاه های اینترنتی موجود در سرتا سر جهان بدون محدودیت زمانی و جغرافیایی به مشتریان می‌دهد.

برای ایجاد چنین محیطی در اینترنت نیاز به ابزاری است تا به وسیلهٔ آن بتوان یک فروشگاه اینترنتی راه اندازی کرد. این ابزار اغلب با نام نرم افزار فروشگاه اینترنتی (فروشگاه ساز) شناخته می‌شود. در واقع این یک نرم افزار با قابلیت های فروشگاهی است که بر روی بستر وب پیاده میگردد.

نرم افزار فروشگاه اینترنتی برای فروشندگان و تولیدکنندگان این امکان را مهیا می‌سازد که کالاها و خدمات خود را به صورت مستقیم برروی شبکه جهانی اینترنت عرضه کنند تا مردم بتوانند با اتصال به نام دامنه فروشگاه اطلاعات کامل کالاها و خدمات را مشاهده کرده و آنها را به صورت آنلاین سفارش دهند. فروشگاه اینترنتی یا آنلاین معمولا مانند یک سبد خرید مجازی عمل می‌کنند و در برخی مواقع با این نام نیز شناخته می‌شوند و به مشتریان این امکان را می‌دهد تا فهرستی از کالاهای مورد نیاز خود برای خرید را انتخاب کرده، به سبد خرید مجازی خود اضافه کنند که معمولا این عمل را با استفاده از گزینه ی« اضافه کردن محصول به سبد » انجام می‌دهند. سپس نرم افزار لیست تهیه شده توسط مشتری را بررسی و امکان انتخاب نحوه پرداخت مبلغ سفارش و انتخاب نحوه حمل و نقل سفارش را مهیا می‌کند. سپس هزینهٔ کلی سفارش اعم از مبلغ قابل پرداخت برای هر محصول و هزینهٔ بسته بندی و ارسال را محاسبه و برآورد می‌کند و سفارش به طور کامل جهت رسیدگی توسط فروشنده ثبت می‌گردد. موجود بودن کالا، ثبت سفارش اولیه، تائید سفارش، تعیین نحوه دریافت کالا و تائید دریافت نهایی کالا معمولاً در همین نرم افزار انجام می پذیرد. این نرم افزار حکم یک واسط کاربری در اینترنت با فروشندگان را دارد که قابلیت های سیستماتیک فراوانی نیز دارد. معمولاً این نرم افزارها سیستم های مالی، سفارش کالا، موجودی انبار و سیستمهای پرداخت آنلاین را هم پشتیبانی میکنند و تمامی قابلیت ها را در یکجا فراهم میکنند.






تاریخچه و واژگان

پس از پیدایش اینترنت (World Wide Web)، آن به یک رسانهٔ جمعی تبدیل شد و سیستم های خرید اینترنتی ایجاد و توسعه یافتند. این نوآوری نتیجهٔ راه اندازی مرورگر Mosaic در سال ۱۹۹۳ و Netscape در سال ۱۹۹۴ بود. این سیستم محیطی را به وجود آورد که در آن ایجاد فروشگاه‌های تحت وب (فروشگاه اینترنتی ) ممکن بود. بنابراین اینترنت و WWW به عنوان ابزارهای زیرساختی و کلیدی به انتشار و توسعه سریع تجارت الکتریکی کمک کردند. تجارت الکترنیکی (به عنوان زیر مجموعه‌ای از E-BUSINESS) به تمامی سیستم های کامپیوتری اتلاق می‌شود که از معاملات دادوستدی حمایت و پشتیبانی می‌کنند. در سال ۱۹۹۸ به طور عمومی ۱۱مدل تجارت الکتریکی وجود داشت که یکی از آنها مدل تجارتی(B2C business to customer) E-SHOP یا همان فروشگاه اینترتی بود که فروشگاه آنلاین(ONLINE SHOPPING) نیز نامیده می‌شد.

دو واژهٔ E-SHOP و ONLINE SHOP مترادف هم هستند. واژهٔ خرید آنلاین خیلی قبل تر در سال ۱۹۹۴ اختراع شده بود(به عنوان مثال برای سیستم‌های تلویزیونی). امروزه این واژه در مورد مدل B2C از تجارت الکترونیکی بکار می‌رود. برای اینکه خرید اینترنی ممکن شود، به یک سیستم نرم افزاری نیاز است. به منظور ایجاد امکان خرید آنلاین برای تمامی مشتریان، فروشگاههای اینترنتی بر پایه www تکامل یافتند. برای این مدل از سیستم‌های خرید اینترنتی کلمهٔ اختصاری (web shop) استفاده می‌شود. هیچ واژهٔ یکنواخت و ثابتی برای این مدل از سیستم تجارت الکترونیکی بوجود نیامده مثلا در مناطقی که به زبان آلمانی حرف می‌زنند واژگانی مانند web shop) software) و یا ((online shop software مورد استفاده قرار می‌گیرد ویا در آمریکا واژهٔ (shopping cart software) ایجاد شده و مورد استفاده قرار می‌گیرد.






مدل توسعه نرم افزار فروشگاه اینترنتی

نرم افزارهای فروشگاه اینترنتی به دو صورت رایگان(Free Software) و تجاری (Commercial) توسعه داده شده و عرضه می‌شوند:

1- نرم افزار فروشگاه اینترنتی رایگان: مدل توسعه نرم افزار آزاد در زمینه تولید این مدل نرم افزارها نیز مورد استفاده قرار گرفته و مورد قبول جامعه قرار گرفته‌است. در این مدل توسعه جمعی از افراد متخصص و برنامه نویس از نقاط مختلف دنیا برروی یک نرم افزار کدبار (Open Source) مشارکت کرده و نهایتا در قالب یک لایسنس آزاد نرم افزار را جهت استفاده تمامی افراد جامعه منتشر می‌کنند. در این مدل توسعه معمولا نرم افزار به صورت رایگان در اختیار تمامی افراد جامعه قرار داده می‌شود و برخی اوقات شرکت‌هایی نیز از جامعه توسعه دهنده نرم افزار حمایت مالی می‌کنند که در این صورت شرکت‌های مذکور از خدمات جانبی در کنار نرم افزار درآمد زایی دارند. مزیت اصلی نرم افزار فروشگاه اینترنتی رایگان این است که می توان آن ها را بروی هر وب سروری که با آن سازگاری دارد نصب و میزبانی کرده و در کمترین زمان ممکن صاحب یک فروشگاه با کمترین هزینه شد. همچنین سورس کدهای نسخهٔ آزاد معمولا برای ویرایش وتغییر ویا سفارشی کردن برنامه در دسترس می‌باشد....

پشتیبانی نرم افزارهای آزاد معمولا از طریق انجمن‌های کاربری و توسعه دهندگان آن نرم افزار ارائه می‌شود ولی در صورتی که بخواهید از یک پشتیبانی حرفه‌ای و تمام وقت بهره مند شوید نیاز خواهد بود که هزینه دریافت خدمات پشتیبانی را پرداخت کنید. لازم به توضیح است که نرم افزارهای رایگان فروشگاه اینترنتی معمولاً به ساده ترین شکل ممکن رایگان هستند و برای توسعه و یا افزایش توانایی های آنها باید مبالغی را پرداخت نمود و یا اینکه از متخصصین نرم افزار برای توسعه آنها بهره جست.

۲- نرم افزار فروشگاه اینترنتی تجاری(غیر رایگان): این مدل نیز امروزه در خیلی از مراکز نرم افزاری پرکاربرد، توسط شرکت‌های مختلف عرضه می شود. شرکت‌های مختلف تولید کننده نرم افزارهای تحت وب با تشکیل تیم‌های برنامه نویسی و سرمایه گذاری در این زمینه، نرم افزار با امکانات گسترده تولید و به بازار عرضه می‌کنند که معمولا تحت لایسنس آن شرکت می‌باشند. برای استفاده از این مدل نرم افزارها بایستی در ابتدا هزینه تهیه نرم افزار و قرارداد اولیه را پرداخت نمود ولی با پرداخت این هزینه مطمئن خواهید بود که از یک نرم افزار حرفه‌ای با خدمات پشتیبانی قابل اعتماد بهره می‌برید. البته شرکت‌های مختلف در این زمینه امکانات نرم افزار و خدمات متنوعی ارائه می‌کنند که معمولا فروشندگان و تولید کنندگان در زمان انتخاب نرم افزار فروشگاه اینترنتی گزینه‌های بیشتری جهت بررسی و انتخاب خواهند داشت.






مشخصات فنی

برای توسعه نرم افزار فروشگاه اینترنتی معمولا از زبان های برنامه نویسی سمت سرور نظیر PHP و ASP.net و همچنین یک سیستم پایگاه داده جهت نگهداری اطلاعات محصول ها، مشتریان و سفارشات به عنوان مثال MySQL یا MS SQL Server بهره گرفته می شود. در نرم افزارهای فروشگاه اینترنتی مدرن جهت تعامل بهتر با مشتریان و مدیریت فروشگاه از زبانهای برنامه نویسی سمت کلاینت نظیر جاوااسکریپت و کتابخانه های مبتنی بر آن نظیر Jquery و Prototype استفاده می شود. در این نرم افزارها تمامی اطلاعات محصول ها توسط مدیریت فروشگاه در دیتابیس مرکزی فروشگاه برروی سرور اینترنتی ذخیره و نگهداری می شود که مشتریان می توانند با مراجعه به آدرس اینترنتی فروشگاه اطلاعات ذخیره شده در دیتابیس آن را مشاهده کرده و برخی اوقات نسبت به مقایسه اطلاعات محصول ها اقدام کنند. با توجه به حجم اطلاعات نگهداری شده در دیتابیس معمولا از تکنیک های مختلفی جهت افزایش امنیت و بهینگی کدها استفاده می گردد. موضوع مهمی که در این قضیه مطرح است صحت داده های فروشگاه و امنیت بالای ذخیره سازی اطلاعات می باشد تا تراکنش های آنلاین در محیط امنی ذخیره و نگهداری گردند.

در نرم افزارهای فروشگاه اینترنتی عموما با اتصال به درگاه های بانکی مختلف امکان پرداخت مبلغ سفارشات به مشتریان داده می شود. از جمله درگاه های بین المللی می توان به PayPal و 2Checkout و Google Checkout اشاره نمود که وظیفه این درگاه ها دریافت اطلاعات بانکی مشتریان، بررسی صحت اطلاعات و انجام تراکنش انتقال وجه از حساب مشتری به حساب فروشنده می باشد. درگاه های بین المللی به طور عمومی در داخل ایران قابل استفاده نمی باشند و این درگاه های اطلاعات شبکه بانکی ایران را نمی پذیرند. به همین دلیل در داخل ایران درگاه های مختلفی که قادر به پردازش اطلاعات بانکی مشتریان شبکه بانکی ایران می باشند بوجود آمده اند که این درگاه ها با اتصال به شبکه شتاب (شبکه تبادل اطلاعات بانکی) قادر به انجام تراکنش از حساب مشتریان به حساب فروشندگان می باشند. از جمله درگاه های داخل کشور می تواند به درگاه پرداخت امن پاسارگاد، درگاه بانک سامان، درگاه بانک ملت و درگاه بانک پارسیان اشاره نمود.

مشتریان با مراجعه به فروشگاه های اینترنتی اطلاعات محصول های داخل فروشگاه را مشاهده کرده و محصول های موردنظر خود را به سبد خرید مجازی خود اضافه می کنند که با این کار معمولا اطلاعات سبد خرید در سمت سرور با استفاده از SESSION ها ذخیره و نگهداری می گردد. بعد از تکمیل مراحل خرید و انجام تراکنش موفق بانکی اطلاعات SESSION به اطلاعات قابل ذخیره برروی دیتابیس فروشگاه تبدیل شده و کلیه اطلاعات مربوط به سفارش و مشتری جهت بررسی توسط فروشنده ذخیره و نگهداری می شود. مشتری قبل از ثبت نهایی سفارش می تواند سبد خرید خود را خالی کند که در این صورت فقط اطلاعات از SESSION آن مشتری حذف می گردد.

برخی نرم افزارهای فروشگاه اینترنتی اجازه تشکیل سبد خرید مجازی را نداده و فقط امکان ثبت یک محصول در هر سفارش را دارند که در این صورت فقط مبلغ آن محصول در درگاه بانکی پرداخت می گردد (به عنوان مثال نرم افزار فروشگاه ساز رایگان PayPal). نرم افزار فروشگاه اینترنتی به عناوین دیگری نظیر نرم افزار تجارت الکترونیک، نرم افزار فروشگاه الکترونیکی، نرم افزار فروشگاه آنلاین و یا فروشگاه ساز (به طور عمومی) شناخته شده است.
راهنمای انتخاب نرم افزار فروشگاه اینترنتی

برای راه اندازی فروشگاه اینترنتی به یک فروشگاه ساز مناسب احتیاج دارید. اسکریپت های زیادی برای تاسیس فروشگاه وجود دارند. یک فروشگاه ساز مناسب و پرقدرت باید عوامل متعددی را پشتیبانی کند.

یکی از مهمترین قابلیت های یک فروشگاه ساز اینترنتی، کاربر پسند بودن آن است. یک فروشگاه ساز باید برای استفاده کاربران مبتدی آسان باشد. قسمت مدیریت فروشگاه باید دارای طرح بندی و اینترفیس مناسب برای سهولت در استفاده باشد همچنین قسمت کاربران (مشتریان فروشگاه) باید به اندازه کافی برای سفارش و خرید راحت باشد. برای این منظور اسکریپت فروشگاه سازی را انتخاب نمایید که اینترفیس مناسبی داشته باشد.

یکی از عوامل مهم دیگر امکانات و قابلیت انعطاف پذیری و گسترش فروشگاه است. یک سیستم شاپ ساز مناسب سیستمی است که امکانات کاملی برای مدیریت فروشگاه داشته و قابلیت افزایش امکانات آن بدون نیاز به باز نویسی اسکریپت فروشگاه وجود داشته باشد. برای این منظور سیستم شاپ سازی را انتخاب نمایید که ماژول پذیر بوده و بدون نیاز به از نو نویسی قابل گسترش باشد.

عامل مهم دیگر سرعت اسکریپت فروشگاه ساز می باشد. فروشگاه شما باید با سرعت مناسب نمایش داده شود و کاربران منتظر لود شدن صفحات نمانند. برای این منظور نرم افزار فروشگاه سازی را انتخاب نمایید که قابلیت لود سریع داشته و از آخرین نسخه بانک اطلاعاتی استفاده نمایید و همچنین حتما سیستم cache برای تصاویر و صفحات داشته باشد تا ضمن بهبود به سرعت لود، منابع کمتری از سرور هاست شما را استفاده نماید.

نکته بعدی داشتن امکانات بومی است. اسکریپت های خارجی بسیاری برای برپایی شاپ های آنلاین وجود دارد اما نکته مهم آن است که یک فروشگاه ایرانی باید قابلیت های بومی را داشته باشد. زبان فروشگاه فارسی باشد، امکان پشتیبانی از بانک های کشور و پرداخت آنلاین بانک ها را داشته باشد، از سیستم های خرید پستی پشتیبانی کند، از روش های پرداخت مرسوم در کشور پشتیبانی کند.

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

عامل مهم دیگر امکانات آماده جانبی است. هرچه امکانات جانبی فروشگاه بیشتر باشد فروشگاه بهتری خواهید داشت. امکاناتی از قبیل پشتیبانی آنلاین، امکان ارسال پیامک (SMS) برای مشتریان و پیگیری سفارشات در مراحل مختلف توسط SMS و ایمیل، امکان تعریف آپشن های جداگانه برای کالاها، خروجی RSS و اکسل و امکاناتی از این قبیل.

مورد بعدی سئو می باشد. فروشگاه با SEO قدرتمند باعث بالا آمدن در رتبه گوگل و خرید بیشتر خواهد بود. از فروشگاه سازی استفاده نمایید که موارد SEO را رعایت نموده و امکانات سئو مناسب برای کالاها از قبیل درج کلمات کلیدی در متا تگ ها و URL کالا ها و دسته بندی ها داشته باشد.

و اما مهمترین عامل پشتیبانی پس از فروش است! یک فروشگاه هر چقدر هم که مناسب و قوی باشد باز به مشکل برخواهد خود و پشتیبانی پس از فروش عاملی موثر خواهد بود. فروشگاه ساز های رایگان از پشتیبانی بی بهره هستند و در هنگام بروز مشکل خود شما باید دست بکار شده و مشکل را برطرف نمایید. یک فروشگاه ساز مناسب فروشگاه سازی است که پشتیبانی مناسب داشته باشد.







نرم‌افزار موبایل

نرم‌افزار موبایل نرم‌افزاری قابل اجرا برروی گوشی‌های تلفن همراه می‌باشد که معمولاً با حجم کم و در ابعاد صفحه تلفن همراه عرضه می شود.

معمولا این نرم‌افزارها با زبان برنامه‌سازی جاوا نوشته می شوند که بر روی اکثر گوشی‌های تلفن همراه اجرا می‌شوند. ولی تعداد قابل توجهی از این نرم‌افزارها مختص سیستم عامل سیمبین طراحی می شوند و فقط بر روی گوشی هایی که دارای این سیستم عامل می باشند قابل نصب و اجرا هستند.

اخیرا سیستم عامل‌های جدید مانند سیستم عامل اپل موسوم به "آی او اس" که برروی گوشی‌های آیفون نصب می‌باشد و آندروید که سیستم عاملی مبتنی بر لینوکس می‌باشد نیز عرضه شده اند که طراحی نرم‌افزار برای این سیستم عامل‌ها نیز در حال رشد می باشد.

تولید نرم‌افزار تلفن همراه در ایران نیز در حال پیشرفت می‌باشد و بیشتر نرم‌افزارهای فارسی تلفن همراه در بستر جاوا طراحی می شوند تا روی اکثر گوشی‌های تلفن همراه موجود در ایران قابل اجرا باشند






نفخ نرم‌افزار

نفخ نرم‌افزار اصطلاحی است که گرایش برنامه‌های رایانه‌ای جدید را به موارد زیر دربر می‌گیرد:

بجا گذاشتن ردپاهای عظیم هنگام نصب
استفادهٔ اسراف‌گرایانه از منابع سامانه
ارائهٔ امکانات بی‌موردی که کاربران از آنها استفاده نمی‌کنند

این درحالی است که درمقابل نفع کم یا شاید هیچ منفعتی برای کاربر ندارند.

نفخ‌افزار، یا جازن‌افزار، همچنین برای توصیف نرم‌افزارهایی که در هنگام خرید یک رایانه روی آن پیش‌نصب شده‌اند نیز بکار می‌رود. این‌گونه نرم‌افزارها معمولاً نسخه‌های آزمایشی زمان-محدود یا نسخه‌های ابتدایی با حذف بعضی امکانات هستند.






علل

توسعه‌دهندگان نرم‌افزار شاغل بکار در دههٔ ۱۹۷۰ مجبور به سروکله زدن با محدودیت‌های شدید فضای دیسک و حافظه بودند. هر بایت حافظه و هر کلاک سایکل پردازنده بحساب می‌آمد، و تلاشی تحسین برانگیز برای گنجاندن برنامه در منابع موجود در جریان بود. آنان برنامه‌نویسانی متخصص و صرفه‌جو بودند.

امروزه وضعیت برعکس شده، منابع پست انگاشته می‌شوند، سریع کُدزنی و داشتن امکانات خبرساز اولویت کار است، و این تاحدی به پیشرفت فناوری مربوط است. سرعت محاسبه و گنجایش ذخیره‌سازی چندین برابر شده، درحالی‌که هزینهٔ تولید سخت‌افزار هم به همان شدت کاهش یافته (قانون مور را ببینید). علاوه بر آن گسترش استفاده از رایانه در همهٔ لایه‌های بازرگانی و زندگی خانگی، بازار رایانهٔ بسیار بزرگتری نسبت به دههٔ ۱۹۷۰ درست کرده است.

دراین‌میان، استفادهٔ شرکت‌های نرم‌افزاری از توسعه‌دهندگان نرم‌افزار جوان که با آن محدودیت‌های دههٔ ۱۹۷۰ دست و پنجه نرم نکرده‌اند—چراکه آنروز کودکی بیش نبوده یا هنوز به دنیا نیامده بودند—و هدر رفتن چند صد مگابایت از دیسک، گاف چند مگابایتی در حافظه، یا معطل ماندن یک هستهٔ پردازنده چندان هم برایشان دردآور نیست، به تولید و بازاریابی موفق نفخ‌افزارها کمک می‌کند. روش برنامه‌سازی این نسل از برنامه‌نویسان برای پیرهای این کار مانند استیو گیبسون هراس‌انگیز است.






مثال‌ها

آی‌تونز اپل متهم به نفخ‌دار بودن است. دلیل آن تبدیل تدریجی‌اش از یک پخش‌کنندهٔ چندرسانه‌ای به یک سکوی تجارت الکترونیک و تبلیغات است. اد بوت نویسندهٔ سابق پی‌سی ورلد شرکت اپل را به ریاکاری در تبلیغاتش علیه ویندوز متهم کرده‌است.

مایکروسافت ویندوز هم خودش متهم به نفخ‌دار بودن است؛ با اشاره به ویندوز ویستا، اریک تراوت مهندس مایکروسافت می‌گوید «خیلی از مردم در مورد ویندوز به‌عنوان یک سیستم‌عامل بزرگ نفخ‌دار می‌اندیشند، که باید اعتراف کنم تجسم خوبی است... اما در هسته‌اش، کرنل، و اجزایی که آنرا می‌سازند، در حقیقت خیلی ساده و مؤثر است.»

ابزارهای رایت سی‌دی و دی‌وی‌دی مانند نرو برنینگ رام هم متهم به نفخ‌افزار بودن هستند. دلیل آن وجود امکانات زائدی است که برای کاربر معمولی هرگز بکار نمی‌آیند، اما در نصب پیش‌گزیده نصب می‌شوند، یا حتی در حالت کاستوم هم جلوی نصب آنها را نمی‌توان گرفت.

جدا از امکانات زاید، محدودیت‌های زمانی در فرایند تولید نرم‌افزار و مدیریت بی‌فکر، منجر به باقی ماندن و جا خوردن کُدهای قدیمی در ساخت نسخه‌های جدید نرم‌افزارها می‌شود. یک مثال خوب از این مورد، ادوبی اکروبات ریدر است، که در مسیر گسترش پی‌دی‌اف، هر روز رشد کرده و امروزه پروندهٔ نصاب آن بیش از ۳۷ مگابایت حجم دارد؛ در مقابل، بقیهٔ پی‌دی‌اف خوان‌ها بسته‌های نصاب بسیار کوچک‌تری دارند، مانند فاکسیت ریدر که پروندهٔ نصاب آن تنها ۵ مگابایت است.






کرک کردن نرم‌افزار

کِرَک کردن نرم‌افزار یعنی تغییر دادن نرم‌افزار به منظور حذف کردن روش‌های حفاظتی آن نرم‌افزار. از جمله این روش‌های حفاظتی می‌توان به موارد زیر اشاره کرد:

ممانعت از کپی، نسخه نمایشی
آزمایشی
شماره سریال
قفل سخت‌افزار و ...

تا بتوان از آن بر خلاف خواسته ی سازندگان یا روشی که سازندگان در نظر گرفته اند استفاده کرد.

به افرادی که کرک می‌کنند کرکر گفته می‌شود. کرکرها با استفاده از دیباگرها و دیس اسمبلرها برنامه‌ها را کرک می‌کنند. به عنوان مثال در کشور ایران به علت نبود قانون حق کپی یا کپی رایت انبوهی از نرم افزار های کرک شده در دسترس کاربران هستند مانند نرم افزار فتوشاپ که در ایران بسیار ارزان فروخته می‌شود. نرم‌افزار کرک شده دارای اعتباری برای شرکت سازنده آن نمی‌باشد و معمولا قابلیت به روز رسانی را نیز دارا نیست .








فرایند توسعه نرم‌افزار
فرایند تولید نرم‌افزار که با عنوان «چرخهٔ حیات تولید نرم‌افزار» نیز شناخته می‌شود، ساختاری است که روی توسعه و تولید محصولات نرم‌افزاری اعمال می‌شود. عبارت‌های مشابهی چون «چرخهٔ حیات نرم‌افزار» و «فرایند نرم‌افزار» در این رابطه استفاده می‌شود.الگوهای گوناگونی نظیر فرایندهای (خاص) وجود دارند که هر کدام خط مشی مختص (آن فرایندها) برای انجام کارها و فعالیت‌های متنوع در طول فرایندها را مشخص می‌کنند. برخی عنوان می‌کنند که «طرح چرخهٔ حیات» یک عبارت بسیار عمومی بوده و «فرایند تولید نرم‌افزار» عبارت تخصصی‌تر است. برای مثال خیلی از فرایندهای تولید نرم‌افزار ویژه‌ای هستند که خود زیر مجموعه چرخهٔ حیات حلزونی به شمار می‌روند.








فعالیت‌های تولید نرم‌افزار


برنامه‌ریزی (امکان‌سنجی)

از مهمترین کارها در تولید نرم‌افزار استخراج نیازمندی‌ها یا تحلیل نیازمندی‌های آن سامانه است. مشتریان عمومی معمولاً تصور مفهومی، انتزاعی و مبهمی از نتیجه نهایی خواسته‌هایشان دارند و نمی‌دانند به درستی نرم‌افزار مورد نظرشان چه کاری باید انجام دهد. در این مرحله نیازمندی‌های ناتمام، پیچیده و مبهم، و حتی متضاد توسط مهندسان نرم‌افزار ماهر شناسایی می‌شوند. در این برهه تکه نرم‌افزارهای آماده، تجربه‌شده و فعال ممکن است برای پایین آوردن ریسک (و مشکلات) نیازمندی‌ها کمک کنند.نخست نیازمندی‌های عمومی از کاربران جمع‌آوری شده و دامنه توسعه و تولید نرم‌افزار که باید تولید شود شناسایی و تحلیل می‌شود، سپس مستندات بصورت شفاف نوشته می‌شوند. معمولاً به این مستند، مستند دامنه یا محدوده سامانه اطلاق می‌شود.برخی قابلیت‌ها ممکن است در ابتدای پروژه به خاطر مسائل مالی یا نیازمندی‌های غیر شفاف و نامشخص خارج از محدوده پروژه باشند. اگر تولید و توسعه نرم‌افزار برون‌سپاری شود (یعنی به شرکت‌های خارجی محول شود) این مستندات به عنوان مستندات قانونی و حقوقی در نظر گرفته می‌شود؛ بنابراین در صورت اتفاق هرگونه دعوای حقوقی یا ابهام در مورد تعهدات داده‌شده به کاربر، این مسائل قابل شفاف‌سازی خواهد بود.








پیاده‌سازی، آزمون و مستندسازی

پیاده‌سازی آن قسمت از فرایند تولید نرم‌افزار به شمار می‌رود که مهندسان نرم‌افزار در دنیای واقعی تمام کدهای پروژه را می‌نویسند و به قول معروف برنامه‌نویسی می‌کنند.آزمون نرم‌افزار بخش لاینفک و مهم از فرایند تولید نرم‌افزار است. این قسمت از فرایندها کمک می‌کند تا مشکلات سامانه بصورت سریع شناسایی شوند.مستندسازی در تمام مراحل پروژه چون طراحی داخلی نرم‌افزار برای تعیین اهداف سیستم، نگهداری آینده و ارتقاء و بهبود سامانه هرچند پروژه پایان یافته باشد انجام می‌شود. همچنین ممکن است این مستندسازی شامل نوشتن ساختار تکه‌های برنامه ظاهر برنامه کاربردی داخلی و خارجی هم باشند. این مطلب خیلی مهم است که همه چیز پروژه مستندسازی شود.








استقرار و نگهداری سامانه

استقرار و تحویل سامانه پس از اینکه آزمون مناسب را گذراند و برای انتشار، فروش یا هر نوع توزیع برای محیط کار نهایی تأیید شد انجام خواهد شد.آموزش نرم‌افزار و پشتیبانی خیلی مهم است و خیلی از تولیدکنندگان و توسعه‌دهندگان نرم‌افزارها اهمیت آن را درک نمی‌کنند. مهم نیست که چقدر زمان و برنامه‌ریزی توسط تیم تولید و توسعه نرم‌افزار برای ایجاد نرم‌افزار مصرف کرده‌اند اگر در آخر کار کاربری در سازمان نباشد تا از نرم‌افزار استفاده کند. مردم معمولاً در برابر تغییرات مقاومت نشان می‌دهند و از ماجراجویی در محیط ناآشنا اجتناب می‌کنند، برای همین در فاز استقرار این خیلی مهم است کلاس‌های آموزشی برای کاربران جدیدِ نرم‌افزار گذاشته شود.نگهداری و ارتقای نرم‌افزاری برای پوشش، مسائل پوشش داده‌نشده یا نیازمندی‌های تازه‌ای که ممکن است بوجود آیند مدت خیلی زیادی حتی بیشتر از زمان اولیه تولید نرم‌افزار زمان بگیرد. این مرحله ممکن است نیاز باشد تا کدهای برنامه‌نویسی تازه‌ای که در طراحی اصلی برنامه نیز دیده نشده اضافه شود تا مسائل و مشکلات دیده‌نشده حل شوند یا ممکن است کاربر درخواست عملیات اصلی دیگری کند و برنامه‌نویسی‌های تازه‌ای برای برآورده کردن نیازهای جدید انجام گیرد. اگر هزینه کار فاز نگهداری از ۲۵ درصد هزینه فاز قبلی (پیاده‌سازی) بیشتر باشد، این احتمال وجود دارد که کیفیت کلی فاز قبلی خیلی ضعیف بوده باشد. در این صورت مدیران پروژه باید گزینهٔ ایجاد مجدد سامانه (یا بخشی از سامانه) را قبل از اینکه هزینه‌های نگهداری غیر قابل کنترل شود را مطرح کنند.








الگوهای تولید نرم‌افزار

الگو آبشاری

الگو آبشاری فرایندها را به گونه‌ای نشان می‌دهد که کجا تولید کنندگان نرم‌افزار (برنامه‌نویسان) فازهای زیر را به ترتیب انجام دهند:# مشخصات مورد نیاز (تحلیل نیازمندی‌ها)








طراحی نرم‌افزار
پیاده‌سازی و یکپارچه‌سازی
تست نرم‌افزار (یا اعتبارسنجی)
گسترش نرم‌افزار (یا نصب)
نگهداری نرم‌افزاردر سختگیرانه‌ترین حالت آبشاری، بعد از اینکه هر فاز کاملاً پایان پذیرفت، به مرحله بعدی می‌رویم. بازبینی که اجازه ایجاد تغییرات در سامانه را بدهد (که ممکن است شامل تغییرات فرایندهای کنترل رسمی باشد) فقط قبل از رفتن به مرحله بعد امکان‌پذیر است. همچنین بازبینی ممکن است جهت اطمینان از پایان قطعی این فاز (مرحله) بکار گرفته شود. فازی که معیارهای تکمیل آن کامل شده، معمولاً با عنوان دروازه اطلاق می‌شود که نشان می‌دهد پروژه از فاز فعلی به فاز بعدی منتقل شده است. الگو آبشاری از بازبینی و تجدید نظر فازهای قبلی که کامل شده‌اند، جلوگیری می‌کند. این عدم انعطاف‌پذیری مفصل در الگو آبشاری محض، دست مایه انتقاد، پشتیبانی کنندگان الگوهای انعطاف پذیر است.








الگو حلزونی

خصوصیت کلیدی الگو حلزونی مدیریت ریسک در تمام مراحل چرخهٔ تولید نرم‌افزار است. در سال ۱۹۸۸ میلادی بری بوهم به صورت رسمی الگو حلزونی فرایند تولید نرم‌افزار را منتشر کرد، که ترکیبی از بعضی کلیدهای تایید شده متدولوژی الگو آبشاری و نمونه‌سازی سریع است، اما احساس می‌شود الگو ارائه شده تاکید در ناحیه های کلیدی (الگو آبشاری) را با متدهای دیگری همچون بررسی دقیق و تحلیل دائمی ریسک‌ها، سیستم‌های خاص مناسب برای سامانه پیچیده و بزرگ، کوتاه تر کرده است.الگو حلزونی این روش را با چهار نمودار که نشان دهند فعالیت های زیر است، به تصویر می کشد که فرایندها در چند مرحله تکرار انجام می‌شود:# تدوین و فرموله کردن برنامه ریزی خوب است برای شناسایی اهداف سیستم، قسمت های انتخاب شده جهت پیاده سازی برنامه، محدودیت‌های واضح و مشخص پروژه.# تحلیل ریسک و مشکلات سامانه: ارزیابی تحلیلی برنامه های انتخاب شده، جهت مشخص کردن چگونگی شناسایی و از بین بردن ریسک‌ها.

پیاده سازی پروژه: پیاده سازی تولید نرم‌افزار و تایید کارایی سامانه. الگو حلزونی مبتنی بر ریسک، بر اختیارانتخاب گزینه ها و محدودیت‌ها در سفارش‌ها برای پشتیبانی استفاده مجدد نرم‌افزار و اینکه کیفیت نرم‌افزار می‌تواند در ادغام اهداف ویژه در تولید نرم‌افزار کمک می‌کند، تاکید می‌کند.به هر حال الگو حلزونی شرایط محدود کننده زیر را دارا می باشد: # الگو حلزونی تحلیل ریسک‌ها را تاکید می‌کند و بنابراین کاربران باید این تحلیل را قبول کنند و فکری برایش کنند (این مطالب را در نظر داشته باشند). این مسئله نیازمند اعتماد متقابل و همچنین تمایل به هزینه کردن برای رفع ایرادات، در هنگام تولید نرم‌افزار است و این دلیل استفاده شدن این الگو تولید نرم‌افزار پروژه های بزرگ است.
درصورتیکه در هنگام پیاده‌سازی تحلیل ریسک‌ها تاثیر منفی روی سود پروژه زیاد باشد نبایستی از الگو حلزونی استفاده گردد.# تولید و توسعه دهندگان نرم‌افزار بصورت فعال حواسشان به ریسک‌های قابل حل خواهد بود و به دقت آنها را در الگو حلزونی تحلیل می‌کنند.مرحله اول تدوین و فرموله کردن یک برنامه برای رسیدن به اهداف با این محدودیت‌ها، و پس از آن تلاش برای پیدا کردن و حذف تمام خطرات بالقوه (ریسک‌های بالقوه) از طریق تجزیه و تحلیل دقیق و در صورت لزوم، با ساخت نمونه اولیه است. اگر برخی ریسک‌ها قابل حل نبودند در این صورت مشتریان باید تصمیم بگیرند که آیا می‌خواهند انجام پروژه را خاتمه دهند یا از ریسک‌های مورد نظر چشم پوشی کنند و به هر ترتیب ادامه دهند. در نهایت، نتایج ارزیابی شده و طراحی مرحله بعدی آغاز می‌شود.در حالت کلی یک الگو تکاملی است که به صورت مجموعه‌ای از نسخه‌های افزایشی توسعه میابد و همچنین در طی تکرارهای اولیه ممکن است یک الگو کاغذی یا یک نمونه اولیه باشد ولی در طول تکرارهای بعدی هر بار نسخه کامل‌تری از سامانه تولید می‌شود و این الگو به ۳ تا ۶ نواحی کاری تقسیم میشود.








روش تکرارشونده و افزایشی

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








روش توسعه سریع نرم‌افزار

روش توسعه سریع نرم‌افزار (به انگلیسی: Rapid application development)(مخفف انگلیسی: RAD) روش تکراری را بعنوان پایه کار استفاده می‌کند اما طرفداری نظریه سبک‌تر و محبوبیت بیشتر از روش سنتی است. روش سریع از بازخوردها به جای برنامه‌ریزی بعنوان سازوکار اصلی کنترل پروژه استفاده می‌کند. بازخوردها بوسیله آزمون‌های مرتب و انتشار پیاپی در بازه‌های زمانی کوتاه نرم‌افزارهای در حال تکامل تولید می‌شوند.روش‌های گوناگونی از فرایند سریع برای تولید نرم‌افزار استفاه می‌شود:








روش برنامه‌سازی مفرط


تولید نرم‌افزار به روش برنامه‌سازی مفرط (به انگلیسی: Extreme programming)(مخفف انگلیسی: XP) در فازهای خیلی کوچک (یا مداوم) انجام و با فرایندهای دسته‌ای قدیمی‌تر تطبیق داده می‌شوند. فاز اول (که عمداً کامل نشده) در طول مراحل ممکن است به جای اینکه ماه‌ها و سال‌ها در روش آبشاری طول بکشد تا کامل شود، یک روز یا یک هفته وقت بگیرد. ابتدا یک آزمون خودکار برای ایجاد اهداف اساسی تولید نرم‌افزار نوشته می‌شود. سپس (توسط دو برنامه‌نویس) برنامه‌نویسی انجام می‌گیرد که وقتی تمام آزمون‌ها را پشت سر گذاشته و دیگر هیچ آزمون مورد نیازی به ذهن برنامه‌نویسان نرسد کامل می‌شود. کار طراحی و معماری سیستم بعد از اینکه نه آزمونی وجود دارد و نه برنامه‌نویسی‌شده انجام می‌شود.طراحی توسط برنامه‌نویسان انجام می‌شود. (فقط مشخصات نهایی و ترکیب طراحی و کد در تمام فرایندها در روش سریع مشترک هستند) عملیات اصلی ناقص سامانه (توسط دست کم یکی از افراد گروه تولیدکننده و برنامه‌نویس) برای کاربران (یا برخی از کاربران) نصب یا نمایش داده می‌شوند. در اینجا تمام عوامل پروژه دوباره شروع به نوشتن آزمون برای قسمت‌های مهم سامانه خواهند کرد.
12:44 pm
حقوق مدنی
حقوق مدنی مهم‌ترین شاخه حقوق خصوصی است که به بررسی و تنظیم روابط افراد جامعه با یکدیگر صرف نظر از عنوان و موقعیت اجتماعی آن‌ها می‌پردازد.






پیشینه

حقوق مدنی در انگلیسی سیویل لا (Civil law) و در فرانسه دغوا سیویل (Droit civil) نامیده می‌شود که از واژهٔ لاتین ژوس سیویله (jus civile) گرفته شده‌اند که در امپراتوری روم به حقوق حاکم بر روابط شهروندان جامعهٔ روم اطلاق می‌شد و در مقابل حقوق بشر به کار می‌رفت که ناظر بر قواعد عمومی حاکم بر روابط رعایای دولت روم با یکدیگر و با شهروندان بود.

در قرون وسطی حقوق مدنی در مدارس و دانشگاه‌های اروپا به معنی حقوق رم و در مقابل حقوق مسیحی به کار می‌رفت.

رفته رفته با اهمّیّت پیدا کردن دوباره حقوق عمومی به ویژه پس از انقلاب کبیر فرانسه (۱۷۸۹) این اصطلاح در معنای حقوق خصوصی (روابط افراد با یکدیگر) به کار رفت و در تقابل با حقوق عمومی (روابط افراد با دولت) به کار رفت.

قانون مدنی فرانسه در سال ۱۸۰۴ میلادی پایان یافت و در سال ۱۸۰۷ رسما به عنوان «کد ناپلئون» نامگذاری شد. این قانون اساس حقوق مدنی در کشورهای پیرو حقوق نوشته امروز است و بیشتر قوانین مدنی دنیا تحت تاثیر «کد ناپلئون» تنظیم شده‌اند.

به تدریج با تحولاتی که در زندگی مردم پدید آمد مصالح عموم ایجاب می‌کرد برای برخی از روابط اجتماعی قواعد ویژه‌ای وضع شود و به این ترتیب شاخه‌های مختلف حقوق خصوصی همگی در اصل بخشی از حقوق مدنی بوده، اما اکنون از آن منشعب شده‌اند.




رشته‌های جدا شده از حقوق مدنی

حقوق تجارت – که بر روابط بین بازرگانان و اعمال تجاری آن‌ها حاکم است.
حقوق کار – روابط میان کارگران و کارفرما را تنظیم می‌کند.
آئین دادرسی مدنی – قواعدی که دادگاه‌ها براساس آن به اختلافات راجع به حقوق خصوصی افراد رسیدگی و آن‌ها راحل و فصل می‌کنند.
مالکیت فکری - به بررسی حقوقی می‌پردازد که به انسان اختیار بهره برداری انحصاری از حاصل ابتکارات و اندیشه‌های خود را می‌دهد. مانندحق تکثیر انحصاری مولف و هنرمند، حق مخترع بر اختراعاتش، حق تاجر بر نام تجارتی خویش و حق سرقفلی.



موضوعات حقوق مدنی

رایج است که حقوق و تکالیف مردم در جامعه به حقوق عینی و ذهنی تقسیم شود.

حقوق مالی از نمونه‌های حقوق عینی است و به به مجموعه حقوقی گفته می‌شود که دارای ارزش اقتصادی و قابل مبادله با پول است. مانند حق مالکیت یک شئ و یا حقی که طلبکار بر بدهکار پیدا می‌کند و به موجب آن می‌تواند مال را از او مطالبه کند (حقوق دینی).

اما منظور از حقوق ذهنی، امتیازاتی است که مربوط به شخصیت انسانی افراد است و قابل تقویم به پول نمی‌باشد. مانند حق ازدواج کردن و حق ارث بردن.



منابع حقوق مدنی در ایران
قانون مهم‌ترین منبع حقوق مدنی است و قانون مدنی که در ۱۳۳۵ ماده در سالهای ۱۳۰۷ تا ۱۳۱۴ توسط مجلس شورای ملی به تصویب رسید مهم‌ترین مجموعه قانون مربوط به حقوق مدنی است که در درجه اول براساس فقه شیعه و در وهله بعد با استفاده از قوانین مدنی کشورهای فرانسه، سوئیس و بلژیک تدوین شده‌ است.


سایر قوانین مهم مربوط به حقوق مدنی

۱- قانون امور حسبی که در سال ۱۳۱۹ در ۳۷۸ ماده تصویب شد و به وضع مقرراتی در مورد تقسیم میراث بجا مانده از مرده و امور غایبین مفقود الاثر می‌پردازد. ۲- قانون مسئولیت مدنی قانون که در سال ۱۳۳۹ در ۱۶ ماده با اقتباس از حقوق آلمان به تصویب رسید.






حقوق مالی
حقوقی است که اجرای آن مستقیماً برای دارندهٔ آن ایجاد منفعتی نماید که به پول تقویم می‌گردد،. حقوق مالی اعم است از حقوق عینی و حقوق دینی. حق عینی حقی است برای اشخاص بر اعیان اموال. حق عینی ممکن است تام باشد مثل حق مالکیت یا برای شخص حقوق جزئی در مال ایجاد کند، مثل حق ارتفاق، حق شفعه، حق انتفاع. حق دینی حقی است که بر ذمه افراد مستقر می‌شود، ممکن است تعهد به انجام یا عدم انجام امری، یا تحویل مالی باشد. در کنار این طبقه بندی حقوق مالی دیگری مثل حق تالیف، حق اختراع و... وجود دارد.




حقوق خانواده
حقوق خانواده یا قانون خانواده به آن بخش از حقوق یا قوانین گفته می‌شود که به خانواده می‌پردازد و به مجموعه قواعد و مقرراتی مربوط است که حاکم بر روابط افراد خانواده و افراد متشکل آن (از قبیل شوهر، زن، فرزند، پدر و مادر) و امور مالی مرتبط با آن (مانند مهریه زوجه و نفقه همسر و اقارب) است.




حقوق کیفری

حقوق کیفری یا حقوق جزا یا حقوق جنایی شاخه‌ای از حقوق عمومی است که به بررسی حمایتهای دولت از حقوق افراد و ارزشهای جامعه می‌پردازد.

اساسا قوانین جزایی آفریننده حقوق برای افراد جامعه نیست؛ بلکه تنها افراد را مجبور به رعایت حقوق و ارزشها می‌کند. به همین دلیل است که حقوق جزا را، «حقوق ارزشها» نیز نامیده‌اند. مشخصه بارز حقوق جزا (کیفری)، ضمانت اجرای شدید آن است. این مجازات و کیفر است که حقوق جزا را به رشته‌ای سرکوبگر، در مقابل سایر گرایشها تبدیل کرده‌است. از آن‌جا که این ابزار تنها در اختیار حاکمیت است، حقوق جزا را شاخه‌ای از حقوق عمومی دانسته‌اند.
تاریخچه

دوره‌هایی از تاریخ حقوق کیفری بوده‌است که در آن، هرکس برای احقاق حق خویش رأساً اقدام می‌کرد و متعدی به حق خود را می‌داد (دوره دادگستری خصوصی). حتی پیش از این دوره، مسئولیت جمعی در مقابل مسئولیت فردی مطرح بوده‌است (دوره جنگهای خصوصی) که در آن زمان، چنانچه فردی از افراد گروه مرتکب جرمی می‌گردید، تمام گروه متعلق به بزه دیده با تمام گروه متعلق به بزهکار وارد نبرد تمام عیار می‌شدند. پس از این دوره‌ها بود که رفته رفته دروه دادگستری عمومی ظاهر شد که در آن، تعقیب و مجازات بزهکاران به دست رئیس و یا حکومت سپرده شد و افراد حق دخالت مستقیم در کیفر را از دست دادند و جامعه حق اجرای کیفر را به دست حکومت سپرد. از همین رو، مدتهای مدیدی است که کیفر، به عنوان یک ابزار شدید و سرکوبگر در دست حکومتها قرار گرفت. ویژگی اصلی حقوق جزا در همین نکته نهفته‌است. در یکسوی مسائل حقوق جزا، همواره حکومت نشسته‌است.

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

حقوق کیفری (در تعریف گرایش رومی ژرمنی و پیروان مکتب حقوق نوشته) به دو شاخه حقوق کیفری عمومی و حقوق کیفری اختصاصی تقسیم می‌شود.

حقوق کیفری عمومی: بررسی مفهوم جرم، مجرم و مسوولیت کیفری و مجازات و اقدامات تامینی و تربیتی
حقوق جزای اختصاصی:بررسی یکایک جرایم، عناصر اختصاصی تشکیل دهنده هر یک از جرایم و مجازات مربوطه.



حقوق عمومی

حقوق عمومی قواعد مربوط به سازمان دولت و طرز عمل آن و مقررات مربوط به سازمان‌های دولتی و یا روابط بین مردم و دولت را تنظیم می‌کند. روابط دولت و سازمان‌های وابسته به آن و مأمورین آن‌ها با افراد جامعه در قلمرو این شاخه از حقوق می‌گنجند . مهمترین مقررات حقوق عمومی هر کشور در قانون اساسی بیان شده‌است.

حقوق عمومی به عنوان یکی از دو شاخه مادر حقوق در برابر حقوق خصوصی قرار می‌گیرد که به روابط افراد جامعه با یکدگر می‌پردازد. حقوق عمومی خود به چند شاخه تقسیم می‌شود که حقوق اساسی، حقوق اداری، حقوق جزا و حقوق بین‌الملل عمومی از مهمترین آن هاست.

موضوع
قواعد مربوط به سازمان دولت و بنگاه‌های دولتی و همچنین حقوق کیفری به حقوق عمومی مربوط است. تمام روابطی که دولت یا نمایندگانش بطور رسمی در آن دخالت می‌کنند به سرزمین حقوق عمومی تعلق دارد.




حقوق بین‌الملل

حقوق بین‌الملل به بررسی موارد زیر می‌پردازد:

رابطه دولت‌ها با یکدیگر
رابطه دولتها با سازمانهای بین‌المللی
رابطه سازمانهای بین‌المللی با یکدیگر
امروزه اشخاص هم به عنوان تابع حقوق بین‌الملل در حقوق بشر مد نظر قرار گرفته‌اند. در حقوق بین‌الملل موضوعات متنوعی را موضوع کار خود قرار داده است که از مهم‌ترین آنها می‌توان به موارد ذیل اشاره نمود:

حقوق بشر بین‌المللی- حقوق سازمانهای بین‌المللی- حقوق بین‌الملل اقتصادی - حل و فصل مسالمت‌آمیز اختلافات بین‌المللی- حقوق معاهدات- مسئولیت بین‌المللی دولتها و سازمانهای بین‌المللی

درخصوص ماهیت حقوق بین‌الملل، این تردید وجود دارد که آیا این عنوان بیان‌کننده یک نظام حقوقی است؟ در واقع این ابهام عمدتاً از مقایسه نظام حقوق داخلی با نظام حقوق بین‌الملل ایجاد می‌گردد و با توجه به موضوعاتی نظیر صلاحیت اجباری محاکم داخلی و ضمانت اجرای قهری قواعد داخلی و نهایتاً وجود قوه مقننه مجزا و مقتدر در درون اکثر دولت‌ها، همین انتظارات از حقوق بین‌الملل نیز به وجود آمده است در حالیکه بنیان‌ها و قواعد نظام اخیر به کلی متفاوت از نظامهای داخلی است. به عنوان نمونه هرش لوتر پاخت معتقد است این تصور به شدت تحت تأثیر تجربه دول مدرن قرار دارد، بنابراین، قیاس این سازوکارهای نهادی مدرن با اجتماع بدوی و سازمان نایافته امروز بین‌المللی، منطقا بلاوجه است. از همین رو در اجتماع بین‌المللی نباید به تمامی قیود نظام‌های حقوقی داخلی تن در داد. درست به همین خاطر است که همواره بر تمایز بنیادین نظم حقوقی بین‌المللی با نظم حقوقی داخلی تاکید می‌شود. البته در این وادی نباید افراط گرا بود به نحوی که منکر تمامی این خصلت‌ها در حقوق بین‌الملل شد واز حقوق تعریفی ارائه نمود که پایه‌ای در واقعیت نداشته و از اصول پذیرفته شده حقوقی چنان فاصله داشته باشد که گویی موجودی خیالی وموهوم است.




حقوق تجارت
حقوق تجارت مجموعه قواعدی است که بر روابط بازرگانان و اعمال تجارتی حکومت می‌کند. برخلاف حقوق مدنی که روابط همهٔ افراد جامعه را شامل می‌شود، حقوق تجارت به وضع قواعدی ویژه برای تجار و اعمال تجاری می‌پردازد، به همین جهت در مواردی که راه حل صریحی در حقوق تجارت پیش بینی نشده باشد به قواعد حقوق مدنی مراجعه می‌شود.


قوانین تجارتی

قانون تجارت: این قانون در ۱۳ اردیبهشت ماه ۱۳۱۱ در ششصد ماده توسط مجلس شورای ملی تصویب شد واصول مربوط به معاملات تجاری، دفاتر تجارتی، اسناد تجاری و چک، دلالی، حق العمل کاری، قرارداد حمل و نقل، قائم مقام تجارتی و سایر نمایندگان تجارتی، ضمانت، ورشکستگی، اسم تجارتی و شخصیت حقوقی را بیان می‌کند. برای تدوین این قانون بیشتر به قانون تجارت بلژیک و فرانسه مراجعه شده‌است.
لایحه اصلاحی قانون تجارت: در سال ۱۳۴۷ مقررات بخش شرکت‌های سهامی قانون تجارت اصلاح و در سیصد ماده مقررات جدیدی برای شرکت‌های سهامی عام و خاص وضع گردید.
قانون تجارت الکترونیک: این قانون مجموعه اصول و قواعدی است که برای مبادله آسان و ایمن اطلاعات در واسط‌های الکترونیکی و با استفاده از سیستم‌های جدید ارتباطی به کار می‌رود.(ماده یک قانون تجارت الکترونیک) و در هفده بهمن ۱۳۸۲ به تصویب مجلس شورای اسلامی رسید.
آیین‌نامه اجرایی ماده (۳۲) قانون تجارت الکترونیکی ـ مصوب ۱۳۸۲ ـ
قانون صدور چک:این قانون که در ۲۳ ماده انواع چک و چگونگی صدور آنها را بیان میکند و مقرراتی شایسته در مورد شرایط متخلفین از این مواد را در بر ندارد، در سال ۱۳۵۵ به تصویب مجلس شورای ملی رسیده‌است سپس قانون «اصلاح موادی از قانون صدور چک مصوب تیر ماه ۱۳۵۵»در تاریخ ۱۱/۸/۱۳۷۲ به تصویب مجلس شورای اسلامی و در تاریخ ۱۹/۸/۱۳۷۲ به تایید شورای نگهبان رسیده‌است.و بعد از ان قانون «اصلاح موادی از قانون صدور چک» موصب ۲/۶/۱۳۸۲ در متن اصلاح، الحاق و تلفیق گردیده‌است.




حقوق اساسی

حقوق اساسی از شاخه‌های علم حقوق است که در آن به ساختار حکومت و روابط دولت با شهروندان پرداخته می‌شود.

حقوق اساسی که حقوق سیاسی نیز خوانده می‌شود، کلیه قواعدی است که وضع و شکل حکومت یک ملت را معین نموده، اعضای رئیسه و قوای مهمه مملکت را تشکیل می‌دهد و همچنین روابط متقابله قوای مزبور را بیان کرده و حدود آنها را نسبت به افراد ملت معلوم می‌کند، در تعریفی دیگر حقوق اساسی یکی از شاخه‌های مهم حقوق است که اختصاصاً به روابط سیاسی بین فرمانروایان و فرمانبران می‌پردازد



نام
واژه «حقوق اساسی» در زبان فارسی اولین بار توسط منصور السلطنه در کتاب خود به نام «حقوق اساسی یا اصول مشروطیت» در سال ۱۳۲۷ از کلمه فرانسوی "constitutionnel« که مأخوذ از »constitution" می‌باشد، به کار برده شده و به معنای تأسیس نمودن، مشروطیت و اساسنامه و نظامنامه و قانون هم آمده‌است.



تاریخچه
به طور مشخص و عینی، آغاز دوره حقوق اساسی به قرن هجدهم و دوران روشنفکری و اندیشه نظام دمکراتیک و کنترل قدرت بر می‌گردد. رشته حقوق اساسی نخستین بار در جمهوری‌های ایتالیایی فرارا، پاویا، و بولونیا در حدود سال ۱۷۹۸ مطرح شد. سپس در سال ۱۸۳۴ مورخ و رجل سیاسی مشهور فرانسوی «گیزو»، در دانشکده حقوق پاریس صفت «اساسی» را در ادامه واژه «حقوق» مطرح کرد و رسماً در سال ۱۸۳۵ آن را در آکادمی فرانسه به تأیید رساند. از آن به بعد این اصطلاح به عنوان یک اصطلاح «فنی-حقوقی» معمول شد.



موضوع

به جهت وجود حقوق اساسی در زیر شاخه‌های حقوق عمومی، موضوع مورد مطالعه حقوق اساسی، قواعد مربوط به روابط دولت و شهروندان است، چون چنین امری محور مطالعه حقوق عمومی می‌باشد. لذا در این حوزه‌است که باید به دنبال قواعد خاص و ویژه حقوق اساسی گشت. برای فهم موضوع حقوق اساسی دیدگاه‌های برخی اندیشمندان به شرح زیل آورده می‌شود:

آندره هوریو: موضوع حقوق اساسی عبارت است از چارچوب بندی حقوقی پدیده‌های سیاسی. مارس پرلو: آن را علم قواعد حقوقی دانسته که به وسیله آن قدرت سیاسی مستقر، اجرا و منتقل می‌گردد. ابوالفضل قاضی: موضوع حقوق اساسی عبارت است از بررسی پدیده‌های نهادین شده سیاسی با شیوه‌های حقوقی به عبارت دیگر، موضوع اصلی این رشته از حقوق، مطالعه شکل گیری حقوقی برخی پدیده‌های سیاسی است و بنابراین سازمان عمومی دولت، رژیم سیاسی، ساختار حکومت و روابط قوا و حد و مرز آنها، انتخابات، مجالس قانونگذاری و همچنین حقوق و آزادی‌های عمومی مورد توجه حقوق اساسی است.



حقوق خصوصی
خقوق خصوصی (به فرانسوی: Droit privé) یکی از دو شاخه اصلی علم حقوق است. حقوق خصوصی در مقابل حقوق عمومی قرار می‌گیرد که به روابط میان افراد با مأموران دولت و انتظام سازمان‌های دولتی می‌پردازد.



پیشینه
جدایی میان حقوق خصوصی و عمومی پیشینه بسیار طولانی دارد و حتی در میان رومیان نیز مرسوم بوده است. آن‌ها آن‌چه را که مربوط به سازمان‌های عمومی است از آن‌چه مربوط به منافع عمومی افراد است ، جدا می‌ساختند. جدایی این دو شعبه با تدوین کد ناپلئون قطعیت بیشتری یافت، زیرا این قانون تنها به روابط خصوصی اشخاص مربوط می‌گشت و از ابتدا نیز قانون مدنی نامیده می‌شد.



انتقاد

در زمانی که مکتب اصالت فرد و آزادی اراده مبنای حقوق بود و حدود دخالت دولت در اقتصاد به دقت معین می‌شد و اصل بر این بود که کار مردم به خود آن‌ها واگذار شود، حد بین حقوق عمومی و خصوصی نیز به آسانی قابل رسم بود.

اما از اواخر سده نوزدهم که رفته رفته مفهوم اجتماعی حق هوادارانی یافت و وظایف دولت در اداره امور گسترش پیدا کرد، مرز میان حقوق خصوصی و عمومی نیز دستخوش تغییر شد؛ دولت در غالب امور شخصی و روابط افراد دخالت کرده و با ملی‌ساختن برخی از مؤسسه‌های مالی، به صورت اشخاص حقوقی در کنار دیگران به تجارت پرداخته و قاعده عدم دخالت دولت در تجارت را زیر پا گذاشت.

به این ترتیب در حقوق کنونی اصل حاکمیت اراده اهمیت پیشین خود را از دست‌داده و قواعد امری قراردادها رو به فزونی نهاده و در بسیاری از موارد (همچون خدمت نظام وظیفه اجباری) قراردادهایی خلق شده که رضایت طرف قرارداد، نه تنها شرط اعتبار آن نیست، بلکه گردن ننهادن به آنان تخلف شمرده می‌شود.
ساعت : 12:44 pm | نویسنده : admin | وکیل دادگستری | مطلب قبلی
وکیل دادگستری | next page | next page