Untitled

 

 

  1. INTRODUCTION OF THE PROJECT

 

 

ONLINE REMINDER AND INVITATION SYSTEM

 

Individuals, organizations and businesses can use ONLINE REMINDER AND INVITATION SYSTEM for  online invitation & event planning service to plan, coordinate and manage a wide range of events online. ONLINE REMINDER AND INVITATION SYSTEM’s customers can use this system for baby announcements, birthday parties, company holiday parties, bridal showers, wedding invitations, sales parties, reunions and other events. This Website includes the ability to send emails, accept participation requests, gather RSVPs. Users may  send reminders.

 

From a technical perspective, ONLINE REMINDER AND INVITATION is a web-based application that allows consumers and businesses to use high-end, customized design templates to create, send and manage responses to online announcements and invitations. It offers its e-mail messaging engine in a Web-based, application services provider (ASP) hosted environment.

 

The focus of this online system is for online  invitation or announcement  and  for the user – people who want their event to be special.

 

This is regarding the project on sending Online Reminders and Invitations  of the users.

The programming language will be ASP.NET  and C#.

 

Functionality of the project

 

  1. Allow application to log in with two types of users (Admin in Business and User in private area)
  2. Allow admin to create an Event using various text fields, Combo box, Dropdown menu and others.
  3. Admin should be able to add, delete and update the events
  4. Send this event to the users to their mail and allow them to participate in this event
  5. If, any changes made in event such as update event venue, participant should be notify by sending a new mail
  6. Provide also some other main functionalists such as list events, print event page, search event…etc,.
  7. Above all details/events are stored in SQL Server
  8. project delivery with Professional Final project Report

 


 

  1. OBJECTIVES OF THE STUDY

 

ONLINE REMINDER AND INVITATION SYSTEM is The standard electronic invitation system that people WANT TO ADOPT. With the internet at our disposal, invitations are no longer a strictly a signed, sealed, and delivered affair. This web project provides online invitation services and use to create and coordinate their party invitations.

The Project is developed using Relational Database Management System (RDBMS) & Internet Services.

 

The project is on Database management so this project belongs to the category of RDBMS (relational database management system)

 

RDBMS:

 

A relational model is one in which following occurs:

  1. The data is perceived by the user as relations.
  2. The operators are at the user’s disposal.

 

The relational model is a way of looking at data – i.e it is a prescription for a way of representing data (namely, by means of tables), and a prescription

for a way of manipulating such a representation, by means of operators such as JOIN).

 

More precisely, the relational model is concerned with three aspects of data: data structure, data integrity, and data manipulation.

 

Relational database are powerful because they require few assumption about how data is related or how I will be extracted from the database. As a result, the same database can be viewed in many different ways.

 

An important feature of relational systems is that a single database can be spread across several tables. This differ from flat-file database in which each database itself-contained in a single table.

 

Facilities offered by RDBMS

  • Creation of files, Addition of data, modification of data, deletion of data.

 

  • Retrieving data collectively or selectively.

 

  • The data stored can be sorted or indexed at user’s discretion or direction.
  1. SYSTEM DESIGN

The design document that we will develop during this phase is the blueprint of the software.  It describes how the solution to the customer problem is to be built. Since solution to complex problems isn’t usually found in the first try, iterations are most likely required.  This is true for software design as well.  For this reason, any design strategy, design method, or design language must be flexible and must easily accommodate changes due to iterations in the design. Any technique or design needs to support and guide the partitioning process in such a way that the resulting sub-problems are as independent as possible from each other and can be combined easily for the solution to the overall problem. Sub-problem independence and easy combination of their solutions reduces the complexity of the problem. This is the objective of the partitioning process. Partitioning or decomposition during design involves three types of decisions: –

Define the boundaries along which to break;

Determine into how money pieces to break; and

Identify the proper level of detail when design should stop and implementation should start.

Basic design principles that enable the software engineer to navigate the design process suggest a set of principles for software design, which have been adapted and extended in the following list:

Free from the suffer from “tunnel vision.” A good designer should consider alternative approaches, judging each based on the requirements of the problem, the resources available to do the job.

The design should be traceable to the analysis model. Because a single element of the design model often traces to multiple requirements, it is necessary to have a means for tracking how requirements have been satisfied by the design model.

The design should not repeat the same thing. Systems are constructed using a set of design patterns, many of which have likely been encountered before. These patterns should always be chosen as an alternative to reinvention. Time is short and resources are limited! Design time should be invested in representing truly new ideas and integrating those patterns that already exist.

The design should “minimize the intellectual distance” between the software and the problem as it exists in the real world. That is, the structure of the software design should (whenever possible) mimic the structure of the problem domain.

The design should exhibit uniformity and integration. A design is uniform if it appears that one person developed the entire thing. Rules of style and format should be defined for a design team before design work begins. A design is integrated if care is taken in defining interfaces between design components.

The design activity begins when the requirements document for the software to be developed is available. This may be the SRS for the complete system, as is the case if the waterfall model is being followed or the requirements for the next “iteration” if the iterative enhancement is being followed or the requirements for the prototype if the prototyping is being followed. While the requirements specification activity is entirely in the problem domain, design is the first step in moving from the problem domain toward the solution domain. Design is essentially the bridge between requirements specification and the final solution for satisfying the requirements.

The design of a system is essentially a blueprint or a plan for a solution for the system. We consider a system to be a set of components with clearly defined behavior that interacts with each other in a fixed defined manner to produce some behavior or services for its environment. A component of a system can be considered a system, with its own components. In a software system, a component is a software module.

The design process for software systems, often, has two levels. At the first level, the focus is on deciding which modules are needed for the system, the specifications of these modules, and how the modules should be interconnected. This is what is called the system design or top-level design. In the second level, the internal design of the modules, or how the specifications of the module can be satisfied, is decided. This design level is often called detailed design or logic design. Detailed design essentially expands the system design to contain a more detailed description of the processing logic and data structures so that the design is sufficiently complete for coding.

Because the detailed design is an extension of system design, the system design controls the major structural characteristics of the system. The system design has a major impact on the testability and modifiability of a system, and it impacts its efficiency. Much of the design effort for designing software is spent creating the system design.

The input to the design phase is the specifications for the system to be designed. Hence, reasonable entry criteria can be that the specifications are stable and have been approved, hoping that the approval mechanism will ensure that the specifications are complete, consistent, unambiguous, etc. The output of the top-level design phase is the architectural design or the system design for the software system to be built. This can be produced with or without using a design methodology. Reasonable exit criteria for the phase could be that the design has been verified against the input specifications and has been evaluated and approved for quality.

A design can be object-oriented or function-oriented. In function-oriented design, the design consists of module definitions, with each module supporting a functional abstraction. In object-oriented design, the modules in the design represent data abstraction (these abstractions are discussed in more detail later). In the function-oriented methods for design and describe one particular methodology the structured design methodology in some detail. In a function- oriented design approach, a system is viewed as a transformation function, transforming the inputs to the desired outputs. The purpose of the design phase is to specify the components for this transformation function, so that each component is also a transformation function. Hence, the basic output of the system design phase, when a function oriented design approach is being followed, is the definition of all the major data structures in the system, all the major modules of the system, and how the modules interact with each other.

Once the designer is satisfied with the design he has produced, the design is to be precisely specified in the form of a document. To specify the design, specification languages are used. Producing the design specification is the ultimate objective of the design phase. The purpose of this design document is quite different from that of the design notation. Whereas a design represented using the design notation is largely to be used by the designer, a design specification has to be so precise and complete that it can be used as a basis of further development by other programmers. Generally, design specification uses textual structures, with design notation helping in understanding                                

 


System Development Life Cycle

 

Systems are created to solve problems. One can think of the systems approach as an organized way of dealing with a problem. In this dynamic world, the subject System Analysis and Design (SAD) mainly deals with the software development activities.

 

DEFINING A SYSTEM:-

 

A collection of components that work together to realize some objective forms a system. Basically there are three major components in every system, namely input, processing and output.

In a system the different components are connected with each other and they are interdependent. For example, human body represents a complete natural system. We are also bound by many national systems such as political system, economic system, educational system and so forth. The objective of the system demands that some output is produced as a result of processing the suitable inputs.


SYSTEM LIFE CYCLE:-

 

System life cycle is an organizational process of developing and maintaining systems. It helps in establishing a system project plan, because it gives overall list of processes and sub-processes required for developing a system.

 

System development life cycle means combination of various activities. In other words we can say that various activities put together are referred as system development life cycle. In the System Analysis and Design terminology, the system development life cycle means software development life cycle.

 

Following are the different phases of software development cycle:

 

  • System study
  • Feasibility study
  • System analysis
  • System design
  • Coding
  • Testing
  • Implementation
  • Maintenance

 


The Different Phases Of Software Development Life Cycle Are Shown Below.

 

 

FIG 1: SHOWING GENERAL LIFE CYCLE PROCESS AND PERCENTAGE OF TIME DEVOTED

 

 

 

 

A system analysis is a separation of a substance into parts for study and their implementation and detailed examination.


DATA MODELING

 

Data modeling defines primary data objects, composition of each data object, and attributes of the object, relationships between each object and other objects and between objects and the processes.

List of Tables:

Admin Table: To store admin details.

Field Name Type Constraint Description
Admin _Id Char (30) Primary key Administrator ID
Password Char (30) Not null Password
Email_Id Char (30) Not Null Email ID

 

User Master Table : To store users details.

Field Name Type Constraint Description
User _ID Char (30) Primary Key User ID
Username Char (30) Not Null User Name
Email_Id Char (80) Not Null Email ID
Password Char (30) Not Null Password
Mobile _No Number Not Null Contact No
Gender Char (10) Not Null Gender
Address Char (50) Not Null Address

 

Event Master: To store events details.

Field Name Type Constraint Description
User_id Char (30) Not Null User ID
Event Type Char (30) Not Null Event type
Event name Char (30) Not Null Name of the event
Event date Date Not Null Date of event
Time Date Not Null Time
Address Char (30) Not Null Revenue
Description Char (200) Not Null Description about event

 

User Contact Master: To store details of the guests ir contact persons of the user who have created events.

Field Name Type Constraint Description
User _id Char (50) Not Null User ID
Contact_id Char (50) Not Null Contact ID
Contact_Person Char (50) Not Null Contact Person
Email ID Char (50) Not Null Email ID
Mobile_No Char (50) Not Null Mobile
Gender Char (50) Not Null Gender
Address Char (50) Not Null Addresss

 

 

Send_Message Table: To store date and status of the messages send by the users through .

Field Name Type Constraint Description
User ID Char (30) Not Null User ID
Guest_ID Char (30) Not Null Guest ID
Event_ID Char (30) Not Null Event ID
Status Char (30) Not Null Status of the event
Message Char (30) Not Null Message
Date_of _event Char (200) Not Null Date of Event

 

Feedback Table: To store feedback details given by the users.

Field Name Type Constraint Description
Sr No Char (30) Not Null Feed back _No
Name Char (30) Not Null Name
Email_ID Char (30) Not Null Email_Id
Mobile_No Number (10) Not Null Mobile No
Phone_No Char (30) Not Null Phone No
Comments Char (200) Not Null Comments
Comments_Date Date Not Null Comments Date

 

Event_Participant Table: To store details of the users who want to participate in the event.

Field Name Type Constraint Description
Event_ID Char (30) Not Null Event ID in which general user want to participate
General_ID Char (30) Not Null Generl user ID
Date Char (30) Not Null Date
Status Char (30) Not Null Status of the request whether invited or not.

 

 

General User: These are general user who visit the site and want to participate in the events before participation. They should be the registered users.

Field Name Type Constraint Description
General use_Id Char (30) Primary Key General use_Id
Name Char (30) Not Null Name
Password Char (30) Not Null Password
Gender Char (30) Not Null Gender
Address Char (30) Not Null Address
Mobile No Number Not Null Mobile No

 


ENTITY RELATIONSHIP DIAGRAM (ERD)

 

Entity – Relationship Diagram: This depicts relationship between data objects. The attribute of each data objects noted in the entity- relationship diagram can be described using a data object description. Data flow diagram serves two purposes:

 

  1. To provide an indication of how data are transformed as they move through the system.
  2. To depict the functions that transformation the data flow.

 

Data Objects: A data object is a representation of almost any composite information that must be understood by the software. By composite information, we mean something that has a number of different properties or attributes. A data object encapsulates data only there is no reference within a data object to operations that act on the data.

 

Attributes: Attributes define the properties of a data object and take on one of three different characteristics. They can be used to:

Name an instance of data object.

Describe the instance.

Make reference to another instance in other table.

 

Relationships:  Data objects are connected to one another in a variety of different ways. We can define a set of object relationship pairs that define the relevant relationships.

 


 

  • CARDINALITY AND MODALITY:

 

  • Cardinality:

The data model must be capable of representing the number of occurrences of objects in a given relationship. The cardinality of an object relationship pair is

  • One-T0-One (1:1): An occurrence of object ‘A’ can relate to one and only one occurrence of object ‘B’ and vice versa.
  • One-To-Many (1:N): One occurrence of object ‘A’ can relate to one or may occurrences of object ‘B’ but an occurrence of object ‘B’ can relate to only one occurrence of object ‘A’.
  • Many-To-Many (M: N): An occurrences of ‘B’ and an occurrence of ‘B’ can relate to one or many occurrence of  ‘A’.

 

  • Modality:

The modality of a relationship is zero if there is no explicit need for the relationship to occur or the relationship is optional. The Modality is one if the occurrence of the relationship is mandatory.

The object relationship pair can be represented graphically using the Entity Relationship Diagrams. A set of primary components are identified for the Entity Relationship Diagram,

  1. Attributes,
  2. Relationships and
  3. Various Type Indicators.

The primary purpose of the Entity Relationship Diagram is to represent data objects and their relationships.


 

  1. E-R DIAGRAM
  2. DATA FLOW DIAGRAM

 

 

CONTEXT LEVEL DFD FOR

ONLINE REMINDER AND INVITATION SYSTEM

 


 

Ist LEVEL DFD FOR EVENT MANAGEMENT SYSTEM

 

 

 

 


IInd LEVEL DFD for User & Admin Login

 

 


IInd LEVEL DFD For Participants

 

 

 


MODEL

WaterFall Model Design

Waterfall approach was first SDLC Model to be used widely in Software Engineering to ensure success of the project. In “The Waterfall” approach, the whole process of software development is divided into separate phases. In Waterfall model, typically, the outcome of one phase acts as the input for the next phase sequentially.

 

Following is a diagrammatic representation of different phases of waterfall model.

 


  1. Use Case Diagrams

 

A use case is a methodology used in system analysis in identify, clarify, and organize system requirements. The use case is made up of a set of possible sequences of interactions between systems and users in a particular environment and related to a particular goal.

 

 

 

 

 

 


  1. MODULES

 

Project Plan, Design & Approach

The proposed project will have its main page and will be mainly divided into partially dependent and partially independent modules as:

  1. LOGIN FORM 
  2. HOME FORM
  3. ABOUT US
  4. CONTACT US
  5. FEEDBACK
  6. ADMIN LOGIN
  7. SEARCH EVENTS
  8. ADD EVENTS
  9. DELETE EVENTS
  10. ADD GUESTS DETAILS
  11. MESSAGE FOR EVENTS
  12. PARTICIPATE IN EVENTS
  13. REQUEST FOR PARTICIPATION
  14.  DISPLAY EVENTS

 

**These modules are described below**

  1. LOGIN MODULE

It is first page that is displayed , if user and admin wants to edit information into the user panel . Password will be hidden to the external viewer.

Along with then the form has two buttons, “OK” and “EXIT”. Clicking on “OK”, the execution moves forward to the second form.There are two types of users for this project one is admin and second is administrator.

User can add Events Like:

  • Birthday Party
  • Marriage Party
  • Reception
  • Personal Occasions
  • Family and Friends Gatherings

 

Admin can add events like :

  • General Meeting
  • Marketing Meets
  • Sales Meetings
  • Coorporate Events

 

  1. MASTER PAGE

Master Page is the main design page in the website. All the other webpages in project are linked together by this page only. Pathways to all the other forms go through this module.

  1. EVENT DETAILS

Event details are added in this modules .Users and Administrators can add Events.If a users login as an Administrator or User his session starts on the login.He can add his events , Modify the existed events added by him.

  1. SEARCH MODULE

Display form contains a GridView to display the Evets.This page is linked with he master page.

  1. PATICIPANTS MODULE

General users can visit and see the existed events. They can request for participation after registration.Then they are responded by the user or admin who had created that event.

6.MESSAGING MODULE

In this module event creators can send messages to their guests.

 

7.GUESTS  MODULE

In this module event creators can store their guests details.These details are updated by the users who create treir events.

  1. Validation of Data Entered by the User & Error Handling

In this module, the validity of data entered by the user during the various business processes is checked through various validation checks. For example, there should not be any characters entered in the numeric fields, likewise if there is any error occurs than it should handle that particular error and give the required messages.

 

  1. Feedback

 

This module keeps track of all the feedbacks given by the users for future response.

 

Input to the project

Login Module- This is first module in the project used as authentication module. This module takes following input-

  • User Name
  • Password
  • Type

 

Event Module-this module contain complete information for coordinated event. It takes the following inputs.

  • Event Id
  • Event Name
  • Event Type
  • Venue
  • Date
  • Time

Guest Module-this module contain complete information of the guests. It takes the following inputs.

  • Genera User Id
  • Event Name
  • Event ID
  • Address
  • Email ID

 

Output of the project

Event Module: Give Event name to give complete information of coordinated event such as date, time, name and coordinator name.

Guest Module : To show guest details.

Users Details : To  show users details.

 

  1. Report Generation

 

Data report provides data access from lot of data source like Access, oracle, Dbase, Sybase, Paradox and SQL Server.

Data report can public report the window in a variety of formats, data report can be integrated with visual basic.net.

Data report access data through

  1. Direct database file.
  2. Data report Query designer file
  3. Data report dictionary file.

Features of data report

  • Data report is an excellent reporting tool, which can be used to prepare efficient and professional looking reports writing.
  • Data reports remains the market leader and defects standard for business and corporate report writing.
  • Data report now bundled over 150 leading software packages including Microsoft back office & visual studio packages together with ERP and accounting packages from different vendors.
  • Data report developer interface have been designed to work with most popular windows development tools.

The following reports will print through Data report

Faculty report– this report contain complete information of faculty that coordinated the events.

Event report-This report show the complete information about event.


  1. TOOLS / PLATFORM, HARDWARE AND SOFTWARE REQUIREMENT SPECIFICATION

 

Tools:                        ASP.Net, GUI

Front-End                   C#.net 2010

Back-End                    SQL Server 2008

Hardware:                   VDU, CPU, Keyboard, Mouse etc.

  • P-4 Processor having (550 to 933 MHZ)
  • 256 MB RAM
  • 20 GB HD
  • 1.44 FDD
  • CD-ROM DRIVE 52X
  • ANTI CLEAR MONITOR
  • MODEM 36.6 KBPS
  • A GOOD QUALITY PRINTER

Front End: ASP.Net(C#)

 

ASP.NET: -ASP.NET is more than the next version of Active Server Pages (ASP); it is a unified Web development platform that provides the services necessary for developers to build enterprise-class Web applications.  ASP.NET builds on the programming classes of the .NET Framework, providing a Web application model with a set of controls and infrastructure that make it simple to build ASP Web applications. ASP.NET includes a set of controls that encapsulate common HTML user interface elements, such as text boxes and drop-down menus. These controls run on the Web server, however, and push their user interface as HTML to the browser. On the server, the controls expose an object-oriented programming model that brings the richness of object-oriented programming to the Web developer. ASP.NET also provides infrastructure services, such as session state management and process recycling, that further reduce the amount of code a developer must write and increase application reliability. In addition, ASP.NET uses these same concepts to enable developers to deliver software as a service. Using XML Web services features, ASP.NET developers can write their business logic and use the ASP.NET infrastructure to deliver that service via SOAP. For more information, see Soap Community Links. ASP.NET is a compiled. NET-based environment, you can author applications in any .NET compatible language, including Visual Basic, C# and JavaScript. Additionally, the entire .NET Framework is available to any ASP.NET application. Developers can easily access the benefits of these technologies, which include a managed Common Language Runtime environment, type safety, inheritance, and so on.

 

Back End: SQL SERVER 2005

 

SQL SERVER is a most popular relational database management system these days. Following are some of the main characteristics of SQL SERVER:

 

  • The SQL SERVER model eliminates all parent child relationships and instead represented all data in the database as simple row/column table of data values.

 

  • A relation is similar to table rows/columns of data values. The rows of a table are referred to as attributes. Several tuples of equal length place one below the other creates a table.

 

  • Each table is an independent entity and there is no physical relationship between tables.

 

  • Most data management system based on d model has a built in support for query languages like ANSI SQL. These queries are simple English construct that low adhoc data manipulation for a table.

 

  • Relational model of data management is based on set theory. Built-in query language is designed in the RDBMS, so that it can manipulate sets of data


 

11. SCHEDULING

 

Scheduling of a software project does not differ greatly from scheduling of any multi- task engineering effort. Therefore, generalized project scheduling tools and techniques can be applied with little modification to software projects.

 

Program evaluation and review technique (PERT) and critical path method (CPM) are two project scheduling methods that can be applied to software development. Both techniques are driven by information already developed in earlier project planning activities.

Estimates of Effort:-

 

  • A decomposition of the product function.
  • The selection of the appropriate process model and task set.
  • Decomposition of tasks.

 

Interdependencies among tasks may be defined using a task network. Tasks, sometimes called the project Work Breakdown Structure (WBS) are defined for the product as a whole or for individual functions.

Both PERT and CPM provide quantitative tools that allow the software planner to (1) determine the critical path-the chain of tasks that determines the duration of the project; (2) establish “most likely” time estimates for individual tasks by applying statistical models; and (3) calculate “boundary times” that define a time window” for a particular task.

Boundary time calculations can be very useful in software project scheduling. Slippage in the design of one function, for example, can retard further development of other functions. It describes important boundary times that may be discerned from a PERT or CPM network: (I) the earliest time that a task can begin when preceding tasks are completed in the shortest possible time, (2) the latest time for task initiation before the minimum project completion time is delayed, (3) the earliest finish-the sum of the earliest start and the task duration, (4) the latest finish- the latest start time added to task duration, and (5) the total float-the amount of surplus time or leeway allowed in scheduling tasks so that the network critical path maintained on schedule. Boundary time calculations lead to a determination of critical path and provide the manager with a quantitative method for evaluating progress as tasks are completed.

Both PERT and CPM have been implemented in a wide variety of automated tools that are available for the personal computer. Such tools are easy to use and take the scheduling methods described previously available to every software project manager.

 

 

 

  1. SECURITY AND VALIDATION CHECKS

 

In this project we have used different validation checks. While entering the date into the form it will check for the name of the client is properly filled & it should not be null.

 

Whenever we enter the data for the new customers will automatically check the details from the customers table.

 

Almost for all fields we have used the validations, for example  if name of the fields requires the text type of data then it will check for the string and if the data is numeric then it will check if the number entered is proper numeric or not.

 

ASP.NET Provides Security

  • Evidence-based security (authentication)
  • Based on user identity and code identity
  • Configurable policies
  • Imperative and declarative interfaces


  1. SCOPE OF FUTURE APPLICATION

 

 

The whole project as we have seen is totally based upon the database maintenance. This could be the most vital thing that the Indian industry asks for these days. This phenomenon is not only confined to big industries, but amazingly what that a common man deals with everyday in his life.. Not only has their database had to upgrade very often. There is no denying the fact that one can say that the company’ progress solely depends on how fast the database accessing goes on.

 

Certainly database accessing has given boon to the companies if Indian industries and will have major role in upcoming of leading industries. Database accessing is what each firm will ask for in the coming future. Database is what they required in each field.

Therefore the database is the future of computer industry.

 

 


 

 

  1. BIBLIOGRAPHY

 

 

  1. NET –           Jamew Foxall

 

  1. Fundamentals Of Software Engineering –           Rajib Mall

 

  1. Software Engineering –           K.Aggarwal  & Yogesh Singh

 

  1. NET Projects                                        –           Tony  Martin, Dominic Selly

 

  1. NET Professional Projects                   –           Kuljit Kaur, Pooja Bembey

 

  1. Using SQL-SERVER 2005             –           Microsoft publication

 

  1. SQL-SERVER 2005             –           BPB publication