Software Required Specification
The term virtual learning environment (VLE) a generically used to describe a range of integrated web based applications that provide teachers, learners, parents and others involved in education with information, tools and resources to support and enhance educational delivery and management.
2.1 Scope of Project
2.1.1. Functional Requirements:
1. Learning Management Systems: LMS offer at least support for planning, organizing and managing learning such as course catalogues and registration, event schedules, assessment services, keeping learner records, organizing group and individual learning paths. In addition to that they have often been extended by functions for skill and competency management for tracking and controlling the personal development of employees and by modules for resource management to also organize trainers, rooms and other types of resources for instructor-led trainings. Its parts are:
(a).Personalized learner portal
(b). Learner tracking
(c). Skill gap analysis and personal performance reports
(d) Management reporting tools
(e) Assessment services
(f) Resource Management
(g)Administration management
2. Learning Content Management Systems: An LCMS contains similar features as aWeb Content Management System but adapted to the needs for e-Learning. Its main task is the storing and structuring of content files in a database, managing revisions and modifications, and ensuring that content is tagged for easy retrieval and reuse. A Learning Object Repository which support different granularities of objects, such as Content Assets, which are the most granular type of objects. Reusable Information Objects (RIOs) are classified as a concept, fact, principle or procedure and are usually described by metadata which give some hints about the reuse of the object. Authoring Form-based authoring tool for (simple) online created content. Ideally this tool has a built-in quiz tool included, which can be used to create the following types of tests: single/multiple choice, image map questions List matching questions, randomized and calculated questions.
3. Learning and Tutoring Support Management: Provides Communication functions are classified in synchronous (place-independent, but time-dependent) and asynchronous (place- and time independent) communication. Asynchronous communication features are: Mail, Mailing lists, discussion forum, question/answer dialog.
A full set of synchronous communication functions are often summarized under the term “Virtual Classroom”. Here the trainer teaches a class of students completely synchronously like in instructor-based training, just virtually.
2.1.2. Non-Functional Requirements
The non-functional requirements describe general conditions the software system must meet to satisfy the needs of the users and are not bound to the specific functions of the e-learning environment.
1. Technical Requirements: The technical requirements describe technical issues which must be fulfilled to successfully install, operate and maintain a software system.
2. Support of operational environment required: Usually e-Learning platforms are client-server systems, therefore two different operational environments have to be supported. On the client side in addition to the operating system (such as Windows, Linux, Mac OS and specific versions/distribution of these) also the browser version is important because the system usually runs within the browser environment on the client side.
3. Interoperability and support of standards
4. Ensuring of performance and scalability
5. Security: E-Learning systems contain a lot of very personal and business critical data which are very sensitive information and therefore needs to be protected against misuse and illegal access. The supports of secure transmissions (such as https) between each part of the system and data encryption are therefore obvious requirements.
6. Customizability: Customizability and a modular system architecture specify to what degree system functions can be adapted, added or omitted completely and additional requirements to ensure a system which is perfectly integrated in the customers IT infrastructure and corporate design and fulfils exactly that functionality the customer demands. Customization of look and feel can be done once for the whole system, personalized for groups of users (e.g. belonging to a certain department or a certain role such as trainers) or individually. Advanced systems support adaptive user interfaces where the UI changes according to the user’s personal profile.
7. Quality Requirements: Fulfilling quality requirements and following a defined quality policy is an implicit requirement for every successful software production cycle. However an in-depth view about this topic would go far beyond the scope of this thesis because it deals just with very high-level issues of the requirements definition process.
8. Usability and Accessibility Requirements:
a. Efficiency: the resources expended by a system's users in achieving accurate and complete task performance.
b. Effectiveness: the degree to which a system fulfils its intended purpose and supports its users by enabling accurate and complete task performance.
2.2 Use Case Diagram
Figure 2.1:Use Case Diagram
2.3 Use Case Documentation
2.5 Advantages and Disadvantages
2.5.1 Advantages:
1. Independence of learning place leads to cost and time saving
2. Free choice of learning time and speed and Just-In-Time learning feature for employed class.
3. Fast distribution and dissemination of new information to many people.
4. Adaptive learning: the learning content and concept can be adapted to each individual's strengths and weaknesses to make the learning experience more efficient. Depending on the knowledge background of the learner which is determined by pre-tests the preferred learning style and type and the progress made so far the environment decides what and in which way content should be offered next.
5. Multimedia and interactive learning is motivating and ensures learning success.
2.5.2 Disadvantages:
1. No personal contact to teacher/coach and to other learners.
2. Incentive of external training does not exist anymore.
3. Learning from a computer display is difficult to get used to, is unpleasant and unhealthy
4. Only few online-learners finish a course so dropout rate is quite high.
5. The creation of e-learning courses is too expensive.
2.6 Technologies To Be Used
JSP (Java Server Pages): It is used for designing dynamic web-pages and therefore used for displaying dynamic content to the user.
J2EE (Java 2 Enterprise Edition): A programming platform that is part of Java Platform and is used for developing and running distributed multi-tiered Enterprise Java Applications running on J2EE-Compliant Application Servers.
Servlets: Java Classes that enable creation of responsive, reliable and scalable server-side web applications.
HTTP (Hyper Text Transfer Protocol): A transaction oriented client/server protocol between a web browser and a web server.
XML (Extensible Markup Language): A mark-up language designed for transporting and storing data.
AJAX (Asynchronous JavaScript and XML): A technique used in JavaScript for creating dynamic web-pages.
Google Window Toolkit
2.7 Design and Implementation Constraints:
1) Tutors from non-affiliated institutes can’t teach.
2) A learner can’t post learning material; it’s only the right of tutors.
3) Only registered users can post on to discussion forum.
4) Other students can’t see the respective student’s report.
5) Admin has the right to cancel a person’s account if he violates above rules.
6) Only tutors can frame answers to FAQ’S.
2.8 User Classes and Characteristics
1. Student/Learner: When the trainees log into the Softutor, they get access to their personal study room, which is the main entry point. Here, the trainees will find a list of suggested courses and their possible sequence, the courses in which they are currently enrolled and the courses they have already taken. Further, trainees may access the private or shared workspace and their personal characteristics (like name, department, grades, progress statistics etc.). If a trainee enters a currently enrolled course by clicking on it, the course environment will become visible.
2. Teacher/Tutor: Teachers will use the system to enrich or replace traditionally held lectures,
supervise and support students, and simplify everyday tasks like sending announcements, assigning exercises, grading, etc. The user interface for the teachers also has to be as simple as possible because it cannot be guaranteed that teachers have more expertise in using computers than students.
3. Institution: Courseware authors may use several of the editors and wizards the system provides to simplify the creation of new modules. Because these tools are quite powerful, a special training about their usage might be necessary for people that have less experience in advanced usage of computers. Authors may also use the full range of document management tools, like the easy to use Virtual Folders, which simplify authoring and structuring of content using the drag and drop process within the authors familiar environment (e.g. file explorer in Windows).
4. System Administrator: The System Administrator’s job is to install and configure the system and to change general policies or perform actions that require system privileges such as changing sensitive access rights or configuring the mode for automatic account creation. Simple tasks can be completed without deep knowledge of the underlying system due to the user-friendly interface. With more detailed knowledge of the system, the administration can change the complete look and feel of the system, activate/deactivate functions and features, add new languages, etc. However, for most of the tasks, there are no true programming skills necessary to accomplish them because the code of the system need not be changed.