CVS Reporting

Download Report

Transcript CVS Reporting

CVS Reporting Design
• Daniel Vikström: Project manager / cvs manager / PDF
imp. / cvsql interface design.
• Carmine Protano: Webb & PDF design & imp.
• Francesco Severoni: Webb & pdf design & imp.
• Ahmed kamran: Webb & pdf design imp.
• Ivan Treščec: Zagreb team manager / communication /
Eclipse Imp.
• Mario Mikulaj: Eclipse & reporter design & imp.
• Aleta Mladen: Reporter Design
WebbApplication Specifications
• Client visits the site and he creates his account by
opening a registration page.
• He fills the form whith:
–
–
–
–
–
–
–
Name
Surname
Email
User Position
Username
Password
Retype Password
Webb Application Specifications
• He submits the form, and the form will be validated at
Client site, if the form is filled correctly, then all
information will go to Server site.
• On Server site, server scripting language (Jsp) will
extract all information from the request query, and store
all information in XML file.
• Now when the user visits again, he just has to supply
username and password. If he supplies correct
username and password (which will be checked by our
jsp using XML’s data) then he enters into the Main Page
of the Site
Use Case
Use Case Description
• Actor: User
–
–
–
–
Register
User Login
Display Report
Customize Report View
• Actor: Administrator
– Administrator Login
– Menage Website
Use Case: Register
• Actor: User
• Purpose: To get registration
• Overview: A user visits the web site and fills the
registeration form and finaly he gets registered.
Use Case: User Login
• Actor: User
• Purpose: To enter in the system
• Overview: A user visits the web site and he supplies:
– Username
– Password
And he get entered in the system
Use Case: Display Report
• Actor: User
• Purpose: User can display reports
• Overview: After loging into the system the user is able
to display a reports
Use Case: Customize Report View
• Actor: User
• Purpose: User can customize different reports view
• Overview: User inputs some information to customize
the report view and finally he gets specific customized
report view
Use Case: Administrator Login
• Actor: Administrator
• Purpose: Administrator can login
• Overview: A administrator visits the web site and he
supplies:
– Username
– Password
And he get entered in the system
Use Case: Manage Website
• Actor: Administrator
• Purpose: Administrator can manage web site for
example he notify some policies to users
• Overview: To update web site and new features
Use Case Description: Register
Actor Action
System Response
1.
User Visits the web site and 2.
fills the registration form
and submits form
3.
User leaves the system
System checks the form if it
is filled correctly the it will
be send username and
password via email
Use Case Description: User
Login
Actor Action
1.
System Response
User logins into the system 2.
and supplies username and
password and submit
System validates the
username and password. If
it is correct then system will
allow user to enter in the
system
Use Case Description: Display
Report
Actor Action
System Response
1.
2.
User logins into the system
and requests to display
some reports
System shows report to the
user
Use Case Description:
Customize Report View
Actor Action
1.
System Response
User logins into the system 2.
and he sends some
information to customize his
report
System customizes the
report view for the user with
required formate
Use Case Description:
Administrator Login
Actor Action
1.
System Response
Administrator logins into the 2.
system and supplies
username and password
and submits
System validates the
username and password. If
it is correct then system will
allow administator to enter
in the system
Use Case Description: Manage
Web Site
Actor Action
System Response
1.
2.
Adminstrator supply some
policies to the website
System shows the new
policies to the users
Class Diagram
Sequence Diagram: Authentication
Sequence Diagram: Registration
Sequence Diagram: Report View
CVS Report
Eclipse Plugin
Eclipse plug-in
Template Editor
• Allows users to define
– Report layout
• margins, font, color, alignment ...
– User specific information (userInfoEditor)
• User name, logo ...
– CVS report information (queryEditor)
• Dynamical creation of SQL commands
• Stores information in XML files
Reporter
• Handles creation of PDF and HTML files
– Loads information from XML template files
– Connects to CVSQL database and executes
queries
External resouces
• iText (http://www.lowagie.com/iText/)
– Free Java library for PDF and HTML
generation
• JDOM (http://www.jdom.org)
– Open-source library for Java-optimized XML
data manipulation
• CVSQL JDBC (http://www.fer.hr/rasip/dsd)
CVS REPORT
XML structure
XML structure
userInfo
MainXML
TableXML
reportInfo
TextXML
XML structure
• Separate files:
– easyer implementation
– re-use of XML files
– modular design
• CVSQL returns ResultSet so there is no need for
storing data in XML.
Main XML
• layout
– margins
– paperSize
– background
–?
• userInfoFile
• reportInfoFile
userInfo XML
• Elements: userName, userProject,
userProjectStatus, company
• attributes describe how text should look
like:
– font size
– font name
– color
– style
– alignment
reportInfo
• Elements: reportTitle, reportDescription,
reportDate, reportPeriod, cvsql (query and
result description)
• same font style attributes like in userInfo
• depending if cvsql query result is text or
table, we use one of XML files for
describing data (tableXML and textXML).
TableXML or TextXML
• tableXML
– describes how the
result table should
look like on report
– doesn’t store any data,
only saves table
description
• textXML
– if result is text,
textXML file describes
how text should look
like on report
XML and DTD files
• www.fer.hr/rasip/dsd
• Projects -> CVS Report -> Objectives
– XMLs:
•
•
•
•
•
main.xml
userInfo.xml
reportInfo.xml
tableXML.xml
textXML.xml
-DTDs:
-main.dtd
-userInfo.dtd
-reportInfo.dtd
-tableXML.dtd
-textXML.dtd