1.1 Description: Computer Engineering
1.1 Description: Computer Engineering
CHAPTER 1
1. INTRODUCTION
1.1 Description
Applications can use the JDBC API to access data residing in a relational database
management system (RDBMS). The JDBC API enables standard access and manipulation of
data in persistent storage, such as a relational database. The JDBC API enables J2EE
applications to use SQL statements, which are the standard means for accessing RDBMS
tables. However, even within an RDBMS environment, the actual syntax and format of the
SQL statements may vary depending on the particular database product.
There is even greater variation with different types of persistent storage. Access mechanisms,
supported APIs, and features vary between different types of persistent stores such as
RDBMS, object-oriented databases, flat files, and so forth.
Such disparate data sources offer challenges to the application and can potentially create a
direct dependency between application code and data access code. When business
components-entity beans, session beans, and even presentation components like servlets and
helper objects for Java need to access a data source, they can use the appropriate API to
achieve connectivity and manipulate the data source. But including the connectivity and data
access code within these components introduces a tight coupling between the components
and the data source implementation. Such code dependencies in components make it difficult
and tedious to migrate the application from one type of data source to another. When the data
source changes, the components need to be changed to handle the new type of data source.
1.2 RDBMS
Relational model represents data in the form a table. A table is a two dimensional array
containing rows and columns. Each row contains data related to an entity such as a student.
Each column contains the data related to a single attribute of the entity such as student name.
One of the reasons behind the success of relational model is its simplicity. It is easy to
understand the data and easy to manipulate.
Another important advantage with relational model, compared with remaining two models is,
it doesn’t bind data with relationship between data item. Instead it allows you to have
dynamic relationship between entities using the values of the columns.
Almost all Database systems that are sold in the market, now- a-days, have either complete or
partial implementation of relational model.
Tuple / Row: A single row in the table is called as tuple. Each row represents the data
of a single entity.
Column Name Each column in the table is given a name. This name is used to refer to
value in the column.
Table Name: Each table is given a name. This is used to refer to the table. The name
depicts the content of the table.
The following are two other terms, primary key and foreign key that are very important in
relational model.
Primary Key: A table contains the data related entities. If you take STUDETNS
table, it contains data related to students. For each student there will be one row in the
table. Each student’s data in the table must be uniquely identified. In order to identify
each entity uniquely in the table, we use a column in the table. That column, which is
used to uniquely identify entities (students) in the table is called as primary key.
So a primary key can be defined as a set of columns used to uniquely identify rows of a table.
Some other examples for primary keys are account number in bank, product code of
products, employee number of an employee.
Composite Primary Key: In some tables a single column cannot be used to uniquely
identify entities (rows). In that case we have to use two or more columns to uniquely
identify rows of the table. When a primary key contains two or more columns it is
called as composite primary key.
SQL is Structured Query Language, which is a computer language for storing, manipulating
and retrieving data stored in relational database.
SQL is the standard language for Relation Database System. All relational database
management systems like MySQL, MS Access, Oracle, Sybase, Informix, postgres and SQL
Server use SQL as standard database language.
-SQL,
When you are executing an SQL command for any RDBMS, the system determines the best
way to carry out your request and SQL engine figures out how to interpret the task.
There are various components included in the process. These components are Query
Dispatcher, Optimization Engines, Classic Query Engine and SQL Query Engine, etc. Classic
query engine handles all non-SQL queries, but SQL query engine won't handle logical files.
The standard SQL commands to interact with relational databases are CREATE, SELECT,
INSERT, UPDATE, DELETE and DROP. These commands can be classified into groups
based on their nature: DDL - Data Definition Language:
Command Description
CREATE: Creates a new table, a view of a table, or other object in database
Syntax:
Syntax:
DROP: Deletes an entire table, a view of a table or other object in the database.
Syntax:
Command Description
INSERT: Creates a record
Syntax:
Syntax:
Syntax:
Delete <table_name>;
Command Description
GRANT: Gives a privilege to user
REVOKE: Takes back privileges granted from user
Command Description
SELECT: Retrieves certain records from one or more tables.
Syntax:
The JDBC API supports both two-tier and three-tier processing models for database access.
In the two-tier model, a Java applet or application talks directly to the data source. This
requires a JDBC driver that can communicate with the particular data source being accessed.
A user's commands are delivered to the database or other data source, and the results of those
statements are sent back to the user. The data source may be located on another machine to
which the user is connected via a network. This is referred to as a client/server configuration,
with the user's machine as the client, and the machine housing the data source as the server.
The network can be an intranet, which, for example, connects employees within a
corporation, or it can be the Internet.
CHAPTER 2
2.1 What is the SDLC?
The Systems Development Life Cycle (SDLC), or Software Development Life Cycle in
systems engineering and software engineering, is the process of creating or altering systems,
and the models and methodologies that people use to develop these systems. The concept
generally refers to computer or information system.
In software engineering the SDLC concept underpins many kinds of software development
methodologies. These methodologies form the framework for planning and controlling the
creation of an information system software development process.
2.2 Planning:
Software project management begins with set of a activities that are collectively called
Project Planning. The important task in creating a software product is extracting the
requirements or analysis. Customers typically have an abstract idea of what they want as an
end result, but not what software should do. Skilled and experienced software engineers
recognize incomplete, ambiguous, or even contradictory requirements at this point.
Frequently demonstrating live code may help reduce the risk that the requirements are
incorrect.
Once the general requirements are gleaned from the client, an analysis of the scope of the
development should be determined and clearly stated. This is often called a scope document.
The first activity in software project planning is the determination of software scope.
Functions and performance allocated to software during system engineering should be
assessed to establish a project scope that is unambiguous and understandable at the
management and technical level.
2.2.2 Feasibility:
A feasibility study looks at the viability of an idea with an emphasis on identifying potential
problems and attempts to answer one main question: Will the idea work and should you
proceed with it? Before you begin writing your business plan you need to identify how,
where, and to whom you intend to sell a service or product. You also need to assess your
competition and figure out how much money you need to start your business and keep it
running until it is established.
Why Are Feasibility Studies so Important?
The information you gather and present in your feasibility study will help you:
List in detail all the things you need to make the business work.
Technical Feasibility: Details how you will deliver a product or service (i.e.,
materials, labor, transportation, where your business will be located, technology
needed, etc.).
2.3 Development:
The development phase involves converting design specifications into executable programs.
Effective development standards include requirements that programmers and other project
participants discuss design specifications before programming begins.
Programmers use various techniques to develop computer programs. The large transaction-
oriented programs associated with financial institutions have traditionally been developed
using procedural programming techniques. Procedural programming involves the line-by-line
scripting of logical instructions that are combined to form a program. Primary procedural
programming activities include the creation and testing of source code and the refinement and
finalization of test plans. Typically, individual programmers write and review (desk test)
program modules or components, which are small routines that perform a particular task
within an application.
Development Standards:
Software Documentation:
Organizations should maintain detailed documentation for each application and application
system in production. Thorough documentation enhances an organization’s ability to
understand functional, security, and control features and improves its ability to use and
maintain the software. The documentation should contain detailed application descriptions,
programming documentation, and operating instructions. Standards should be in places that
identify the type and format of required documentation such as system narratives, flowcharts,
and any special system coding, internal controls, or file layouts not identified within
individual application documentation.
1.5 Maintenance:
2. The problem and modification analysis process, which is executed once the application
has become the responsibility of the maintenance group.
4. The process acceptance of the modification, by confirming the modified work with the
individual who submitted the request in order to make sure the modification provided a
solution.
A set of programs associated with the operation of a computer is called software. The
minimum software requirement specifications for developing this project are as follows:
The collection of internal electronic circuits and external physical devices used in
building a computer is called the Hardware. The minimum hardware requirement
CHAPTER 3
3. LITERATURE SURVEY
Data quality is the quality of data. Data are of high quality "if they are fit for their
intended uses in operation, decision making and planning. Alternatively, the data are deemed
of high quality if they correctly represent the real -world construct to which they refer. These
two views can often be in disagreement, even abou t the same set of data used for the same
purpose.
The separation of an intellectual or material whole into its constituent parts for
individual study. The study of such constituent parts and their interrelationships in making up
a whole. A spoken or written presentation of such study: published an analysis of poetic
meter.
Here we study the problem of finding true facts in a certain domain of creating
queries without knowing that much details about oracle . Here, a domain refers to a property
of a certain type of objects, such as Indexing, Views Tables in SQL. The input of Data Base
Independence Navigation System is a large number of facts in a domain that are provided by
many websites. There are usually multiple conflicting facts from different Databases for each
object, and the goal of Data Base Independence Navigation System is to identify the true fact
among them.
Confidence of Facts
Implication of Facts
Heuristic 1: Usually there is only one true fact for a property of an object.
In this paper, we assume that there is only one true fact for a property of an object. The case
of multiple true facts will be studied in our future work.
Heuristic 2. This true fact appears to be the same or similar on different Databases.
Different Databases that provide this true fact may present it in either the same or slightly
different ways, such as “Jennifer Widom” versus “J. Widom.”
Heuristic 3. The false facts on different websites are less likely to be the same or similar.
Different Databases often make different mistakes for the same object and thus provide
different false facts. Although false facts can be propagated among Databases, in general, the
false facts about a certain object are much less consistent than the true facts.
Heuristic 4 In a certain domain, a Databases that provides mostly true facts for many objects
will likely provide true facts for other objects.
CHAPTER 4
4.1 Purpose:
Page Rank and Authority-Hub analysis is to utilize the Simplest SQL Records
that are used in this project.
These two approaches identifying important Databases that users are
interested in, Unfortunately, the popularity of DataBase Browser does not
necessarily lead to accuracy of information.
4.2.2 Disadvantages:
The popularity of DataBase Browser does not necessarily lead to
accuracy of information.
Even the most popular DataBase Browser may contain many errors.
Where as some comparatively not-so-popular Database may provide more
accurate information.
We formulate the Veracity problem about how to discover true facts from
conflicting information.
Second, we propose a framework to solve this problem, by defining the
trustworthiness of DataBase Browser, confidence of facts, and influences
between facts.
Finally, we propose an algorithm called DataBase Browser for
identifying true facts using iterative methods.
4.3.2 Advantages:
Our experiments show that DataBase Browser achieves very high
accuracy in discovering true facts.
It can select better trustworthy Database than authority DataBase
because user need not know much more about creating any query.
4.4 Modules
First we have to collect the specific data about an object and it is stored in related
database. Create table for specific object and store the facts about a particular object.
Searching the related data link according to user input. In this module user retrieve the
specific data about an object.
We design a general framework for the Veracity problem, and invent an algorithm
called DES, which utilizes the relationships between Data and their information, i.e., a
DataBase Browser is trustworthy if it provides many pieces of true information, and a
piece of information is likely to be true if it is provided by many trustworthy results
.
For each response of the query we are calculating the Performance. Using the
count calculated find the best link and show as the output.
CHAPTER 5
5. SOFTWARE DESIGN
The main focus of the analysis phase of Software development is on “What needs to be
done”. The objects discovered during the analysis can serve as the framework or Design. The
class’s attributes, methods and association identified during analysis must be designed for
implementation language. New classes must be introduced to store intermediate results
during the program execution.
Emphasis shifts from the application domain o implementation and computer such as
user interfaces or view layer and access layer. During analysis, we look at the physical
entities or business objects in the system, that is, which players and how they cooperate to do
the work of the application. These objects represent tangible elements of the business.
During the Design phase, we elevate the model into logical entities, some of which
might relate more to the computer domain as people or employees. Here his goal is to design
the classes that we need to implement the system the difference is that, at this level we focus
on the view and access classes, such as how to maintain information or the best way o
interact with a user or present information.
Design process:
During the design phase the classes identified in object-oriented analysis Must be revisited
with a shift focus to their implementation. New classes or attribute and Methods must be an
added for implementation purposes and user interfaces. The object-oriented design process
consists of the following activities:
And protocols Refine and complete the static UML class diagram by adding details to the
UML diagram. This step consists of following activities.
*Refine attributes *Design methods and protocols by utilizing a UML activity diagram to
represent the method’s algorithms.
Create mirror classes: For every business class identified and created. For
example, if there are three business classes, create three access layer classes.
*Redundant classes: Do not keep two classes that perform similar translate results
activities. Simply select one and eliminate the other.
*Method classes: Revisit the classes that consist of only one or two methods to see
if they can be eliminated or combined with existing classes.
o Design the macro level user interface, identifying view layer objects.
o Design the micro level user interface, which includes these activities:
* Design the view layer objects by applying the design axioms and
corollaries.
3. Iterate refine the whole design process. From the class diagram, you can begin to
extrapolate which classes you will have to built and which existing classes you can reuse.
As you do this, also begin this, also begin thinking about the inheritance structure. If you
have several classes that seem relates but have specific differences.
Design also must be traceable across requirements, analysis, design from the
Requirements model.
DESIGN AXIOMS
Axioms are a fundamental truth that always is observed to be valid and for which
there is no counter example or exception. Such explains that axioms may be hypothesized
form a large number of observations by nothing the common phenomena shared by all cases;
they cannot be proven or derived, but they can be invalidated by counter examples or
exceptions. A theorem is a proposition that may not be self-evident but can be proven from
accepted axioms. If therefore, is equivalent to a law or principle. A corollary is a proposition
that follows from an axioms or another proposition that has been proven. Again, corollary is
shown to be valid or not valid in the same manner as a theorem. In the two important axioms
axiom 1 deals with relationships between system components and axiom 2 deals with the
complexity of design.
Axiom 1: The independence axiom, which maintain the independence of the components.
Axiom 2: The information axioms that maintain the information content of the design.
Axiom 1 states that, during the design process, as we go from requirement and use case to a
system component, each component must satisfy that requirement without affecting other
requirements.
An axiom 2 is concerned with simplicity. Scientific theoreticians often rely on a general rule
known as Occam’s razor, after William of Occam. He says, “The best theory explains the
known facts with a minimum amount of complexity and maximum simplicity and
straightforwardness.”
The best designs usually involve the least complex code but not necessarily the fewest
number of classes or methods. Minimizing complexity should be the goal, because that
produces the most easily maintained and enhanced application. In an object-oriented system,
the best way to minimize complexity is to use inheritance and the systems built in classes and
to add as little as possible to what already is there.
From the two design axioms, many corollaries may be derived as a direct consequence of
the axioms. These corollaries may be more useful in marking specific design decisions, since
they can be applied to actual situations.
Uncoupled design with less information content: Highly cohesive objects can improve
coupling because only a minimal amount of essential information need be passed
between objects. The degree or strength of coupling between two components is
measured by the amount and complexity of information transmitted between them.
Single purpose: Each class must have single, clearly defined purposes.
Large number of simple classes: Keeping the classes simple allows reusability. Large
and complex classes are too specialized to be reused.
Strong mapping: There must be a strong association between the physical system and
logical design. During the design phase, we need to design this class, design its
methods, its association with other objects. So a strong mapping links classes should
be identified.
Standardization: promote standardization by designing interchangeable and reusing
existing classes or components.
Design with inheritance: Common behavior must be moved to super classes. The
super class-sub class structure must make logical sense.
Attributes identified in object oriented analyzed must be refined in the design phase. In
the analysis phase, the name of the attributes was sufficient. But in the design phase, detailed
information must be added to the model.
5.1.1 DFD:
D f
o
D f
D f
o
D f
The Top Level DFD gives the overview of the whole system identifying the major
system processes and data flow. This level focuses on the single process that is drawn in the
context diagram by ‘Zooming in’ on its contents and illustrates what it does in more detail.
User logins with DSN User Connection for data Data will be
Name Interaction with whether data is in inputted to
oracle collected data sets or DataBase
not
Browser
algorithm
The type of an attribute specifies the range of values the attribute can take and the
operations that can be applied to the attribute.
Operation parameters and return values are typed in the same way as attributes are.
The type constraints the range of values the parameter or the return value can take. The type
of the return value is called the signature of the operation. The visibility of an attribute or an
operation specifies whether it can be used by other classes or not. UML defines three levels
of visibility.
Private: A private attribute can be accessed only by the class in which it is defined.
Similarly, a private operation can be invoked only by the class in which it is defined.
Public: A public attribute or operation can be accessed by any class.
Protected: A protected attribute or operation can be accesses by the class in which it is
defined and any descendent of the class.
Class Diagram:
Graphically, a sequence diagram is a table that shows objects arranged along x-axis and
messages, ordered in increasing time, along the y-axis.
Contents
Objects
Data
Connectivity
Like all other diagrams, sequence diagrams may contain notes and constraints
Login Sequence:
2: verifies details
3: store details
9: check details
10: give response
8: results response
3: search datasets
4: forward sites
5: finding trustablesites
6: forwarding trustablesites
7: calculate performance
Collaboration is a society of classes, interfaces, and other elements that work together
to provide some cooperative behavior that’s bigger than the sum of all its parts.
Contents
Objects
Data
Connectivity
Like all other diagrams, sequence diagrams may contain notes and constraints.
Collaboration:
2: Verifies
1: Register
User 9: Login success Admin
6: Login
5: Registration success
8: Login Ack 3: Store values
Storing data
Database
Collaboration:
3:
verifying
1: login details 2: verify details
8: result response
6: search query
7: request results
s:search r:results
Collaboration:
culation der
4: forward trustworthy sites
A use case diagram is a diagram that shows a set of use cases and actors and
relationships.
Contents
Login
Verification
User Admin
search
Collecteddatasets
Registered Unregistered Database
Resultcalculation
Viewresult
Transitions
Objects
Like all other diagrams, activity diagrams may contain notes and constrains.
Login Process
Search Process:
Objects have behavior and state. The state of an object depends on its current activity
or condition. A state diagram shows the possible states of the objects and transitions that
cause a change in a state.
States are rounded rectangles. Transitions are arrows from one state to another. Events
are conditions that trigger transitions are written beside the arrows. The initial state is a
dummy to start the action. Final states are also dummy states that terminate the action. The
action that occurs as a result of an event or a condition is expressed in form/action. The result
of the activity determines its subsequent states.
5.4.DATABASE DESIGN
Database design is the process of producing a detailed data model of a database. This
logical data model contains all the needed logical and physical design choices and physical
storage parameters needed to generate a design in a Data Definition Language, which can
then be used to create a database.
5.4.1 E R Diagrams
Store
Database
filename
Fig.5.15 ER-Diagram
User Table
Fact Table:
MainDB Table:
Support Table:
Context
Access to data varies depending on the source of the data. Access to persistent storage, such
as to a database, varies greatly depending on the type of storage (relational databases, object-
oriented databases, flat files, and so forth) and the vendor implementation
Problem
Applications can use the JDBC API to access data residing in a relational database
management system (RDBMS). The JDBC API enables standard access and manipulation of
data in persistent storage, such as a relational database. The JDBC API enables J2EE
applications to use SQL statements, which are the standard means for accessing RDBMS
tables. However, even within an RDBMS environment, the actual syntax and format of the
SQL statements may vary depending on the particular database product.
There is even greater variation with different types of persistent storage. Access mechanisms,
supported APIs, and features vary between different types of persistent stores such as
RDBMS, object-oriented databases, flat files, and so forth.
Such disparate data sources offer challenges to the application and can potentially create a
direct dependency between application code and data access code. When business
components-entity beans, session beans, and even presentation components like servlets and
helper objects for Java need to access a data source, they can use the appropriate API to
achieve connectivity and manipulate the data source. But including the connectivity and data
access code within these components introduces a tight coupling between the components and
the data source implementation. Such code dependencies in components make it difficult and
tedious to migrate the application from one type of data source to another. When the data
source changes, the components need to be changed to handle the new type of data source.
Forces
Portability of the components is directly affected when specific access mechanisms and
APIs are included in the components. Components need to be transparent to the actual
persistent store or data source implementation to provide easy migration to different
vendor products, different storage types, and different data source types.
Solution
Use a Data Access Object (DAO) to abstract and encapsulate all access to the data source.
The DAO manages the connection with the data source to obtain and store data.
The DAO implements the access mechanism required to work with the data source. The data
source could be a persistent store like an RDBMS, an external service like a B2B exchange, a
repository like an LDAP database, or a business service accessed via CORBA Internet Inter-
ORB Protocol (IIOP) or low-level sockets. The business component that relies on the DAO
uses the simpler interface exposed by the DAO for its clients. The DAO completely hides the
data source implementation details from its clients. Because the interface exposed by the
DAO to clients does not change when the underlying data source implementation changes,
this pattern allows the DAO to adapt to different storage schemes without affecting its clients
or business components. Essentially, the DAO acts as an adapter between the component and
the data source.
7. OUTPUT SCREENS
8. CONCLUSION
Thus we introduce and formulate the Veracity problem, which aims at resolving
conflicting facts from multiple websites and finding the true facts among them. We propose
TRUTHFINDER, an approach that utilizes the inter dependency between website
trustworthiness and fact confidence to find trustable websites and true facts.
Experiments show that TRUTHFINDER achieves high accuracy at finding true facts and at
the same time identifies websites that provide more accurate information.
9. FUTURE ENHANCEMENTS
We designed this system using the data set which contains information on technical
information. We can extend further by incorporating more datasets which contains
information about various fields. We can globalize this system by connecting to internet
and retrieving data from the web and perform mining.
REFERENCES
B. Amento, L.G. Terveen, and W.C. Hill, “Does ‘Authority’ Mean Quality?
Predicting Expert Quality Ratings of Web Documents,” Proc. ACM SIGIR ’00, July
2000.
Borodin, G.O. Roberts, J.S. Rosenthal, and P. Tsaparas, “Link Analysis Ranking:
Algorithms, Theory, and Experiments,” ACM Trans. Internet
Technology, vol. 5, no. 1, pp. 231-297, 2005.
Java Server Pages Programming: A visual professional guide for Design by Scott
Mitchell