Anda di halaman 1dari 19

Mini Project Report Online Discussion Forum By

Under the Guidance of Submitted to the name of the Institute, IGNOU In partial fulfillment of the requirements for the degree of

Master of Computer Applications (MCA)

Indira Gandhi National Open University Maidan Garhi New Delhi 110068

CERTIFICATE OF AUTHENTICATED WORK

This is to certify that the project report entitled Online Discussion Forum submitted to Indira Gandhi National Open University in partial fulfillment of the requirement for the award of the degree of MASTER OF COMPUTER APPLICATIONS (MCA) is an original work carried out by Mr. Name of the Student, enrolment no. 000000000, under my guidance. The matter embodied in this project is authentic and is genuine work done by the student and has not been submitted whether to this University or to any other University / Institute for the fulfillment of the requirement of any course of study.

....................................... Signature of the Student Date: .

............................................ Signature of the Counselor Date:

Name and Address Of the Student

Name, Designation and Address of the Counselor

ABSTRACT

Online Reminder is primarily meant for an individual who is interested in getting his reminders on various occasions to his email and is intended to enable the members of the system to add, view, delete reminders for various occasions using an online web-based interface through the system. In the process, the reminders set by user would be handled by the system itself. Through this way an email alert will be send by system to the users email address. By successfully implementing the Online Reminder, a substantial knowledge has been acquired regarding the implementation of a dynamic web based database system using open source technologies. This knowledge will be useful in the future in creating any type of e-commerce application or online database systems in the web.

ACKNOWLEDGEMENT

I would like to thank my project guide, Mr. Name for his valuable guidance and advice. Besides, I would like to thank the authority of the centre, IGNOU Study Centre for providing me with a good environment and facilities to complete this project. Finally, an honorable mention goes to my family and friends for their understanding and support in completing this project, without which this endeavor could not have been successful.

TABLE OF CONTENTS
Page CHAPTER 1: INTRODUCTION 1.1 Background 1.2 Objective 1.3 Purpose, Scope and Applicability 1.3.1 Purpose 1.3.2 Scope 1.4 Achievements 1.5 Organization of Report CHAPTER 2: SERVEY OF TECHNOLOGY CHAPTER 3: REQUIREMENTS AND ANALYSIS 3.1 Problem Definition 3.2 Requirement Specification Table of contents 3.3 Planning and Scheduling 3.3.1 GANTT Chart 3.3.2 PERT Chart 3.4 Software and Hardware Requirements 3.4.1 Hardware Requirements 3.4.2 Software Requirements 3.5 Preliminary Product Description 3.6 Conceptual Models 3.6.1 Module Specifications 3.6.2 Screen Views 3.6.3 Data Flow Diagrams 10 10 10 10 10 11 11 12 13 15 15 16 16 51 51 52 53 53 53 54 61 61 61 63

CHAPTER 4: SYSTEM DESIGN 4.1 Basic Modules 4.2 Data Design 4.2.1 Schema Design 4.2.2 Data Integrity and Constraints 4.3 Procedural Design 4.3.1 Logic Diagrams 4.4 User Interface Design 4.5 Security Issues 4.6 Test Cases Design CHAPTER 5: IMPLEMENTATION AND TESTING 5.1 Implementation Approaches 5.2 Coding Details and Code Efficiency 5.2.1 Coding 5.2.2 Code Efficiency 5.3 Testing Approach 5.3.1 Unit Testing 5.3.2 Integrated Testing 5.4 Modifications and Improvements CHAPTER 6: RESULTS AND DISCUSSION 6.1 Test Reports 6.2 User Documentation CHAPTER 7: CONCLUSION 7.1 Conclusion 7.2 Limitations of the System 7.3 Future scope of the Project REFERENCES GLOSSARY 102

70 70 70 70 71 72 72 74 74 74 78 78 78 78 93 93 93 96 96 97 97 98 101 101 101 101

1. INTRODUCTION
The Online Reminder is a Web Based Reminder which efficiently handles the reminders set by its users. 1.1 Background Online Reminder is a Web Based Reminder, intended to enable the members of the system to set their reminders for example such as birthdays, Anniversaries, important days of the whole year, month. On that specific date, the system will send a reminder to the users email account on predefined date and inform the importance of that date. 1.2 Objective The Online Reminder would provide a basic set of features to its users to add, view and delete reminders in electronic form. 1.3 Purpose and Scope 1.3.1 Purpose Online Reminder would have the following goals. Provide an online user interface to add, view, delete events in different categories such as birthdays, Anniversaries, important days of whole year, month. Provide an online user interface to request for membership. Provide an online user interface to change user settings like password and their profiles. Provide an online user interface for administrator to manage the accounts and database. Enable the system to send email on the date set by its member to their email account.

1.3.2 Scope The main scope and deliverables of the project would be to: Understand and prepare detailed requirement and specifications Prepare high level and detailed design specifications of the system Prepare Test Plan and Test cases Develop the system and coding Perform unit testing, integration and system testing Demonstrate a bug free application after suitable modification if needed.

1.4 Achievements By successfully implementing Online Reminder, a substantial knowledge has been acquired on the implementation of a dynamic web based database system using open source technologies. This knowledge will be useful in the future in creating any type of ecommerce application or online database systems in the web. The objective of Online Reminder was the creation of a Web Based Reminder for users which has been fulfilled. This system can be easily modified to serve the needs of any reminder.

1.5 Organization of Report This report is organized in seven chapters, as indicated in the Table of Contents. These chapters deal with the important aspects of the Systems Development Cycle. Each of the chapters is divided into Headings and Sub-Headings. Chapter 1 introduces the project, its background and purpose. The technologies used in the project and the reason thereof are explained in Chapter 2. Chapter 3 broadly deals with the requirements, analysis and planning of the project. All the design aspects have been dealt with in Chapter 4 including schema design, interface design, security and test cases. The actual implementation has been discussed in Chapter 5, which includes coding and testing of the working of the system. Chapter 6 discusses the test reports and project documentation and finally the conclusions have been drawn in Chapter 7. At the end of the report, the references made and the glossary has been included.

2. SURVEY OF TECHNOLOGY
In a web based application like Online Reminder, there is a scope for a large number of platforms, languages, web servers and frameworks to choose from. Before selecting from this large array of technologies, the following aspects, which are characteristic to web based application like this one, have been kept in mind: Dynamic page generation Data validation Performance Reliability Scalability Security Portability Performance Time constraint Cost constraint

The various technologies available for consideration are as follows: Web Server : IIS

Backend Database : SQL Server Server-side programming : ASP.net Client-side programming : HTML, JavaScript, XML, VBScript Apart from above, there is lot of other technologies available. However these were not taken into consideration keeping the time constraint view of project.

3. REQUIREMENTS AND ANALYSIS


3.1 Problem Definition Online Reminder is conceived as a Web Based Reminder to adhere the reminder to its users. The users of such application can be anyone who is interested in having their reminders online on their email. Using Online Reminder user can access the system through the internet or Intranet and can add, view, delete their reminder for birthdays, anniversaries etc for which the system will send a reminder to their email account. This is an alternative to a personal assistant. his will enable user to have the reminder right in their mailbox if they are very much nterested to be online every time. 3.2 Requirement Specification The Online Reminder is a Web Based Reminder which efficiently handles the reminders set by its users. * Purpose The Software Requirements Specification (SRS) is designed to express the behavioral, erformance, and development requirements of Online Reminder and serves as the undamental requirements document for the development of the product. The Software equirements Specification includes a description of every input into the system, every utput from the system and all functions performed by the system in response to input or in upport of an output. This SRS meets IEEE-830 standards [8] and is the exclusive equirements document to be used in development of Online Reminder by the developers f his Web Based Reminder System; all design and testing choices must be compatible with his document. * Scope The scope of the SRS identifies the magnitude of what Online Reminder will cover. The Software Requirements Specification is intended for review by the client to ensure hat ll desired functional, performance and development Requirements have been stated in a ay such that they are: Readable: minimizes misinterpretations by developers and testers by using clear, concise, unambiguous, and complete language. Testable: will be used for strategies in Master Test Plan, Functional Test Plan, and other formal testing documents. Modifiable: changes easily as requirements change, accommodates Requirements Traceability Matrix, and Change Management Policy.

Useable for Operations: will be used as a living document after project is completed for operations and maintenance. Maintenance projects use the SRS to obtain a greater understanding of the system when changes need to be made. Traceable: works with the Requirements Traceability Matrix to ensure components, responsibilities, and test cases link to minimize impact for requirements change and localize defects. Buildable: Specifications will be used by developers to write code. Documentable: will be used to write user manual and technical manual to help train new staff.

* Product and its function Online Reminder is a Web Based Reminder which enables efficient handling of the Reminder related entries made by its users. Online Reminder enables members of the system to add, view and update reminder events on for a particular date using an online web-based interface and to request for email on the day prior to an event to their email account. In the process, much of reminder entries will be handled by system itself minimizing the presence of a personal assistant for busy persons. The system also enables administrator to manage the uses through an online interface. * Benefits and Goals The successful implementation of Online Reminder would not only enable the users to fully computerize his reminders but will also enable its members to add, view, update his reminders over the internet or over intranet and request for email to their email account. The goal is to develop a reliable, secure and easy-to-navigate web-based reminder system which would save time for the users. * Overview This SRS document is intended for the developers of the Online Reminder System and includes an overall description and specific requirements for the Online Reminder System. This document elaborates the product description, its functioning, intended users and assumptions made. The requirement part includes both the functional and non-functional requirements and also specifies interface requirements, user requirements, hardware and software requirements and logical database requirements. The SRS document also specifies the Input / Output formats, security specifications, results of fact finding, the data and functional models and process specifications. These include the Data Flow Diagrams, EntityRelationship Diagrams and Data Dictionary for the Online Reminder System.

Overall Description

Product Description Online Reminder is a Web Based Reminder and hence it will be require handling the job of the computerized reminder system along with some extensions which are necessary to make it function as a secure web based system. In this system, the members should be able to add, view, update, delete reminder after logging into the system and then request for mail to their email account. The system will keep track of all reminders for which email has to send or has been sent. Product Functioning The Administrator of the system will be able to manage user. The members can log in to the system and they will be taken to their members page which displays various functionality to add, view, update, delete reminders and change password. The members will be barred from the administrative roles. The users will first register themselves with the system. A confirmation message will be displayed on the home page for successful completion of registration. In this way a unique id for the particular user has been assigned by system which will be used for various purposes in the system. The user when he is a member can add, view, update and delete reminder events. While adding reminder a unique serial number for reminder event will be issued by the system and will be used to identify the id for mailing system, updating, deleting, and viewing. At the time of addition of the reminder the system sets its status as not sent. The system will select the entire reminder at 11:59 PM for the next day, for which reminders are to be send. After successful sending of mail the system will set status to sent.

Functions in the Project

The Online Reminder System has the following functionalities. Members Registration The user registers them to use system resources by entering their details. User Account Management The administrators activate or deactivate account for administrative purposes.

User verification/authentication and logout The user logs in with his/her username and password and is granted access to the system at their home page. A session tracking authentication is to be made for handling login and logout. Reminders Management The users/members after successful logging into the system will be able to add, view, update and delete reminders.

User Requirement A careful study of the requirement of the end user, i.e. the reminder system revealed the following specific user requirements: New user registration to the system Log in to the system Changing of Password and their personal setting Recovering of forgotten password Addition of new reminder in different categories Viewing of reminders Editing of old reminders Deleting of reminders

Administrative Requirement Maintaining the users record. Maintaining the Website Sending the email on required date automatically to remind user Addition of any new feature

Hardware Requirement

The server on which this project is to be installed may have the following minimum hardware requirements: Intel Core2duo 2.2 GHz or more 1 GB RAM At least 500MB free space CD/DVD writer for backup purpose

Leased line internet access with a bandwidth of at least 2 Mbps since this system is to be on internet The client side any low end computer with internet access facility can be used.

Software Requirement The software platform on the server side may be as follows: Microsoft SQL Server Relational Database Management System ASP.net server side scripting language IIS web server

Logical Database Requirement The database of Online Reminder should have a master table containing the reminder details and another table containing the members details. A third table will be required to eliminate user from administrator privileges. Keeping in view these requirements, the following data dictionary of the system is conceived:

Data Dictionary

Member =

username + Password + Name + Address + Phone + Email

Log =

username + Logtime

Service =

username + Category + Rdate + Msg + Status

Admin =

userid + Name + Password

Performance Requirements Because Online Reminder is used via the web interface, from a users point of view it should be enough to have an internet access. However, as the software is placed on a network server, usage of the software should not cause too much resource consumption. This is especially a concern of the members section where users are likely to interact with database. We must note that defining the optimal consumption level is difficult, but whenever possible such alternatives should be considered that will decrease resource usage. Design Constraints User Interface Constraints User Interface Constraints consists of 2 parts: the logical characteristics of each interface between the software product and its users and all the aspects of customizing (preferences) the interface with the person who is using the system. The systems Graphical User Interface (GUI) should adhere to Industry standards so that the GUI will look the same on a variety of web browsers such as Internet explorer, Firefox, Opera etc. The System shall have a free flowing interface to promote usability. The system will utilize buttons to login, logout etc. The system will utilize the column based fields interface to display information in tables. The System will use Cascading style sheet to maintain uniformity in

looks. It should take a user approximately 30 minutes to become familiar with the features of the system. Operational Constraints Below is a list of restrictions on how the product will run when its environment. The system must be available 24 hours a day, 7 days a week, and 365 days a year. The system shall allow all users to log in simultaneously. The system shall accommodate a minimum of 20 users daily. The system shall accommodate a minimum of 10000 users. Hardware Constraints Any hardware with specification equal to or higher than determined in Hardware Specifications may be used. There might be problems in operating the system with a lower specification.

Software Constraints A W3C compliant web browser must be installed on the system (Internet Explorer, Firefox, Opera etc). JavaScript must be enabled on the users web browser System must interface with MySQL Database Software System Attributes Security As per Appendix A to the SRS Reliability The system must be reliable as it processes data that is important for its clients. The method discussed in security also improves reliability. Maintainability

Because Online Reminder has been designed to be flexible, maintenance of the system should not require subsequent changes in the program code. It should be enough to change control information in webpage layout files. Portability As Online Reminder will work via Internet interface, it will work from various operating systems. Furthermore, as the web page creation is designed to be flexible, the system can be transferred to other environments. Extensibility The system can be easily extended, because the design is based on software components. Reusability The design based on software components this will increase also reusability, because software components may be utilized also for other purposes. Serviceability Because Online Reminder should be always available, the system should be quickly serviced whenever needed. Our recommendation is to implement a backup system that can replace the original system becomes unusable.

DATA FLOW DIAGRAM: LEVEL