Tài liệu Khóa luận The research of using epad technology to support activities in administrative system: 1
VIETNAM NATIONAL UNIVERSITY, HANOI
COLLEGE OF TECHNOLOGY
Nguyen Hoai Nam
THE RESEARCH OF USING EPAD TECHNOLOGY TO SUPPORT ACTIVITIES IN ADMINISTRATIVE SYSTEM
GRADUATION THESIS
Major Field: Information Technology
HA NOI - 2009
VIETNAM NATIONAL UNIVERSITY, HANOI
COLLEGE OF TECHNOLOGY
Nguyen Hoai Nam
THE RESEARCH OF USING EPAD TECHNOLOGY TO SUPPORT ACTIVITIES IN ADMINISTRATIVE SYSTEM
GRADUATION THESIS
Major Field: Information Technology
Supervisor: Dao Kien Quoc, MSc
HA NOI – 2009
SUMMARY
Administrative activities contain many problems that need to be solved in some aspect of time schedule, responsibility and productivity. The fact that building software to control all problems above is better, but some software could not be used when published. In this thesis, together we will approach the problems and find why some software are failed in real life.
In this thesis, we found a new idea for the problem of administrative formality software. Based on this solution, we ana...
97 trang |
Chia sẻ: hunglv | Lượt xem: 1513 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Khóa luận The research of using epad technology to support activities in administrative system, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
1
VIETNAM NATIONAL UNIVERSITY, HANOI
COLLEGE OF TECHNOLOGY
Nguyen Hoai Nam
THE RESEARCH OF USING EPAD TECHNOLOGY TO SUPPORT ACTIVITIES IN ADMINISTRATIVE SYSTEM
GRADUATION THESIS
Major Field: Information Technology
HA NOI - 2009
VIETNAM NATIONAL UNIVERSITY, HANOI
COLLEGE OF TECHNOLOGY
Nguyen Hoai Nam
THE RESEARCH OF USING EPAD TECHNOLOGY TO SUPPORT ACTIVITIES IN ADMINISTRATIVE SYSTEM
GRADUATION THESIS
Major Field: Information Technology
Supervisor: Dao Kien Quoc, MSc
HA NOI – 2009
SUMMARY
Administrative activities contain many problems that need to be solved in some aspect of time schedule, responsibility and productivity. The fact that building software to control all problems above is better, but some software could not be used when published. In this thesis, together we will approach the problems and find why some software are failed in real life.
In this thesis, we found a new idea for the problem of administrative formality software. Based on this solution, we analyzed the administrative system, built design document.
To prove the idea, from the design document, we built the solution software to illustrate how the idea worked and prove it could help increase the software’s effect and feasibility.
ACKNOWLEDGEMENT
First of all, I wish to express my respect and my special thank to my adviser MSc. Dao Kien Quoc, College of Technology, Vietnam National University, Hanoi for the enthusiastic guidance, warm encouragement and useful research experiences.
I would like to gratefully thank all the teachers of College of Technology, VNU for their invaluable knowledge which they gave to me during four academic years.
Last, but not least, my family is really the biggest motivation behind me. My parents and my brother always encourage my when I have stress and difficulties. I would like to send them my gratefulness and love.
Hanoi, May 2009
Nguyen Hoai Nam
TABLE OF CONTENTS
Chapter 1: Introduction
Introduction to administrative formalities
The purpose of administrative activities in an organization is to make decisions precisely to keep all parts of organization work in a harmony.
Administrative activities could be able to divide into following types:
Internal activities which involved in individual or sub-ordinates:
Incoming document processing (register to incoming book, decide destination, give comments …)
Document publishing (approve document, edit document …)
Task processing ( task requested by the manager)
Collect documents (collect a group of document to support manager to do administrative activities, but not create or wait for approve)
Activities depends on external factors:
Undetermined tasks occur when new incoming documents come or documents have to be sent out.
As usual, activities depends on external factors contain a part of internal activities.
All information and decisions are represent in document. In general, both two types of administrative activities involve in document processing, which divided into two types:
Incoming document: from outside, via many methods: email, post office, fax …
Outgoing document: published inside organization or sent out.
Necessary of administrative activity and document processing software
There are many reasons for a low-productive administration system:
Lack of information or problem of finding information due to late coming document or a large number of documents so that people could not find.
Members’ time schedules are not synchronized: it is hard to optimize the time process of all people or could not arrange to meet people to communicate.
Lack of individual task control method: some officers who could not finish the task tell that they have not known the request. Maybe the document is lost during deliver process or they tell lies to conceal their mistakes. The only solution for this problem is having a way to control how officers do the task.
The managers will find it is difficult to know the process of whole tasks unless they meet each individual to ask. If they could not have time to arrange a meeting between each individual, they have to wait for the responses from subordinates. The fact that waiting for subordinates is wasting time and not effective.
Therefore, we need a software that solves all problems above, which:
Use centralization model and online processing: all documents related could be store on server (only entity for each document), then users could access documents everywhere. Moreover, users could search for document without any difficulties.
Tasks will be uploaded directly: saving time of all members. Users have to access the Internet to view tasks. Result will be sent to server and could be viewed every time and everywhere. That solution could increase the productivity.
Distance will not be a problem anymore. User could view activities at any place.
Individual’s responsibility will increase because all task and status of task (finished, not completed …) is public. Moreover, log files to mark all states of tasks will be the evidents to control subordinates.
Task reminder is run automatically to remind so that users could not forget the task.
All documents will be verified by electric signatures to ensure the reliability and individual’s responsibility.
Determine why some software failed to be used when published
Not only solving problems mentioned above, the software has to satisfy some factors to become successful:
The technology used: it decides the effect of the software including powerful, fast, etc or the compatibility with other softwares or browsers.
The cost of the software: the cheaper software is better.
Graphic interface: the graphic interface decides the easy-to-use aspect of software.
However, many software which satisfy all factors above have failed in real life. One reason that all softwares built for administrative activity purposes could not used in real life is “users find it difficult to use them”.
Traditional method problem: Traditional method is a group of steps that officers have been using for several years such as deliver the paper documents, sign the document using pen … which almost involve in paper documents. At middle age, people tend to prefer to work the same as they have worked for years so trying a new method like using computer is hard for them. Moreover, at these age, people could not learn as fast as younger ones. Therefore, they think it is better if they use traditional method again instead of using computers.
As usual, all software when published require a period of time to train users, but most users who use administrative formalities software are middle-age people who do not have much experience in using computer, especially in Vietnam. They get troubles in some issue:
How to locate the document in computer when downloaded successfully.
How to find a document in a folder full of downloaded documents.
How to upload files to server.
…
The reason is the steps they have to do with the software are much different from steps they usually do in real life, which is considered as traditional method.
That is the reason why some software is published but never used.
Solution
Idea of automatic steps:
As mentioned in previous section, some steps that users may find difficulties in downloading, opening and uploading files. My idea is the software has to automatically do these steps for users: all steps that much different from traditional method should be automatically executed.
The advantage of this idea is the users do not have to care about what is happening under these steps, they simply do the steps which familiar to them. Therefore, it bring two sequential advantages:
Users may find using software is more convenient than using traditional method including saving time deliver the document or waiting for responses, being able to work at any place …
Saving time and money to train users how to use the software: if it is nearly the same with traditional method, users do not have to learn much.
The specific of this idea is mention in Chapter 4 Section 4.1.
Idea of using ePad device to sign and write comments:
ePad is a device which allow users to write directly to the document with its own signature verification method. After opening the document automatically by software, the manager does not has to write to a text area to sign or give comments, he simply sign as he usually do with paper document.
The advantage of this idea is it is definitely the same as traditional method, which works with paper document:
The manager does not have to learn how to use text area, how to send signature … he simply open the document and sign using pen attached with ePad device.
The signature verification method of ePad helps users rely on the authentication of the person who signed.
The more specific approach of ePad device is mention in Chapter 4 Section 4.2.
Chapter 2: Requirement and Specification
Problem analysis:
Document processing in administrative system is divided into four categories:
New incoming documents processing:
New incoming documents processing is divided to following steps:
After receiving new incoming documents, administration department registers this document into “incoming book”.
New documents will be sent to the manager to check.
New incoming documents will be stored by administration department.
Publish of new incoming documents depends on the right level of staff member, which decided by the manager.
The destination of the documents after reviewing depends on the manager (the manager will note on the document to which department the documents belong to).
The employees could see the document based on their own right level.
New outgoing document processing:
New outgoing document processing is divided into following steps:
The officer or manager who desires to create new document will have to create new document first.
After being completed, the document will be transferred to collect comments from other departments.
After receiving comments, the author could edit the document before forwarding to administration department.
The administration department will check as if the document satisfied all requirements:
if the document missed some requirements, it will be turned back to the author.
if it pass all requirements, it will be sent to the manager.
The manager who receives the document will approve the document .
If the document is approved, it will be stored and registered into “outgoing book” by the administration department.
The document will be set the right of reading before publishing or distributing by the manager.
The destination written in the “outgoing book” will be the address of the company or organization if the document has to be sent out, but the destination could be noted as “internal publishing”.
Task processing:
Task processing includes following steps:
When a chief or a manager need to assign tasks, he has to determine the requests, due date and has to attach related documents if necessary.
The chief or the manager also has to divide the task into steps with conditions, order and due date for each step.
Then he has to specify who is responsible for each step and who is responsible for the whole steps.
The subordinates who read the task could comment or provide solutions for the task.
An individual or group of people who is responsible for the task could attach produced documents.
The individual or the group will be reminded when the due date comes.
The individual has to confirm the state of the request or the task.
The individual could also request to get responses from the person who requested or notice the following task of the request to another.
He could attach produced documents if necessary with the request or task provided.
Task schedule:
Each individual has to be provided a schedule which contains the tasks of a period of time ( such as a week, a month, a quarter … ) with the due date and priority to work in a harmony with other people.
Requirement and solution
Requirement
Document processing and administrative formalities involving occurs in every company, organization … with years of traditional method. The purpose of a document and administrative formalities system based on Internet is reduce all unnecessary steps including steps which take much time like sending documents from department to department or steps which are complicated like dividing tasks for a group of people.
Each company or organization has its own unique aspect in processing document and administrative formalities, but all of them contain following issues:
New incoming documents processing: new documents from other organization include many tasks from registering into books to performing content of documents.
New outgoing documents processing: new outgoing documents in order to be released are required to follow many steps: from checking draft documents to sending to manager to publishing or sending out.
Task processing: the requirement of tasks occurs based on documents is how the manager could keep all tasks worked in a harmonic and finished earlier than deadline. In addition, the manager has to find a way to control responsibilities of subordinates.
Task schedule: the fact that hundreds of task given every day suggests each person have a schedule to remind next tasks and to arrange time logically.
The purpose of the system is to change all four issues of processing documents and administrative formalities from traditional method to modern way based on Internet.
Solution
Using server – client model to work with documents and tasks
Four main functions need to be built:
New incoming document processing: The information “incoming book” will be stored in database. Documents will be stored in server so that everyone could view the documents (actually there is an only document for each incoming document stored in server and everyone explores it) The manager could decide the destination of the document directly instead of communicating with administration department. The employee could connect to the Internet to view and download the documents if possible.
New outgoing document processing: Document created is stored in database and could be viewed directly by specific person without taking time to print and to transfer to specific department. The administration department could check it and send back through Internet to author. The manager could set who could see the document. Information of “outgoing book” is stored in database. The employee could view and download documents when connecting to the Internet. Other organizations will receive documents via email.
Task processing: The manager could create a task then divide it into sub-tasks. Each task or sub-task could be inserted due date and who is responsible and status (finished, not started, being done), edited and deleted. People could view their given tasks, give comment and suggestion for the tasks. They could also send messages to others and get responses about document’s issue. If due date comes, people could be reminded by system. The manager could view all tasks status to control all processes and could remind subordinates if necessary.
Task schedule: Each person has his own schedule to look up and could view due date of all tasks.
Support all functions using Internet services
When joining the company or organization, each person is provided an account to login to system. With this account, a person could execute all functions above, but function’s activities depends on type of user and right of user in each specific situation.
The development based on human – like activities
People’s feeling about the system in aspect of easy to use, productive or not depends on how the activities of system relate to real life especially how they relate to traditional method. With this idea, a successful system is the system requiring less time to learn, less steps of mouse click or less fields to type. Therefore, the system need to reduce steps of operation, moreover, some steps like viewing document, giving comments could be automatic: the document should be automatically downloaded and open, the comments should be attached directly to the document if necessary, etc.
Chapter 3: Design
3.1. Purpose
All document processing is completely automatic to support all stage of working with documents from read new documents to create tasks base on documents or requirement.
3.2. System functions
R.1. Login package
R.1.1. Login to system
R.1.2. Authentication check
R.2. Logout package
R.2.1. Logout to system
R.2.2. Authentication check
R.3. User management package
R.3.1. Create new user
R.3.2. View user profile
R.3.3. Edit user profile
R.3.4. Delete user
R.4. New incoming document processing package
R.4.1. Register into “incoming book”
R.4.2. Store into database
R.4.3. View new incoming documents
R.4.4. Decide destination
R.4.4.1. Public
R.4.4.2. Forward to subordinates
R.5. New outgoing document processing package
R.5.1. Attach documents
R.5.2. Collect comments
R.5.3. Edit document
R.5.4. Send to administration department
R.5.5. Give comments
R.5.6. View document
R.5.7. Send back to author
R.5.8. Send to manager
R.5.9. Set view right
R.5.10. Publish
R.5.10.1. Public
R.5.10.2. Register to “outgoing book”
R.5.10.3. Send out
R.5.10.4. Hide from web
R.5.10.5. Delete
R.6. Task processing package
R.6.1. Create request
R.6.2. Set due date
R.6.3. Attach documents
R.6.4. Divide task
R.6.4.1. Set condition
R.6.4.2. Set priority
R.6.4.3. Set due date
R.6.4.4. Set responsibility for each sub-task
R.6.4.5. Edit sub-task
R.6.4.6. Delete sub-task
R.6.5. Set responsibility for whole task
R.6.6. Edit task
R.6.7. Delete task
R.6.8. View task status
R.6.9. View task
R.6.9.1. Give comments
R.6.9.2. View due date
R.6.9.3. View related documents
R.6.10. Read reminded task
R.6.11. Provide suggestion/solution
R.6.12. Confirm state of tasks
R.6.13. Attach produced documents
R.7. View task schedule
R.7.1. View task schedule
R.7.2. View reminded tasks
3.3. Determine actors, use case in use case diagram
3.3.1. Actors involve in the system:
Manager
Employee
Administration department ( consider as an employee)
Administrator
Actor
Use case
Results
Administrator
All use case
Administration department
Login
Login to system
Logout
Logout of system
Register to “incoming book”
Store date, type of documents and number of documents
Store
Store document into database
Hide from web
Set the document link invisible on the web
Check document
Check as if the document satisfy all requirements
Send back
Send the draft document back to author
View
View the document
Send to manager
Send the document to manager
Public
Public document to all employees
Register to “outgoing book”
Register document profile to “outgoing book”
Send out
Send the document via email
Delete document
Delete document from database
View task
View task assigned
Read reminded tasks
Read the task reminded
Provide suggestion/solution
Provide idea of new solution or give suggestion
Get response from others
Get response from others
Confirm state of task
Show the task status ( finish, pending …)
Attach produced documents
Attach additional produced documents
View schedule
View schedule
Manager
Login
Login to system
Logout
Logout of system
View documents
Open and read the documents
Decide destination
Decide the destination of the documents: public or forward to subordinates
Approve documents
Approve documents
Send back
Send back to author
Set view right
Set who can read the document on the web
Create request
Create new request or task
Set due date ( for whole task)
Set due date for the task
Attach documents
Attach related documents for the task
Divide tasks
Divide task into steps or stages
Set condition
Set condition for each step
Set priority
Set priority or order for steps
Set due date (for each step)
Set due date for each step
Set responsibility for each step
Set who is responsible for specific step
Set responsibility for whole task
Set who is responsible for all the steps
View schedule
Read schedule task
View reminded task
View reminded task
Employee
View
View documents
Create documents
Create new outgoing documents
Collect comments
Get comments from other departments or another person
Send to administration department
Send document to administration department to check
Edit document
Edit document
Attach documents
Attach documents related
View task
View task assigned
View due date
View due date for each task
Read reminded task
Read reminded task which is noticed when due date comes
Provide suggestion/solution
Give suggestion or solution for the task
Get response from others
Get response from other
Confirm state of tasks
Show task status ( finish, pending …)
Attach produced documents
Attach produced documents
View schedule
View schedule task
Find document
Find document
3.3.2. Determine use case
There are seven package according to steps of processing:
1. Login package
Uc1. Login to system
Uc2. Authentication check
2. Logout package
Uc3. Logout to system
Uc4. Authentication check
3. User management package
Uc5. Create new user
Uc6. View user profile
Uc7. Edit user profile
Uc8. Delete user
4. New incoming document processing package
Uc9. Register into “incoming book”
Uc10. Store into database
Uc11. View new incoming documents
Uc12. Decide destination
Uc13. Public
Uc14. Forward to subordinates
5. New outgoing document processing package
Uc15. Attach documents
Uc16. Collect comments
Uc17. Edit document
Uc18. Send to administration department
Uc19. Give comments
Uc20. View document
Uc21. Send back to author
Uc22. Send to manager
Uc23. Set view right
Uc24. Publish
Uc25. Public
Uc26. Register to “outgoing book”
Uc27. Send out
Uc28. Hide from web
Uc29. Delete
6. Task processing package
Uc30. Create request
Uc31. Set due date
Uc32. Attach documents
Uc33. Divide task
Uc34. Set condition
Uc35. Set priority
Uc36. Set due date
Uc37. Set responsibility for each sub-task
Uc38. Edit sub-task
Uc39. Delete sub-task
Uc40. Set responsibility for whole task
Uc41. Edit task
Uc42. Delete task
Uc43. View task status
Uc44. View task
Uc45. Give comments
Uc46. View due date
Uc47. View related documents
Uc48. Read reminded task
Uc49. Provide suggestion/solution
Uc50. Confirm state of tasks
Uc51. Attach produced documents
7. Task schedule
Uc52. View task schedule
3.4. Use case diagrams and description
3.4.1. Login package
Figure 1. Login use case
Uc1. Login to system
Use case name
Login
Actor
Employee, Administration department, manager
Purpose
Access to main panel based on the right of user
General description
User type username and password into login form
References
R1.1
Process description
Action
Response
1. Access system through Internet via browser
2. Show login form
3. Type username and password
4. Show result: login successfully or not
5. Show main panel with functions based on type of user
Exception
User profile is not store in database
Uc2. Authentication check
Use case name
Authentication check
Actor
Employee, Administration department, manager
Purpose
Check if username and password is valid
General description
System will compare username and password with user profile stored in database
References
R1.2, R2.2
Process description
Action
Response
1. Click on Login button
2. Show system’s message about user
Exception
User profile is not store in database
3.4.2. Logout package
Figure 2. Logout use case
Use case description:
Uc3. Logout of system
Use case name
Logout
Actor
Employee, Administration department, manager
Purpose
Exit from system
General description
User click on Logout button and exit
References
R.2.1
Process description
Action
Response
1. Click on Logout button
2. Show message confirm if user want to logout of system
3. User choose OK
4. Exit from system
Exception
No exception
Uc4. Authentication check
Use case name
Authentication check
Actor
Employee, Administration department, manager
Purpose
Check if username and password is valid
General description
System will compare username and password with user profile stored in database
References
R1.2, R2.2
Process description
Action
Response
1. Click on Logout button
2. Clear session of user
Exception
3.4.3. User management package
Figure 3. User management use case
User management package description:
Uc5. Create user
Use case name
Create user
Actor
Administration department
Purpose
Create new user
General description
Insert new user profile and then store profile into database
References
R.3.1
Process description
Action
Response
1. Click “Create user” button
2. Show user profile form
3. After inserting, click on “submit” button
4. Store user profile into database
Exception
User is already stored in database. Show message require re-insert information.
Missing some information fields. Show message require fill in missing fields.
Uc6. Edit user profile
Use case name
Edit user profile
Actor
Administration department
Purpose
Edit user profile
General description
Access to profile form and change some fields of the form
References
R.3.2.
Process description
Action
Response
1. Click on “Edit user” button
2. Show user profile form
Change fields appear in the form and click “Submit”
Store user profile into database
Exception
Missing some information fields. Show message require fill in missing fields.
Uc7. View user profile
Use case name
View user profile
Actor
Administration department
Purpose
View user profile
General description
Open user list and choose user, view user profile
References
R.3.3.
Process description
Action
Response
Choose user from user list
Show user list
3. Click on “View user profile” button
4. Show user profile
Exception
Uc8. Delete user
Use case name
Delete user
Actor
Administration department
Purpose
Delete user from system
General description
Choose user from user list and delete user
References
R.3.4.
Process description
Action
Response
1. Choose user from user list
2. Show user list
Click on “Delete user” button
Delete user from database
Exception
3.4.4. New incoming document processing package
Figure 4. New incoming document package
Use case description:
Uc9. Register to “incoming book”
Use case name
Register to “incoming book”
Actor
Administration department
Purpose
Register to “incoming book”
General description
Insert document’s information into “incoming book” form and store into database
References
R.4.1
Process description
Action
Response
1. Click on “incoming book” button
2. Show information form
Insert document’s information and click “Submit”
Store into database
Exception
Missing some fields in the form. Require fill in missing fields
Uc10. Store into database
Use case name
Store into database
Actor
Administration department
Purpose
Store document into database
General description
Attach document into the form and upload into database
References
R.4.2.
Process description
Action
Response
1. Browse files and click “submit”
2. Upload file and show result message
Exception
Connection error. Show message require browse files and update again.
Uc11. View new incoming document
Use case name
View new incoming document
Actor
Employee, manager, administration department
Purpose
View new incoming document
General description
Click on document link and view document
References
R.4.3, R.5.6
Process description
Action
Response
1. Click on document link
2. Auto open the document
Exception
Connection error. Show error message.
Uc12. Decide destination
Use case name
Decide destination
Actor
manager
Purpose
Choose destination
General description
Click on choose destination and choose which way document will be publish
References
R.4.4.
Process description
Action
Response
1. Click on “Choose destination” button
2. Open form ask way to publish document
Exception
Connection error. Show error message.
Uc13. Public document
Use case name
Public
Actor
Manager
Purpose
Public document to all employees
General description
Choose “public” check box
References
R.4.4.1
Process description
Action
Response
1. Choose “Public” check box
2. Ask to confirm
3. Choose “OK” to confirm
4. Show document on the web to all employees
Exception
Connection error. Show error message.
Uc14. Forward to subordinates
Use case name
Forward to subordinates
Actor
Manager
Purpose
Forward to subordinates
General description
Choose subordinates to forward
References
R.4.4.2
Process description
Action
Response
1. Choose “Forward” checkbox and choose ordinates in the list then choose “Submit”
2. Show document on subordinate’s main panel
Exception
Connection error. Show error message.
3.4.5. New outgoing document processing package
Figure 5. New outgoing document package
Use case description:
Uc15. Attach document
Use case name
Attach document
Actor
Employee
Purpose
Attach document to server
General description
Browse file and attach
References
R.5.1
Process description
Action
Response
Browse document and click on “Attach” button
Upload document to server
Choose department or people to collect comments
Show document in specific user’s panel
Exception
Connection error. Show error message. Require upload again
Uc16. Collect comments
Use case name
Collect comments
Actor
Employee
Purpose
Get comments from others
General description
View comments of specific document in user’s panel
References
R.5.2.
Process description
Action
Response
Choose document and click on “View comments”
Show comments on panel
Exception
Connection error. Show error message.
Uc17. Edit document
Use case name
Edit document
Actor
Employee
Purpose
Edit and re-attach document
General description
Choose document and re-attach document
References
R.5.3
Process description
Action
Response
Choose document and click on “Edit” button
Show attach document form
Attach document and choose “Submit” button
Upload document to server
Exception
Connection error. Show error message. Require upload again
Uc18. Send to administration department
Use case name
Send to administration department
Actor
Employee
Purpose
Send to administration department
General description
Choose send to administration department option
References
R.5.4
Process description
Action
Response
Choose document and choose “Send to administration department”
Show document in administration department’s panel
Exception
Connection error. Show error message.
Uc19. Give comment
Use case name
Give comment
Actor
Employee
Purpose
Give comment for specific document
General description
Write comment and send to author
References
R.5.5
Process description
Action
Response
Click on document and choose “Give comments”
Show text area for writing comments
Choose “Submit”
Send comments to author
Exception
Connection error. Show error message.
Uc20. View document
Use case name
View document
Actor
Employee, manager, administration department
Purpose
View document
General description
Click on document link and view document
References
R.4.3, R.5.6
Process description
Action
Response
1. Click on document link
2. Automatic download and open the document
Exception
Connection error. Show error message.
Uc21. Send back to author
Use case name
Send back to author
Actor
administration department
Purpose
Send back to author
General description
Send back to author with comment
References
R.5.7
Process description
Action
Response
1. Click on document, choose “Send back”
2. Show Comment form
Write comments and reasons for sending back. Choose submit
Send back to author with comments
Exception
Connection error. Show error message.
Uc22. Send to manager
Use case name
Send to manager
Actor
administration department
Purpose
Send document to manager
General description
Choose send to manager
References
R.5.7
Process description
Action
Response
1. Click on document and choose “Send to manager”
2. Show document on manager’s panel
Exception
Connection error. Show error message.
Uc23. Set view right
Use case name
Set view right
Actor
Manager
Purpose
Set who could view the document
General description
Choose document and set view right
References
R.5.9
Process description
Action
Response
1. Click on document and choose “Set view right”
2. Show document only on user who have right
Exception
Connection error. Show error message.
Uc24. Publish
Use case name
Publish
Actor
administration department
Purpose
Publish document
General description
Choose Publish option
References
R.5.10
Process description
Action
Response
1. Click on document and choose Publish button
2. Show choice option for document
Exception
Connection error. Show error message.
Uc25. Public
Use case name
Public
Actor
administration department
Purpose
Public to all employee
General description
Choose public option
References
R.5.10.1
Process description
Action
Response
1. Choose public option
2. Show document on all user’s panel
Exception
Connection error. Show error message.
Uc26. Register to “outgoing book”
Use case name
Register to “outgoing book”
Actor
administration department
Purpose
Register to “outgoing book”
General description
Write document information into “outgoing book”
References
R.5.10.2
Process description
Action
Response
1. Insert document’s information into form
2. Store information into database
Exception
Connection error. Show error message.
Uc27. Send out
Use case name
Send out
Actor
administration department
Purpose
Send document out
General description
Choose email address and send out
References
R.5.10.3
Process description
Action
Response
1. Choose document and type email address
2. Send document via email
Exception
Connection error. Show error message.
Uc28. Hide from web
Use case name
Hide from web
Actor
administration department
Purpose
Hide document from web in case document is old
General description
Choose document and choose hide from web
References
R.5.10.4
Process description
Action
Response
1. Choose document and choose “Hide from web”
2. Do not show document on panel
Exception
Connection error. Show error message.
Uc29. Delete document
Use case name
Delete
Actor
administration department
Purpose
Delete document from database
General description
Choose document and choose “Delete”
References
R.5.10.5
Process description
Action
Response
1. Choose document and choose “Delete” button
2. Delete document from database
Exception
Connection error. Show error message.
3.4.6. Task processing package
Figure 6. Task processing manager use case
Figure 7. Task processing employee
Uc30. Create request
Use case name
Create request
Actor
Manager
Purpose
Create request based on task
General description
Choose Create request and insert info
References
R.6.1
Process description
Action
Response
1. Choose “Create request”
2. Show Request information form
Insert information. Choose “Submit”
Store request into database
Exception
Connection error. Show error message.
Uc31. Set due date (for whole task)
Use case name
Set due date for whole task
Actor
Manager
Purpose
Set due date for whole task
General description
Set date in due date form
References
R.6.2
Process description
Action
Response
1. Choose “Due date”
2. Show Due date option
Choose date time
Store date into database
Exception
Connection error. Show error message.
Uc32. Attach documents
Use case name
Attach document
Actor
Manager
Purpose
Attach related document
General description
Browse documents and attach
References
R.6.3
Process description
Action
Response
1. Choose “Attach” and browse files to attach
2. Store files into database
Exception
Connection error. Show error message. Require re-attach.
Uc33. Divide task
Use case name
Divide task
Actor
Manager
Purpose
Divide task into steps
General description
Divide and name the step
References
R.6.4
Process description
Action
Response
1. Choose “Divide” and name each sub-task
2. Store sub task into database
Exception
Connection error. Show error message.
Uc34. Set condition
Use case name
Set condition
Actor
Manager
Purpose
Set condition for each sub-task for synchronizing
General description
Set dependence for each sub-task
References
R.6.4.1
Process description
Action
Response
1. Choose pre-task
2. Store dependence into database
Exception
Connection error. Show error message.
Uc35. Set priority
Use case name
Set priority
Actor
Manager
Purpose
Set order and priority for tasks
General description
Set order for tasks
References
R.6.4.2
Process description
Action
Response
1. Re arrange tasks in order
2. Store order into database
Exception
Connection error. Show error message.
Uc36. Set due date ( for sub-task)
Use case name
Set due date (for sub-task)
Actor
Manager
Purpose
Set due date for sub-task
General description
Choose due date for each sub-task
References
R.6.4.3
Process description
Action
Response
1. Choose sub-task and set date
2. Store date into database
Exception
Connection error. Show error message.
Uc37. Set responsibility for sub-task
Use case name
Set responsibility for sub-task
Actor
Manager
Purpose
Set responsibility for sub-task
General description
Choose sub-task and set who is responsible for
References
R.6.4.4
Process description
Action
Response
1. Choose sub-task, choose person responsible for
2. Store person into database
Exception
Connection error. Show error message.
Uc38. Edit sub-task
Use case name
Edit subtask
Actor
Manager
Purpose
Edit sub-task
General description
Choose edit and change sub-task information
References
R.6.4.5
Process description
Action
Response
1. Choose sub-task, choose “Edit”
2. Show edit form
3. Edit sub-task
4. Store into database
Exception
Connection error. Show error message.
Uc39. Delete sub-task
Use case name
Delete sub-task
Actor
Manager
Purpose
Delete sub-task
General description
Choose sub-task and delete
References
R.6.4.6
Process description
Action
Response
1. Choose sub-task and choose “Delete”
2. Delete from database
Exception
Connection error. Show error message.
Uc40. Set responsibility for whole task
Use case name
Set responsibility for whole task
Actor
Manager
Purpose
Set responsibility for whole task
General description
Choose person who is responsible for whole task
References
R.6.5
Process description
Action
Response
1. Choose person to set responsibility
2. Store person into database
Exception
Connection error. Show error message.
Uc41. Edit task
Use case name
Edit task
Actor
Manager
Purpose
Edit task
General description
Choose edit and change task information
References
R.6.6
Process description
Action
Response
1. Choose task, choose “Edit”
2. Show edit form
3. Edit task
4. Store into database
Exception
Connection error. Show error message.
Uc42. Delete task
Use case name
Delete task
Actor
Manager
Purpose
Delete task
General description
Choose task and delete
References
R.6.7
Process description
Action
Response
1. Choose task and choose “Delete”
2. Delete from database
Exception
Connection error. Show error message.
Uc43. View task status
Use case name
View task status
Actor
Manager
Purpose
View all task status to control how subordinates do sub-task
General description
Choose “Task status” and view status
References
R.6.8
Process description
Action
Response
1. Choose “Task status”
2. Show all task status
Exception
Connection error. Show error message.
Uc44. View task
Use case name
View task
Actor
Manager, Employee, Administration department
Purpose
View task
General description
Choose task and view content
References
R.6.9
Process description
Action
Response
1. Choose task and view content
2. Show content
Exception
Connection error. Show error message.
Uc45. Give comments
Use case name
Give comments
Actor
Manager, Employee, Administration department
Purpose
Give comments for task
General description
Set dependence for each sub-task
References
R.6.4.1
Process description
Action
Response
1. Choose pre-task
2. Store dependence into database
Exception
Connection error. Show error message.
Uc46. View due date
Use case name
View due date
Actor
Manager, Employee, Administration department
Purpose
View due date
General description
Choose sub-task and delete
References
R.6.
Process description
Action
Response
1. Choose sub-task and choose “Delete”
2. Delete from database
Exception
Connection error. Show error message.
Uc47. View related documents
Use case name
View related document
Actor
Manager, Employee, Administration department
Purpose
View related document
General description
Download and open related document
References
R.6.8.3
Process description
Action
Response
1. Click on related document
2. Show related document
3. Download related document
4. Download
Exception
Connection error. Show error message.
Uc48. Read reminded task
Use case name
Read reminded task
Actor
Manager, Employee, Administration department
Purpose
Read reminded task
General description
Click on remind and read
References
R.6.9
Process description
Action
Response
1. Click on “reminded task” area
2. Show reminded task
Exception
Connection error. Show error message.
Uc49. Provide suggestions/solutions
Use case name
Provide suggestions/solutions
Actor
Manager, Employee, Administration department
Purpose
Provide suggestions/solutions for tasks
General description
Type solutions in text area and send to others
References
R.6.10
Process description
Action
Response
1. Type solutions in text area
2. Show text area
3. Choose people to send to and choose “Send”
4. Send to people
Exception
Connection error. Show error message.
Uc50. Confirm state of task
Use case name
Confirm state of task
Actor
Manager, Employee, Administration department
Purpose
Confirm task’s status ( finish, doing, not start..)
General description
Choose status checkbox
References
R.6.11
Process description
Action
Response
1. Choose task and choose status
2. Save status
Exception
Connection error. Show error message.
Uc51. Attach produced documents
Use case name
Attach produced documents
Actor
Manager, Employee, Administration department
Purpose
Attach produced documents
General description
Browse files and attach
References
R.6.12
Process description
Action
Response
1. Browse files and attach
2. Upload to server
Exception
Connection error. Show error message.
3.4.7. View task schedule
Figure 8. Task schedule
Uc52. View task schedule
Use case name
View task schedule
Actor
Manager, Employee, Administration department
Purpose
View task schedule
General description
View task schedule
References
R.7
Process description
Action
Response
1. Choose “View task schedule” panel
2. Show panel
Exception
Connection error. Show error message.
3.5. Sequence diagrams
3.5.1. Login package
Figure 9. Login sequence diagram
3.5.2. Logout package
Figure 10. Logout package
3.5.3. User management package
Figure 11. Use management sequence diagram
3.5.4. New incoming document package
Figure 12. Incoming document administration department sequence diagram
Figure 13. Incoming document manager sequence diagram
Figure 14. Incoming document employee sequence diagram
3.5.5. New outgoing document package
Figure 15. Outgoing document sequence diagram
3.5.6. Task processing package
Figure 16. Task processing package
3.5.7. Schedule
Figure 17. Schedule sequence diagram
3.6. Operation contract
Op1. Login
Name
Login to system
Responsibility
Login successfully to access all function based on right level
Reference
Uc1
Exception
Wrong username, password
Output
Main panel
Pre-condition
Account is created
Post-condition
Op2. Authentication check
Name
Authentication check
Responsibility
Check if username and password are valid
Reference
Uc2, Uc4
Exception
Wrong username, password
Output
Error message
Pre-condition
Account is created
Post-condition
Op3. Logout
Name
Logout
Responsibility
Logout successfully
Reference
Uc3
Exception
Connection error
Output
Logout successfully message
Pre-condition
User confirm to logout
Post-condition
Op4. Authentication check
Name
Authentication check
Responsibility
Check if username and password are valid
Reference
Uc2, Uc4
Exception
Wrong username, password
Output
Error message
Pre-condition
Account is created
Post-condition
Op5. Create new user
Name
Create new user
Responsibility
Create new user profile in database
Reference
Uc5
Exception
Not enough information or user already created
Output
Account created
Pre-condition
User have right to use this function
Post-condition
User created
Op6. View user profile
Name
View user profile
Responsibility
Show all information about user
Reference
Uc6
Exception
Connection error
Output
User’s Information
Pre-condition
Account is created
Post-condition
Op7. Edit user profile
Name
Edit user profile
Responsibility
Change user profile
Reference
Uc7
Exception
Connection error
Output
Changed information
Pre-condition
Account is created
Post-condition
Op8. Delete user
Name
Delete user
Responsibility
Delete user from database
Reference
Uc8
Exception
Connection error
Output
Delete message
Pre-condition
Account is created
Post-condition
User deleted
Op9. Register into “incoming book”
Name
Register into “incoming book”
Responsibility
Store document information into “incoming book”
Reference
Uc9
Exception
Not enough information. Connection error
Output
Result message
Pre-condition
Enough information
Post-condition
Op10. Store into database
Name
Store into database
Responsibility
Store document into database and server
Reference
Uc10
Exception
Not enough information. Connection error
Output
Result message
Pre-condition
Enough information
Post-condition
Op11. View new incoming document
Name
View new incoming document
Responsibility
Show new incoming document
Reference
Uc11
Exception
Connection error
Output
Show incoming document
Pre-condition
Document stored into database
Post-condition
Op12. Decide destination
Name
Decide destination
Responsibility
Update destination for document
Reference
Uc12
Exception
Connection error
Output
Result message
Pre-condition
Document stored in database
Post-condition
Update successfully
Op13. Public
Name
Public
Responsibility
All user could access the document
Reference
Uc13
Exception
Connection error
Output
Result message
Pre-condition
Document stored in database
Post-condition
Update successfully
Op14. Forward to subordinates
Name
Forward to subordinates
Responsibility
User who is chosen can view document
Reference
Uc14
Exception
Connection error
Output
Result message
Pre-condition
Document stored in database
Post-condition
Update successfully
Op15. Attach document
Name
Attach document
Responsibility
Upload document to server
Reference
Uc15
Exception
Connection error
Output
Result message
Pre-condition
Document type is valid
Post-condition
Document in server
Op16. Collect comments
Name
Collect comments
Responsibility
Show all comments from database
Reference
Uc16
Exception
Connection error
Output
Comment list
Pre-condition
Comment stored in database
Post-condition
Op17. Edit document
Name
Edit document
Responsibility
Update document information into database
Reference
Uc17
Exception
Connection error
Output
Update result
Pre-condition
Document stored in database
Post-condition
Database updated
Op18. Send to administration department
Name
Send to administration department
Responsibility
Administration department could view the document
Reference
Uc18
Exception
Connection error
Output
Send result
Pre-condition
Document stored in database
Post-condition
Op19. Give comments
Name
Give comments
Responsibility
Store comment into database
Reference
Uc19
Exception
Connection error
Output
Insert result
Pre-condition
Enough information
Post-condition
Comment stored
Op20. View document
Name
View document
Responsibility
View document selected
Reference
Uc20
Exception
Connection error
Output
Document list
Pre-condition
Document stored in database
Post-condition
Op21. Send back to author
Name
Send back to author
Responsibility
Not register. Send back to author to edit
Reference
Uc21
Exception
Connection error
Output
Result message
Pre-condition
Document stored in database
Post-condition
Op22. Send to manager
Name
Send to manager
Responsibility
Set visible document in manager’s panel
Reference
Uc22
Exception
Connection error
Output
Document list
Pre-condition
Document stored in database
Post-condition
Op23. Set view right
Name
Set view right
Responsibility
Set who could see document
Reference
Uc23
Exception
Connection error
Output
Document list
Pre-condition
Document stored in database
Post-condition
Op24. Publish
Name
Publish
Responsibility
Set publish option
Reference
Uc24
Exception
Connection error
Output
Update document database
Pre-condition
Document stored in database
Post-condition
Op25. Public
Name
Public
Responsibility
All user could see document. Update database
Reference
Uc25
Exception
Connection error
Output
Document list
Pre-condition
Document stored in database
Post-condition
Op26. Register to “outgoing book”
Name
Register to “outgoing book”
Responsibility
Insert document information into database
Reference
Uc26
Exception
Connection error
Output
Database inserted
Pre-condition
Document stored in database
Post-condition
Op27. Send out
Name
Send out
Responsibility
Send document out
Reference
Uc27
Exception
Connection error
Output
Result message
Pre-condition
Document stored in database
Post-condition
Op28. Hide from web
Name
Hide from web
Responsibility
Hide document from panel
Reference
Uc28
Exception
Connection error
Output
Move out from panel
Pre-condition
Document stored in database
Post-condition
Op29. Delete
Name
Delete
Responsibility
Delete from database
Reference
Uc29
Exception
Connection error
Output
Result message
Pre-condition
Document stored in database
Post-condition
Document deleted from database
Op30. Create request
Name
Create request
Responsibility
Insert into database task information
Reference
Uc30
Exception
Connection error
Output
Result message
Pre-condition
Enough information
Post-condition
Task stored into database
Op31. Set due date
Name
Set due date
Responsibility
Update database
Reference
Uc31
Exception
Connection error
Output
Result message
Pre-condition
Task stored in database
Post-condition
Task database updated
Op32. Attach document
Name
Attach document
Responsibility
Upload document to server
Reference
Uc32
Exception
Connection error
Output
Result message
Pre-condition
Document type is valid
Post-condition
Document uploaded
Op33. Divide task
Name
Divide task
Responsibility
Insert into database sub-task
Reference
Uc33
Exception
Connection error
Output
Result message
Pre-condition
Sub-task information is filled
Post-condition
Task database inserted
Op34. Set condition
Name
Set condition
Responsibility
Update condition to database
Reference
Uc34
Exception
Connection error
Output
Result message
Pre-condition
Task stored in database
Post-condition
Database updated
Op35. Set priority
Name
Set priority
Responsibility
Update priority of subtask in database
Reference
Uc35
Exception
Connection error
Output
Result message
Pre-condition
Tasks stored in database
Post-condition
Database updated
Op36. Set due date
Name
Set due date
Responsibility
Insert due date into database
Reference
Uc31, 36
Exception
Connection error
Output
Result message
Pre-condition
Document stored in database
Post-condition
Document deleted from database
Op37. Set responsibility
Name
Set responsibility
Responsibility
Update responsibility ID in database
Reference
Uc37, 40
Exception
Connection error
Output
Result message
Pre-condition
Tasks stored in database
Post-condition
Database updated
Op38. Edit subtask
Name
Edit sub-task
Responsibility
Update sub-task in database
Reference
Uc38
Exception
Connection error
Output
Result message
Pre-condition
Tasks stored in database
Post-condition
Database updated
Op39. Delete sub-task
Name
Delete sub-task
Responsibility
Delete sub-task from database
Reference
Uc39
Exception
Connection error
Output
Result message
Pre-condition
Tasks stored in database
Post-condition
Task deleted from database
Op40. Set responsibility for whole task
Name
Set responsibility
Responsibility
Update responsibility ID in database
Reference
Uc37, 40
Exception
Connection error
Output
Result message
Pre-condition
Tasks stored in database
Post-condition
Database updated
Op41. Edit task
Name
Edit task
Responsibility
Update sub-task in database
Reference
Uc41
Exception
Connection error
Output
Result message
Pre-condition
Tasks stored in database
Post-condition
Database updated
Op42. Delete task
Name
Delete task
Responsibility
Delete sub-task from database
Reference
Uc42
Exception
Connection error
Output
Result message
Pre-condition
Tasks stored in database
Post-condition
Task deleted from database
Op43. View task status
Name
View task status
Responsibility
Select task status from database
Reference
Uc43
Exception
Connection error
Output
Task status
Pre-condition
Tasks stored in database
Post-condition
Op44. View task
Name
View task
Responsibility
Select task from database
Reference
Uc44
Exception
Connection error
Output
Task list
Pre-condition
Tasks stored in database
Post-condition
Op45. Give comments
Name
Give comment
Responsibility
Insert comment into database
Reference
Uc45
Exception
Connection error
Output
Result message
Pre-condition
Enough information
Post-condition
Comment inserted
Op46. View due date
Name
View due date
Responsibility
Select due date from database
Reference
Uc46
Exception
Connection error
Output
Due date panel
Pre-condition
Tasks stored in database
Post-condition
Op47. View related documents
Name
View related documents
Responsibility
Select related document from database
Reference
Uc47
Exception
Connection error
Output
Document list
Pre-condition
Documents stored in database
Post-condition
Op48. Read reminded task
Name
View task
Responsibility
Select task from database
Reference
Uc47
Exception
Connection error
Output
Task list
Pre-condition
Tasks stored in database
Post-condition
Op49. Provide suggestion/solution
Name
Provide suggestion/solution
Responsibility
Insert solution into database
Reference
Uc48
Exception
Connection error
Output
Result message
Pre-condition
Enough information
Post-condition
Solution inserted
Op50. Confirm state of task
Name
Confirm state of task
Responsibility
Update state of task into database
Reference
Uc49
Exception
Connection error
Output
Result message
Pre-condition
Tasks stored in database
Post-condition
Task updated
Uc51. Attach produced documents
Name
Attach produced documents
Responsibility
Upload documents to server
Reference
Uc51
Exception
Connection error
Output
Result message
Pre-condition
File type is valid
Post-condition
Documents uploaded to server
Uc52. View task schedule
Name
View task schedule
Responsibility
Select task from database
Reference
Uc52
Exception
Connection error
Output
Schedule with task
Pre-condition
Tasks stored in database
Post-condition
3.7. Class diagram
Figure 18. General class diagram
Figure 19. Specific class diagram
Chapter 4: Specific solution of using ePad signature and verification
4.1. Overall solution approach
As mentioned in Chapter I, the aspect deciding the success of the system is how close it is to real life. That means most common activities in document and administrative formality processing such as signing; receiving documents or even viewing documents should be performed automatically and follow all steps that made as in traditional way.
The advantages of that idea is training time for new users could be reduced, moreover, middle age users could find it is easy to work as they have been done for several years. Therefore, the system could be used in a wide range of age and education level of people – one of the purposes the system heading for.
Following solutions is based on that idea:
Downloading automatically
Opening automatically
Signing using ePad device
Uploading automatically
Choose document
The document is downloading automatically to client when clicked by users: that means users could skip some steps like choosing location to save the document, which considered as a complicated and difficult step to some middle age users.
The document is opening automatically right after being downloaded completed: some users find is comfortable when documents are shown in the same way as in real life.
The document is signed or given comment using ePad device: this step is acted exactly the same as real life.
The document is automatic uploaded to server after users submit that they finished signing or writing some comments: in this step users don’t need to care about what is actually happened under uploading step.
The code generated for these solutions and some visual view to illustrate are mentioned in up coming chapter.
4.2. An introduction to ePad device and signature verification issue
4.2.1. Introduction
ePad is Interlink's entry-level, portable electronic signature capture device that produces legally-binding esignatures and comes bundled with IntegriSign Desktop. Plug-ins for Microsoft Word, Excel, as well as Adobe Acrobat allow users to begin esigning out of the box without any programming experience.
(From interlinkelectronics.com)
Figure 20. ePad device
4.2.2. Signature verification issue
Sign directly to MS Word file, MS Excel file and PDF file using Acrobat Reader. Each software (MS Office, Adobe Acrobat) is attached an ePad add-on that helps user sign into the document.
Figure 21. Signature using ePad
Each signature created by ePad contains information about user including name, company, email, state, province, country, etc.
Figure 22. User profile attached to signature
Protect documents in two ways:
Using MS Word protect password: user set a password for document then can unprotect document in next use.
Using ePad Freeze document utility: user choose Freeze Document option, the document cannot be changed after signing.
That is the method of verify signature in ePad.
Signature verification issue:
Figure 23 below is how the signature and the content of the document is verified. The document is verified if two following conditions are satisfied: First, the signature contains all profild information of the person who signed the document. Second, the content of the document and the signature haven’t changed from the last time signed.
In this verification method, the verification function calls a library named esCore.dll. This library allows preset some properties:
HashType: this propeties is considered as how the signature is encrypted. If the propertise is 0, the encryption is the standard encryption which defined by ePad. If the propertise is 1, the encryption is custom, which the only selected area is encrypted. If the property is 2, the document is not encrypted.
HashData: this propertise contains the original data to compare. Obviously, the property must be set before following steps: Sign – Open Sign – Verify. However, it is enabled only if the HashType is 1 ( Custom ).
Therefore, with the data encrypted first, when the Verify function is execute, it will compare the original data with the current data. If there is any change such as after signing the document, someone try to insert content into document, or the signature is changed, the document will not be reliable.
The signature will be encoded in Base64String after being signed. The purpose of this step is when the signature is stored in image format, it should be encoded like ASCII to attach to the document which only work with ASCII style. The hash encrypted step occurs after encoded.
Figure 23. Verification information
The advantages of this verification method are:
Acts as real life: once you signed into paper, you could not change it. This method keeps the signification of the document stay forever. If someone try to change the document, the picture above (Figure23) will notify that document has changed so that people would know the document is not reliable.
People can choose level of security:
If users choose using word protection password, they can change document signature later.
If users choose using “Freeze” function, they could rely that the document will not be changed in the future, if not, the verification function will notify that.
4.3. Demo solution
4.3.1. Programming language and environment
Programming language: C#, asp.net.
Operating system: Windows XP.
Environment: .Net Framework 2.0, IIS 6.0.
4.3.2. Code generated for each function
All functions including automatic downloading, opening, uploading is created in a class named “DocumentProcesses” which the application calls it to perform.
Automatic downloading:
///
/// Automatic Download document with specific url
///
///
///
///
public string DownloadFile(string url, string filename)
{
WebClient client = new WebClient();
try
{
client.DownloadFile(url, filename); //download file
return Directory.GetCurrentDirectory(); //return directory that stores file
}
catch (WebException webexception)
{
return "";
}
}
The reason for returning the directory of file downloaded is for further use in opening and uploading. These functions need to locate the document file.
Automatic opening
///
/// Automatic opening file
///
///
///
///
public void OpenFile(string directory, string filename)
{
Process.Start("\"" + directory + "\\" + filename + "\"");
}
Automatic opening depends on:
Directory of downloaded file: get from DownloadFile(…) method.
Filename: depends on file type extenstion, the system will open file using MS Office or Adobe Acrobat.
Automatic uploading
///
/// Automatic Uploading
///
///
///
///
///
public byte[] UploadFile(string url, string method, string filename)
{
WebClient client = new WebClient();
return client.UploadFile(url, method, filename); // upload
}
Method returns array of byte because method WebClient.UploadFile(…) will return the body content of response. We use it to check as if uploading process is successful or not.
The response will be generated by an asp.net page stored at server:
///
/// Store document
///
///
///
protected void Page_Load(object sender, EventArgs e)
{
string savePath = "C:\\inetpub\\wwwroot\\Data\\";
try
{
foreach (string f in Request.Files.AllKeys)
{
HttpPostedFile file = Request.Files[f];
file.SaveAs(savePath + file.FileName);
Label1.Text = "Upload thanh cong!";
}
}
catch (HttpException httpException)
{
Label1.Text = "Co loi khi save file";
}
4.3.3. Some visual view to illustrate
a. Steps of process
Step 1: Login to system. If username and password are not validated, require type again. If username and password fit with user profile stored in database, go to main panel.
Step 2: View new document list by clicking “Xem”, choose one document and click view. Document will be automatic downloaded and opened.
Step 3: User use ePad to sign and write comments.
Step 4: User click on “Đã kí xong” to finish. Document will be automatic uploaded to server.
Step 5: User can click on “Cập nhật” to update new document list manual. However, the system will automatically update every 01 minute and notify user.
Step 6: User click “Thoat” to exit application.
b. Some visual view
Login form (next page):
Figure 24. Login dialog
Main panel with new document list, function buttons (next page):
Figure 25. Main panel with new document list
Confirm before automatically upload to server (next page):
Figure 26. Finish and confirm upload to server
Sign or give comments (next page):
Figure 27. Sign using ePad
Show message uploading result (next page):
Figure 28. Show uploading result
Some utilities
Auto alert user if new document comes (next page):
Figure 29. Auto alert when new document comes
Context menu when minimized:
Figure 30. Context menu when minimized
Security
The personal issue in document processing is solved by authentication checking method. Only user who type correctly username and password could view documents.
Signature verification is proved by ePad freeze function or protection function in MS Word. If document is freeze using ePad add-on, document will not be able to modify any more. Actually this function is the same as people sign papers using pen in real life: if someone use pen write on paper, the shape of the sign will stand for the author, not using password or any method to verify as usual.
The database query to check authentication or to list all new documents is hidden under Store Procedure. Directly query like using “SELECT … FROM …” will show table name and columns data that could be easily hacked like using GET REQUEST method a person could add ‘?1=1’ into request then the query will be ‘SELECT … FROM … WHERE 1=1’ then show all data in table ( username, password …)
Chapter 5: Conclusion
After finishing the thesis, we have obtained some following results:
Firstly, we analyzed why some software failed to be used when published. From this analysis, we use ePad device to optimized the steps of signing and write comments. Moreover, we built the new idea of automatic executing some steps that made user find it was nearly with what they had done in traditional method. The idea is especially useful in Vietnam, where most users in administrative system are middle-age people.
Second, we have had a full approach to administrative activities problems, categorized them into four separate parts. From these categories, we could build analysis and design document for administrative activities and document processing software.
Third, based on the solution and design, we build a part of solution which attach “ePad” device to sign, and other steps is automatically execute. These functions is downloading new documents, opening new documents, signing documents, and uploading documents.
The demo solution is simply demonstrate how we could simplify the steps for users. The demo solution is simply built for processing new incoming document. Other parts like outgoing document processing or task processing have not been built yet.
In the future, we will build other parts base on the modules in first part to complete the software. Moreover, the software will be developed in web-based (using browser to check document) to have a more flexible access.
In conclusion, I wish to thank all professors of College of Technology – Vietnam National University, Hanoi who helped me complete the thesis and I wish to give a special thank to MSc. Dao Kien Quoc, who has directly instructed me for months to finish the thesis. With a short limited time, the thesis could not be perfect, I hope and be willing to receive the comments of teachers and students to make it better.
APPENDIX
Table of figures
Figure 1. Login use case 21
Figure 2. Logout use case 23
Figure 3. User management use case 25
Figure 4. New incoming document package 28
Figure 5. New outgoing document package 33
Figure 6. Task processing manager use case 44
Figure 7. Task processing employee 45
Figure 8. Task schedule 60
Figure 9. Login sequence diagram 61
Figure 10. Logout package 61
Figure 11. Use management sequence diagram 62
Figure 12. Incoming document administration department sequence diagram 62
Figure 13. Incoming document manager sequence diagram 63
Figure 14. Incoming document employee sequence diagram 63
Figure 15. Outgoing document sequence diagram 64
Figure 16. Task processing package 65
Figure 17. Schedule sequence diagram 66
Figure 18. General class diagram 81
Figure 19. Specific class diagram 82
Figure 20. ePad device 84
Figure 21. Signature using ePad 85
Figure 22. User profile attached to signature 86
Figure 23. Verification information 88
Figure 24. Login dialog 92
Figure 25. Main panel with new document list 93
Figure 26. Finish and confirm upload to server 94
Figure 27. Sign using ePad 95
Figure 28. Show uploading result 96
Figure 29. Auto alert when new document comes 97
Figure 30. Context menu when minimized 97
REFFERENCE MATERIAL
[1] Trương Ninh Thuận, Bài giảng UML, Đại học Công nghệ.
[2] Công văn số 425/VTLTNN-NVTW ngày 18/7/2005 của Cục Văn thư và Lưu trữ Nhà nước về việc hướng dẫn quản lý văn bản đi, văn bản đến; Cục Văn thư và Lưu trữ Nhà nước.
[3] Trang thông tin hướng dẫn nghiệp vụ, Bộ tư pháp,
[4] Văn bản số 608/LTNN-TTNC ngày 19/11/1999 của Cục Lưu trữ Nhà nước về việc hướng dẫn ứng dụng công nghệ thông tin trong văn thư, lưu trữ, Cục văn thư và lưu trữ nhà nước.
[5] Roger Pressman, (2001) Software Engineering: A Practitioner's Approach.
[6]
Các file đính kèm theo tài liệu này:
- Nguyen Hoai Nam_K50CNPM_Khoa luan tot nghiep dai hoc.doc