0% found this document useful (0 votes)
39 views53 pages

Project Report Working

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views53 pages

Project Report Working

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 53

Project Report

On
WEDDING PLANNING SYSTEM WEBSITE

UNDERTAKEN AT

United College of Engineering and Research

Plot No.50, Knowledge Park III


Greater Noida, Uttar Pradesh 201310

Submitted To
ABDUL KALAM TECHNICAL UNIVERSITY, LUCKNOW
In the partial fulfilment of Four-year Degree
Of

Bachelor of Technology in Computer Science and Engineering


(Session 2022-26)

SUBMITTED BY
Rishika Jain (Roll No: 2201930100078)

Internal Guide
Dr. Pooja Sharma
H.O.D (B.Tech CSE Dept)

UNITED COLLEGE OF ENGINEERING AND RESEARCH, GREATER NOIDA


(Affiliated to AKTU, Lucknow)
United College of Engineering and Research
CANDIDATE’S DECLARATION

I hereby certify that the work which is being presented in this project entitled “Wedding
Planner Website” in fulfilment of the requirement for the award of the degree of
Bachelor of Technology in Computer Science and Engineering, submitted to “Abdul
Kalam Technical University, Lucknow”, is an authentic record of my work carried out
during my Project training, under the supervision and guidance of Dr. Pooja Sharma
(Project Guide).

To the best of my knowledge no part of the above said project has been submitted earlier
for the award of any degree at any institution/organisation.

RISHIKA JAIN
Roll No. 2201930100078
B.Tech CSE, sem. V
(AKTU, Lucknow)
ACKNOWLEDGEMENT
Success in any endeavour calls for cooperation and guidance from seniors and colleagues.
This was amply brought out to me while working with this project.

I take this opportunity to express my sincere thanks and deep gratitude to all those people
who extended their whole hearted co-operation and have helped me in completing this project
successfully
At the very outset I feel a sense of pleasure in expressing my profound and deep sense of
gratitude to my revered teacher and Mentor Dr. Pooja Sharma Employee of United College
of Engineering and Research as H.O.D of B.Tech CSE Department, for her constructive &
learning suggestions and guidance. I am highly obliged to her for her inspiring suggestions
and timely guidance which enabled me to perceive the various aspects of the project. I would
also like to thank her for giving us fruitful opportunity to expose our knowledge to tackle
such a project.
I also owe a debt of gratitude to those authors whose writings have been a source of helpline
in project.
Last but not least I would like to thanks my parents and project mates for guiding and
encouraging me throughout the duration of project.

Name: Harshit Dubey


Roll No.: 2201930100041
Signature:
Date:

Name: Rishika Jain


Roll No.: 2201930100078
Signature:
Date:

Name: Ujjawal Keshri


Roll No.: 2201930100105
Signature:
Date:
ABSTRACT

The Wedding Planner System is a comprehensive web-based application designed to simplify


the complex processes involved in wedding planning. Built using PHP and MySQL, the
system provides a centralized platform for managing various tasks such as vendor
coordination, budget tracking, guest list management, and event scheduling. It caters to the
needs of both clients and planners, offering intuitive interfaces and robust functionalities to
enhance user experience.

This system is particularly beneficial for minimizing manual efforts, reducing errors, and
saving time, ensuring a smooth and efficient planning process. The application supports real-
time notifications, cloud-based data storage, and secure authentication, making it a reliable
and scalable solution for diverse user needs. By addressing common challenges in traditional
event planning, this project demonstrates how technology can transform the way weddings
are managed, offering a personalized and hassle-free experience.

The report elaborates on the project’s background, implementation techniques, and testing
outcomes, highlighting its potential to revolutionize event planning. With future
enhancements like AI-based suggestions and mobile app support, the system promises to be a
valuable tool for modern wedding planning.
FUNCTIONAL REQUIREMENT

1. User Management

 User Registration: Allow users (clients and vendors) to register by providing personal
details, email, and password.
 User Login/Authentication: Secure login system for users to access their accounts.
 Profile Management: Users can create and manage profiles, including personal
details, preferences, and budgets.
 Role-based Access Control: Different access levels for clients, vendors, and admins.

2. Event Planning

 Wedding Packages: Display pre-designed wedding packages with pricing and details.
 Custom Planning: Enable users to customize their wedding plans (venue, themes,
catering, etc.).
 Checklist Management: Interactive wedding checklist to track planning tasks.
 Budget Management: Tools to manage budgets and track expenses.

3. Vendor Management

 Vendor Listing: Provide a directory of vendors (venues, caterers, photographers, etc.)


with reviews and ratings.
 Vendor Profiles: Vendors can create profiles showcasing their services, pricing, and
portfolios.
 Vendor Booking: Allow users to book vendors directly through the platform.
 Integration with Vendors: Notifications and schedules shared with vendors.

4. Search and Filtering

 Search Functionality: Enable users to search for vendors, venues, and services.
 Filters: Filters based on price, location, availability, and ratings.
 Sorting: Sort search results by popularity, cost, or rating.

5. Venue Management

 Venue Listings: Display detailed venue profiles with images, capacity, and pricing.
 Venue Availability: Calendar-based system to check availability.
 Venue Booking: Book venues directly through the platform.

6. Payment and Billing

 Payment Gateway Integration: Support for multiple payment methods (credit cards,
PayPal, etc.).
 Installment Payments: Options for partial payments or installments.
 Invoice Generation: Automatically generate invoices for bookings.

7. Calendar and Scheduling


 Event Timeline: Users can create and manage an event timeline for the wedding day.
 Reminders and Notifications: Email/SMS notifications for upcoming deadlines,
appointments, and bookings.

8. Gallery and Inspiration

 Image Galleries: Users can browse through galleries for inspiration (themes, decor,
dresses, etc.).
 Blog/Articles: Wedding tips, trends, and success stories.

9. Analytics and Reporting

 Dashboard: Dashboard for clients to view budget breakdown, tasks, and upcoming
events.
 Vendor Reports: Vendors can track their bookings and payments.

10. Admin Panel

 User Management: Manage user accounts, including banning or verifying users.


 Content Management: Add/edit/delete wedding packages, blogs, and vendor profiles.
 Dispute Management: Resolve conflicts between clients and vendors.

11. Feedback and Reviews

 Review System: Clients can rate and review vendors.


 Vendor Feedback: Vendors can provide feedback on client experiences.
LIMITATION IN MANAUAL SYSTEM

1. Time-Consuming:

 Coordination and communication rely heavily on in-person meetings and phone calls.
 Repetitive tasks like vendor follow-ups and budget tracking take significant time.

2. Human Errors:

 Mistakes in scheduling, budgeting, or task allocation can easily occur.


 Miscommunication between clients, vendors, and planners.

3. Limited Accessibility:

 Information and updates are not centrally accessible to all parties.


 Clients and vendors rely on the availability of the planner for updates.

4. Lack of Automation:

 No tools for automated reminders, checklists, or scheduling.


 Manual budget calculations are prone to inaccuracy.

5. Inefficient Resource Management:

 Difficulty in managing multiple vendors and bookings simultaneously.


 Limited ability to track vendor availability and pricing in real time.

6. Difficulty in Customization:

 Limited flexibility to quickly adapt plans to client preferences.


 Custom requests may require additional time and resources.

7. No Real-Time Updates:

 Changes in schedules, availability, or requirements are not communicated instantly.


 Dependency on physical documents or verbal updates.
REQUIREMENT OF ONLINE WEDDING PLANNING SYSTEM

1. Convenience and Accessibility


 Easy access: Couples can access the platform from anywhere, at any time, making it
convenient for planning and management.
 24/7 availability: The platform is always available, allowing couples to work on their
wedding planning at their own pace.

2. Organization and Management


 Centralized planning: Couples can manage all aspects of their wedding planning in
one place, reducing clutter and disorganization.
 Task management: The platform can provide tools for creating and managing to-do
lists, timelines, and reminders.
 Vendor management: Couples can manage vendor contracts, payments, and
communication through the platform.

3. Collaboration and Communication


 Multi-user access: Couples can invite vendors, family members, and friends to
collaborate on the planning process.
 Real-time updates: The platform can provide real-time updates, ensuring that all
stakeholders are informed and on the same page.
 Communication tools: The platform can offer communication tools, such as
messaging and video conferencing.

4. Cost Savings and Efficiency


 Reduced paper waste: Online planning reduces the need for paper-based planning
tools, saving trees and reducing waste.
 Time-saving: The platform can automate tasks, provide templates, and offer guidance,
saving couples time and effort.
 Budgeting tools: The platform can provide budgeting tools, helping couples track
expenses and stay within budget.

5. Personalization and Customization


 Customizable templates: Couples can choose from various templates and customize
them to fit their wedding style and theme.
 Personalized wedding website: The platform can provide tools for creating a
personalized wedding website, allowing couples to share their story, photos, and
wedding details with guests.

6. Stress Reduction and Enjoyment


 Reduced stress: The platform can help reduce stress and anxiety by providing a clear
planning process, reminders, and guidance.
 Enjoyment: By streamlining the planning process, couples can focus on enjoying the
experience and celebrating their special day.
ABOUT ONLINE WEDDING PLANNING SYSTEM

An online wedding planning system is a web-based platform designed to assist couples in


planning and organizing their wedding. The system typically provides a range of tools and
features to help couples manage various aspects of their wedding, including:

1. Wedding Website Builder: Create a personalized wedding website to share with guests.

2. Guest List Management: Manage RSVPs, guest information, and seating arrangements.

3. Budgeting and Expense Tracking: Track expenses, create a budget, and receive alerts
when expenses exceed limits.

4. Timeline and Checklist Creator: Create a customized timeline and checklist to ensure
all tasks are completed on time.

5. Vendor Management: Research, contact, and manage vendors, including caterers,


photographers, and florists.

6. Seating Chart and Table Management: Create and manage seating charts, table
assignments, and place settings.

7. Wedding Party Management: Manage wedding party information, including attire,


accommodations, and transportation.

8. Gift Registry Management: Create and manage a gift registry, allowing guests to
purchase gifts online.

9. Communication Tools: Send emails, messages, and reminders to guests, vendors, and the
wedding party.

10. Reporting and Analytics: Track website traffic, RSVPs, and other key metrics to help
with planning and decision-making.
ADVANTAGES OF ONLINE WEDDING PLANNING SYSTEM

1. Convenience: Accessible from anywhere, at any time, making it easy to plan and manage
the wedding.

2. Organization: Keeps all wedding-related information and tasks in one place, reducing
clutter and disorganization.

3. Time-Saving: Automates tasks, provides templates, and offers guidance, saving time and
effort.

4. Cost-Effective: Reduces paper waste, printing costs, and other expenses associated with
traditional wedding planning methods.

5. Stress Reduction: Provides a clear planning process, reminders, and guidance, reducing
stress and anxiety.

6. Collaboration: Allows couples to share planning tasks and responsibilities with each
other, vendors, and wedding party members.

7. Budgeting: Helps couples track expenses, create a budget, and receive alerts when
expenses exceed limits.

8. Increased Exposure: Online wedding planner systems can provide vendors with increased
exposure to potential clients.

9. Streamlined Communication: Allows vendors to communicate with couples and other


vendors more efficiently.

10. Improved Organization: Helps vendors manage multiple weddings and clients more
effectively.
OBJECTIVE OF THIS PROJECT

The objective of an online wedding planning system is to provide a comprehensive and user-
friendly platform for couples to plan and manage their wedding. The system aims to simplify
the wedding planning process, reduce stress, and enhance overall experience. By offering a
range of tools and features, the system seeks to make wedding planning more efficient,
organized, and enjoyable.

1.1 Scope:

The scope of an online wedding planning system encompasses a comprehensive range of


features and functionalities to streamline the wedding planning process. The system will
enable couples to create their own wedding website, manage guest lists and RSVPs,
research and book vendors, track budgets and expenses, and create personalized timelines
and checklists. Additionally, the system will provide communication tools for couples,
vendors, and guests, as well as seating chart and table management capabilities. From a
technical perspective, the system will involve web development, database management,
security measures, scalability, and integration with payment gateways and social media
platforms. The system will cater to three primary user groups: couples, vendors, and
guests, providing a user-friendly and intuitive interface to facilitate seamless wedding
planning and management.

1.2 Technologies to be used:

o Front-end: HTML, CSS, JavaScript


o Back-end: PHP
o Database: MySQL
o APIs: Integration with social media, email marketing, and other services.

1.3 Overview
o Project is related to Online Wedding Planning System.
o The project maintains two levels of users:
 Administration Level
 User Level
o provided on this project area:
 Wedding Website Creation
 Guest Management (RSVP, Invitations)
 Vendor Management (Catering, Photography, etc.)
 Budgeting and Expense Tracking
 Timeline and Checklist Creation
 Seating Chart and Table Management
 Communication Tools (Messaging, Email)
 Payment and Invoice Management
OVERALL DESCRIPTION

2.1 Goals of proposed system

1) Streamline Planning Process: Simplify and organize the wedding planning process,
reducing stress and workload for the couple.
2) Centralized Information Management: Provide a single platform for managing guest
lists, RSVPs, vendor contacts, and other wedding-related details.
3) Personalized Wedding Website: Offer a customizable website for the couple to share
their wedding story, details, and updates with guests.
4) Vendor Management: Facilitate communication and coordination with vendors, such as
caterers, photographers, and florists.
5) Budgeting and Expense Tracking: Assist couples in creating and managing their
wedding budget, tracking expenses, and receiving reminders for upcoming payments.
6) Guest Management: Enable couples to manage guest lists, send invitations, track
RSVPs, and receive gifts or donations.
7) Timeline and Reminders: Provide a timeline of wedding-related tasks and events,
sending reminders and notifications to ensure the couple stays on track.
8) Collaboration Tools: Offer features for collaboration between the couple, wedding
party, and vendors, ensuring everyone is informed and aligned.
9) Inspiration and Ideas: Provide access to wedding inspiration, ideas, and trends to help
couples plan their special day.
10) Mobile Accessibility: Ensure the platform is accessible and user-friendly on various
devices, including desktops, laptops, tablets, and smartphones.

2.2 Background

1) The concept of online wedding planning emerged in the early 2000s, driven by:
a. Increasing internet penetration
b. Growing demand for convenient wedding planning solutions
c. Advancements in web development and e-commerce technologies
2) Early online wedding planning platforms focused on:
a. Wedding website creation
b. Guest management and RSVP tracking
c. Basic wedding planning tools and checklists
3) Over time, online wedding planning systems evolved to include:
a. Vendor management and marketplace integration
b. Budgeting and expense tracking tools
c. Personalized wedding planning advice and inspiration
d. Mobile accessibility and social media integration
4) Today, online wedding planning systems aim to provide a comprehensive, user-friendly,
and personalized experience for couples, simplifying the wedding planning process and
reducing stress.
2.3 Project Requirements

1) Operating System (e.g., Linux, Windows Server)


2) Web server software (e.g., Apache, Nginx)
3) Programming language (e.g., PHP, Python, Ruby)
4) Database management system (e.g., MySQL, PostgreSQL)

2.4 User Characteristics

Every user should be:

1) Comfortable with Internet browser.


2) He must have brief knowledge about this wedding planning system.
3) He must have basic knowledge about internet, English language and money transaction.

2.5 Constraints

1) User interface is only in English


2) Login and password are used for further candidate details.

2.6 Problem Definition

1) The absence of a centralized, accessible, and efficient solution complicates wedding


planning, often leading to stress, missed deadlines, and unplanned expenses.
2) There is a need for an online platform that simplifies and automates wedding
planning, offering comprehensive tools for organization, collaboration, and access to
verified resources. Such a system can empower users to plan their weddings
effectively, saving time, reducing stress, and ensuring a successful event.
FEASIBILITY STUDY

The feasibility of the project is analyzed in this phase and business proposal is put forth with
a very general plan for the project and some cost estimates. During system analysis the
feasibility study of the proposed system is to be carried out. This is to ensure that the
proposed system is not a burden to the company. For feasibility analysis, some understanding
of the major requirements for the system is essential.

Three key considerations are involved in the feasibility analysis:

 Economic Feasibility
 Technical Feasibility
 Social Feasibility

o Economic Feasibility

The economic feasibility of an ONLINE WEDDING PLANNING SYSTEM lies in its


potential to streamline and centralize the wedding planning process, reducing costs for
both users and vendors. For users, the platform minimizes expenses associated with hiring
professional planners by offering tools to manage tasks independently. Additionally, the
system can provide budget management features, helping couples make cost-effective
decisions. For vendors, the platform serves as a marketing channel, reducing their
advertising expenses and increasing their reach to potential clients. Revenue generation
for the platform can come from subscription plans, premium features, vendor listing fees,
and commissions, ensuring a sustainable business model. Given the growing demand for
digital solutions and the global wedding industry’s substantial market size, the system
presents a financially viable opportunity with high scalability and profitability.

o Technical Feasibility

The technical feasibility of an ONLINE WEDDING PLANNING SYSTEM is highly


viable, given the availability of advanced technologies and development frameworks. The
system can be built using modern web and mobile development platforms, supported by
cloud infrastructure for scalability, reliability, and data storage. Features such as task
management, budget tracking, and vendor integration can be implemented using existing
software libraries and APIs. Additionally, user-friendly interfaces can be created with
responsive design to ensure accessibility across devices. Advanced technologies like AI
can enhance personalization, while secure payment gateways can facilitate transactions.
With the growing adoption of digital platforms and the widespread availability of skilled
developers, the technical requirements for building and maintaining the system are readily
achievable.
• MS-SQL Server can manage large amount of data and is simple and secure.

• Using ASP.NET helps us to design the look of our system.


o Social Feasibility

The social feasibility of an ONLINE WEDDING PLANNING SYSTEM lies in its ability to
address the modern need for convenience, accessibility, and personalized services. With
busy lifestyles and geographically dispersed families, couples often face challenges in
coordinating traditional wedding planning. An online platform simplifies this process by
providing a centralized hub for managing tasks such as budgeting, vendor selection, guest
list management, and event scheduling. It also fosters inclusivity, enabling virtual
collaboration among family and friends regardless of their location. Additionally, the
system aligns with the growing reliance on digital tools, making it socially acceptable and
desirable for tech-savvy users. By offering tailored recommendations, user-friendly
interfaces, and cost-effective solutions, such a system has the potential to seamlessly
integrate into contemporary wedding planning practices, making it both practical and
socially relevant.
SOFTWARE DEVELOPMENT LIFE CYCLE

Introduction:

 In project Development a project has both a life cycle and a "systems development
life cycle," during which a number of typical activities occur. The project life cycle
(PLC) encompasses all the activities of the project, while the systems development
life cycle focuses on realizing the product requirements.

 Systems Development Life Cycle (SDLC) is any logical process used by a systems
analyst to develop an information system, including requirements, validation,
training, and user ownership. A SDLC should result in a high quality system that
meets or exceeds customer expectations, reaches completion within time and cost
estimates, works effectively and efficiently in the current and planned Information
Technology infrastructure, and is inexpensive to maintain and cost-effective to
enhance.

 Computer systems have become more complex and often (especially with the advent
of Service-Oriented Architecture) link multiple traditional systems potentially
supplied by different software vendors. To manage this level of complexity, a
number of system development life cycle (SDLC) models have been created:-

 Waterfall
 Fountain
 Spiral
 Build and fix
 Rapid prototyping
 Incremental
 Synchronize and stabilize

 SDLC models can be described along a spectrum of agile to iterative to sequential.


Agile methodologies, such as XP and Scrum, focus on light-weight processes which
allow for rapid changes along the development cycle. Iterative methodologies, such
as Rational Unified Process and Dynamic Systems Development Method, focus on
limited project scopes and expanding or improving products by multiple iterations.
Sequential or big-design-upfront (BDUF) models, such as Waterfall, focus on
complete and correct planning to guide large projects and risks to successful and
predictable results.

 Some agile and iterative proponents confuse the term SDLC with sequential or
"more traditional" processes; however, SDLC is an umbrella term for all
methodologies for the design, implementation, and release of software.

 Different software development life cycle phases

o Initiation Phase: -

 The initiation of a system (or project) begins when a business need or opportunity
is identified. A Project Manager should be appointed to manage the project. This
business need is documented in a Concept Proposal. After the Concept Proposal is
approved, the System Concept Development Phase begins.

o System Concept Development Phase: -

 Once a business need is approved, the approaches for accomplishing the concept are
reviewed for feasibility and appropriateness. The Systems Boundary Document
identifies the scope of the system and requires Senior Official approval and funding
before beginning the Planning Phase.

o Planning Phase: -

 The concept is further developed to describe how the business will operate once the
approved system is implemented, and to assess how the system will impact
employee and customer privacy. To ensure the products and /or services provide the
required
capability on-time and within budget, project resources, activities, schedules, tools, and
reviews are defined. Additionally, security certification and accreditation activities
begin with the identification of system security requirements and the completion of a
high-level vulnerability assessment.

o Requirement Analysis Phase: -

 Functional user requirements are formally defined and delineate the requirements in
terms of data, system performance, security, and maintainability requirements for
the system. All requirements are defined to a level of detail sufficient for systems
design to proceed. All requirements need to be measurable and testable and relate to
the business need or opportunity identified in the Initiation Phase.

o Design Phase: -

 The physical characteristics of the system are designed during this phase. The
operating environment is established, major subsystems and their inputs and outputs
are defined, and processes are allocated to resources. Everything requiring user
input or approval must be documented and reviewed by the user. The physical
characteristics of the system are specified and a detailed design is prepared.
Subsystems identified during design are used to create a detailed structure of the
system. Each subsystem is partitioned into one or more design units or modules.
Detailed logic specifications are prepared for each software module.

o Development Phase: -

 The detailed specifications produced during the design phase are translated into
hardware, communications, and executable software. Software shall be unit tested,
integrated, and retested in a systematic manner. Hardware is assembled and tested.

o Integration And Test Phase: -

 The various components of the system are integrated and systematically tested. The
user tests the system to ensure that the functional requirements, as defined in the
functional requirements document, are satisfied by the developed or modified
system. Prior to installing and operating the system in a production environment, the
system must undergo certification and accreditation activities.

o Implementation Phase: -
 The system or system modifications are installed and made operational in a
production environment. The phase is initiated after the system has been tested and
accepted by the user. This phase continues until the system is operating in
production in accordance with the defined user requirements.

o Operations And Maintenance Phase: -

 The system operation is ongoing. The system is monitored for continued


performance in accordance with user requirements, and needed system modifications
are incorporated. The operational system is periodically assessed through In-Process
Reviews to determine how the system can be made more efficient and effective.
Operations continue as long as the system can be effectively adapted to respond to an
organization’s needs. When modifications or changes are identified as necessary, the
system may reenter the planning phase.

o Disposition Phase: -

 The disposition activities ensure the orderly termination of the system and preserve
the vital information about the system so that some or all of the information may
be reactivated in the future if necessary. Particular emphasis is given to proper
preservation of the data processed by the system, so that the data is effectively
migrated to another system or archived in accordance with applicable records
management regulations and policies, for potential future access.
SYSTEM ANALYSIS

 System Analysis refers to the process of examining a situation with the intent of
improving it through better procedures and methods. System design is the process of
planning a new system to either replace or complement an existing system. But before
any planning is done, the old system must be thoroughly understood and requirements
determined. System Analysis is therefore, the process of gathering and interpreting
facts, diagnosis problems and using the information to re-comment improvements in
the system. Or in other words, system analysis means a detailed explanation or
description. Before computerizing a system under consideration, it has to be analyzed.
We need to study how it functions currently, what the problems, and what are the
requirements that the proposed system should meet.

 The main components of making software are:

 System and software requirements analysis


 Design and implementation of software
 Ensuring, verifying and maintaining software integrity

 System analysis is an activity that encompasses most of the tasks that are collectively
called Computer System Engineering. Confusion sometimes occurs because the term
is often used in context that allowed it only to software requirement analysis
activities, but system analysis is conducted with the following objectives in mind:

 Identification of need-

Identification of Need is the first step in the System Development Life Cycle (SDLC).
It involves:

 Recognizing a problem or opportunity for improvement


 Defining the scope and objectives of the project
 Identifying the stakeholders and their requirements
 Gathering preliminary data and information
 Determining the feasibility of the project

The goal of this step is to clearly articulate the need for a new system or changes to an
existing system.

 Document-

 Feasibility Study Report: Evaluates the practicality of the proposed system.


 Requirements Gathering Document: Captures user requirements and
expectations.
 Software Requirements Specification (SRS): Details the functional and non-
functional requirements.
 System Design Document: Outlines the overall system architecture and design.
 Technical Specification Document: Provides detailed technical specifications.
 Test Plan Document: Defines the testing approach and strategies.
 User Manual: Guides users on how to use the system.
 Maintenance Manual: Provides information for system maintenance and
updates.

These documents ensure that all stakeholders are informed and aligned throughout the
system development process.

 Information Gathering-

 Interviews: Conduct interviews with stakeholders, users, and experts.


 Surveys: Distribute surveys to gather information from a larger group.
 Observation: Observe users' behavior and interactions.
 Documentation Review: Review existing documents, reports, and records.
 Workshops: Host workshops to gather information and discuss requirements.
 Brainstorming: Conduct brainstorming sessions to generate ideas.
 Questionnaires: Use questionnaires to gather specific information.
 Prototyping: Create prototypes to gather feedback and validate requirements.

 Method for searching information-

 Literature Review
 Expert Opinion
 User Surveys
 Focus Groups
 Brainstorming Sessions
 Document Analysis
 Observational Studies
 Case Studies
 Benchmarking
 Interview

 While interviewing keep in mind:

 Clear objectives: Define the purpose and scope of the interview.


 Prepared questions: Prepare open-ended and specific questions.
 Neutral tone: Maintain a neutral tone to avoid influencing responses.
 Active listening: Listen attentively and take notes.
 Non-verbal cues: Be aware of non-verbal cues, such as body language.
 Avoid leading questions: Avoid asking leading or biased questions.
 Follow-up questions: Ask follow-up questions to clarify responses.
 Respectful attitude: Maintain a respectful and professional attitude.
 Time management: Manage time effectively to cover all topics.
 Documentation: Document the interview, including notes and recordings (with
permission).
 Information gathering and requirements-
In the Software Development Life Cycle (SDLC), information and requirements
gathering are crucial steps. The process begins with planning, where project scope,
goals, timelines, budget, and resources are defined. Next, requirements gathering
involves collecting and documenting software requirements from stakeholders,
including functional, non-functional, user, system, and regulatory requirements. Key
information gathered during this phase includes Software Requirements Specification
(SRS), use cases, technical specifications, project schedules, and resource allocation
plans. By capturing accurate and comprehensive requirements, developers can create
software that meets the needs and expectations of its users, ensuring improved quality,
increased efficiency, better communication, reduced risk, and faster time-to-market.

 User requirements-
 Functional Requirements (what the system should do)
 Performance Requirements (speed, accuracy, etc.)
 Usability Requirements (ease of use, navigation, etc.)
 Security Requirements (access control, data protection, etc.)
 Interface Requirements (user interface, hardware, etc.)

 Acceptance Criteria-
 Acceptance criteria are the conditions that must be met for a software system
to be accepted by the end-users or stakeholders.

 Types:
 Functional Acceptance Criteria: Verify software functions as expected.
 Non-Functional Acceptance Criteria: Evaluate performance, usability,
security, etc.
 Business Acceptance Criteria: Align with business goals and objectives.

 Characteristics:
 Specific
 Measurable
 Achievable
 Relevant
 Time-bound (SMART)

 Example:

 "The system shall allow users to login within 2 seconds, with a success rate of
99%, using a valid username and password."
Entity Relationship Diagram (ERD):

o Entity relationship diagrams are a way to represent the structure and layout of
a database. It is used frequently to describe the database schema. An ERD is a
model that identifies the concepts or entities that exist in a system and the
relationships between those entities. The relations between entities can be
describe in this manner
o The three main components of an ERD are:
 The entity is a person, object, place or event for which data is collected. For
example, if you consider the information system for a voting system, entities
would include not only voter. The entity is represented by a rectangle and
labelled with a singular noun.
 The relationship is the interaction between the entities. In the example above,
the places a candidate, so the word "places" defines the relationship between
that instance of a candidate and the voter that they place. A relationship may
be represented by a diamond shape, or more simply, by the line connecting the
entities. In either case, verbs are used to label the relationships.
Data Flow Diagram

The DFD is also called as bubble chart. It is a simple graphical formalism that can be used to
represent a system in terms of the input data to the system, various processing carried out on
these data, and the output data is generated by the system.

0- LEVEL DFD:

System user
Management

Login
Management Venue
Online Management
Wedding
Planning
Management
system

Wedding Package
Management Management
1- LEVEL DFD:
2- LEVEL DFD:
TOP-LEVEL DFD:
MODULE ADMIN:

Username
Password
Category
Login Login1
Admin

If
authenticat

DBMS

Candidate Data
and Couple store
Management

Search of
detail in
system
USER MODULE:

Validate Update user


user Login
Status

Admin

Candidate
Details Search
Candidate
master

Candidate Candidate
Details Search applying
details
Software Requirement Specification

 A software requirements specification (SRS) is a comprehensive description of the


intended purpose and environment for software under development. The SRS fully
describes what the software will do and how it will be expected to perform. An SRS
minimizes the time and effort required by developers to achieve desired goals and also
minimizes the development cost. A good SRS defines how an application will interact
with system hardware, other programs and human users in a wide variety of real-world
situations.

o Requirements and specifications are very important components in the


development of any embedded system. Requirements analysis is the first step in
the system design process, where a user's requirements should be clarified and
documented to generate the corresponding specifications.

o There is a distinct difference between requirements and specifications. A


requirement is a condition needed by a user to solve a problem or achieve an
objective. A specification is a document that specifies, in a complete, precise,
verifiable manner, the requirements, design, behavior, or other characteristics of a
system, and often, the procedures for determining whether these provisions have
been satisfied. For example, a requirement for a car could be that the maximum
speed to be at least 120mph. The specification for this requirement would include
technical information about specific design aspects. Another term that is
commonly seen in books and papers is requirements specification which is a
document that specifies the requirements for a system or component. It includes
functional requirements, performance requirements, interface requirements,
design requirements, and development standards. So the requirements
specification is simply the requirements written down on paper.

 This project is aimed at developing a web-based and central record management of


customer and dealing of customer and vender. Some features of this system will be
creating account, storing application data, and Sales and purchase process, Different
customers under vendors and different vender under an organisation, storing details of
items purchase and sales by different vender and customer and finally keeping the
records of various item, customer, and vender. Reports may be required to be
generated for the use of the ADMIN group.
Main Modules of this system
The main modules of an online wedding planner system typically include:
 User Management Module
 User registration and login functionality
 Profile management for couples, wedding planners, and vendors
 Access control and permission settings

 Wedding Planning Module


 Wedding details management (date, time, location, guest list, etc.)
 Wedding budgeting and expense tracking
 Timeline and task management for wedding planning

 Vendor Management Module


 Vendor registration and listing (catering, photography, venues, etc.)
 Vendor review and rating system
 Integration with vendor services for booking and payment

 Guest Management Module


 Guest list management
 RSVP tracking and reminders
 Accommodation and travel arrangements for out-of-town guests

 Budgeting and Payment Module


 Budget allocation and tracking
 Payment gateway integration for vendor payments and wedding expenses
 Invoicing and receipt generation

 Communication Module
 Messaging system for couples, wedding planners, and vendors
 Email and SMS notifications for updates and reminders
 Integration with social media for wedding updates and sharing

 Reporting and Analytics Module


 Wedding planning progress tracking
 Budget and expense analysis
 Vendor performance evaluation

 Integration Module
 Integration with third-party services (payment gateways, social media, etc.)
 API for custom integrations and development
TOOLS AND PLATFORM

Hardware Requirements
 Servers: 2-3 high-performance servers with multiple CPUs, RAM, and storage.
 CPU: Quad-core or hexa-core processors (e.g., Intel Xeon or AMD Ryzen).
 RAM: 16-32 GB of DDR4 RAM or higher.
 Storage: 1-2 TB of SSD storage for faster data access.
 Database Server: A separate server for the database management system (DBMS).

Network Requirements

 Internet Connection: Fast and reliable internet connectivity (e.g., Fiber-optic or


cable).
 Network Infrastructure: Secure and scalable network infrastructure, including
routers, switches, and firewalls.
 Bandwidth: Sufficient bandwidth to support multiple concurrent users and data
transfers.

Software Requirements

 Operating System: The system should be compatible with multiple operating


systems, including Windows, macOS, and Linux.
 Web Server: A robust web server such as Apache, Nginx, or IIS to handle HTTP
requests and responses.
 Database Management System: A relational database management system such as
MySQL, PostgreSQL, or Microsoft SQL Server to store and manage data.
 Programming Languages: A combination of programming languages such as
HTML, CSS, JavaScript, PHP, Python, or Ruby to develop the system.
 Frameworks and Libraries: Utilize frameworks and libraries such as React,
Angular, Vue.js, or Laravel to simplify development and improve performance.
Platform Used

The development of Electronic goods manufacturer is done on Windows-11. Windows-11


is the platform form Microsoft for developing the application and other purposes. The web-
site is developed on Windows-11 can also run on other platform or other operating systems of
Microsoft like:-

 Windows-XP

Windows XP:

The most common editions of the operating system are Windows XP Home Edition, which is
targeted at home users, and Windows XP Professional, which offers additional features such
as support for Windows Server domains and two physical processors, and is targeted at power
users, business and enterprise clients. Windows XP Media Center Edition has additional
multimedia features enhancing the ability to record and watch TV shows, view DVD movies,
and listen to music. Windows XP Tablet PC Edition is designed to run stylus applications
built using the Tablet PC platform. Windows XP was eventually released for two additional
architectures, Windows XP 64-bit Edition for IA-64 (Itanium) processors and Windows XP
Professional x64 Edition for x86-64. There is also Windows XP Embedded, a component
version of the Windows XP Professional, and editions for specific markets such as Windows
XP Starter Edition.

Windows XP is known for its improved stability and efficiency over the 9x versions of Microsoft
Windows. It presents a significantly redesigned graphical user interface, a change Microsoft
promoted as more user-friendly than previous versions of Windows. A new software
management facility called Side-by-Side Assembly was introduced to avoid the "DLL hell" that
plagued older consumer-oriented 9x versions of Windows.It is also the first version of Windows
to use product activation to combat illegal copying, a restriction that did not sit well with some
users and privacy advocates. Windows XP has also been criticized by some users for security
vulnerabilities, tight integration of applications such as Internet Explorer 6 and Windows Media
Player, and for aspects of its default user interface. Later versions with Service Pack 2, Service
Pack 3, and Internet Explorer 7 addressed some of these concerns.
Windows –XP Editions :-

The two major editions are Windows XP Home Edition, designed for home users, and
Windows XP Professional, designed for business and power-users. XP Professional contains
advanced features that the average home user would not use. However, these features are not
necessarily missing from XP Home. They are simply disabled, but are there and can become
functional. These releases were made available at retail outlets that sell computer software,
and were preinstalled on computers sold by major computer manufacturers. As of mid-2008,
both editions continue to be sold. A third edition, called Windows XP Media Center Edition
was introduced in 2002 and was updated every year until 2006 to incorporate new digital
media, broadcast television and Media Center Extender capabilities. Unlike the Home and
Professional edition, it was never made available for retail purchase, and was typically either
sold through OEM channels, or was preinstalled on computers that were typically marketed
as "media center PCs".

Two different 64-bit editions were made available, one designed specifically for Itanium-
based workstations, which was introduced in 2001 around the same time as the Home and
Professional editions, but was discontinued a few years later when vendors of Itanium
hardware stopped selling workstation-class machines due to low sales. The other, called
Windows XP Professional x64 Edition, supports the x86-64 extension of the Intel IA-32
architecture. x86- 64 is implemented by AMD as "AMD64", found in AMD's Opteron and
Athlon 64 chips, and implemented by Intel as "Intel 64" (formerly known as IA-32e and
EM64T), found in Intel's Pentium 4 and later chips.

Internet Explorer 6 running in Windows XP Tablet PC Edition.

Windows XP Tablet PC Edition was produced for a class of specially designed


notebook/laptop computers called tablet PCs. It is compatible with a pen-sensitive screen,
supporting handwritten notes and portrait-oriented screens.
Microsoft also released Windows XP Embedded, an edition for specific consumer electronics,
set- top boxes, kiosks/ATMs, medical devices, arcade video games, point-of-sale terminals, and
Voice over Internet Protocol (VoIP) components. In July 2006, Microsoft released Windows
Fundamentals for Legacy PCs, a thin client version of Windows XP Embedded which targets
older machines (as early as the original Pentium). It is only available to Software Assurance
customers. It is intended for corporate customers who would like to upgrade to Windows XP to
take advantage of its security and management capabilities, but can't afford to purchase new
hardware.

User Interface :-

Windows XP features a new task-based graphical user interface. The Start menu and search
capability were redesigned and many visual effects were added, including:

 A translucent blue selection rectangle in Explorer


 Drop shadows for icon labels on the desktop
 Task-based sidebars in Explorer windows ("common tasks")
 The ability to group the taskbar buttons of the windows of one application into one button
 The ability to lock the taskbar and other toolbars to prevent accidental changes
 The highlighting of recently added programs on the Start menu
 Shadows under menus (Windows 2000 had shadows under mouse pointers, but not menus)

Features of Windows –XP:-

 Built on the new Windows engine


 Enhanced device driver verifier
 Dramatically reduced reboot scenarios
 Improved code protection
 Side-by-side DLL support
 Windows File Protection
 Windows Installer
 Enhanced software restriction policies
 Pre-emptive multitasking architecture
 Scalable memory and processor support
 Encrypting File System (EFS) with multi-user support
 IP Security (IPSec)
 Kerberos support
 Smart card support
 Internet Explorer Add-on Manager
 Windows Firewall
 Windows Security Centre
 Attachment Manager
 Data Execution Prevention
 Windows Firewall Exception List
 Windows Firewall Application and Port Restrictions
 Fresh visual design
 ASR available
 EFS available
WEBSITE

A website is a collection of related web pages, including multimedia content, typically


identified with a common domain name, and published on at least one web server. Here are
some key aspects of a website:

Types of Websites:

 Static Website: A website that displays fixed content, with no user interaction or
dynamic updates.
 Dynamic Website: A website that displays dynamic content, with user interaction,
and updates in real-time.
 E-commerce Website: A website that allows users to purchase products or services
online.
 Blog: A website that features regularly updated articles, posts, or news.
 Portfolio Website: A website that showcases an individual's or company's work,
projects, or services.

Components of a Website:

 Domain Name: The unique address of a website, used to identify it on the internet.
 Web Server: The computer or machine that hosts a website and its content.
 Web Pages: The individual pages that make up a website, each with its own unique
content and URL.
 Content Management System (CMS): A software application that allows users to
create, edit, and manage website content.
 Database: A storage system that holds website data, such as user information,
content, and settings.

Features of a Website:

 User Interface (UI): The visual elements and layout of a website, designed to
provide a user-friendly experience.
 User Experience (UX): The overall experience of using a website, including
navigation, responsiveness, and accessibility.
 Search Engine Optimization (SEO): Techniques used to improve a website's
visibility and ranking on search engines.
 Security: Measures taken to protect a website from hacking, malware, and other
online threats.
 Scalability: The ability of a website to handle increased traffic and growth.
FLOW OF DATA IN A WEBSITE

FRONT END

Microsoft Visual Studio (VS) is a popular integrated development environment (IDE) for building,
debugging, and deploying a wide range of applications, including web, mobile, and desktop apps.

Key Features of Visual Studio:

 Code Editing: VS offers a powerful code editor with features like syntax highlighting,
code completion, and refactoring.
 Debugging: VS provides a robust debugging environment with features like breakpoints,
step-through debugging, and performance profiling.
 Project Management: VS allows you to manage your projects, including creating,
building, and deploying applications.
 Version Control: VS integrates with version control systems like Git, Team Foundation
Server (TFS), and Subversion (SVN).
 Testing: VS provides tools for testing, including unit testing, integration testing, and load
testing.
 Collaboration: VS enables collaboration with features like code review, team explorer,
and live sharing.
Architecture:

 Electron: VS Code is built on top of Electron, a framework for building cross-


platform desktop applications using web technologies.
 Node.js: VS Code uses Node.js as its runtime environment, allowing it to execute
JavaScript code and interact with the file system.
 TypeScript: VS Code is written in TypeScript, a superset of JavaScript that provides
optional static typing and other features.
 React: VS Code uses React to build its UI components, providing a flexible and
efficient way to render and update the interface.
 JSON: VS Code uses JSON (JavaScript Object Notation) to store its configuration
and settings.

Extension Architecture:

 Extension Manifest: Each extension has a manifest file that describes its metadata,
capabilities, and dependencies.
 Extension Host: The extension host is responsible for loading and
managing extensions, providing a sandboxed environment for them to run
in.
 API: VS Code provides an API that allows extensions to interact with the editor,
workbench, and other components.

Components Of Frontend:

The front-end, also known as the client-side, is the part of the website that users interact with
directly. It's responsible for the visual aspects and user experience of the website. The front-
end includes:

 User Interface (UI): The layout, design, and visual elements of the website, such
as buttons, forms, and images.
 User Experience (UX): The overall experience of using the website,
including navigation, responsiveness, and accessibility.
 Client-side scripting: Programming languages like JavaScript, HTML, and CSS that
run on the client's web browser.
 Web browsers: Google Chrome, Mozilla Firefox, Safari, etc.

Key Technologies For Frontend:

 HTML (Hypertext Markup Language)

HTML (Hypertext Markup Language) is the standard markup language used to create
web pages. It is the backbone of a website, providing the structure and content that
the web browser renders to the user.
Basic HTML Concepts:

• Elements: HTML elements are represented by tags, which are surrounded


by angle brackets (< >). Tags usually come in pairs, with the opening tag
preceding the content and the closing tag following the content.
• Tags: HTML tags are used to define the structure and content of a web
page. They can be used to create headings, paragraphs, links, images, and
other elements.
• Attributes: HTML attributes are used to provide additional information
about an element. They are added to the opening tag and consist of a name
and a value.

 CSS (Cascading Style Sheets)

CSS (Cascading Style Sheets) is a styling language used to control the layout and
appearance of web pages written in HTML or XML. It is a crucial component of web
development, allowing developers to separate presentation from structure and create
visually appealing and user-friendly interfaces.

Basic CSS Concepts:

• Selectors: Used to target specific HTML elements and apply styles to them.
• Properties: Define the styles to be applied to the selected elements, such
as color, font, or padding.
• Values: The specific values assigned to properties, such as a color code or
a font size.
• Rules: A combination of a selector, property, and value that defines a style.

 JavaScript

JavaScript is a high-level, dynamic, and interpreted programming language that is


primarily used for client-side scripting on the web. It is a popular language for
creating interactive web pages, web applications, and mobile applications.

basic concepts of JavaScript:

• Variables: In JavaScript, variables are used to store data. There are three
types of variables: var, let, and const.
• Data Types: JavaScript has several data types, including:
- Number: a numeric value, e.g. 42
- String: a sequence of characters, e.g. "hello"
- Boolean: a true or false value, e.g. true
- Array: a collection of values, e.g. [1, 2, 3]
- Object: a collection of key-value pairs, e.g. { name: "John", age: 30 }
- Null: a special value that represents the absence of any object value
- Undefined: a special value that represents an uninitialized variable
• Operators: JavaScript has various operators for performing
arithmetic, comparison, logical, and assignment operations.
• Control Structures: JavaScript has several control structures that allow you to
control the flow of your program:
- Conditional Statements: if, else, switch
- Loops: for, while, do-while
- Functions: reusable blocks of code that take arguments and return
values
• Functions: Functions are reusable blocks of code that take arguments
and return values. They are defined using the function keyword.
• Scope: Scope refers to the region of the code where a variable is defined
and can be accessed.
• Hoisting: Hoisting is a mechanism in JavaScript where variables and
functions are moved to the top of their scope, regardless of where they are
defined.
• Closure: A closure is a function that has access to its own scope and the
scope of its outer functions, even when the outer functions have returned.
• DOM: The Document Object Model (DOM) is a programming interface for
HTML and XML documents. It allows you to interact with and manipulate
the document's structure and content.
• Events: Events are actions that occur in a web page, such as clicking a button
or submitting a form. JavaScript allows you to respond to these events using
event listeners.

 React, Angular, Vue.js (popular front-end frameworks)

A frontend framework is a set of pre-built components, tools, and libraries that help
developers build user interfaces and client-side applications more efficiently and
effectively. Frontend frameworks provide a structure and a set of guidelines for
building web applications, making it easier to create responsive, interactive, and
maintainable interfaces.

Popular Frontend Frameworks:

• React: Developed by Facebook, React is a popular JavaScript library for


building user interfaces. It's known for its component-based architecture and
virtual DOM.
• Angular: Developed by Google, Angular is a full-fledged
JavaScript framework for building complex web applications. It's
known for its opinionated architecture and powerful features.
UI (User Interface):

UI (User Interface) refers to the visual elements and interactions that a user encounters when
interacting with a digital product, such as a website, application, or software. The goal of UI
is to provide an intuitive and user-friendly experience, making it easy for users to navigate
and achieve their goals.

Components Of A Website Fall Under UI (User Interface):

 Header: The top section of the webpage, which typically contains the title, logo,
and navigation menu.
 Body: The main content area of the webpage, which can contain text, images,
videos, and other multimedia elements.
 Footer: The bottom section of the webpage, which typically contains secondary
information, such as copyright notices, contact information, and social media links.
 Navigation: The links and menus that allow users to navigate to other
webpages within the website.
 Content: The text, images, videos, and other multimedia elements that make up
the webpage.
Entity Data Model:

The Entity data model (EDM) specifies the conceptual model (CSDL) of the data via the Entity-
Relationship model, which deals primarily with Entities and the Associations they participate in.
The EDM schema is expressed in the Schema Definition Language (SDL), which is an
application of XML. In addition, the mapping (MSL) of the elements of the conceptual schema
(CSDL) to the storage schema (SSDL) must also be specified. The mapping specification is also
expressed in XML.

Visual Studio also provides Entity Designer, for visual creation of the EDM and the mapping
specification. The output of the tool is the XML file (*.edmx) specifying the schema and the
mapping.

LINQ
LINQ query syntax is a set of query keywords built into the .NET framework (3.5 and higher)
that allow the developer to write SQL style commands in line straight in the code editor,
without the use of quotes.
BACK END

OVERVIEW OF SQL SERVER 2008:

Microsoft SQL Server is an application used to create computer databases. SQL Server
provides an environment to generate databases that can be accessed from workstations, the
Internet, or other media such as a personal digital assistant (PDA).

SQL Server Express Edition is a scaled down, free edition of SQL Server, which includes the
core database engine. While there are no limitations on the number of databases or users
supported, it is limited to using one processor, 1 GB memory and 4 GB database files. The
entire database is stored in a single .mdf file, and thus making it suitable for XCOPY
deployment. It is intended as a replacement for MSDE. Two additional editions provide a
superset of features not in the original Express Edition. The first is SQL Server Express with
Tools, which includes SQL Server Management Studio Basic. SQL Server Express with
Advanced Services adds full-text search capability and reporting services.

SQL Server 2008 was released on August 6, 2008 and aims to make data management self-
tuning, self organizing, and self maintaining with the development of SQL Server
technologies, to provide near-zero downtime. With the release of Microsoft SQL Server
2008, SQL Server has become more than just a relational database hidden behind your
corporate applications. Microsoft’s ambitious goal for SQL Server 2008 is to be an enterprise
data not a database platform, and Microsoft is positioning SQL Server 2008 to become the
provider for all your enterprise information needs. With its built-in integration, analysis, and
reporting services, SQL Server 2008 is more than ready to meet this expectation.

SQL Server 2008 also includes support for structured and semi-structured data, including
digital media formats for pictures, audio, video and other multimedia data. In current
versions, such multimedia data can be stored as BLOBs (binary large objects), but they are
generic bitstreams. Intrinsic awareness of multimedia data will allow specialized functions to
be performed on them.

Other new data types include specialized date and time types and a Spatial data type for
location-dependent data. Better support for unstructured and semi-structured data is provided
using the new FILESTREAM data type, which can be used to reference any file stored on the
file system. Structured data and metadata about the file is stored in SQL Server database,
whereas the unstructured component is stored in the file system. Such files can be accessed
both via Win32 file handling APIs as well as via SQL Server using T-SQL; doing the latter
accesses the file data as a BLOB. Backing up and restoring the database backs up or restores
the referenced files as well. SQL Server 2008 also natively supports hierarchical data,
includes T-SQL constructs to directly deal with them, without using recursive queries.

Spatial data will be stored in two types. A "Flat Earth" (GEOMETRY or planar) data type
represents geospatial data which has been projected from its native, spherical, coordinate
system into a plane. A "Round Earth" data type (GEOGRAPHY) uses an ellipsoidal model in
which the Earth is defined as a single continuous entity which does not suffer from the
singularities such as the international dateline, poles, or map projection zone "edges".
Approximately 70 methods are available to represent spatial operations for the Open
Geospatial Consortium Simple Features for SQL.

SQL Server includes better compression features, which also helps in improving scalability.
It enhanced the indexing algorithms and introduced the notion of filtered indexes. It also
includes Resource Governor that allows reserving resources for certain users or workflows. It
also includes capabilities for transparent encryption of data (TDE) as well as compression of
backups The version of SQL Server Management Studio included with SQL Server 2008
supports IntelliSense for SQL queries against a SQL Server 2008 Database Engine.

Some enhanced features in SQL Server 2008

1. Intellisense in the SQL Server Management Studio (SSMS). This has been previously
possible in SQL Server 2000 & 2005 with use of 3rd party tools like SQL Prompt. But these
tools are a horrible hack at best. Built-in intellisense helps new people to easily learn the
database schema.

2. Processing of delimited strings. We pass in delimited strings in the following manner:


exec sp_MySproc 'murphy,35;galen,31;samuels,27;colton,42'
In 2008, Microsoft introduced Table Value Parameters (TVP). The advantage here is that you can treat
the Table Type as a regular table, use it in joins, etc

3. Plan freezing. Sometimes SQL Server decides to change its plan on you, if you've achieved
your optimal query plan, now you can stick with it.

4. Resource governor. Basically it allows the DBA to specify how much resource (e.g.
CPU/RAM) each user is entitled. At the very least, it'll prevent people, with sparse SQL
knowledge from shooting off a query with a Cartesian product and bringing down the box.
Actually Sybase is still ahead of MS on this feature. Its ASE server allows you to prioritize one
user over another.

5. Filtered Indexes. This is another good feature it allows you to create an index while
specifying what rows are not to be in the index. For example, index all rows where Status !=
null. Theoretically, it'll get rid of all the dead weight in the index, allowing for faster queries.

6. Compression. The release will offer row-level and page-level compression. The compression
mostly takes place on the metadata. For instance, page compression will store common data for
affected rows in a single place.

The metadata storage for variable length fields is pushing things into bits (instead of bytes). For
instance, length of the varchar will be stored in 3 bits.

7. Auditing. It's storing changes to data for later review, debugging or in response to regulatory
laws. It's a thankless and a mundane task and no one is ever excited by the prospect of writing
triggers to handle it. SQL Server 2008 introduces automatic auditing.

8. C like math syntax. SQL Server support mathematics syntax.


e.g.: SET @i += 5. They finally let a C# developer on the SQL team.
9. Inline variable assignment. It has barely any modern syntactic.
Instead of:
DECLARE @myVar int SET
@myVar = 5
We can do it in one line:
DECLARE @myVar int = 5

10. Plug-in model for SSMS. SSMS 2005 also had a plug-in model, but it was not published,
so the few developers that braved that environment were flying blind. Apparently for 2008, the
plug- in model will be published and thousands add-ins will bloom.

You might also like