Vous êtes sur la page 1sur 53

1.

INTRODUCTION
The LESSON PLANNER is the web based project. This project is aimed to reduce the manual work and stress of a teaching faculty. It will usher in the immense flexibility and sophistication in planning the daily schedule. The users can register and login to create the lesson plans. The created plans can be manipulated and the access control to manipulate is provided to the owner the plan only, user can also search and download. Where as the guest can register and login to view the plans only by search to download. The validation for the users is given with the password and the unique ID. So that every one can view the plans but only the owner of the plan can edit the schedule.

1.1

Objective:
This application will allow the user to login and create a new

lesson plan. Creation of the plan contains all the details of the plan like plan ID, created by, subject, branch, lesson name, unit number and all the details of the faculty subject plan. Their lesson plans must be allowed to be categorized based on date & time, class, and subject. All the users and the guests can view the existing plans by entering some required fields in search mode. Each user will have a unique ID, so that we can validate the user and can allow them to edit the plans. This application will also allow the user (teacher/lecturer) to search for the document based on plan ID, faculty name, class, year, branch and subject. The presented lesson plan is available for download.

2. SOFTWARE AND HARDWARE REQUIREMENTS


UI Requirements:
This project will have a web interface allowing the users (teachers/lecturers) to create the lesson plan and generate it as a file.

DB Requirements: - SQL server 2005. Preferred Technologies: - .Net Framework. Hardware Requirements:
Pentium 4 or above, Windows or Linux with 1GB ram and 80GB Hard drive or above.

3. LITERATURE SURVEY/REVIEW OF LITERATURE


3.1

Microsoft Visual Studio2005

Microsoft Visual Studio is the main Integrated Development Environment (IDE) from Microsoft. It can be used to develop console and Graphical user interface applications along with Windows Forms applications, web sites, web applications, and web services in both native code as well as managed code for all platforms supported by Microsoft Windows, Windows Mobile, .NET Framework, .NET Compact Framework and Microsoft Silver light. Visual Studio includes a code editor supporting IntelliSense as well as code refractory. The integrated debugger works both as a source-level debugger and a machine-level debugger. Other built-in tools include a forms designer for building GUI applications, web designer, class designer, and database schema designer. It allows plugins to be added that enhance the functionality at almost every level - including adding support for source control systems (like Subversion and Visual SourceSafe) to adding new toolsets like editors and visual designers for domain-specific languages or toolsets for other aspects of the software development Visual Studio supports languages by means of language services, which allow any programming language to be supported (to varying degrees) by the code editor and debugger, provided a language-specific service has been authored. Built-in languages include C/C++ (via Visual C++), VB.NET (via Visual Basic .NET), and C# (via Visual C#). Support for other languages such as F#, Python, and Ruby among others has been made available via language services which are to be installed separately. It also supports XML/XSLT, HTML/XHTML, JavaScript and CSS. Language-specific versions of Visual Studio also exist which provide more limited language services to the user. These

individual packages are called Microsoft Visual Basic, Visual J#, Visual C#, and Visual C++. Currently, Visual Studio 2008 and 2005 Professional Editions, along with language-specific versions (Visual Basic, C++, C#, J#) of Visual Studio 2005 are available to students as downloads free of charge via Microsoft's Dream Spark program.

3.2 Microsoft SQL server 2005:


Microsoft SQL Server 2005 is used to maintain the database of the students and can be connected with web creations of C# code which we create in Microsoft Visual Studio 2005. Micro Soft SQL Server Introduction: SQL Server 2005 editions include the Enterprise Edition, the Standard Edition, the Personal Edition, the Developer Edition, and the Evaluation Edition. Microsoft SQL Server 2000 is a full-featured relational database management system (RDBMS) that offers a variety of administrative tools to ease the burdens of database development, maintenance and administration. In this article, we'll cover six of the more frequently used tools: Enterprise Manager, Query Analyzer, SQL Profiler, Service Manager, Data Transformation Services and Books Online. Let's take a brief look at each: Enterprise Manager is the main administrative console for SQL Server installations. It provides you with a graphical "birds-eye" view of all of the SQL Server installations on your network. You can perform high-level administrative functions that affect one or more servers, schedule common maintenance tasks or create and modify the structure of individualdatabases. Query Analyzer offers a quick and dirty method for performing queries against any of your SQL Server databases. It's a great way to quickly pull information out of a database in response to a user request, test queries before implementing them in other applications, create/modify stored procedures and execute administrative tasks.

SQL Profiler provides a window into the inner workings of your database. You can monitor many different event types and observe database performance in real time. SQL Profiler allows you to capture and replay system "traces" that log various activities. Service Manager is used to control the MSSQL Server (the main SQL Server process), MSDTC (Microsoft Distributed Transaction Coordinator) and SQL Server Agent processes. An icon for this service normally resides in the system tray of machines running SQL Server. You can use Service Manager to start, stop or pause any one of theseservices.

3.3 INTRODUCTION TO C#
C# Language Specification C# (pronounced "C sharp") is a simple, modern, object-oriented, and type-safe programming language. It will immediately be familiar to C and C++ programmers. C# combines the high productivity of Rapid Application Development (RAD) languages and the raw power of C++. Visual C# .NET is Microsoft's C# development tool. It includes an interactive development environment, visual designers for building Windows and Web applications, a compiler, and a debugger. Visual C# .NET is part of a suite of products, called Visual Studio .NET, that also includes Visual Basic .NET, Visual C++ .NET, and the JScript scripting language. All of these languages provide access to the Microsoft .NET Framework, which includes a common execution engine and a rich class library. The .NET Framework defines a "Common Language Specification" (CLS), a sort of lingua franca that ensures seamless interoperability between CLS-compliant languages and class libraries. For C# developers, this means that even though C# is a new language, it has complete access to the same rich class libraries that are used by seasoned tools such as Visual Basic .NET and Visual C++ .NET. C# itself does not include a class library.

3.4 INTRODUCTION TO ASP.NET

What is ASP.NET?
ASP.NET is a server side scripting technology that enables scripts (embedded in web pages) to be executed by an Internet server.

ASP.NET is a Microsoft Technology ASP stands for Active Server Pages ASP.NET is a program that runs inside IIS IIS (Internet Information Services) is Microsoft's Internet server IIS comes as a free component with Windows servers IIS is also a part of Windows 2000 and XP Professional

What is an ASP.NET File?


An ASP.NET file is just the same as an HTML file An ASP.NET file can contain HTML, XML, and scripts Scripts in an ASP.NET file are executed on the server An ASP.NET file has the file extension ".aspx"

How Does ASP.NET Work?


When a browser requests an HTML file, the server returns the file When a browser requests an ASP.NET file, IIS passes the request to the SP.NET engine on the server The ASP.NET engine reads the file, line by line, and executes the scripts in the file Finally, the ASP.NET file is returned to the browser as plain HTML

3.5 INTRODUCTION TO UML

The Unified Modeling Language is a standard language for writing software blueprints .The UML may be used to visualize, specify, construct and document the artifacts of a software intensive system .The UML is appropriate for modeling systems ranging from enterprise information systems to distributed Web based applications and even to hard real time embedded systems .The UML is process independent, although optimally it should be used in a process that is use case driven, architecture-centric, iterative and incremental. The UML is intended primarily for software-intensive systems .It has been used effectively for such domains as Enterprise Information Systems Banking and Financial services Telecommunications Transportation Defense /Aerospace Retail Medical Electronics Scientific Distributed Web-Based Services The UML is not limited to modeling software. In fact, it is expressive enough to model non software systems, such as workflow in the legal system, the structure and behavior of patient healthcare system and the design of hardware. The UML addresses the documentation of a systems architecture and all of its details. The UML also provides a language for expressing requirements and tests. UML is used for modeling the activities of project planning and release management.

The UML is a language for specifying. Specifying means building models that are precise, unambiguous and complete. In particular, the UML addresses the specification of all the important analysis, design and implementation decisions that must be made in developing and deploying a software-intensive system. FORWARD ENGINEERING means generation of code from a UML model into a programming language. The reverse is also possible. We can reconstruct a model from an implementation back into the UML. REVERSE ENGINEERING is not a magic. Unless you encode the information in the implementation, information is lost when moving forward from models to code. Reverse Engineering thus requires tool support with human intervention. Combining these two paths of Forward code generation and Reverse Engineering yields round-trip engineering, meaning the ability to work in either a graphical or textual view, while tools keep the two views constant.

3.6 BUILDING BLOCKS OF UML:


To understand the UML, we need to form a conceptual model of the language and this requires learning three major elements, i.e. UMLs basic building blocks. The rules that indicate how those building blocks may be put together and some common mechanisms that apply throughout the UML. Once you have grasped these ideas, you will be able to read UML models and create some basic ones. The vocabulary of the UML encompasses three kinds of building blocks THINGS RELATIONSHIPS DIAGRAMS

DIAGRAMS IN THE UML:


A diagram is a graphical presentation of a set of elements, most often rendered as a connected graph of vertices and arcs. A small number of common combinations arise, which are consistent with the five most useful views that comprise the architecture of a software-intensive system. For this reason the UML includes nine such diagrams:

CLASS DIAGRAMS:

A Class diagram shows a set of classes, interface, collaboration and their relationship. These diagrams are the most common diagram found in modeling objectoriented system. Class diagrams address the static design view of a system.
USE CASE DIAGRAMS:

A use case diagram shows a set of use case and actors and their relationship. Use case diagrams address the static use case view of a system. These diagrams are usually important I organizing and modeling the behavior of a system.
INTERACTION DIAGRAMS:

Interaction diagram shows the interaction, consisting of a set of objects and their relationships, including the message that may be dispatched among them. Interaction diagrams address the dynamic view of a system.
SEQUENCE DIAGRAMS:

Sequence diagram is an interaction diagram that emphasizes the time ordering of messages. Sequence diagrams are isomorphic, meaning that you can take one and transform it into the other. It is a type of interaction diagram.
COLLABORATION DIAGRAMS:

Collaboration diagram is an interaction diagram that emphasizes the structural organization of the objects that send and receive messages. Collaboration diagram are isomorphic, meaning that you can take one and transform it into the other.
STATECHART DIAGRAMS:

A state chart diagram shows a state machine, consisting of states, transition, events and activities. State chart diagram address the dynamic view of a system. These are basically used in modeling the behavior of an interface, class or collaboration and emphasize the event-ordered behavior of an object.

ACTIVITY DIAGRAMS:

An Activity diagram is a special kind of a state chart diagram that shows the flow from activity to activity with in a system. Activity diagrams address the dynamic view of a system. These are used basically for modeling the functions of a system and emphasize the flow of control among the objects.
COMPONENT DIAGRAMS:

A Component diagram shows the organizations and dependencies among a set of components. Component diagrams address the static implementation view of a system. They are related to class diagrams in that a component typically maps to one or more classes, interfaces or collaboration.
DEPLOYMENT DIAGRAMS:

A deployment diagram shows the configuration of run-time processing nodes and the components that live on them. Deployment diagrams address the static deployment view of architecture. They are related to component diagrams in that a node typically encloses one or more components.

10

4. SOFTWARE REQUIREMENT ANALYSIS


4.1

Problem Definition

Generally the entire faculty will create their schedule manually. To reduce the manual work of the faculty we designed this LESSON PLANNER, minus that manual work and remembering of the schedules.

Project approach and motivational Approach


Basically most of the professional lecturers use to teach their classes in various colleges and to design plan and in order to carry the plan it makes a big deal to them to carry their own hard copies else to remember the plan day wise. This problem to the lecturers made us to think about an alternative or this problem and finally we have come out with this project.

4.2

Define the modules and their Functionalities

Login/Registration Component: Definition: The Login/Registration module is for logging into the system and register if not yet registered. Requirements: The primary responsibility of this component is to validate the user credentials. If the user name and password are valid, the user is successfully logged in and redirected to user account (planner) page. If the user is not registered he/she can visit user registration page for registering with the system. Uses/Interactions The first and foremost action to be performed by a user is Login. Irrespective of the user being a faculty or a guest, he/she must first login either to create the plans or to search and see the plans. When the user tries to log-in, user-id and a password is requested to login. If the login is unsuccessful, invalid user alert message is displayed and the user is asked to fill in the username and password again. Login can be unsuccessful in two cases, firstly if there is no username as mentioned by the user in the database or if there is a username/password mismatch.

11

If the login is successful, then the user is redirected to User account (planner) screen. If the user is new to the site he needs to register by providing certain details. If the username already exist the different username is asked to fill in the required fields again. Plan creation component: Definition: The Main purpose of this component is to create the plans. Responsibilities: The main responsibility of this component is to allow the user to create the required schedules. Constraints: A client cant create a plan unless he is a valid (registered) user of the system. Uses/Interactions: If a user wishes to create a plan, the procedure to be adopted is as follows: As mentioned for Login, the user must first register if new to the system or must login if he is already a registered user. Soon after the user login the user will be directed to new plan or move to option in the User account page. Next the user is provided with fields to enter the details of the plan he wants to create. If any of the mandatory fields are not filled, a message is displayed prompting the user to fill the mandatory details. On successful creation of the plan the plan will be stored in the data base. Search component: Definition The specific purpose of this component is to allow user to search for a specific schedule. Here the guest can also search for the desired plans. Responsibilities The primary responsibility of this component is to display a search page for the user, to validate the search criteria, then to display a list of schedules matching the criteria. It also allows the user to go to a download page, when the user selects download option to save or print the result list.

12

Constraints A client cant search for a car unless he is a valid user of the system. Uses/Interactions If the user chooses to search the plan, user has to search for a plan which is already has been created. The option to search is presented to the user at the Welcome screen along with the other two options. When the user chooses to search he is shown the Search screen. The Search screen consists of a number of text boxes and dropdown boxes for the user to customize his search like the user Id, created by, subject, semester, branch etc. Once the user selects his options he is shown a screen with the set of plans that meet those constraints. The user is allowed to download the plans. Editing plan: Definition The Main purpose of this component is to edit the plans. Responsibilities The primary responsibility of this component is to allow a valid user to edit a plan. Only an owner can edit the particular plans where as the guest can only view the limited constraints of the plans. Constraints The user has to be more cautious during the time of registration, i.e. the details entered for user should be valid. Uses/Interactions To edit the existing plan user should be the owner of that plan and in order to check the owner identification we provide UniqueID, it shows the more security measures provided to the user plan. UniqueID is provided during the time of registration and this ID is to be used during the time of editing.

13

5. SOFTWARE DESIGN
5.1UML Diagrams:
Class Diagrams:

Figure 1: Class diagram describes the project.

14

Sequence diagrams:

Figure 2: sequence diagram describes the user component

15

Figure 3: sequence diagram describes t he guest component

16

Figure 4: sequence diagram describes the user search component

17

Figure 5: sequence diagram describes download component

18

Collaboration diagrams:

Figure 6: Collaboration diagram describes the user module.

19

Figure 7: Collaboration diagram describes the guest module

20

Figure8. Collaboration diagram describes the guest module.

21

Figure 9: Collaboration diagram describes the download module.

22

Usecase Diagrams

Figure 10: Usecase diagram describes the project.

23

Figure 11: Usecase diagram describes the user module.

Figure 12: Usecase diagram describes the guest module.

24

Data dictionary
User registration table:

Guest registration table:

25

Plan creation table:

26

User registration:

Guest registration table:

27

6. TESTING
WHAT DO YOU MEAN BY SOFTWARE TESTING? Testing involves operation of a system or application under controlled conditions and evaluating the results. The controlled conditions should include both normal and abnormal conditions. Testing should intentionally attempt to make things go wrong to determine if things happen when they shouldn't or things don't happen when they should. It is oriented to 'detection'.

UNIT TESTING:
Unit testing is a software development process in which the smallest testable parts of an application, called units, are individually and independently scrutinized for proper operation. Unit testing is often automated but it can also be done manually. This testing mode is a component of Extreme Programming (XP), a pragmatic method of software development that takes a meticulous approach to building a product by means of continual testing and revision. Unit tests are written from a programmer's perspective. They ensure that a particular method of a class successfully performs a set of specific tasks. Each test confirms that a method produces the expected output when given a known input.

PERFORMANCE TESTING:
Performance testing is the process of determining the speed or effectiveness of a computer, network, software program or device. This process can involve quantitative tests done in a lab, such as measuring the response time or the number of MIPS (millions of instructions per second) at which a system functions. Qualitative attributes such as Reliability, scalability and interoperability may also be evaluated. Performance testing is often done in conjunction with stress testing. Performance testing can verify that a system meets the specifications claimed by its manufacturer or vendor. The process can compare two or more devices or programs in terms of parameters such as speed, data transfer rate, bandwidth, throughput, efficiency or reliability.

28

Performance testing can also be used as a diagnostic aid in locating communications bottlenecks. Often a system will work much better if a problem is resolved at a single point or in a single component. For example, even the fastest computer will function poorly on today's Web if the connection occurs at only 40 to 50 Kbps (kilobits per second).

INTEGRATION TESTING:
Integration testing, also known as integration and testing (I&T), is a software development process which program units are combined and tested as groups in multiple ways. In this context, a unit is defined as the smallest testable part of an application. Integration testing can expose problems with the interfaces among program components before trouble occurs in real-world program execution. Integration testing is a component of Extreme Programming (XP), a pragmatic method of software development that takes a meticulous approach to building a product by means of continual testing and revision.

29

7.
User registration

OUTPUT SCREENS

Fig 7.1 User Registration Page

30

After registration

Fig 7.2 User After Registration Page

31

User account

Fig 7.3 User Account Page

32

Fig 7.4 after clicking new plan

33

New plan

Fig 7.5 Creating new p 34

New plan created

Fig 7.6 new plan is created

35

Display

Fig 7.7 Click on display button

36

Displaying the created plan

Fig 7.8 Shows the existing plan if available

37

To edit the plan

Fig 7.9 after click on edit plans it asking a unique id.

38

Unique id entry

Fig 7.10 entering a unique id

39

Edit page

Fig 7.11 exiting plan is edited

40

Update

Fig 7.12 Modification on existed plan and click on ok

41

Search page

Fig 7.13 Search for the daily plans

42

Search results

Fig 7.14 Search is completed.

43

Download page

Fig 7.15 download the searched page

44

To Save :

Fig 7.16 Save the downloading file

45

Guest registration:

Fig 7.17 Guest Registration form

46

After registration of the guest:

Fig 7.18 After registration of the guest:

47

Guest search:

Fig 7.19 Guest search:

48

Download page:

Fig 7.20 Download page:

49

Site map:

Fig 7.21 Sitemap

50

CONCLUSIONS AND FUTURE SCOPE


The Key to reduce need for maintenance, while working, is possible to do essential tasks. More accurately defining the user requirement during system development. Assembling better system documentation. Using more effective methods for designing, processing, login and communicating information with project team members. Making better use of existing tools and techniques. Managing system engineering process effectively. The Goal of system is achieved and problems are solved. The package is developed in a manner that is friendly and required help is provided at different levels.

51

FUTURE ENHANCEMENTS
This application has an easy and user friendly interaction screens. The user will register and login to create the plans. The validations are given with the password and unique ID. It has a good data base maintenance which gives the user to store all the information about their plans. The user can efficiently search for the created plans, but the plans can be edited by the plan creator only. Using this application the manual work of the faculty is reduced and they need not to worry of remembering all the schedules.

52

BIBLIOGRAPHY
www.dotnetspider.com/ www.learnvisualstudio.net www.softwaretrainingtutorials.com/ms-visual-studio-net.php www.w3schools.com/ASPNET/default.asp

53

Vous aimerez peut-être aussi