Project Report Sample Part 3 (Requirements and Feasibility Analysis,Introduction, H/W and S/W Requirement, Feasibility Study)


Requirement
AND
Feasibility Analysis

SYSTEM REQUIREMENT ANALYSIS


Prior to the software development efforts in any type of system it is very essential to understand the requirements of the system and users. A complete specification of the software is the 1st step in the analysis of system. Requirements analysis provides the designer with the representation of function and procedures that can be translated into data, architecture and procedural design.
The goal of system requirement analysis is to find out how the current system is working and finding out the areas where improvement is necessary and possible.

I  Introduction


Purpose


The adaptive Internet banking is proffering an end-to-end solution that includes both customer’s services and software implementation solution tailored to a company’s specific needs and imperatives.

II Specific Requirements


1)      Functional Requirements

·         Registration Module
·         Scheduling Test Module
·         Generating Test Module
·         Report Module
·         Test Module

2)      Interface Requirement

·         User Interface
·         Hardware Interface
·         Software Interface
·         Communication Interface.

3)      Attributes: Security characteristics in the software: - Authentication, What is wanted, Mobility, Availability, Timing, and Reliability. On the basis of which it will decide about the backup.
                                                                               




III Interface Requirements

1. User Interface:

 The package must be user friendly and robust. It must prompt the user with proper message boxes to help them perform various actions and how to proceed further. The system must respond normally under any input conditions and display proper message instead of turning up faults and errors.



2. Hardware Requirements:
                  
                
           Hardware
          Specification  
    CPU
Intel Pentium IV
    SPEED
1.5 GHz
    RAM
512MB
    HARD DISK
20GB
    KEYBOARD
105Keys


3. Software Specification:

 Software is a set of program, documents, and procedure, routines associated with computer system. Software is an essential complement to hardware. It is the computer programs, when executed operates the hardware.
The “Online Banking” has been developed using the following tools:

  • JAVA
  • SQL Server
  • HTML


Java programming language


Java is an object-oriented programming language developed by James Gosling and colleagues at Sun Microsystems in the early 1990s. Unlike conventional languages, which are generally designed to be compiled to native code, Java is compiled to a bytecode, which is then run (generally using JIT compilation) by a Java virtual machine.

The language itself borrows much syntax from C and C++ but has a much simpler object model and does away with low-level tools like programmer-manipulated pointers.

Java is only distantly related to JavaScript, though they have similar names and share a C-like syntax.

Version history

As with other parts of the Java platform, the Java language has evolved over the years while largely maintaining backwards compatibility.

JDK 1.0, JDK 1.1, J2SE 1.2, J2SE 1.3, J2SE 1.4, J2SE 5.0, Java SE 6, Java SE 7 —


Philosophy

There were five primary goals in the creation of the Java language:

  1. It should use the object-oriented programming methodology.

  1. It should allow the same program to be executed on multiple operating systems.

  1. It should contain built-in support for using computer networks.

  1. It should be designed to execute code from remote sources securely.

  1. It should be easy to use and borrow the good parts of older object-oriented languages like C++.


The JAVA Architecture:

Java’s strength comes from its unique architecture. The java needed a language that was above all, simple for the programmer to use. Yet in order to create reliable network applications, Java needed to be able to run securely over a network at the same time, work on a wide range of platforms. Java fulfills all of these goals and more.

Working with Java:

As with many other programming languages, java uses a compiler to convert human-readable source code into executable programs. Java compiler generates architecture-independent byte code codes. The byte codes can be only a java virtual machine, which is ideal java architecture, usually implemented in software rather than hardware. The compilation process is illustrated as under:


Java Compiler
 

Java Byte Codes
 

Java Source code
 
         
 




Java Features:
The major characters that make java such powerful development tool are their securities, open standards, memory management, object oriented, multithreading and it’s distributed and dynamic characteristics.

1.     Simple

Java was designed to be the easy for professional programmer to learn and use effectively. If one already understands the basic concepts of objects oriented programming, learning java will be even easier.

2.     Robustness

The multi-platform environment of the Web places extraordinary demand on a program, because the program must execute reliably in a verity of systems. Thus the ability to create robust programs was given a priority in the design of java. To better understand how java is robust, consider two of the reasons for programs failure, memory management mistakes and mishandled exception conditions (i.e. run time error). Memory Management can be difficult, tedious task in traditional programming environments. For example in C/C++, the programmer must manually allocate and free all dynamic memory that has been previously allocated or, worse, try to free some memory that another part of their code is still using. Java virtually eliminates these problems by managing memory allocation and de-allocation, because java provides for you. Exceptional conditions in traditional environments often arises in a situation such as division by zero or “file not found” and thy must be managed with clumsy and hard-to-hard construct. Java helps in this area by providing object oriented exception handling. In well written java programs, all run-time errors can and be managed by your program.
 3)  Security features:

Security is probably the main problem facing internet developers. Users are typically afraid of two things: confidential information being compromised and their computer systems being corrupted or destroyed by hackers. Java’s built in security addressed both of these concerns. Java built in security measures ensure java programs will operates with in the rules of the VM & prevent untrustworthy programs from accessing system resources.
4)       Open Standard/Platforms Independence:

Today, JVMs are available for more than a dozen different Hardware and Operating system combination. The exciting aspect of java’s cross-platform capability is that java class files do not need to be complied for each platform in advance. The same complied java program will work on the PC, Macintosh & every other platform that runs a java VM. A java application we write on our system today should run on every supported platform, even those do not exist yet. This deduces the development time by big factor.             

5)      Distributed and Dynamic:

In the windows operating systems, parts of programs can be placed into Dynamic link libraries so that they can be shared and loaded dynamically; i.e. when the program is running. The operating system does the final stage of linking at execution time. Using shared DLL saves memory and improves the modality of the software. Java takes Dynamic Libraries a step further. The VM class loader fetches class files from the network as well from the disk, providing location transparency making Java applications distributed as well as Dynamic.

6)      Object-Oriented:

Object Oriented Programming (OOP) is a way to software that is reusable, extensible & maintainable. Java is an object-oriented language that is it has facilities for OOP incorporated into the language. In OOPs it attempts to break a problem in to its component parts. The solution focuses on these independent objects and their relationship to other objects.

7)      Multithreading:

A single-threaded application has one thread of execution running at all times, all such programmers can do only one task at a time. If a single threaded program need to perform a task that will take several minutes.
SERVLETS

A servlet is a Java programming language class used to extend the capabilities of servers that host applications accessed via a request-response programming model. Although servlets can respond to any type of request, they are commonly used to extend the applications hosted by Web servers. For such applications, Java Servlet technology defines HTTP-specific servlet classes.
The javax.servlet and javax.servlet.http packages provide interfaces and classes for writing servlets. All servlets must implement the Servlet interface, which defines life-cycle methods.
When implementing a generic service, We can use or extend the GenericServlet class provided with the Java Servlet API. The HttpServlet class provides methods, such as doGet and doPost, for handling HTTP-specific services.



Servelet life cycle





Servlet Life Cycle Loading and Instantiating a Servlet

When we start up a servlet container, it looks for a set of configuration files, web.xml web.xml includes The name of the servlet . A Java class name for the servlet.The servlet container creates an instance of the given servlet class using Class.forName(className).newInstance()
 At this time, the servlet is loaded


Initializing a Servlet

Once the container creates the servlet instance, it calls the init(ServletConfig) method on this newly created instance ServletConfig object contains all the initialization parameters specified in web.xml  The servlet is initialized after init() returns
Servlet container calls the init() method only once on a servlet instance

Servicing Client Requests

When the servlet container receives requests for this servlet.Dispatch the requests to the servlet instance by calling the Servlet.service(ServletRequest, ServletResponse) method.

Destroying a Servlet :

If the servlet container decides that it no longer needs a servlet instance Calls the  destroy() method on the servlet instance. The servlet should clean up the resources. The servlet container cannot reuse this instance in any way.A servlet container may destroy a servlet if it
is running low on resources



Important Objects

 ServletConfig
 ServletContext
 RequestDispatcher
 ServletRequest (HTTPRequest)
 HTTPSession
 ServletResponse (HTTPResponse)


ServletContext: Dispatcher Methods

 Provides a RequestDispatcher to include or forward results from/to another servlet.

 Methods:

getRequestDispatcher (String path) returns a RequestDispatcher associated with the resource  at the given path.

getNamedDispatcher (String name) returns a RequestDispatcher associated with the named resource (name must be in the deployment descriptors)

RequestDispatcher
Provides a way to forward or include data from another resource

Important methods:

Forward (ServletRequest req, ServletResponse resp)

Include  (ServletRequest req, ServletResponse  resp)


RequestDispatcher: forward

 Allows a servlet to forward the request to another resource.Data can be saved in the ServletRequest.This permits mult-stage processing of the data. Most common use is to separate ServletResponse before forwarding it.A IllegalStateException will be thrown.


RequestDispatcher: include

Allows a servlet to include the results of another resource in its response.Similar to forward, but
Data can be written to the response before an Include. The first servlet to receive the request is the one who finishes the response


ServletRequest(HTTP Request)

     Emodies a request to rhe servlet Contains the parameters passed by the user .Holds the users session (HttpRequest)  Allows for the addition of attributes.This makes it easy to pass objects to other servlets before using a RequestDispatcher

ServletRequest(HttpRequest)

_ Important Methods:

   getAttributes(String Name)
   setAttributes(String name, Object o)
   getParameter(String name)
   getParameterNames(String name)
   getSession(): returns the HTTPSession of this user

  Session Tracking

● Need a mechanism to maintain state across a series of requests from the same user (or
originating from the same browser) over some period of time
 Example:  Online shopping cart
● Yet, HTTP is stateless protocol   Each time, a client talks to a web server, it opens a new connection Server does not automatically maintains “conversational state” of a user


HTTP Cookie

● Cookie is a small amount of information sent by a servlet to a Web browser
● Saved by the browser, and later sent back to the server in subsequent requests
A cookie has a name, a single value, and optional attributes
A cookie's value can uniquely identify a client
● Server uses cookie's value to extract information about the session from some location on the
Server.

URL Rewriting

URLs can be rewritten or encoded to include session information.
● URL rewriting usually includes a session id
● Session id can be sent as an added parameter:
   http://.../servlet/Rewritten?sessionid=688



Hidden Form Fields

● Hidden form fields do not display in the browser, but can be sent back to the server
by submit <INPUT TYPE=”HIDDEN” NAME=”session” VALUE=”...”>
● Fields can have identification (session id) or just some thing to remember (occupation)
● Servlet reads the fields using req.getParameter()


HttpSession

● To get a user's existing or new session object:
    HttpSession session = request.getSession(true);
"true" means the server should create a new session object if necessary
    HttpSession is Java interface
● Container creates a object of HttpSession type


        Installing the Java Software Development Kit (Tomcat 5.0)


Tomcat 5.0 is a pure Java web server. In order to use it, you must first install a Java runtime environment. Installation of the SDK varies per platform but is typically easy to do. Tomcat supports many features and configuration options.

Testing Tomcat

The Tomcat installation directory contains a number of subdirectories. All of them are described in the README.txt file, but the most important ones are:

·         bin: Scripts for starting and stopping the Tomcat server.

·         conf: Tomcat configuration files.

·         webapps: Default location for web applications served by Tomcat. Two more subdirectories under the Tomcat home directory are created the first time you start the server:

·         logs: Server log files. If something doesn't work as expected, look in the files in this directory for clues as to what's wrong.

·         work: A directory for temporary files created by the JSP container and other files. This directory is where the servlets generated from JSP pages are stored.


To test the server, run the startup script and open a browser and enter this URL in the Location/Address field: http://localhost:8080/. The Tomcat main page is shown in the browser, as in Figure, and you can now run all servlet and JSP examples bundled with Tomcat to ensure everything works.

DATA BASE MANAGEMENT SYSTEM
 
    Some popular DBMS

ü  ISOL
ü  PLSQL

  • RDBMS

Some popular RDBMS

ü  Microsoft SQL Server 7.0
ü  Oracle8.0 server
ü  Sybase server
ü  Informix server
ü  MySQL


Relational and Object relational database management system: -

ü  Relation model and object relational model
ü  User defined data types and objects
ü  Fully compatible with relational database
ü  Support of multimedia and large objects
ü  High quality database server features
ü  Oracle Internet platform.

                                                                                                           
Important concept used in SQL
     SQL is command based database language.

ü  Select statement
ü  Joints
ü  Normalization
ü  Manipulation
ü  Integrity
ü  Creation and deletion of table and view
ü  Triggers


 SQL model concept

Entity   , Attributes , Relationship ,  Key , Constrains


SDLC of SQL SERVER


   

     
      Strategy
 


                              
                             
                            Design



                                                 Build & Doc

                   

 Transition

                                                                                                     
                
                                                                                                  Production





Comments

Popular Posts