Main Project 518

download Main Project 518

of 88

Transcript of Main Project 518

  • 8/3/2019 Main Project 518

    1/88

    SELF LEARNING

    INTRODUCTION

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    2/88

    SELF LEARNING

    1. INTRODUCTION

    1.1 Purpose:

    Online discussion forum. This is where ideas, information, and new

    material are shared, discussed, analyzed, built upon, etc. In many ways, the discussion

    forum mimics the classroom in a face-to-face environment. Discussion is one of the

    most effective ways to make students aware of the range of interpretations that are

    possible in an area of intellectual inquiry.

    1.2 Scope:

    This application is very useful for students who are going to develop or

    learn .NET. Without installing the visual studio software they can able to develop the

    application. This is a new concept which is not implemented yet. It is a powerful tool

    for .NET and HTML that makes people from suffering for installing which makes

    headache.

    These are typical forums which contains groups of contributors, usually registered

    members who submit topics for discussion(known as threads) and communicate with

    each other using publicly visible messages(referred to as posts) or private messaging.

    Forums usually exercise high access security and restrict anonymous visitors from posts

    allowing restricted viewership.

    1.3 Module Description:

    i. Update Profile:

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    3/88

    SELF LEARNING

    This webpage allows the user to change the details in his

    profile. All the changes made will be updated to the database of the web application.

    ii. Search Threads:

    The member of this site can search threads of their own

    interest among thousands of threads according to their search criteria.

    iii. Change Password:

    In this web form user can change his password whichwill be updated in the database.

    iv. View his threads:

    In this web form the user can view all the threads posted

    by him as well as the responses posted by other members

    v. Learn .NET and HTML:

    In this Module, we are going to give training

    through a website. For example, users doesnt have visual studio software

    for developing the .NET application, then using this application they can

    develop or learn .NET with two different languages like C#.NET and

    VB.NET. For developing this concept we are going use File Streams,

    AJAX (Accordion Panel, Tab control). Not only .NET we can design the

    Webpage using HTML. i.e., we are creating one more environment for

    people who are going to develop or Learn HTML.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    4/88

    SELF LEARNING

    1.4 Advantages and Disadvantages:

    i. Advantages:

    Forums save information posted on a particular topic for other

    people to see at any time, this creates a discussion environment.

    Everything that gets posted gets read again and again.

    The fact that the discussion isn't real time means that it rarely

    turns into heated arguments as people are given time to

    research and consider their comments before replying, this

    makes for mostly high-quality discussion.

    We can learn any time and anywhere.

    No need of installing the soft wares for corresponding courses.

    Time consuming is less.

    We can create environment as your wish.

    ii. Disadvantages:

    Although a minimum number of responses or posts were

    required there was no maximum number.

    We should have internet connection

    Some online discussion messages either no response from the

    students or the lecturer or very few responses by comparison to

    other messages.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    5/88

    SELF LEARNING

    LITERATURE SURVEY

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    6/88

    SELF LEARNING

    2 LITERATURE SURVEY

    2.1 Project Description:

    In this project first user need to register himself so that

    he can navigate to login page and enter into the website by mentioning his valid

    username and password. The user gets into default page where he can view the subjects

    on which he can add threads or reply for threads as well as the total number of threads

    posted on a particular topic. From default page he can navigate to home page where he

    can view all the threads and responses posted by the other members of the website.

    Students are more likely to utilize critical thinking skills Discussion boards are

    reflective in nature. They force students to read other perspectives and carefully

    consider a response.

    Students participate more regularly and in a more thoughtful manner than they

    would normally do in a face-to-face instructional setting, especially in large-enrollment

    classes The social aspects of the face-to-face classroom are very intimidating for many

    students, especially for ESL speakers, new students, and those who are simply shy or

    quiet.

    Online discussion boards offer these individuals a tool through which they can

    actively participate in the class without feeling the overwhelming anxiety they may feel

    with many sets of eyes on them.

    In addition, large-enrollment classes often suffer from a lack of student

    participation. Online discussion boards provide these classes with a tool through which

    conversations may take place more fluidly than in a lecture hall of 100 students.

    Students develop a stronger class community because there is a greater propensity

    for students to interact with one another on a discussion board than there is in a face-to-

    face setting; class community is often shown to be enhanced.

    Positive growth in class community is reflected through a sense of cohesion with

    other students, a higher degree of trust between students, an increased number of

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    7/88

    SELF LEARNING

    inquiries and questions between students and the instructor, and a general sense that the

    class is valuable and applicable to student needs (Rovai & Lucking, 2000).

    Students are more likely to cite research and class readings as students reflect upon

    what they want to write in a discussion board posting, they often integrate research or

    class readings with which they are familiar. This occurs much more frequently in

    discussion board postings than in face-to-face discussions, largely because of the extra

    time a student has to think about their response.

    Students achieve greater cognitive and exploratory learning the use of discussion

    boards is an active method of learning, contrasted with the traditional lecture model that

    is much more passive. As many research studies have shown, active learning is more

    powerful than passive learning at getting students to learn, retain, and apply course

    content to novel and practical situations.

    This active engagement with course content gives students an enhanced sense of

    empowerment ultimately leading to a more interested, motivated, and participatory

    student.

    Faculty members spend less time answering questions in face-to-face classes,

    questions are almost always posed, sometimes repeatedly, to the instructor,

    unnecessarily tying up their time. When using a discussion board, however, students

    often answer each others questions with little or no prompting from the instructor.

    Students have a greater sense of race and gender-based equality Race and gender-

    based bias can often creep into face-to-face classes more readily than it can into

    discussion boards. On a discussion board, the only distinguishing characteristic from

    which race and/or gender might be drawn from is a participant's name.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    8/88

    SELF LEARNING

    2.2 Existing System:

    In the present system, students who want to learn .Net,

    must and should require visual studio software i.e., .Net and specific hardware

    requirements. This makes people from suffering from installing, which makes headache

    and time consuming. And we have concept of posting the queries and answering the

    corresponding queries but, we dont have the concept of executing .Net programs at the

    same time through online.

    2.2 Proposed Statement:

    These are typical forums which contains groups of

    contributors, usually registered members who submit topics for discussion(known as

    threads) and communicate with each other using publicly visible messages(referred to

    as posts) or private messaging. Forums usually exercise high access security and restrict

    anonymous visitors from posts allowing restricted viewer ship. This is a new concept

    which is not implemented yet. It is a powerful tool for .NET and HTML that makes

    people from suffering for installing which makes headache. Students can learn .Net

    from anywhere without bothering about software and hardware requirements.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    9/88

    SELF LEARNING

    REQUIREMENTS

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    10/88

    SELF LEARNING

    3. REQUIREMENTS

    3.1 Hardware Requirements:

    PIV 2.8 GHz Processor and Above

    RAM 512MB and Above

    HDD 40 GB Hard Disk Space and Above

    3.2 Software Requirements:

    WINDOWS OS (XP / 2000 / 200 Server / 2003 Server)

    Visual Studio .Net 2005 Enterprise Edition

    Internet Information Server 5.0 (IIS)

    Visual Studio .Net Framework (Minimal for Deployment) version 2.0

    SQL Server 2005 Enterprise Edition

    3.3 Functional Requirements The system should be able to identify the existence of administrator and give

    appropr In the online learning environment, the discussion takes on a new level of

    importance for the physically dispersed learners to build a sense of community. It is

    where they connect with other learners; share their personal experience, opinions, and

    thoughts; explore new concepts; and deepen their understanding of the material.

    The instructor is a facilitator in the discussion. They serve to monitor the

    responses and ensure that the discussion is a safe place for all students to share.

    Facilitators should keep the discussion on track and help those that tend to stray, focus

    on the material being discussed.

    Here are eight discussion forum strategies instructors should employ to enhance

    students online experience:

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    11/88

    SELF LEARNING

    1. Post the rules of netiquette and behavior expectations at the start of class.

    2. Encourage students to introduce themselves and meet one another to form a learning

    community where they will feel safe to share and discuss.

    3. Develop discussion questions that allow the student to critically reflect on the

    material and synthesize it with their own experiences.

    4. Encourage students to participate early and often.

    5. Create their presence in the classroom but not interfere with the flow of the

    discussion.

    6. Intervene when the discussion is veering off in the wrong direction and help move the

    discussion back on track.

    7. Ensure that the discussion forum is a safe learning environment.

    8. Promote further thinking and reflection by posing more thoughtful and engaging

    questions within any given discussion.

    We are going to implementing a dynamic creation of application through a

    website. For example, users doesnt have visual studio software for developing the

    .NET application, then using this application they can develop or learn .NET with two

    different languages like C#.NET and VB.NET. For developing this concept we are

    going use File Streams, AJAX (Accordion Panel, Tab control). Not only .NET we can

    design the Webpage using HTML. i.e., we are creating one more environment for

    people who are going to develop or Learn HTML.

    This Document outlines the requirements for Social Web Forums. These are

    typical forums which allow users to add threads and reply to existing threads. It also

    allows users to search for existing threads. It provides all common tasks related to users

    such as registration, password recovery, change profile etc.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    12/88

    SELF LEARNING

    DESIGN

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    13/88

    SELF LEARNING

    4. DESIGN

    4.1 System Architecture:

    The waterfall model is a sequential development process, in which development is seen

    as flowing steadily downwards (like a waterfall) through the phases of requirements

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    14/88

    SELF LEARNING

    analysis, design, implementation, testing (validation), integration, and maintenance.In

    Royces original waterfall model, the following phases are followed in order:

    1) Requirements specification

    2) Design

    3) Construction (implementation or coding)

    4) Testing and Debugging

    5) Installation

    6)Maintenance

    To follow the waterfall model, one proceeds from one phase to the next

    in a purely sequential manner. For example, one first completes requirements

    specification, which are set in stone. When the design is fully completed, an

    implementation of that design is made by coders. Towards the later stages of this

    implementation phase, disparate software components produced are combined to

    introduce new functionality and remove errors.

    Thus the waterfall model maintains that one should move to a phase only when its

    proceeding phase is completed and perfected. However, there are various modified

    waterfall models (including Royce's final model) that may include slight or major

    variations upon this process.

    4.2 Data Flow Diagrams:

    A data flow diagram is graphical tool used to describe and

    analyze movement of data through a system. These are the central tool and the basis

    from which the other components are developed. The transformation of data from input

    to output, through processed, may be described logically and independently of physical

    components associated with the system. These are known as the logical data flow

    diagrams. The physical data flow diagrams show the actual implements and movement

    of data between people, departments and workstations. A full description of a system

    actually consists of a set of data flow diagrams. Using two familiar notations Yourdon,

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    15/88

    SELF LEARNING

    Gane and Sarson notation develops the data flow diagrams. Each component in a DFD

    is labeled with a descriptive name. Process is further identified with a number that will

    be used for identification purpose. The development of DFDs is done in several levels.

    Each process in lower level diagrams can be broken down into a more detailed DFD in

    the next level. The lop-level diagram is often called context diagram. It consists a

    single process bit, which plays vital role in studying the current system. The process in

    the context level diagram is exploded into other process at the first level DFD.

    The idea behind the explosion of a process into more process is that

    understanding at one level of detail is exploded into greater detail at the next level. This

    is done until further explosion is necessary and an adequate amount of detail is

    described for analyst to understand the process.

    Larry Constantine first developed the DFD as a way of expressing system

    requirements in a graphical from, this lead to the modular design.

    A DFD is also known as a bubble Chart has the purpose of clarifying system

    requirements and identifying major transformations that will become programs in

    system design. So it is the starting point of the design to the lowest level of detail. A

    DFD consists of a series of bubbles joined by data flows in the system.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    16/88

    SELF LEARNING

    DFD SYMBOLS:

    In the DFD, there are four symbols

    1. A square defines a source(originator) or destination of system data

    2. An arrow identifies data flow. It is the pipeline through which the information

    flows

    3. A circle or a bubble represents a process that transforms incoming data flow into

    outgoing data flows.

    4. An open rectangle is a data store, data at rest or a temporary repository of data

    Process that transforms data flow.

    Source or Destination of data

    Data flow

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    17/88

    SELF LEARNING

    Data Store

    CONSTRUCTING A DFD:

    Several rules of thumb are used in drawing DFDs:

    1. Process should be named and numbered for an easy reference. Each name should

    be representative of the process.

    2. The direction of flow is from top to bottom and from left to right. Data

    Traditionally flow from source to the destination although they may flow back to

    the source. One way to indicate this is to draw long flow line back to a source. An

    alternative way is to repeat the source symbol as a destination. Since it is used more

    than once in the DFD it is marked with a short diagonal.

    3. When a process is exploded into lower level details, they are numbered.

    4. The names of data stores and destinations are written in capital letters. Process and

    dataflow names have the first letter of each work capitalized

    A DFD typically shows the minimum contents of data store. Each data store should

    contain all the data elements that flow in and out.

    Questionnaires should contain all the data elements that flow in and out. Missing

    interfaces redundancies and like is then accounted for often through interviews.

    SAILENT FEATURES OF DFDs

    1. The DFD shows flow of data, not of control loops and decision are controlled

    considerations do not appear on a DFD.

    2. The DFD does not indicate the time factor involved in any process whether the

    dataflows take place daily, weekly, monthly or yearly.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    18/88

    SELF LEARNING

    3. The sequence of events is not brought out on the DFD.

    TYPES OF DATA FLOW DIAGRAMS

    1. Current Physical

    2. Current Logical

    3. New Logical

    4. New Physical

    CURRENT PHYSICAL:

    In Current Physical DFD proecess label include the name of

    people or their positions or the names of computer systems that might provide some of

    the overall system-processing label includes an identification of the technology used to

    process the data. Similarly data flows and data stores are often labels with the names of

    the actual physical media on which data are stored such as file folders, computer files,

    business forms or computer tapes.

    CURRENT LOGICAL:

    The physical aspects at the system are removed as mush as possible so that the

    current system is reduced to its essence to the data and the processors that transform

    them regardless of actual physical form.

    RULES GOVERNING THE DFDS

    PROCESS

    1) No process can have only outputs.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    19/88

    SELF LEARNING

    2) No process can have only inputs. If an object has only inputs than it must be

    a sink.

    3) A process has a verb phrase label

    DATA STORE

    1) Data cannot move directly from one data store to another data store, a

    process must move data.

    2) Data cannot move directly from an outside source to a data store, a process,

    which receives, must move data from the source and place the data into data

    store

    3) A data store has a noun phrase label.

    SOURCE OR SINK

    The origin and /or destination of data.

    1) Data cannot move direly from a source to sink it must be moved by a

    process

    2) A source and /or sink has a noun phrase land

    DATA FLOW

    1) A Data Flow has only one direction of flow between symbol. It may flow in

    both directions between a process and a data store to show a read before an

    update. The later is usually indicated however by two separate arrows since

    these happen at different type.

    2) A join in DFD means that exactly the same data comes from any of two or

    more different processes data store or sink to a common location.

    3) A data flow cannot go directly back to the same process it leads. There must

    be atleast one other process that handles the data flow produce some other

    data flow returns the original data into the beginning process.

    4) Data flow to a data store means update ( delete or change).

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    20/88

    SELF LEARNING

    5) A data Flow from a data store means retrieve or use.

    Data Flow Diagrams:

    Login:

    Req Request Display

    Check database

    Homepage:

    1) My Thread :

    Request Result

    Vivekananda Institute of Engineering & Technology Page No.86

    1.0

    Valid user?

    Valid password?

    Login

    Login

    Result

    2.0

    Name of person who

    login.

    User can see and edit

    the question and

    answers posted

    By the members.

    Home

    PageDisplay

    Thread

    Data

    Storage

  • 8/3/2019 Main Project 518

    21/88

    SELF LEARNING

    Check with Database

    2) Add Thread:

    Check the Database

    3) Change Profile:

    Vivekananda Institute of Engineering & Technology Page No.86

    3.0

    Select a Subject and

    post a query

    Add

    Thread

    Display message

    Whether Ur

    question added

    successfully or

    Data

    Storage

    Data

    Storag

    e

    4.0

    To Change profile

    Change Profile Profile

    changed

    successfull

    y.

  • 8/3/2019 Main Project 518

    22/88

    SELF LEARNING

    Update the Database

    4) Change Password:

    Check the Database

    4) Search Threads:

    Request Result

    Vivekananda Institute of Engineering & Technology Page No.86

    4.0

    To Change password weshould give old

    password and

    New Password

    ChangePassword

    Passwordchange

    successfu

    lly.

    Data

    Storag

    e

    Search

    Thread

    It takes u

    to display

    Thread

    Page.

    5.0

    Give The Name of a

    Thread which u want ToSearch and Click the

    Search button.

    Click on the Query which

    u wants to answer.

    Data

    Storag

    e

  • 8/3/2019 Main Project 518

    23/88

    SELF LEARNING

    4.3 UML Diagrams:

    Unified Modeling Language:

    Design Patterns brought a paradigm shift in the way object oriented systems are

    designed. Instead of relying on the knowledge of problem domain alone, design patterns

    allow past experience to be utilized while solving new problems. Traditional object

    oriented design (OOD) approaches such as Booch, OMT, etc. advocated identification

    and specification of individual objects and classes. Design Patterns on the other hand

    promote identification and specification of collaborations of objects and classes.

    However, much of the focus of recent research has been towards identification and

    cataloging of new design patterns. The effort has been to assimilate knowledge gained

    from designing systems of the past, in various problem domains. The problem analysis

    phase has gained little benefit from this paradigm. Most projects still use traditional

    object oriented analysis (OOA) approaches to identify classes from the problem

    description. Responsibilities to those classes are assigned based upon the obvious

    description of entities given in the problem definition.

    Pattern Oriented Technique (POT) is a methodology for identifying interactions

    among classes and mapping them to one or more design patterns. However, this

    methodology also uses traditional OOA for assigning class responsibilities. As a result,

    its interaction oriented design phase (driven by design patterns) receives its input in

    terms of class definitions that might not lead to best possible design.

    The second issue is to identify class collaborations. Techniques such as POT analyze

    interactions among different sets of classes as specified in the problem description.

    Such interacting classes are then grouped together to identify design patterns that may

    be applicable. However, as mentioned earlier, only the interactions among obvious

    classes are determined currently. Other interactions involving abstract classes not

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    24/88

    SELF LEARNING

    present in the problem or interactions that become feasible due to different

    responsibility assignments are not considered. We present some techniques that enable

    the designer to capture such interactions as well.

    Interaction Based Analysis and Design

    Top-down approach

    This approach is applicable to situations where the designer knows the solution to

    the given problem. It is true for problem domains that have well established high-level

    solutions and different implementations vary in low level details (for e.g. Enterprise

    Resource Planning (ERP) systems). Her main concern is to realize that solution in a

    way such that the implemented system has nice properties such as maintainability and

    reusability etc.

    Bottom-up approach

    This approach is applicable in scenarios where interactions in the problem domain

    are not well understood and need to be discovered and explored. This situation is a

    fundamental problem faced by the designers of object oriented systems. It relates to the

    fact that objects oriented analysis (OOA) does not help much in creating a solution to

    the problem at hand. The analysis phase is mainly concerned with enhancing the

    understanding of the problem domain. This knowledge is then later used by a problem

    solving approach to come up with a solution possessing good design properties. As aresult, at the end of the analysis phase the designer has a set of well defined components

    that need to be assembled together for realizing a solution. For instance, to build a route

    finder application the OOA phase helps in modeling the domain objects such as roads,

    vehicles, cities, addresses etc. but does not actually provide a solution for finding routes

    between two given addresses.Other formal techniques for specifying composition

    include Petri-net based models, automata-based models; temporal logics etc. from

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    25/88

    SELF LEARNING

    verification community and XQuery, XML constraint tools based techniques from data

    management community .

    Representation of Class Responsibilities

    Since we need to specify different alternative class responsibilities, as in bottom-up

    approach, a mechanism is required to document them in a machine interpretable format.

    Some of these responsibilities would get captured in the form of methods a class exports

    or methods it invokes on other classes. However, other responsibilities with respect to

    its interaction with other classes need to be explicitly specified. These may include pre-

    and post-conditions for different method invocations, other properties such as

    hasSameInterfaceAs , hidesInterfaceOf etc.

    Languages such as could be used as it is or extended for this purpose.

    Language for Specifying Design Patterns

    The approaches for OO Design proposed in this paper favor automatic techniques

    over manual ones for reasons described earlier. This means that we need a mechanism

    to be able to express design patterns in a format amenable to be read and interpreted by

    programs. Some attempts have been made at defining such pattern description

    languages [14, 13]. One of these or some variation of these could be used to express

    design patterns in a formal language.

    Comparison of Software Designs

    Once we have alternative designs available, they need to be compared to arrive at the

    best one.

    Each design may consist of multiple design patterns. The criteria here would not be

    to simply count the number of design patterns used but to evaluate the interaction

    between patterns and also between other design elements used. This would involve an

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    26/88

    SELF LEARNING

    understanding of good and bad design interactions and an ability to identify them in a

    given design. The final challenge would be to do it automatically.

    Structural Diagram

    Class Diagrams

    Class diagrams identify the class structure of a system, including the properties and

    methods of each class. Also depicted are the various relationships that can exist between

    classes, such as an inheritance relationship. The Class diagram is one of the most widely

    used diagrams from the UML specification.

    Object Diagram:

    Object diagrams model instances of classes. This type of diagram is used to describe

    the system at a particular point in time. Using this technique, you can validating the

    class diagram and it's multiplicity rules with real-world data, and record test scenarios.

    From a notation standpoint, Object diagrams borrow elements from Class diagrams.

    Component Diagram:

    Component diagrams fall under the category of an implementation diagram, a kind of

    diagram that models the implementation and deployment of the system. A Component

    Diagram, in particular, is used to describe the dependencies between various software

    components such as the dependency between executable files and source files. This

    information is similar to that within make files, which describe source codedependencies and can be used to properly compile an application.

    Deployment Diagram:

    Deployment diagrams are another model in the implementation diagram category.

    The Deployment diagram models the hardware used in implementing a system and the

    association between those hardware components. Components can also be shown on a

    Deployment diagram to show the location of their deployment. Deployment diagrams

    Vivekananda Institute of Engineering & Technology Page No.86

    http://www.dotnetcoders.com/web/learning/uml/diagrams/classdiagram.aspxhttp://www.dotnetcoders.com/web/learning/uml/diagrams/classdiagram.aspxhttp://www.dotnetcoders.com/web/learning/uml/diagrams/classdiagram.aspx
  • 8/3/2019 Main Project 518

    27/88

    SELF LEARNING

    can also be used early on in the design phase to document the physical architecture of a

    system.

    Behavioral Diagrams

    Use Case Diagram:

    Use Case diagrams identify the functionality provided by the system (use cases), the

    users who interact with the system (actors), and the association between the users and

    the functionality. Use Cases are used in the Analysis phase of software development to

    articulate the high-level requirements of the system. The primary goals of Use Case

    diagrams include:

    Providing a high-level view of what the system does

    Identifying the users ("actors") of the system

    Determining areas needing human-computer interfaces

    Use Cases extend beyond pictorial diagrams. In fact, text-based use case descriptionsare often used to supplement diagrams, and explore use case functionality in more

    detail.

    Sequence Diagram:

    Sequence diagrams document the interactions between classes to achieve a result,

    such as a use case. The Sequence diagram lists objects horizontally, and time vertically,

    and models these messages over time.

    Collaboration Diagram:

    Collaboration diagrams model the interactions between objects. This type of diagram

    is a cross between an object diagram and a sequence diagram. It uses free-form

    arrangement of objects which makes it easier to see all iterations involving a particular

    object.

    State chart Diagram:

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    28/88

    SELF LEARNING

    State diagrams, are used to document the various modes ("state") that a class can go

    through, and the events that cause a state transition.

    Activity Diagram:

    Activity diagrams are used to document workflows in a system, from the business

    level down to the operational level. The general purpose of Activity diagrams is to

    focus on flows driven by internal processing vs. external events

    Sequence Diagram:

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    29/88

    SELF LEARNING

    : u s e r r e g i s t e r L o g i n h o m e p a g e c a t e g o r i e s p o s t t h r e a d s s e a r c h t h r ea d su s e r d e t a i ls

    1 : s u c e s s f u l r e g i s t r a t io n

    2 : f a i l u r e3 : L o g i n

    4 : v a l i d u s e r

    6 : i n v a l i d u s e r

    5 : s t o r e u s e r d e t a i l s

    7 : v ie w c a t e g o r i e s

    8 : p o s t t h r e a d fo r c a t e g o r y

    9 : u s e r t h r e a d s c a n b e vi e w e d

    1 0 : s e a r c h o t h e r t h r e a d s

    1 1 : d o m o d i fi c a t i o n s t o u s e r p r o f il e

    1 2 : r e t u r n

    Use Case Diagram:

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    30/88

    SELF LEARNING

    registration

    home

    categories

    search threads

    post threads

    Login

    user

    Class Diagram:

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    31/88

    SELF LEARNING

    NewClass

    login id

    password

    sign()

    registration()

    home page

    view threads()

    modifications

    search for threads()

    add new threads()

    modify existing threads()

    if login id

    password are

    valid user()

    Collaboration Diagrams:

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    32/88

    SELF LEARNING

    5: 5:store user details

    user : actor

    rigister login

    home

    page

    catagori

    es

    post

    threads

    user

    details

    search

    threads

    1: 1:sucessful registration

    2: 2:failure

    3: 3:login

    4: 4:valid user

    6: 6invalidb user

    7: 7:view catagories

    9: 9:user tthreads can be viewed10: 10:modifications to user profile

    11: 11:search for other thread

    8: 8:post threads to catagory

    12: 12:return

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    33/88

    SELF LEARNING

    IMPLEMENTATION

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    34/88

    SELF LEARNING

    5. IMPLEMENTATION

    5.1 Front End:

    Microsoft.NET Framework

    The .NET Framework is a new computing platform that simplifies application

    development in the highly distributed environment of the Internet. The .NET

    Framework is designed to fulfill the following objectives:

    To provide a consistent object-oriented programming environment whether

    object code is stored and executed locally, executed locally but Internet-

    distributed, or executed remotely.

    To provide a code-execution environment that minimizes software deployment

    and versioning conflicts.

    To provide a code-execution environment that guarantees safe execution of

    code, including code created by an unknown or semi-trusted third party.

    To provide a code-execution environment that eliminates the performance

    problems of scripted or interpreted environments.

    To make the developer experience consistent across widely varying types of

    applications, such as Windows-based applications and Web-based applications.

    To build all communication on industry standards to ensure that code based on

    the .NET Framework can integrate with any other code.

    The .NET Framework has two main components: the common language runtime and

    the .NET Framework class library. The common language runtime is the foundation of

    the .NET Framework. You can think of the runtime as an agent that manages code at

    execution time, providing core services such as memory management, thread

    management, and remoting, while also enforcing strict type safety and other forms of

    code accuracy that ensure security and robustness. In fact, the concept of code

    management is a fundamental principle of the runtime. Code that targets the runtime is

    known as managed code, while code that does not target the runtime is known as

    unmanaged code. The class library, the other main component of the .NET Framework,

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    35/88

    SELF LEARNING

    is a comprehensive, object-oriented collection of reusable types that you can use to

    develop applications ranging from traditional command-line or graphical user interface

    (GUI) applications to applications based on the latest innovations provided by

    ASP.NET, such as Web Form-

    s and XML Web services.

    The .NET Framework can be hosted by unmanaged components that load the common

    language runtime into their processes and initiate the execution of managed code,

    thereby creating a software environment that can exploit both managed and unmanaged

    features. The .NET Framework not only provides several runtime hosts, but also

    supports the development of third-party runtime hosts.

    For example, ASP.NET hosts the runtime to provide a scalable, server-side environment

    for managed code. ASP.NET works directly with the runtime to enable Web Forms

    applications and XML Web services, both of which are discussed later in this topic.

    Internet Explorer is an example of an unmanaged application that hosts the runtime (in

    the form of a MIME type extension). Using Internet Explorer to host the runtime

    enables you to embed managed components or Windows Forms controls in HTML

    documents. Hosting the runtime in this way makes managed mobile code (similar to

    Microsoft ActiveX controls) possible, but with significant improvements that only

    managed code can offer, such as semi-trusted execution and secure isolated file storage.

    Features of the Common Language Runtime

    The common language runtime manages memory, thread execution, code execution,code safety verification, compilation, and other system services. These features are

    intrinsic to the managed code that runs on the common language runtime.

    With regards to security, managed components are awarded varying degrees of trust,

    depending on a number of factors that include their origin (such as the Internet,

    enterprise network, or local computer). This means that a managed component might or

    might not be able to perform file-access operations, registry-access operations, or other

    sensitive functions, even if it is being used in the same active application.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    36/88

    SELF LEARNING

    The runtime enforces code access security. For example, users can trust that an

    executable embedded in a Web page can play an animation on screen or sing a song, but

    cannot access their personal data, file system, or network. The security features of the

    runtime thus enable legitimate Internet-deployed software to be exceptionally feature

    rich.

    .NET Framework Class Library

    The .NET Framework class library is a collection of reusable types that tightly integrate

    with the common language runtime. The class library is object oriented, providing types

    from which your own managed code can derive functionality. This not only makes

    the .NET Framework types easy to use, but also reduces the time associated with

    learning new

    features of the .NET Framework. In addition, third-party components can integrate

    seamlessly with classes in the .NET Framework.

    For example, the .NET Framework collection classes implement a set of interfaces that

    you can use to develop your own collection classes. Your collection classes will blend

    seamlessly with the classes in the .NET Framework.

    Console applications.

    Scripted or hosted applications.

    Windows GUI applications (Windows Forms).

    ASP.NET applications.

    XML Web services.

    Windows services.

    For example, the Windows Forms classes are a comprehensive set of reusable types that

    vastly simplify Windows GUI development. If you write an ASP.NET Web Form

    application, you can use the Web Forms classes.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    37/88

    SELF LEARNING

    Client Application Development

    Client applications are the closest to a traditional style of application in Windows-based

    programming. These are the types of applications that display windows or forms on the

    desktop, enabling a user to perform a task. Client applications include applications such

    as word processors and spreadsheets, as well as custom business applications such as

    data-entry tools, reporting tools, and so on. Client applications usually employ

    windows, menus, buttons, and other GUI elements, and they likely access local

    resources such as the file system and peripherals such as printers.

    Another kind of client application is the traditional ActiveX control (now replaced by

    the managed Windows Forms control) deployed over the Internet as a Web page. This

    application is much like other client applications: it is executed natively, has access to

    local resources, and includes graphical elements.

    In the past, developers created such applications using C/C++ in conjunction with the

    Microsoft Foundation Classes (MFC) or with a rapid application development (RAD)

    environment such as Microsoft Visual Basic. The .NET Framework incorporates

    aspects of these existing products into a single, consistent development environment

    that drastically simplifies the development of client applications.

    Client Application Development

    Client applications are the closest to a traditional style of application in Windows-based

    programming. These are the types of applications that display windows or forms on the

    desktop, enabling a user to perform a task. Client applications include applications such

    as word processors and spreadsheets, as well as custom business applications such as

    data-entry tools, reporting tools, and so on. Client applications usually employ

    windows, menus, buttons, and other GUI elements, and they likely access local

    resources such as the file system and peripherals such as printers.

    Another kind of client application is the traditional ActiveX control (now replaced by

    the managed Windows Forms control) deployed over the Internet as a Web page. This

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    38/88

    SELF LEARNING

    application is much like other client applications: it is executed natively, has access to

    local resources, and includes graphical elements.

    In the past, developers created such applications using C/C++ in conjunction with the

    Microsoft Foundation Classes (MFC) or with a rapid application development (RAD)

    environment such as Microsoft Visual Basic. The .NET Framework incorporates

    aspects of these existing products into a single, consistent development environment

    that drastically simplifies the development of client applications.

    The Windows Forms classes contained in the .NET Framework are designed to be used

    for GUI development. You can easily create command windows, buttons, menus,

    toolbars, and other screen elements with the flexibility necessary to accommodate

    shifting business needs.

    For example, the .NET Framework provides simple properties to adjust visual attributes

    associated with forms. In some cases the underlying operating system does not support

    changing these attributes directly, and in these cases the .NET Framework automatically

    recreates the forms. This is one of many ways in which the .NET Framework integrates

    the developer interface, making coding simpler and more consistent.

    Unlike ActiveX controls, Windows Forms controls have semi-trusted access to a user's

    computer. This means that binary or natively executing code can access some of the

    resources on the user's system (such as GUI elements and limited file access) without

    being able to access or compromise other resources. Because of code access security,

    many applications that once needed to be installed on a user's system can now be safely

    deployed through the Web. Your applications can implement the features of a local

    application while being deployed like a Web page.

    Server Application Development

    Server-side applications in the managed world are implemented through runtime hosts.

    Unmanaged applications host the common language runtime, which allows your custom

    managed code to control the behavior of the server. This model provides you with all

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    39/88

    SELF LEARNING

    the features of the common language runtime and class library while gaining the

    performance and scalability of the host server.

    The following illustration shows a basic network schema with managed code running in

    different server environments. Servers such as IIS and SQL Server can perform

    standard operations while your application logic executes through the managed code.

    Server-side managed code

    ASP.NET is the hosting environment that enables developers to use the .NET

    Framework to target Web-based applications. However, ASP.NET is more than just a

    runtime host; it is a complete architecture for developing Web sites and Internet-

    distributed objects using managed code. Both Web Forms and XML Web services use

    IIS and ASP.NET as the publishing mechanism for applications, and both have a

    collection of supporting classes in the .NET Framework.

    XML Web services, an important evolution in Web-based technology, are distributed,

    server-side application components similar to common Web sites. However, unlike

    Web-based applications, XML Web services components have no UI and are not

    targeted for browsers such as Internet Explorer and Netscape Navigator. Instead, XML

    Web services consist of reusable software components designed to be consumed by

    other applications, such as traditional client applications, Web-based applications, or

    even other XML Web services. As a result, XML Web services technology is rapidly

    moving application development and deployment into the highly distributed

    environment of the Internet.

    If you develop and publish your own XML Web service, the .NET Framework provides

    a set of classes that conform to all the underlying communication standards, such as

    SOAP, WSDL, and XML. Using those classes enables you to focus on the logic of your

    service, without concerning yourself with the communications infrastructure required

    by distributed software development.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    40/88

    SELF LEARNING

    Finally, like Web Forms pages in the managed environment, your XML Web service

    will run with the speed of native machine language using the scalable communication of

    IIS.

    5.2 Back End:

    Our forums site provides commentary or news on a particular subject; and also

    functions as more personal online diaries. A typical forum combines text, images, and

    links to other forums, Web pages, and other media related to its topic. The ability for

    readers to leave comments in an interactive format is an important part of our forums.

    Our forums are primarily textual. This site also provides micro-foruming, which is

    another type of foruming, one which consists of forums with very short posts.

    The History:

    Foruming has become something of a big thing in the last few years, and some of the

    biggest and best known web forums attract the kind of traffic that even big name e-

    commerce sites would be jealous of.

    Web forums are more than pages of links - they tend to reflect the personalities of their

    owners. They are personal web pages, updated very often.

    They are the product of their owners' imaginations, interests and wit, and it's probably

    this personal touch which has made them so popular, especially for political issues.

    The word 'web forum' was coined by Jorn Barger, owner of the long-established and

    extremely popular Robot Wisdom web forum. One can get a lot more about the historyof web forums from his site at robotwisdom.com

    Vivekananda Institute of Engineering & Technology Page No.86

    http://www.bbc.co.uk/go/webwise/askbruce/articles/browse/blogging_1.shtml/ext/_auto/-/http:/www.robotwisdom.com/weblogshttp://www.bbc.co.uk/go/webwise/askbruce/articles/browse/blogging_1.shtml/ext/_auto/-/http:/www.robotwisdom.com/weblogs
  • 8/3/2019 Main Project 518

    41/88

    SELF LEARNING

    Creating Database:

    Microsoft SQL Server server management comprises a wide variety of

    administration tasks, including:

    Registering servers and assigning passwords.

    Reconfiguring network connectivity.

    Configuring standby servers.

    Setting server configuration options.

    Managing SQL Server messages. Etc

    In most cases, you do not need to reconfigure the server. The default settings for the

    server components, configured during SQL Server Setup, allow you to run SQL Server

    immediately after it is installed. However, server management is necessary in those

    situations where you want to add new servers, set up special server configurations,

    change the network connections, or set server configuration options to improve SQL

    Server performance.

    Creating a Database

    To create a database determines the name of the database, its owner (the user who

    creates the database), its size, and the files and file groups used to store it.

    Before creating a database, consider that:

    Permission to create a database defaults to members of the sysadmin and

    dbcreator fixed server roles, although permissions can be granted to other

    users.

    The user who creates the database becomes the owner of the database.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    42/88

    SELF LEARNING

    A maximum of 32,767 databases can be created on a server.

    The name of the database must follow the rules for identifiers.

    Three types of files are used to store a database:

    Primary files

    These files contain the startup information for the database. The primary files

    are also used to store data. Every database has one primary file.

    Secondary files

    These files hold all the data that does not fit in the primary data file. Databases

    do not need secondary data files if the primary file is large enough to hold all the

    data in the database. Some databases may be large enough to need multiple

    secondary data files, or they may use secondary files on separate disk drives to

    spread the data across multiple disks.

    Transaction log

    These files hold the log information used to recover the database. There must be

    at least one transaction log file for each database, although there may be more

    than one. The minimum size for a log file is 512 kilobytes (KB).

    When a database is created, all the files that comprise the database are filled with zeros

    to overwrite any existing data left on the disk by previously deleted files. Although this

    means that the files take longer to create, this action prevents the operating system from

    having to fill the files with zeros when data is written to the files for the first time

    during usual database operations. This improves the performance of day-to-day

    operations.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    43/88

    SELF LEARNING

    Create a database using the Create Database Wizard (Enterprise Manager)

    To create a database using the Create Database Wizard

    1. Expand a server group, and then expand the server in which to create a database.

    2. On the Tools menu, clickWizards.

    3. Expand Database.

    4. Double-clickCreate Database Wizard.

    5. Complete the steps in the wizard.

    Creating and Modifying a Table

    After you have designed the database, the tables that will store the data in the database

    can be created. The data is usually stored in permanent tables. Tables are stored in the

    database files until they are deleted and are available to any user who has the

    appropriate permissions.

    Temporary Tables

    You can also create temporary tables. Temporary tables are similar to permanent tables,

    except temporary tables are stored in tempdb and are deleted automatically when no

    longer in use.

    The two types of temporary tables, local and global, differ from each other in their

    names, their visibility, and their availability. Local temporary tables have a single

    number sign (#) as the first character of their names; they are visible only to the current

    connection for the user; and they are deleted when the user disconnects from instances

    of Microsoft SQL Server 2000. Global temporary tables have two number signs

    (##) as the first characters of their names; they are visible to any user after they are

    created; and they are deleted when all users referencing the table disconnect from SQL

    Server.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    44/88

    SELF LEARNING

    For example, if you create a table named employees, the table can be used by any

    person who has the security permissions in the database to use it, until the table is

    deleted. If you create a local temporary table named #employees, you are the only

    person who can work with the table, and it is deleted when you disconnect. If you create

    a global temporary table named ##employees, any user in the database can work with

    this table. If no other user works with this table after you create it, the table is deleted

    when you disconnect. If another user works with the table after you create it, SQL

    Server deletes it when both of you disconnect.

    Table Properties

    You can define up to 1,024 columns per table. Table and column names must follow the

    rules for identifiers; they must be unique within a given table, but you can use the same

    column name in different tables in the same database. You must also define a data type

    for each column.

    Although table names must be unique for each owner within a database, you can create

    multiple tables with the same name if you specify different owners for each. You can

    create two tables named employees and designate Jonah as the owner of one and Sally

    as the owner of the other. When you need to work with one of the employees tables,

    you can distinguish between the two tables by specifying the owner with the name of

    the table.

    Before using the component the component has to attach to the application which

    can be done by double clicking on the solution name on the solution explorer. Browse

    the component and attach to the solution. Once the component is attached. Importing it

    into the application as can use the component.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    45/88

    SELF LEARNING

    CODING

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    46/88

    SELF LEARNING

    6. Coding:

    Add Thread:

    using System;

    using System.Data;

    using System.Configuration;

    using System.Collections;

    using System.Web;

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    public partial class addthread : System.Web.UI.Page

    {

    protected void Page_Load(object sender, EventArgs e)

    {

    }

    protected void btnAdd_Click(object sender, EventArgs e)

    {

    User u = (User)Session["user"];

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    47/88

    SELF LEARNING

    string msg = ThreadDAL.AddNewThread(u.Id, ddlSubjects.SelectedItem.Value,

    txtText.Text);

    if (msg == null)

    lblMsg.Text = "Thread has been added sucessfully!";

    else

    lblMsg.Text = "Sorry! Error -->" + msg;

    }

    }

    Change Password:

    Using System;

    using System.Data;

    using System.Configuration;

    using System.Collections;

    using System.Web;

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    public partial class changepassword : System.Web.UI.Page

    {

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    48/88

    SELF LEARNING

    protected void Page_Load(object sender, EventArgs e)

    {

    }

    protected void btnChange_Click(object sender, EventArgs e)

    {

    User u = (User)Session["user"];

    string msg = UserDAL.ChangePassword(u.Id,

    txtOldpwd.Text,

    txtNewpwd.Text);

    if (msg == null)

    lblMsg.Text = "Password Changed Sucessfully!";

    else

    lblMsg.Text = "Error -->" + msg;

    }

    }

    Change Profile:

    using System;

    using System.Data;

    using System.Configuration;

    using System.Collections;

    using System.Web;

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    49/88

    SELF LEARNING

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    public partial class changeprofile : System.Web.UI.Page

    {

    protected void Page_Load(object sender, EventArgs e)

    {

    if (!Page.IsPostBack)

    {

    User u = (User)Session["user"];

    txtFullname.Text = u.FullName;

    txtOccup.Text = u.Occupation;

    }

    }

    protected void btnChange_Click(object sender, EventArgs e)

    {

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    50/88

    SELF LEARNING

    User u = (User)Session["user"];

    string msg = UserDAL.ChangeProfile(u.Id, txtFullname.Text, txtOccup.Text);

    if (msg == null) // success

    {

    // change object in memory

    u.Occupation = txtOccup.Text;

    u.FullName = txtFullname.Text;

    lblMsg.Text = "Changed Profile Successfully!";

    }

    else

    lblMsg.Text = "Error -->" + msg;

    try

    {

    string filename = "images/" + u.Id + ".jpg";

    FileUpload1.SaveAs(Request.MapPath(filename));

    }

    catch (Exception ex)

    {

    }

    }

    }

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    51/88

    SELF LEARNING

    Contact Us:

    using System;

    using System.Data;

    using System.Configuration;

    using System.Collections;

    using System.Web;

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    public partial class contactus : System.Web.UI.Page

    {

    protected void Page_Load(object sender, EventArgs e)

    {

    }

    }

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    52/88

    SELF LEARNING

    Default:

    using System;

    using System.Data;

    using System.Configuration;

    using System.Collections;

    using System.Web;

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    public partial class _Default : System.Web.UI.Page

    {

    protected void Page_Load(object sender, EventArgs e)

    {

    }

    }

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    53/88

    SELF LEARNING

    Display Thread:

    using System;

    using System.Data;

    using System.Configuration;

    using System.Collections;

    using System.Web;

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    public partial class displaythread : System.Web.UI.Page

    {

    protected void Page_Load(object sender, EventArgs e)

    {

    }

    protected void btnReply_Click(object sender, EventArgs e)

    {

    User u = (User)Session["user"];

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    54/88

    SELF LEARNING

    string msg = ThreadDAL.AddReply(u.Id,Request.QueryString["tid"].ToString(),

    txtReply.Text);

    if (msg == null)

    lblMsg.Text = "Reply has been added sucessfully!";

    else

    lblMsg.Text = "Sorry! Error -->" + msg;

    }

    }

    Display User:

    using System;

    using System.Data;

    using System.Configuration;

    using System.Collections;

    using System.Web;

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    public partial class displayuser : System.Web.UI.Page

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    55/88

    SELF LEARNING

    {

    protected void Page_Load(object sender, EventArgs e)

    {

    }

    }

    Login:

    using System;

    using System.Data;

    using System.Configuration;

    using System.Collections;

    using System.Web;

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    public partial class login1 : System.Web.UI.Page

    {

    protected void Page_Load(object sender, EventArgs e)

    {

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    56/88

    SELF LEARNING

    }

    protected void btnLogin_Click(object sender, EventArgs e)

    {

    User u = UserDAL.Login(txtEmail.Text, txtPwd.Text);

    if (u == null)

    lblMsg.Text = "Sorry! Invalid email/password!";

    else

    {

    Session.Add("user", u);

    Session.Add("uid", u.Id);

    FormsAuthentication.RedirectFromLoginPage(txtEmail.Text, false);

    }

    }

    }

    Master Page:

    using System;

    using System.Data;

    using System.Configuration;

    using System.Collections;

    using System.Web;

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    57/88

    SELF LEARNING

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    public partial class MasterPage2 : System.Web.UI.MasterPage

    {

    protected void Page_Load(object sender, EventArgs e)

    {

    User u = (User)Session["user"];

    lblWelcome.Text = "Welcome " + u.FullName;

    }

    protected void lbLogout_Click(object sender, EventArgs e)

    {

    Session.Abandon();

    FormsAuthentication.SignOut();

    Response.Redirect("login.aspx");

    }

    }

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    58/88

    SELF LEARNING

    My Threads:

    using System;

    using System.Data;

    using System.Configuration;

    using System.Collections;

    using System.Web;

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    public partial class mythreads : System.Web.UI.Page

    {

    protected void Page_Load(object sender, EventArgs e)

    {

    }

    }

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    59/88

    SELF LEARNING

    New Page:

    using System;

    using System.Data;

    using System.Configuration;

    using System.Collections;

    using System.Web;

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    public partial class newpage : System.Web.UI.Page

    {

    protected void Page_Load(object sender, EventArgs e)

    {

    }

    }

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    60/88

    SELF LEARNING

    Search Threads:

    using System;

    using System.Data;

    using System.Configuration;

    using System.Collections;

    using System.Web;

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    using System.IO;

    public partial class searchthreads : System.Web.UI.Page

    {

    protected void Page_Load(object sender, EventArgs e)

    {

    }

    protected void btnSearch_Click(object sender, EventArgs e)

    {

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    61/88

    SELF LEARNING

    string cond = " 1 = 1 ";

    if (txtText.Text == "" && txtFromDate.Text == "" && txtToDate.Text == "")

    {

    lblmsg.Text = "Input Some Data";

    }

    else

    {

    if (txtText.Text.Length > 0)

    cond += " and text like '%" + txtText.Text + "%'";

    if (txtFromDate.Text.Length > 0)

    cond += " and dp >='" + txtFromDate.Text + "'";

    if (txtToDate.Text.Length > 0)

    cond += " and dp

  • 8/3/2019 Main Project 518

    62/88

    SELF LEARNING

    Subject Threads:

    using System;

    using System.Data;

    using System.Configuration;

    using System.Collections;

    using System.Web;

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    public partial class subjectthreads : System.Web.UI.Page

    {

    protected void Page_Load(object sender, EventArgs e)

    {

    }

    }

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    63/88

    SELF LEARNING

    Website Map:

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    64/88

    SELF LEARNING

    TESTING

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    65/88

    SELF LEARNING

    6.1 TYPES OF TESTING:

    1) COMPILATION TEST:

    It was a good idea to do our stress testing early on, This program was

    successfully loaded and Compiled. Because of good programming there

    were no Compilation errors.

    2) EXECUTION TEST:

    This program was successfully loaded and executed. Because of good

    programming there were no execution errors.

    3) OUTPUT TEST:

    The successful output screens are placed in the output screens section.

    SOFTWARE TESTING PRINCIPLES:

    Software testing is an extremely creative and intellectually challenging task. When

    testing follows the principles given below, the creative element of test design and

    execution rivals any of the preceding software development steps.

    1. Testing must be done by an independent party: Testing should not be performed by

    the person or team that developed the software since they tend to defend the correctness

    of the program.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    66/88

    SELF LEARNING

    2. Assign best personnel to the task: Because testing requires high creativity and

    responsibility only the best personnel must be assigned to design, implement, and

    analyze test cases, test data and test results.

    3. Testing should not be planned under the tacit assumption that no errors will be found.

    4. Test for invalid and unexpected input conditions as well as valid conditions: The

    program should generate correct messages when an invalid test is encountered and

    should generate correct results when the test is valid.

    5. The probability of the existence of more errors in a module or group of modules is

    directly proportional to the number of errors already found.

    6. Testing is the process of executing software with the intent of finding errors.

    7. Keep software static during test: The program must not be modified during the

    implementation of the set of designed test cases.

    8. Document test cases and test results.

    9. Provide expected test results if possible: A necessary part of test documentation is the

    specification of expected results, even if providing such results is impractical.

    10. A necessary part of a test case is a definition of the expected output or result.

    11. A programmer should avoid attempting to test his or own program.

    12. A programming organization should not test its own programs.

    13. Thoroughly inspect the results of each test.

    14. Test cases must be written for invalid and unexpected, as well as valid and expected,

    input conditions.

    15. Examining a program to see if it does not do what it is supposed to do is only half of

    the battle. The other half is seeing whether the program does what it is not supposed to

    do.

    16. Avoid throw-away test cases unless the program is truly a throw-away program.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    67/88

    SELF LEARNING

    17. Do not plan a testing effort under the tacit assumption that no errors will be found.

    6.2 TEST CASES:

    Understand a range of different software testing techniques and strategies

    Be able to apply a specific (automated) unit testing method to your group project

    It is impossible to completely test any nontrivial module or any system

    Testing can only show the presence of bugs, not their absence

    Testing Objectives are:

    1. To find Uncovered Errors based on Requirement.

    2. Ensure the Product is Bug Free before shipment/release.

    3. 'Quality is Ensured';

    4. To explore the bugs and report it and try to make software as bug free as

    Possible.

    5. To show that the Software has errors

    Unit testing:

    The primary goal of unit testing is to take the smallest piece of testable software in the

    application, isolate it from the remainder of the code, and determine whether it behaves

    exactly as you expect. Each unit is tested separately before integrating them into

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    68/88

    SELF LEARNING

    modules to test the interfaces between modules. Unit testing has proven its value in that

    a large percentage of defects are identified during its use.

    The most common approach to unit testing requires drivers and stubs to be written. The

    driver simulates a calling unit and the stub simulates a called unit. The investment of

    developer time in this activity sometimes results in demoting unit testing to a lower

    level of priority and that is almost always a mistake. Even though the drivers and stubs

    cost time and money, unit testing provides some undeniable advantages. It allows for

    automation of the testing process, reduces difficulties of discovering errors contained in

    more complex pieces of the application, and test coverage is often enhanced because

    attention is given to each unit.

    For example, if you have two units and decide it would be more cost effective to glue

    them together and initially test them as an integrated unit, an error could occur in a

    variety of places:

    Is the error due to a defect in unit 1?

    Is the error due to a defect in unit 2?

    Is the error due to defects in both units?

    Is the error due to a defect in the interface between the units?

    Is the error due to a defect in the test?

    Finding the error (or errors) in the integrated module is much more complicated than

    first isolating the units, testing each, then integrating them and testing the whole.

    Drivers and stubs can be reused so the constant changes that occur during the

    development cycle can be retested frequently without writing large amounts of

    additional test code. In effect, this reduces the cost of writing the drivers and stubs on a

    per-use basis and the cost of retesting is better controlled.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    69/88

    SELF LEARNING

    Manual testing:

    Manual testing requires a tester to perform manual test operations on the test software

    without the help of Test automation. Manual testing is a laborious activity that requires

    the tester to possess a certain set of qualities; to be patient, observant, speculative,

    creative, innovative, open-minded, resourceful, unopinionated, and skillful.

    Steps for Manual Testing

    A manual tester would typically perform the following steps for manual testing:

    1. Understand the functionality of program

    2. Prepare a test environment

    3. Execute test case(s) manually

    4. Verify the actual result

    1. Record the result as Pass or Fail

    2. Make a summary report of the Pass and Fail test cases

    3. Publish the report

    4. Record any new defects uncovered during the test case execution

    There is no complete substitute for manual testing. Manual testing is crucial for testing

    software applications more thoroughly. Test automation has become a necessity mainly

    due to shorter deadlines for performing test activities, such as regression testing,

    performance testing, and load testing.

    Vivekananda Institute of Engineering & Technology Page No.86

    http://www.onestoptesting.com/manual-testing/steps.asphttp://www.onestoptesting.com/manual-testing/steps.asp
  • 8/3/2019 Main Project 518

    70/88

    SELF LEARNING

    WHITE BOX TESTING:

    It is a test case design method that uses the control structures of the procedural design to

    derive test cases.

    Using this testing a software Engineer can derive the following test cases:

    Exercise all the logical decisions on either true or false sides.

    Execute all loops at their boundaries and within their operational boundaries.

    Exercise the internal data structures to assure their validity.

    BLACK BOX TESTING:

    It is a test case design method used on the functional requirements of the software. It

    will help a software engineer to derive sets of input conditions that will exercise all the

    functional requirements of the program.

    Black Box testing attempts to find errors in the following categories:

    Incorrect or missing functions

    Interface errors

    Errors in data structures

    Performance errors

    Initialization and termination errors

    By black box testing we derive a set of test cases that satisfy the following criteria:

    Test cases that reduce by a count that is greater than one

    The number of additional test cases that must be designed to achieve reasonable

    testing.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    71/88

    SELF LEARNING

    Test cases that tell us something about the presence or absence of classes of errors

    rather than errors associated only with a specific test at hand

    SCREEN LAYOUTS

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    72/88

  • 8/3/2019 Main Project 518

    73/88

    SELF LEARNING

    Homepage:

    This webpage displays subjects on which the members of this site can post threads or

    acknowledge threads.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    74/88

    SELF LEARNING

    Registration page:

    To become the valid users of this website, registration should be done.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    75/88

    SELF LEARNING

    ADD Thread:

    The members of this site can post threads by selecting the subject from the

    dropdownlist.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    76/88

    SELF LEARNING

    Search Thread:

    In this webpage the users can search threads to view the responses for that particular

    thread.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    77/88

    SELF LEARNING

    My Threads:

    This webpage displays all the threads posted by the current user of the site.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    78/88

    SELF LEARNING

    Change Password:

    The user can change his current password with a new password.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    79/88

    SELF LEARNING

    Change Profile:

    The user can change the details of his profile given during registration.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    80/88

    SELF LEARNING

    COLNCLUSION

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    81/88

    SELF LEARNING

    8. CONCLUSION:

    All the users in the organization have appreciated the project.

    It is easy to use, since it uses the GUI provided in the user dialog.

    User-friendly screens are provided.

    The usage of software increases the efficiency, decreases the effort. It has been thoroughly tested and implemented.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    82/88

    SELF LEARNING

    FUTURE ENHANCEMENT

    9. FUTURE ENHANCEMENT:

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    83/88

    SELF LEARNING

    Analyzing content development and visualizing social interactions in

    Web forum should be a self-contained project. It is the first attempt at a FileManagement system by myself, and contains or involves a number of technologies

    which are new to me (Asp.Net, C#.net, Ajax, SQL Server, etc.).

    We can add any other techniques i.e., core java, advanced java script, data

    warehousing, xml and any other techniques.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    84/88

    SELF LEARNING

    TABLES

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    85/88

    SELF LEARNING

    10. TABLES:

    Creating and Modifying a Table

    After you have designed the database, the tables that will store the data in the database

    can be created. The data is usually stored in permanent tables. Tables are stored in the

    database files until they are deleted and are available to any user who has the

    appropriate permissions.

    Temporary Tables

    You can also create temporary tables. Temporary tables are similar to permanent tables,

    except temporary tables are stored in tempdb and are deleted automatically when no

    longer in use.

    The two types of temporary tables, local and global, differ from each other in their

    names, their visibility, and their availability. Local temporary tables have a single

    number sign (#) as the first character of their names; they are visible only to the current

    connection for the user; and they are deleted when the user disconnects from instances

    of Microsoft SQL Server 2000. Global temporary tables have two number signs

    (##) as the first characters of their names; they are visible to any user after they are

    created; and they are deleted when all users referencing the table disconnect from SQL

    Server.

    For example, if you create a table named employees, the table can be used by any

    person who has the security permissions in the database to use it, until the table is

    deleted. If you create a local temporary table named #employees, you are the only

    person who can work with the table, and it is deleted when you disconnect. If you create

    a global temporary table named ##employees, any user in the database can work with

    this table. If no other user works with this table after you create it, the table is deleted

    when you disconnect. If another user works with the table after you create it, SQL

    Server deletes it when both of you disconnect.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    86/88

    SELF LEARNING

    Table Properties

    You can define up to 1,024 columns per table. Table and column names must follow the

    rules for identifiers; they must be unique within a given table, but you can use the same

    column name in different tables in the same database. You must also define a data type

    for each column.

    Although table names must be unique for each owner within a database, you can create

    multiple tables with the same name if you specify different owners for each. You can

    create two tables named employees and designate Jonah as the owner of one and Sally

    as the owner of the other. When you need to work with one of the employees tables,

    you can distinguish between the two tables by specifying the owner with the name of

    the table.

    Before using the component the component has to attach to the application which

    can be done by double clicking on the solution name on the solution explorer. Browse

    the component and attach to the solution. Once the component is attached. Importing it

    into the application as can use the component.

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    87/88

    SELF LEARNING

    BIBLIOGRAPHY

    Vivekananda Institute of Engineering & Technology Page No.86

  • 8/3/2019 Main Project 518

    88/88

    SELF LEARNING

    11. BIBLIOGRAPHY:

    The primary references of this project

    Wrox Publications (BOOK: Professional ASP.NET 3.5 SP1 2005 Edition: In C#

    and VB )

    Wrox Publications (BOOK: Professional SQL Server 2005 Programming ISBN: 0-7645-8434-0 )

    http://msdn.microsoft.com

    http://www.asp.net

    http://www.wrox.com

    http://p2p.wrox.com/book-professional-asp-net-3-5-sp1-edition-c-vb-497/http://p2p.wrox.com/book-professional-asp-net-3-5-sp1-edition-c-vb-497/http://p2p.wrox.com/book-professional-sql-server-2005-programming-isbn-0-7645-8434-0-292/http://p2p.wrox.com/book-professional-sql-server-2005-programming-isbn-0-7645-8434-0-292/http://msdn.microsoft.com/http://www.asp.net/http://www.wrox.com/http://p2p.wrox.com/book-professional-asp-net-3-5-sp1-edition-c-vb-497/http://p2p.wrox.com/book-professional-asp-net-3-5-sp1-edition-c-vb-497/http://p2p.wrox.com/book-professional-sql-server-2005-programming-isbn-0-7645-8434-0-292/http://p2p.wrox.com/book-professional-sql-server-2005-programming-isbn-0-7645-8434-0-292/http://msdn.microsoft.com/http://www.asp.net/http://www.wrox.com/