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