Web Project Design Overview Presentation Nov. 27th [333 KiB]

Download Report

Transcript Web Project Design Overview Presentation Nov. 27th [333 KiB]

Distributed Software Development
Web Project
Project Design Overview
2016-05-24
1
Overall project design
• Design specifications for:
–
–
–
–
–
–
Database (ER model)
PostgreSQL database schematics
User interface definitions
Error handling
Menu hierarchy
Basic JSP construction and EJB component logic
• Activities underway:
–
–
–
–
EJB to database and EJB to JSP interfacing
Database testing and optimizing
User interface graphical design
Gaining proficiency in technologies used
2016-05-24
2
Database model
2016-05-24
3
So what is this schema about?
• Database features:
– Multiple project interdependencies (cronological and hierarchical)
– Multiple task dependencies (cronological and hierarchical)
– Personnel and other resources can be deployed to more than one
task or project
– Projects and tasks can have more than one leader, and one
person can be a leader to more than one task or project
– Personnel can be assigned to more than one group of resources
– Record keeping for meetings, risks and contingencies, project
baselines etc.
2016-05-24
4
Menu hierarchy definitions
• Menu contains 7 main units
–
–
–
–
–
–
–
Project overview
Resource maintenance
Project planning
Task maintenance
Project control and auditing
Overall project reports
Web billboard
• Menus are enabled depending on user’s project role and
access privileges
• Users can assume the following project roles:
–
–
–
–
Client
Project leader
Task leader
Personnel
2016-05-24
5
Menu hierarchy definition - submenus
• Project overview
–
–
–
–
–
–
Schedule overview (Gantt, CPM, PERT and table view) – access: ALL
General project info – access: ALL
Tasks overview – access: Project leader, task leader, client
Planned cost – access: Project leader, task leader
Risks and contingencies - access: ALL
Project baselines - access: Project leader, task leader
• Resource maintenance
– Resource group maintenance – access: Project leader
– Resource maintenance – access: Project leader
• Human resources
• Miscellaneous resources
2016-05-24
6
Menu hierarchy definitions – submenus II
• Project planning
– General project information and planning – access: Project leader
– General project description - access: Project leader
• Task maintenance
–
–
–
–
–
–
Tasks setup
Recurring tasks setup
Gantt, PERT, CPM (critical path method) and table tasks overview
Cost planning
Project baseline setup
All functions are project leader and task leader privileged
• Project control and auditing
– Tasks control and review
• Schedule auditing
• Cost auditing
–
–
–
–
Resource control and review
Meetings
Project change-log
All functions are project leader privileged
2016-05-24
7
Menu hierarchy definitions – submenus III
• Overall project reports
–
–
–
–
–
Project completion status
Project completion date estimate
Critical tasks status
Indefinite factors
All functions are project leader privileged
• Web billboard
– View billboard – access: ALL
– Enter task information – access: Task leader
– Enter project information – access: Project leader
2016-05-24
8
Template layout
2016-05-24
9
Enterprise Java Beans and Java Server Pages
• Java Server Pages
– Dynamic HTML code generation
– Session control using JSP session object (each user one
session per browser)
– Passing information between pages using POST method
– Information passed on to EJB tier
– EJB tier passes information on to the database
• Enterprise Java Beans
– Methods and classes for communication with the database tier
– Reusable code for frequently used database operations
(authorization check-ups, cost calculation etc.) enabling faster
and more reliable development
2016-05-24
10
Error handling
• JavaScript
– Errors made at entry time (illegal values entered to GUI fields)
• Enterprise Java Beans and JSP
– Fatal server error or database error
• Database entries are handled in transactions
• Data entries and operations are stored into a file
– Attempts to store illegal values into the database
• Appropriate error message is returned and the user redirected to a page
containing the error message
• A link is made to the previous page so the attempted values can be
corrected and entered once again
2016-05-24
11