knowledge manag portal

Embed Size (px)

Citation preview

  • 8/14/2019 knowledge manag portal

    1/84

    1. Abstract

    A Knowledge Management Portal integrates information, collaboration, process, and

    expertise. Knowledge Management (KM) comprises a range of practices used by

    organizations to identify, create, represent, and distribute knowledge for reuse, awareness

    and learning. Knowledge Management programs are typically tied to organizational

    objectives and are intended to achieve specific outcomes, such as shared intelligence,

    improved performance, competitive advantage, or higher levels of innovation. The

    conscious strategy of getting the right knowledge to the right people at the right time and

    helping people share and put information into action in ways that strive to improve

    organizational performance. Knowledge Management project deals with the creation of a

    portal, which consists of say proposals, reusable components and general presentation

    documents, newsletters, training program of vendors etc. The project helps to avoid effort

    duplication and trains the employees with minimal cost. It helps in storing several

    documents of a company under a single storage. It provides the facility for upload and

    download of files such as technical, commercial and cost documents. It provides the facility

    to post comments because of which communication between all the Employees is made

    possible.

    1

  • 8/14/2019 knowledge manag portal

    2/84

    2. Introduction

    2.1 Brief Overview About the Knowledge Management Portal

    Knowledge Management project deals with the creation of a portal, using which all the

    employees of a company can find relevant and important information under a single

    storage. The only irreplaceable capital an organization possesses is the knowledge and

    ability of its people. The productivity of that capital depends on how effectively people

    share their competence with those who can use and this portal helps in achieving it. The

    application will be utilized by company management for collecting, updating and

    analyzing, selecting, preparing, editing the knowledge and will be utilized by the company

    management to provide sophisticated training.The various user classes anticipated to useKnowledge Management portal are trainees and the trainers. Trainees use this more

    frequently in order to get updated with training sessions. Trainers are comparatively less

    frequent users than trainees, they use it when they require delivering content or to clarify

    the doubts presented by the trainees or to upload any information. The respective privileges

    are given to the trainees and trainers according to their functions.

    1.

    2.2Advantages

    It is a free of cost service provided to all the employees of the company to update

    their knowledge and share their experiences.

    The system is password protected and the overall system maintenance is quite easy.

    The system avoids effort duplication and makes the training program less tedious.

    2

  • 8/14/2019 knowledge manag portal

    3/84

  • 8/14/2019 knowledge manag portal

    4/84

    3.2.1 Major Functions of the Proposed System

    Authentication and Authorization.

    Registration of new employee.

    Uploading/Downloading content

    Knowledge Sharing.

    Online Examination.

    Creation of the Lesson.

    View the Lesson. View interview tips.

    Rate the lesson.

    View Latest News.

    Edit the latest news.

    3.2.2 Constraints on the Existing System

    The portal will not be responsible for misuse of the content by the Employees of the

    company.

    Only Authorized persons who are registered with the site should only be permitted

    to use this Site so as misrepresentation of secure data is not done.

    Safety and security considerations: Some of the characteristics of the safety critical

    operation are the performing of

    I. Database integrity checking with each read and write operation into a database.

    II. R

    ange checking.

    III. C

    ontinuous checking of the hardware and problem logging.

    4

  • 8/14/2019 knowledge manag portal

    5/84

    IV. E

    liminate data redundancy.

    V. D

    atabase information validation.

    VI. H

    ardware validation.

    3.3 Module Description

    The Knowledge management portal consists of three modules.

    3.3.1 Authentication Module

    Authentication is the process of determining whether someone or something is, in fact, who

    or what it is declared to be. In private and public computer networks (including the

    Internet), authentication is commonly done through the use of logon passwords.

    Knowledge of the password is assumed to guarantee that the user is authorized. As the

    portal contains sensitive information about the company that should not be viewed by users

    other than the company employees care should be taken that only the authorized employees

    of the company get registered with the site. This is achieved by asking the employee to

    enter a secret code given by the organization before getting registered. Only if the entered

    code is proven to be correct, he can go ahead with the registration process else his

    registration request is denied. Even after the entered code is correct and the user enters all

    the registration details, access is provided only after verifying and validating information

    provided in the registration form by the administrator.

    3.3.1.1 Functionalities:

    Following functionalities need to be made available before the Authentication takes place:

    Incorrect Password:

    5

  • 8/14/2019 knowledge manag portal

    6/84

    This may be a scenario when a registered User may forget the password and may

    not be in a position to login, in which cases the user can make another attempt.

    Registration of New User:

    This may be required in a scenario when an employee is newly appointed.

    Password Prompts:

    User will be prompted with a success message or rejected message accordingly.

    This may be required for security reasons to ensure protection of the account.

    3.3.2 Information and Knowledge Sharing Module

    List of all projects/products that the organization has handled can be viewed and their

    technical, commercial and other documents can be viewed which makes the employees get

    trained on them. They can Upload / Download Files. With this reusability of code can be

    done. The employees can post a Query/Share his experience/reply to someones queries.With this knowledge sharing as well as communication between the employees and others

    will be achieved.

    3.3.2.1 Functionalities:

    Upload files:

    An authenticated person (Trainer) is given the access to upload the content, which

    gets stored in the Knowledge Bank. Knowledge bank is a huge database where all the

    information related to company is stored.

    Download files:

    6

  • 8/14/2019 knowledge manag portal

    7/84

    An authenticated person (trainer) can view the content present in the knowledge bank

    by downloading the lessons he is authorized to.

    Knowledge Sharing:

    All the employees can share any kind of information or their opinions and increase

    their technical skills.

    Online Examination:

    This feature is exclusively meant for the trainees. After going through the lessons in

    the portal, he may wish to test his level of understanding. This can be achieved by

    taking an online exam.

    Create Lesson:

    An authenticated experienced person (trainer) can prepare the necessary lessons by

    selecting the information present in the knowledge bank.

    View Lesson:

    All the employees can view the lessons created by their colleagues.

    3.3.3 Knowledge Analytics Module

    Rating of knowledge is implemented in this module. These analytic reports enable the

    administrator to provide remuneration/rewards to the author. Here one can also know the

    latest news in the organization through News Latest option and post their opinions.

    3.3.3.1 Functionalities:

    Rating:

    7

  • 8/14/2019 knowledge manag portal

    8/84

    In this section, all the trainees are given the privilege to rate the lesson created by

    their respective trainer. Depending upon these reports, the Source/Author of the

    content is provided remuneration/rewards.

    Latest News:

    This feature enables the employees of the company to be updated with the latest

    happenings in and around the world including their company. This helps the

    employee to enhance their general knowledge as well.

    Update News:

    Only Administrator will have the right to delete the unnecessary news and add the

    New ones.

    Annotation:

    All the employees are given the freedom to post their opinions and share their

    experiences.

    Interview Tips:

    The portal has an additional feature where in all its users can have a glance at the latest

    questions being posed at the interviews and thereby prepare oneself for the future.

    3.4 Assumptions and Dependencies

    8

  • 8/14/2019 knowledge manag portal

    9/84

    It is assumed that all the systems will have the basic HW, SW and Communication

    Interfaces available for the deployment of the application. The users are trained in using the

    application.

    4. Feasibility Analysis

    The feasibility analysis is designed to determine whether or not, given the project

    environment, a project will be successful (in virtually any interpretation of that word).

    In other words, feasibility analysis is the measure of how beneficial or practical the

    development of information system will be to an organization. A feasibility analysis

    should examine three main areas:

    Ease of operation.

    Financial overview.

    Technical requirements.

    4.1 Operational Feasibility

    It refers to the feasibility of the product to be operational. In this the operation scope of the

    system is checked. The operational scope means, how well the system can perform the

    operations that are assigned to it, how can the users use the system in an efficient manner

    and how easily can the system be used by different users .It is observed that the proposedsystem is very user friendly and has all the features mentioned above.

    4.2 Financial Overview

    It deals with establishing the cost-effectiveness of the proposed system i.e. if the benefits

    do not outweigh the costs then it is not worth going ahead. The proposed system does not

    9

  • 8/14/2019 knowledge manag portal

    10/84

    require any special software technologies to be developed whose cost is huge. The

    technologies and the hardware used in the development are the most popular ones, which

    can be acquired by anyone, and moreover they promise portability, security, reliability and

    easy maintainability.

    4.3 Technical Requirements

    The technologies and the standard used for the development of the project are as follows:

    4.3.1 Dot Net Technology

    It is a Microsoft operating system platform that incorporates applications, a suite of tools

    and services and a change in the infrastructure of the company's Web strategy.

    There are four main principles of .NET from the perspective of the user:

    (a) It erases the boundaries between applications and the Internet. Instead of

    interacting with an application or a single Web site, .NET will connect the

    user to an array of computers and services that will exchange and combine

    objects and data.

    (b) Software will be rented as a hosted service over the Internet instead of

    purchased on a store shelf. Essentially, the Internet will be housing all where

    applications and data.

    (c) Users will have access to their information on the Internet from any device,

    anytime, anywhere.

    (d) There will be new ways to interact with application data, such as speech and

    handwriting recognition.

    4.3.1.1 Features Of Dot Net

    Consistency

    10

  • 8/14/2019 knowledge manag portal

    11/84

    Using Master Page, Themes and using Cascaded Style Sheet feature of ADO.NET, one can

    achieve this feature.

    Personalization

    This is done in regards with the Users taste. It may be in terms of colors, font size,

    background colors, and look and feel with respect t the application. After gathering

    requirements from the user by making use of and using Themes, Skin and Cascaded Style

    Sheet feature of ADO.NET we can achieve personalization.

    Themes and skins

    These are new feature of ASP. Net. By this way you can customize your sites look and feel.

    Like the master pages they also improve the maintainability of your site and avoid

    unnecessary duplication of code for shared style.

    A theme is a collection of property settings that allow you to define the look of pages and

    controls, and then apply the look consistently across pages in a Web application, across an

    entire Web application, or across all Web applications on a server.

    A skin file has the file name extension. Skin and contains property settings for individual

    controls such as Button, Label, Textbox, or Calendar controls. Control skin settings are likethe control markup itself, but contain only the properties you want to set as part of the

    theme.

    Tools for Navigation

    Every site requires tools for navigation. The List of Navigation tools available in .NET

    is as follows:

    Menu Pull down / Drop down menu

    11

  • 8/14/2019 knowledge manag portal

    12/84

    Fig 4.1 Menu control for navigation

    Tree View These are structured links. User can know where they are currently located.

    Fig 4.2 Tree View control for navigation

    BreadcrumbsRenders tabs indicating parent and current web page.

    Fig 4.3 Breadcrumbs control for navigation

    12

  • 8/14/2019 knowledge manag portal

    13/84

    The new Site Navigation features in ASP.NET 2.0 can make building navigation structures

    across a web-site much easier.

    At a high-level, the new Site Navigation features allow you to define (outside of code or

    pages) the site map structure of how your site is laid out. Specifically, it allows you to

    define the relationships between pages on the site what is the home entry-point, what

    are the sub-sections of it, and how individual pages fit within it. This information is cached

    by ASP.NET, and you can then get access to this sitemap structure at runtime.

    ASP.NET includes a basic built-in XML based SiteMap provider that allows you to define

    this site structure within an XML file whose default name is web.sitemap (note: you can

    change the name if you want). For example, web.sitemap XML file can contain several

    levels of hierarchy (a homepage root, then three sub-nodes, and under the products node

    three additional sub-nodes).

    Security

    In .NET security considerations can be verified by carrying out authentication of entries,

    password checking, password reminders and facility to create new users. It helps in

    permitting authorized users and denies access to unauthorized users.

    Wizard

    . NET provides a wizard called as Web Site Administrative Tools which facilitates in the

    Database Providers

    Security Management Provides security consideration like password and

    username checking

    Roles Management Which pages and folders a user is permitted to view.

    With built in Windows authentication, you can be assured that your applications are secure.

    Database controls

    These controls are used to connect with the database and then retrieve, display or edit the

    contents of the database. They can be categorized as:

    Data Source Control

    These offer the behavior of connecting to sources of data.

    13

  • 8/14/2019 knowledge manag portal

    14/84

    Examples of Data source Controls are SQL Data Source, Site Map Data Source, XML Data

    Source, Object Data Source.

    Data-bound Controls

    These perform the task of taking information provided by Data Source Controls and render

    it into HTML. Examples of Data Bound controls are Grid View, Data List, Details View,

    Form View and Repeater.

    Componentization

    Code for the various parts of the page can be handled independently.

    Code for the presentation layer can be kept in a separate file i.e. default.aspx file.

    Code for the execution is kept in a separate file i.e. default.aspx.cs file.

    Web Services

    Web Services are methods of making information available in a standardized way that

    could be accessed by any developers application over the web. A web service on its own

    Is not an application

    Cant be seen as web pages.

    Cant be seen as an .exe files.

    They come as part of user interface.

    Helps in preventing code duplication & thus save time.

    They can be created & exposed to web for other applications to share it or one can

    search for web service to add to his own application.

    Web services conform to the Simple Object Access Protocol SOAP and Extensible

    Markup Language XML

    Deployment

    In the past series of steps were required to be carried out to register and configure

    the site on the host machine.

    14

  • 8/14/2019 knowledge manag portal

    15/84

    ASP .NET 2.0 has devised DOS XCOPY type of folder copying mechanism.

    This XCOPY deploys your site from the development machine to the deployment

    host.

    All registration and machine level customizations occur automatically when the

    first request hits the site.

    XCOPY/ FTP will suffice for simple applications for more sophisticated

    requirements it may well be preferable to create a Windows Installer based setup

    package.

    There are many common installation tasks that are not possible via XCOPY, some

    of which are

    Creating IIS web sites or virtual directories

    However, if you do need any of these you have Microsoft Windows Installer at your

    disposal

    4.3.1.2 Summary of ASP .NET

    ASP.NET is a programming framework built on the common language runtime that can

    be used on a server to build powerful Web applications. ASP.NET offers several important

    advantages over previous Web development models:

    Enhanced Performance:

    ASP.NET is compiled common language runtime code running on the server.

    Unlike its interpreted predecessors, ASP.NET can take advantage of early binding,

    just-in-time compilation, native optimization, and caching services right out of the

    box. This amounts to dramatically better performance before you ever write a line

    of code.

    World-Class Tool Support:

    A rich toolbox and designer in the Visual Studio integrated development

    environment complement the ASP.NET framework. Drag-and-drop server controls,

    and automatic deployment are just a few of the features this powerful tool provides.

    15

  • 8/14/2019 knowledge manag portal

    16/84

    Power and Flexibility:

    Because ASP.NET is based on the common language runtime, the power and

    flexibility of that entire platform is available to Web application developers. The

    .NET Framework class library, Messaging, and Data Access solutions are all

    seamlessly accessible from the Web. ASP.NET is also language-independent, so you

    can choose the language that best applies to your application or partition your

    application across many languages.

    Simplicity:

    ASP.NET makes it easy to perform common tasks, from simple form submission

    and client authentication to deployment and site configuration. For example, the

    ASP.NET page framework allows you to build user interfaces that cleanly separate

    application logic from presentation code and to handle events in a simple, Visual

    Basic - like forms processing model. Additionally, the common language runtime

    simplifies development, with managed code services such as automatic reference

    counting and garbage collection.

    Security:

    With built in Windows authentication and per-application configuration, you can be

    assured that your applications are secure.

    Language Independency:

    ASP.NET is language-independent, so you can choose the language that best applies

    to your application or partition your application across many languages.

    ASP .NET 2.0 supports more than 20 different languages.

    Irrespective of language the code is converted to Intermediate Language prior to

    execution.

    4.3.2 SQL Server

    SQL Server has many advanced features like:

    Database mirroring

    Database mirroring is a new high-availability feature in SQL Server 2005. It's similar to

    server clustering in that fail over is achieved by the use of a stand-by server; the difference

    16

  • 8/14/2019 knowledge manag portal

    17/84

  • 8/14/2019 knowledge manag portal

    18/84

    SQL Server 2005 provides the ability to rank result sets returned from the database engine.

    This allows customizing the manner in which result sets are returned, such as creating

    customized paging functions for Web site data.

    XML integration

    SQL Server 2005 introduces the new XML data-type. Using this feature, full XML

    documents in this new data-type, and validations can be placed on the well-formed

    documents in the database. Additional enhancements include the ability to query the XML

    documents and create indexes on the XML data-type.

    TRY...CATCH

    Use of new TRY...CATCH constructs in SQL Server 2005 helps to catch and handle

    deadlocks when they occur in the database. This long-awaited feature simplifies error

    handling in the database.

    Database Mail

    Database Mail, the eventual successor to SQL Mail, is a greatly enhanced e-mail solution

    available in the database engine. With Database Mail, there is no longer a dependency on

    Microsoft Outlook or MAPI e-mail clients. Database Mail uses standard SMTP to send e-

    mail messages. These messages may contain query results, attachments (which can be

    governed by the DBA), and is fully cluster aware. In addition, the e-mail process runs

    outside of the database engine space, which means that messages can continue to be queued

    even when the database engine has stopped.

    Fast Recoveries

    A new faster recovery option improves availability of SQL Server databases.

    Administrators can reconnect to a recovering database after the transaction log has been

    rolled forward.

    Standards-based Information Access

    18

  • 8/14/2019 knowledge manag portal

    19/84

    Any object, data source, or business intelligence component can be exposed using

    standards-based protocols such as Simple Object Access Protocol (SOAP) and Hypertext

    Transfer Protocol (HTTP)eliminating the need for a middle-tier listener, such as IIS, to

    access a Web services interface that is exposed by SQL Server 2005.

    Security Enhancements

    The security model in SQL Server 2005 separate users from objects, provides fine-grain

    access, and enables greater control of data access. Additionally, all system tables are

    implemented as views, providing more control over database system objects.

    Web Services

    With SQL Server 2005 developers can develop Web services in the database tier, making

    SQL Server a hypertext transfer protocol (HTTP) listener and providing a new type of data

    access capability for Web services-centric applications.

    T-SQL

    T-SQL (Transact-SQL) is the primary means of programming and managing SQL Server. It

    exposes keywords for the operations that can be performed on SQL Server, including

    creating and altering database schemas, entering and editing data in the database as well as

    monitoring and managing the server itself. Client applications, both which consume data or

    manage the server, leverage SQL Server functionality by sending T-SQL queries and

    statements which are then processed by the server and results (or errors) returned to the

    client application. SQL Server allows it to be managed using T-SQL. For this it exposes

    read only tables from which server statistics can be read. Management functionality is

    exposed via system-defined stored procedures, which can be invoked from T-SQL queries

    to perform the management operation.

    Replication Monitor

    With its intuitive user interface and wealth of data metrics, Replication Monitor is a tool

    that sets a new standard for ease of use in managing complex data replication operations.

    Cross-Tier and Cross-Language Debugging

    19

  • 8/14/2019 knowledge manag portal

    20/84

    SQL Server 2005 and Visual Studio 2005 together provide even deeper integration in the

    area of application debugging. The combination lets you seamlessly debug both CLR and

    Transact-SQL code using the same Visual Studio debugging interface, and enables you to

    debug from CLR to Transact-SQL and back again, regardless of the location of the code,

    whether it is on the developer computer or stored in the SQL Server database

    4.3.3 Standards used

    SCORM stands for "Shareable Content Object Reference Model", is a standard for

    developing, packaging and delivering high-quality training materials for online training

    Courses. We are following SCORM standards in our project. SCORM was developed

    based on the concept of "using a common e-learning Standard to modernize education and

    training courses". Now, with the SCORM standard, and more specifically SCORM

    compliant tools/platforms, you can find, import, share, reuse and export learning contents

    through compliant web-based learning systems.

    The benefits of using SCORM standards are as follows:

    Reusability

    Lowers cost because learning contents can be used many times. SCORM incorporated

    contents can be easily incorporated into multiple applications, allowing for learning

    contents to be easily modified and used by different tools and platforms. This allows you to

    spend less effort in creating new contents from scratch and focus more on incorporating

    existing contents to meet the specific needs of the learner and corporation.

    Accessibility

    Increased access to learning information. The SCORM standard offers you the ability to

    access learning contents from anywhere and at anytime. It enables you to customize the

    delivery of your learning contents from one remote location and deliver them too many

    other locations. It allows you to search, identify, access and retrieve contents that are

    widely distributed in SCORM compliant repositories. This way, it is easier for learners to

    identify, retrieve, and incorporate valuable content from many trusted sources.

    20

  • 8/14/2019 knowledge manag portal

    21/84

    Interoperability

    Systems work efficiently together. SCORM provides an extension for compliant

    courseware and similar tools/platforms to communicate under a common interface. With

    consistent content production specifications, learning contents developed using one set of

    tools/platform can be easily identified, and launched with a different set of tools/platform.

    In other words, SCORM compliant learning contents can be authored and/or launched by

    any SCORM compliant authoring tools and/or platforms, providing maximum flexibility.

    Durability

    Learning contents will not easily become obsolete. SCORM is becoming the technological

    standard for the e-Learning industry because SCORM compliant contents are preserved and

    portable even when base technology (tools/platform) changes. This means learning

    contents do not need to go through a Redesign or redevelopment process, even when

    technology changes (platforms, tools, Access, devices, products, vendors).

    Manageability

    A track of system usage and learning experience can be maintained. SCORM can keep

    track of the learners' learning experiences and activities, and more Specifically how

    learning objects are created, stored, assembled, and delivered to individuals. Also it

    provides tracking based on an individuals learning assessment, which gives a better

    evaluation reference for determining the learning results. Thus, corporations purchasing

    SCORM compliant software (such as TCMS 2.0 or Stream Author 2.5) can better assess

    their e-Learning environment and provide a more detailed measurement for their ROI.

    4.4 Hardware and Software Requirements

    4.4.1 Hardware Requirements

    Pentium 4 processor

    Minimum 256 MB memory

    21

  • 8/14/2019 knowledge manag portal

    22/84

    10 GB Hard disk

    Modem / Network card

    4.4.2 Software Requirements

    Microsoft Windows XP Professional, Version 2002 or above

    C# with ASP.NET 2.0

    SQL server 2000 / 2005

    5. System Design

    5.1 Introduction

    Systems design is the process or art of defining the architecture, components, modules,

    interfaces, and data for a system to satisfy specified requirements. Once the software

    requirements are analyzed and specified, the software design involves three technical

    activities-- design, code generation and testing that are required to build and verify the

    software. The design activities are of main importance in this phase because in this activity

    decisions ultimately affecting the success of the software implementation and its ease of

    maintenance are made. These decisions have the final bearing upon the reliability and

    maintainability of the system. Design is the only way to accurately transfer the customer

    requirements into a finished software or system.

    5.2 UML Diagrams

    UML, the Unified Modeling Language, is a visual language for specifying, constructing,

    and documenting the artifacts of systems. UML can be used with all processes, throughout

    22

    http://en.wikipedia.org/wiki/Datahttp://en.wikipedia.org/wiki/Systemhttp://en.wikipedia.org/wiki/Datahttp://en.wikipedia.org/wiki/System
  • 8/14/2019 knowledge manag portal

    23/84

    the development lifecycle, and across different implementation technologies. UML

    diagrams represent three different views of a system model:

    Functional requirements view:

    It emphasizes the functional requirements of the system from the user's point of view. This

    includes use case diagrams.

    Static structural view:

    It emphasizes the static structure of the system using objects, attributes, operations, and

    relationships. This includes class diagrams.

    Dynamic behavior view:

    It emphasizes the dynamic behavior of the system by showing collaborations among

    objects and changes to the internal states of objects. This Includes sequence diagrams,

    activity diagrams.

    5.2.1 Use Case Diagrams

    Use case diagrams overview the usage requirements for a system. They describe "the

    meat" of the actual requirements.

    5.2.1.1 Elements of a Use Case Diagram and their Notation

    Use cases

    A use case describes a sequence of actions that provide something of measurable value to

    an actor and is drawn as a horizontal ellipse.

    Fig 5.1 Sample use case

    Actors

    23

    Watch

  • 8/14/2019 knowledge manag portal

    24/84

    An actor is a person, organization, or external system that plays a role in one or more

    interactions with your system. Actors are drawn as stick figures.

    Fig 5.2 Actor

    Relationships

    A relationship between two use cases is basically a dependency between the two use cases.

    Use case relationships can be one of the following:

    Include:

    When a use case is depicted as using the functionality of another use case in a diagram,

    this relationship between the use cases is named as an include relationship.

    Fig 5.3 Include relationship between use cases

    Extend:

    In an extend relationship between two use cases, the child use case adds to the existing

    functionality and characteristics of the parent use case.

    24

  • 8/14/2019 knowledge manag portal

    25/84

    Fig 5.4 Extend relationship between use cases

    Generalization:

    A generalization relationship is also a parent-child relationship between use cases. The

    child use case in the generalization relationship has the underlying business processmeaning, but is an enhancement of the parent use case.

    UseCase1 UseCase2

    Fig 5.5 Generalization relationship between use cases

    Usecase1:

    25

  • 8/14/2019 knowledge manag portal

    26/84

    Trainee

    Trainer

    User

    Authentication

    Information andKnowledge Sharing

    Database

    Analytics

    5.6 Use case diagram of the Knowledge Management Portal

    Usecase2:

    26

  • 8/14/2019 knowledge manag portal

    27/84

    Trainer

    Trainee

    Login

    UserRegistration

    Database

    Access to Services

    5.7 Use case diagram of Module 1

    Usecase3:

    27

  • 8/14/2019 knowledge manag portal

    28/84

    Trainee

    Trainer

    Company History

    Latest News

    Interview Tips

    Knowledge Updation/Downloading

    Database

    Knowledge Creation

    5.8 Use case diagram of Module 2

    Usecase4:

    28

  • 8/14/2019 knowledge manag portal

    29/84

    Online Exam

    Rating Knowledge

    Database

    Trainee

    Knowledge SearchTrainer

    Annotations

    5.9 Use case diagram of Module 3

    5.2.2 Class Diagram

    The purpose of the class diagram is to show the types being modeled within the system. A

    class diagram is a pictorial representation of the detailed system designs.

    29

  • 8/14/2019 knowledge manag portal

    30/84

    5.2.2.1 Elements of a Class Diagram and their Notation

    Class:

    A class represents an entity of a given system that provides an encapsulated implementation

    of certain functionality of a given entity. The class to others as methods exposes these. The

    properties of a class are called attributes. A class is represented by a rectangle. The

    following diagram shows a typical class in a class diagram:

    Fig 5.10 Representation of a sample class

    Relationships

    Association:

    When two classes are connected to each other in any way, an association relation is

    established.

    Fig 5.11 Association relationship between classes

    Inheritance/Generalization:

    Also called an "is a" relationship, because the child class is a type of the parent class.

    Generalization is the basic type of relationship used to define reusable elements in the class

    diagram.

    30

  • 8/14/2019 knowledge manag portal

    31/84

    Fig 5.12 Generalization relationship between classes

    Database

    Interview Tips()

    Latest News()

    Knowledge Bank()

    Authentication

    EmployeeId

    Emp Name

    Designation

    Salary

    PlatForm

    Registration()

    Services

    View Lesson()

    Rating()

    Annotations()

    Searching()

    Online Examination()

    Authorization

    Updating()

    Downloading()

    Creation()

    5.13 Class diagram of the Knowledge Management Portal

    5.2.3 Sequence Diagram

    A Sequence diagram depicts the sequence of actions that occur in a system. The invocation

    of methods in each object, and the order in which the invocation occurs is captured in a

    Sequence diagram. This makes the Sequence diagram a very useful tool to easily represent

    the dynamic behavior of a system.

    31

  • 8/14/2019 knowledge manag portal

    32/84

    5.2.3.1 Elements of a Sequence Diagram and their Notation

    Object:

    The primary element involved in a sequence diagram is an Objectan instance of a class.

    An object is represented by a named rectangle. The name to the left of the ":" is the object

    name and to its right is the class name.

    Fig 5.14 Object in a sequence diagram

    Message:

    The interaction between different objects in a sequence diagram is represented as

    messages. A directed arrow denotes a message. Depending on the type of message, the

    notation differs. In a Sequence diagram, you can represent simple messages, special

    messages to create or destroy objects, and message responses.

    Fig 5.15 Messages in a sequence Diagram

    Sequence Diagram 1:

    32

  • 8/14/2019 knowledge manag portal

    33/84

    U:User User Portal Database

    1: Login/Registration2: search for the req page

    3: validate

    4: Retrives the page

    5: Enter the details

    6: Submit()

    7: validate

    8: succefully logged in

    Fig 5.16 Sequence diagram of Module 1

    Sequence Diagram 2:

    33

  • 8/14/2019 knowledge manag portal

    34/84

    Fig 5.17 Sequence diagram of Module 2

    Sequence Diagram 3:

    34

  • 8/14/2019 knowledge manag portal

    35/84

    User User Portal Service Engine DataBase

    1: If User

    2: Display Service

    3: Select Service4: Request Page

    7: Retrive the service

    8: Searching Service9: Request Page

    10: Search

    6: Validate

    11: Validate

    12: Retrive the Service

    13: Annotations service

    14: Request Page 15: Search16: Validate

    17: Retrive Service

    18: If Trainee

    19: Online Examination

    20: Request Page 21: Search

    22: Validate

    23: Retrive Page

    24: Rating25: Request Page

    26: Search27: Validate

    28: Retrive Page

    5: Search

    Fig 5.18 Sequence diagram of Module 3

    35

  • 8/14/2019 knowledge manag portal

    36/84

  • 8/14/2019 knowledge manag portal

    37/84

    Decision

    A diamond with one flow entering and several leaving denotes it. The flows leaving

    include conditions although some modelers will not indicate the conditions if it is obvious.

    Fig 5.22 Decision

    Activity Diagram 1:

    U:User

    Login/Registration

    Check Valid User or not

    Access System

    Valid User

    Invalid user

    DataBaseValidateUser

    Fig 5.23Activity diagram of Module 1

    37

  • 8/14/2019 knowledge manag portal

    38/84

    Activity Diagram 2:

    Fig 5.24 Activity diagram of Module 2

    38

  • 8/14/2019 knowledge manag portal

    39/84

    Activity Diagram 3:

    Fig 5.25 Activity diagram of Module 3

    39

  • 8/14/2019 knowledge manag portal

    40/84

    5.3 Architecture Diagram

    The architecture of a software system defines its structure. In fact, it defines several

    structures, each of which comprises elements and the relationships among those elements.

    The elements may be computational entities related by control flow or business entities

    connected by semantic constraints. It is a multi-perspective, quality-based approach to

    ensuring that software is built to fit its purpose.

    The architecture below explains the complete flow of the project:

    Fig 5.26 Architecture diagram of Knowledge Management Portal

    5.4 Database Tables Used for The Design

    Database tables are used to organize and group the data by common characteristics

    or principles. The database can contain as many tables as needed to organize the

    data. Database tables involved in this project for storing and retrieving the

    data/information are as following:

    40

    http://www.filemaker.com/help/Glossary211.html#wp88644http://www.filemaker.com/help/Glossary211.html#wp88644
  • 8/14/2019 knowledge manag portal

    41/84

    5.4.1 Employee Table

    This table is used to store the details of the employees registered with the portal.

    5.4.2 KBank Table

    This table is used to store all the files pertaining to all the departments. All the files have aunique content Id to identify them.

    5.4.3 Lesson Table

    This table contains the details of the lessons created by the trainers.

    41

  • 8/14/2019 knowledge manag portal

    42/84

    5.4.4 Ratings Table

    This table stores the details of the ratings given by the employees.

    5.4.5 DNQuestionBank Table

    This table consists of the questions to be presented in the online exam for the traineebelonging to Dot net department.

    5.4.6 JQuestionBank Table

    This table consists of the questions to be presented in the online exam for the traineebelonging to Java department.

    42

  • 8/14/2019 knowledge manag portal

    43/84

    5.4.7 OraQuestionBank Table

    This table consists of the questions to be presented in the online exam for the traineebelonging to oracle department.

    5.4.7 News Table

    This table stores the headlines as well as the detailed news to be presented in the news

    section.

    5.4.8 Comments Table

    This table is used to store the details of the comments posted by the employees in theannotations section.

    43

  • 8/14/2019 knowledge manag portal

    44/84

    6. Testing

    In general, testing is finding out how well something works. In computer hardware and

    software development, testing is used at key checkpoints in the overall process to

    determine whether objectives are being met. For example, in software development,

    product user representatives test product objectives. When the design is complete, coding

    follows and each programmer tests the finished code at the unit or module level, at the

    component level by the group of programmers involved; and at the system level when all

    components are combined together. At early or late stages, a product or service may also be

    tested for usability. Software testing is a critical element of software quality assurance and

    represents the ultimate review of specification design and code generation.

    6.1 Testing Objectives

    Testing is a process of executing a program with the intent of finding an error.

    A good test case is one that has a high probability of finding an as yet undiscovered

    error.

    A successful test is one that uncovers an as yet undiscovered error.

    6.2 White -Box and Black-Box Testing

    Software testing methods are traditionally divided intoblack box testing and white box

    testing. These two approaches are used to describe the point of view that a test engineer

    takes when designing test cases.

    6.2.1 White Box Testing

    White box testing is a security testing method that can be used to validate whether code

    implementation follows intended design, to validate implemented security functionality,

    and to uncover exploitable vulnerabilities. White box testing is performed based on the

    knowledge of how the system is implemented. White box testing includes analyzing data

    flow, control flow, information flow, coding practices, and exception and error handling

    44

    http://en.wikipedia.org/wiki/Black_box_testinghttp://en.wikipedia.org/wiki/White_box_testinghttp://en.wikipedia.org/wiki/White_box_testinghttp://en.wikipedia.org/wiki/Black_box_testinghttp://en.wikipedia.org/wiki/White_box_testinghttp://en.wikipedia.org/wiki/White_box_testing
  • 8/14/2019 knowledge manag portal

    45/84

    within the system, to test the intended and unintended software behavior. White box testing

    requires access to the source code.

    Using white-box testing we can derive test cases that

    Guarantee that all independent paths within a module have been exercised at least

    once.

    Exercise all logical decisions on their true and false sides.

    Execute internal data structures to assure their validity.

    By the test cases each of the modules have been executed at least once and tested for bugs.

    All the logic decisions on their true and false sides are executed so that the system will

    perform well.

    6.2.2 Black Box Testing

    Black box testing is based on the softwares specifications or requirements, without

    reference to its internal workings. Black box testing attempts to derive sets of inputs that

    will fully exercise all the functional requirements of a system. This type of testing attempts

    to find errors in the following categories:

    Incorrect or missing functions.

    Interface errors.

    Errors in data structures or external database access.

    Performance errors

    Initialization and termination errors.

    All the modules have been thoroughly tested in order to find if all the functions,

    interfaces designed for the user, all the data structures used are working as per the

    intended requirement.

    6.3 Unit Testing

    Unit testing is a procedure used to validate that individual units ofsource code are working

    properly. This would test the interaction of many functions but confine the test within one

    unit. Unit testing involves only those characteristics that are vital to the performance of the

    unit under test. This encourages developers to modify the source code without immediate

    concerns about how such changes might affect the functioning of other units or the program

    45

    http://en.wikipedia.org/wiki/Source_codehttp://searchsoa.techtarget.com/sDefinition/0,,sid26_gci213030,00.htmlhttp://en.wikipedia.org/wiki/Source_codehttp://searchsoa.techtarget.com/sDefinition/0,,sid26_gci213030,00.html
  • 8/14/2019 knowledge manag portal

    46/84

    as a whole. Unit testing must be done with an awareness that it may not be possible to test a

    unit for every input scenario that will occur when the program is run in a real-world

    environment.

    Keeping in mind the above rules, each and every module of our project was tested

    individually and seen that all the modules are working in an error-free manner.

    6.4 Integration Testing

    Integration testing is a logical extension of unit testing. In its simplest form, two units that

    have already been tested are combined into a component and the interface between them is

    tested. A component, in this sense, refers to an integrated aggregate of more than one unit.

    Integration testing can expose problems with the interfaces among program components

    before trouble occurs in real-world program execution. Simulated usage of shared data

    areas and inter-process communication is tested and individual subsystems are exercised

    through their input interfaces.

    After testing the individual modules, we have combined all the modules and tested if all the

    modules as a whole are working properly or not.

    6.5 System Testing

    System testing of software or hardware is testing conducted on a complete, integrated

    system to evaluate the system's compliance with its specified requirements. System testing

    falls within the scope ofblack box testing, and as such, should require no knowledge of the

    inner design of the code or logic. As a rule, system testing takes, as its input, all of the

    "integrated" software components that have successfully passed integration testing and also

    the software system itself integrated with any applicable hardware system(s). The purpose

    of integration testing is to detect any inconsistencies between the software units that are

    integrated together (called assemblages) or between any of the assemblages and the

    hardware. System testing is a more limiting type of testing; it seeks to detect defects both

    within the "inter-assemblages" and also within the system as a whole.

    46

    http://searchcio-midmarket.techtarget.com/sDefinition/0,,sid183_gci212363,00.htmlhttp://en.wikipedia.org/wiki/Requirementshttp://en.wikipedia.org/wiki/Black_box_testinghttp://en.wikipedia.org/wiki/Integration_testinghttp://searchcio-midmarket.techtarget.com/sDefinition/0,,sid183_gci212363,00.htmlhttp://en.wikipedia.org/wiki/Requirementshttp://en.wikipedia.org/wiki/Black_box_testinghttp://en.wikipedia.org/wiki/Integration_testing
  • 8/14/2019 knowledge manag portal

    47/84

    7. Implementation

    All the front-end pages are created using ASP. Net. The users can access most of the

    services offered by the portal only when they log in. So, both the trainers and the trainees

    must become members of the portal. As the portal contains sensitive information about the

    company that should not be viewed by users other than the company employees, care

    should be taken that only the authorized employees of the company get registered with the

    site. This is achieved by asking the employee to enter a secret code given by the

    organization before getting registered. Only if the entered code is proven to be correct, he

    can go ahead with the registration process else his registration request is denied. This is to

    ensure that additional security is provided. Once filling in the registration details is

    completed, the details are stored in the database after proper verification by the

    administrator. Here the freedom of choosing the user id is given to the employee himself. A

    check is made in order to see if the user id already exists. If so, the employee is asked to

    enter another one else he get registered with the given id. Here, constraint checking is made

    on certain fields to ensure that the data he is entering is valid and meaningful. The data

    entered by the employee is stored in the database using SQL server after proper

    verification.

    After successful login, the user will be directed to the home page. At the time of login his

    category i.e. whether he is a trainer or trainee or admin is stored and this category acts as a

    criteria in enabling different services to different classes of users. All the services offered

    by the portal are present in the form of buttons, which are enabled, or disabled depending

    upon the category of the user signed in. Clicking on the buttons will direct the user to the

    appropriate pages.

    If the user is a trainer, he will be given the privilege to create lessons from the files presentin the knowledge bank. For this activity to be performed, the documents he wishes to be

    present in the lesson must be first updated in the knowledge bank. The provision of

    updating and viewing the contents present in the knowledge bank is given only to the

    administrator and the trainer. The trainer of a particular department is allowed to create

    lessons pertaining to that department only. This particular feature is implemented by

    displaying only the contents pertaining to his department only while creating the lessons.

    47

  • 8/14/2019 knowledge manag portal

    48/84

  • 8/14/2019 knowledge manag portal

    49/84

    7.1 Input/Output (Sample Screens)

    This section is to provide the sample screens of the knowledge management portal. These

    screen shots provide an insight into the general working of the system.

    LOGIN SCREEN:

    Fig 7.1 the login page where the user needs to enter his user id and password

    49

  • 8/14/2019 knowledge manag portal

    50/84

    SECURITY CODE SCREEN FOR ACCOUNT CREATION:

    Fig 7.2 Asking the user to enter the secret code before getting registered.

    50

  • 8/14/2019 knowledge manag portal

    51/84

    ERROR MESSAGE DISPLAYED FOR INVALID CODE:

    Fig 7.3 The page displaying error if the entered code is not valid.

    51

  • 8/14/2019 knowledge manag portal

    52/84

    REGISTRATION PAGE:

    Fig 7.4 Employee Registration page.

    52

  • 8/14/2019 knowledge manag portal

    53/84

    VALIDATIONS IN REGISTRATION PAGE:

    Fig 7.5 Validation checks made in the registration form .

    53

  • 8/14/2019 knowledge manag portal

    54/84

    FILLING THE REGISTRATION DETAILS:

    Fig 7.6 Filling the registration form.

    54

  • 8/14/2019 knowledge manag portal

    55/84

    SUCCESS MESSAGE AFTER ACCOUNT CREATION:

    Fig 7.7 Success message displayed after the user account is created.

    55

  • 8/14/2019 knowledge manag portal

    56/84

    LOGIN PAGE:

    Fig 7.8 The login page

    56

  • 8/14/2019 knowledge manag portal

    57/84

  • 8/14/2019 knowledge manag portal

    58/84

    HOME PAGE:

    Fig 7.10 The home page displaying the services that can be accessed by the trainer.

    The services, which cannot be accessed, are displayed in the form of disabled buttons.

    58

  • 8/14/2019 knowledge manag portal

    59/84

    KNOWLEDGE BANK PAGE:

    Fig 7.11 The Knowledge Bank page, which displays the contents present in it.

    59

  • 8/14/2019 knowledge manag portal

    60/84

    KNOWLEDGE BANK UPDATION PAGE:

    Fig 7.12 Update page, using which the trainer can upload the files in the knowledge

    bank.

    60

  • 8/14/2019 knowledge manag portal

    61/84

    KNOWLEDGE BANK UPDATION PAGEFILLING DETAILS:

    Fig 7.13 Once the upload button is clicked the file gets uploaded into the knowledge bank.

    61

  • 8/14/2019 knowledge manag portal

    62/84

    HOME PAGE OF ADMINISTRATOR:

    Fig 7.14 Services accessed by the administrator presented in the form of enabled

    buttons.

    62

  • 8/14/2019 knowledge manag portal

    63/84

  • 8/14/2019 knowledge manag portal

    64/84

    LESSON CREATION PAGE:

    Fig 7.16 The lesson creation page where the trainer needs to select the subtopics to be

    present in the lesson being created.

    64

  • 8/14/2019 knowledge manag portal

    65/84

    FAQ PAGE:

    Fig 7.17 The frequently asked questions page.

    65

  • 8/14/2019 knowledge manag portal

    66/84

    RATING PAGE:

    Fig 7.18 The Knowledge Rating Page, which displays the ratings given to various topics.

    66

  • 8/14/2019 knowledge manag portal

    67/84

    ANNOTATIONS PAGE:

    Fig 7.19 The annotations page displaying different comments.

    67

  • 8/14/2019 knowledge manag portal

    68/84

    POSTING COMMENT:

    Fig 7.20 If the employee wants to post a comment he needs to click on the Post Your Opinion.

    68

  • 8/14/2019 knowledge manag portal

    69/84

    POSTING COMMENT:

    Fig 7.21 once the opinion is posted, the post button is disabled. The user needs to login again

    to get that button enabled.

    69

  • 8/14/2019 knowledge manag portal

    70/84

    HOME PAGE OF TRAINEE:

    Fig 7.22 The services available for a trainee.

    70

  • 8/14/2019 knowledge manag portal

    71/84

    VIEW LESSON PAGE:

    Fig 7.23 The View lesson page where all the lessons are displayed chapter wise.

    VIEW LESSON PAGE:

    71

  • 8/14/2019 knowledge manag portal

    72/84

    Fig 7.24 The sub topics of a particular chapter in the form of links are displayed whenever the

    chapter number is selected from the pull down menu.

    72

  • 8/14/2019 knowledge manag portal

    73/84

    VIEW LESSON PAGE:

    Fig 7.25 Once the link is clicked, the trainee can download the file.

    73

  • 8/14/2019 knowledge manag portal

    74/84

    RATING THE LESSON:

    Fig 7.26 The trainee can click on the Rate the Topic link to give rating to that particular

    lesson.

    74

  • 8/14/2019 knowledge manag portal

    75/84

    NEWS PAGE:

    Fig 7.27 The News page displaying the latest news in a scrolling format.

    75

  • 8/14/2019 knowledge manag portal

    76/84

    NEWS PAGE:

    Fig 7.28 Once the scrolling news is clicked, news is displayed in detail.

    76

  • 8/14/2019 knowledge manag portal

    77/84

    ONLINE EXAM PAGE:

    Fig 7.29 The Online exam page displayed to the trainee.

    77

  • 8/14/2019 knowledge manag portal

    78/84

    RESULT PAGE:

    Fig 7.30 The result displayed after the online exam.

    78

  • 8/14/2019 knowledge manag portal

    79/84

    HOME PAGE OF ADMIN:

    Fig 7.31 The services page displayed to the administrator. The update news link is enabled

    only for the administrator.

    79

  • 8/14/2019 knowledge manag portal

    80/84

    NEWS UPDATE PAGE:

    Fig 7.32 The administrator can delete unnecessary ones by clicking the Update News link.

    80

  • 8/14/2019 knowledge manag portal

    81/84

    NEWS UPDATE PAGE:

    Fig 7.33 The administrator can add new ones by clicking on the Update News button.

    81

  • 8/14/2019 knowledge manag portal

    82/84

    SUCCESS MESSAGE AFTER INSERTION:

    Fig 7.34 Once the news is updated successfully, a success message appears on the screen.

    82

  • 8/14/2019 knowledge manag portal

    83/84

    8. Conclusions and Scope for Future enhancements

    8.1 Conclusions

    The Knowledge Management Portal, which can be easily accessed over the web by the

    authorized employees, is a free of cost service provided by the company. Using this service,

    the employees of the company can have the benefit of knowing the latest happenings, share

    their experiences by posting comments and update their technical knowledge by going

    through the lessons made available in the portal. The system is easy and convenient to use

    and is made available round the clock. The system also aids in easy retrieval of the required

    information. The system being portable helps in easy upgrading and maintenance.

    Thus, we have developed the Knowledge Management Portal, which helps its users in

    creating, sharing and maintaining valuable information in a user-friendly environment.

    8.2 Scope for Future enhancements

    The System can be enhanced to increase look and feel of the application. We can give some

    more advanced features to the application like making it more automated (less Human

    intervention), Secure Remote connectivity etc.

    83

  • 8/14/2019 knowledge manag portal

    84/84

    9.References

    9.1 Textbooks

    1. William H. Murray and Chris H. Pappas., Visual C++.NET: The Complete

    Reference, McGraw-Hill/Osborne, Microsoft.net framework, Published 2002.

    2. Matthew MacDonald, Robert Standefer.,ASP.NET: The Complete Reference,

    McGraw-Hill/Osborne, Active server pages, Published 2002.

    9.2 Websites

    1. Wikipedia, URL: http://www.wikipedia.org.

    2. Answers.com, Online Dictionary, Encyclopedia and much more, URL:

    http://www.answers.com.

    3. Google, URL: http://www.google.co.in

    http://www.wikipedia.org/http://www.answers.com/http://www.google.co.in/http://www.wikipedia.org/http://www.answers.com/http://www.google.co.in/