- 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
- Allow application to log in with two types of users (Admin in Business and User in private area)
- Allow admin to create an Event using various text fields, Combo box, Dropdown menu and others.
- Admin should be able to add, delete and update the events
- Send this event to the users to their mail and allow them to participate in this event
- If, any changes made in event such as update event venue, participant should be notify by sending a new mail
- Provide also some other main functionalists such as list events, print event page, search event…etc,.
- Above all details/events are stored in SQL Server
- project delivery with Professional Final project Report
- 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)
A relational model is one in which following occurs:
- The data is perceived by the user as relations.
- 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.
- 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
The Different Phases Of Software Development Life Cycle Are Shown Below.
A system analysis is a separation of a substance into parts for study and their implementation and detailed examination.
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.
|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.
|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.
|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|
|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.
|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 .
|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.
|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.
|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.
|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:
- To provide an indication of how data are transformed as they move through the system.
- 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:
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’.
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,
- Relationships and
- Various Type Indicators.
The primary purpose of the Entity Relationship Diagram is to represent data objects and their relationships.
- E-R DIAGRAM
- 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
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.
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.
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:
- LOGIN FORM
- HOME FORM
- ABOUT US
- CONTACT US
- ADMIN LOGIN
- SEARCH EVENTS
- ADD EVENTS
- DELETE EVENTS
- ADD GUESTS DETAILS
- MESSAGE FOR EVENTS
- PARTICIPATE IN EVENTS
- REQUEST FOR PARTICIPATION
- DISPLAY EVENTS
**These modules are described below**
- 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
- Personal Occasions
- Family and Friends Gatherings
Admin can add events like :
- General Meeting
- Marketing Meets
- Sales Meetings
- Coorporate Events
- 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.
- 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.
- SEARCH MODULE
Display form contains a GridView to display the Evets.This page is linked with he master page.
- 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.
In this module event creators can send messages to their guests.
In this module event creators can store their guests details.These details are updated by the users who create treir events.
- 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.
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
Event Module-this module contain complete information for coordinated event. It takes the following inputs.
- Event Id
- Event Name
- Event Type
Guest Module-this module contain complete information of the guests. It takes the following inputs.
- Genera User Id
- Event Name
- Event ID
- 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.
- 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
- Direct database file.
- Data report Query designer file
- 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.
- 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#)
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
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.
- 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
- 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.
- NET – Jamew Foxall
- Fundamentals Of Software Engineering – Rajib Mall
- Software Engineering – K.Aggarwal & Yogesh Singh
- NET Projects – Tony Martin, Dominic Selly
- NET Professional Projects – Kuljit Kaur, Pooja Bembey
- Using SQL-SERVER 2005 – Microsoft publication
- SQL-SERVER 2005 – BPB publication