Anda di halaman 1dari 28

School of Computer Science & Software Engineering

Bachelor of Computer Science (Digital Systems Security)

CSCI321- Final Year Project Inference protection engine for statistical databases Project Document 27 December 2012
Group: SS12/4B Khoo Jun Xiang Ang Wen Can Stephen Goh Kheng Siang Joel Lim Sing Hui Low Jia Hui 4000766 4194032 4187490 4185948 4186448 jxkhoo001@mymail.sim.edu.sg wsang003@mymail.sim.edu.sg ksgoh007@mymail.sim.edu.sg shlim035@mymail.sim.edu.sg jhlow010@mymail.sim.edu.sg

Supervisor: Mr Sionggo Jappit Assessor: Mr Tan Kheng Teck

Project Document

SS12/4B

Document Control
Title: Document Name: Project Document DSS-12-S4-03_ProjectDocument.doc
Last Change on Date 27/12/2012 Time 10pm

Owner Khoo Jun Xiang

Current Version 1.0

Approved by Project Manager

Distribution List Name Mr Sionggo Jappit Mr Tan Kheng Teck Khoo Jun Xiang Low Jia Hui Goh Kheng Siang Joel Lim Sing Hui Ang Wen Can Stephen

Title/Role Supervisor Accessor Project Manager, Implementer Software Architect Test Designer Documenter Database Designer

Where SIM_UOW SIM_UOW SIM_UOW SIM_UOW SIM_UOW SIM_UOW SIM_UOW

Record of Revision Revision Date 23/11/2012 Description Document Creation - Added all section. A draft of documentation Section Affected ALL Changes Made by ALL Version after Revision 0.1

10/12/2012

Update of Introduction, Project Scope

Introduction, Project Scope Stakeholders, Project Team Development Methodology ALL ALL ALL ALL Scope, Control Records Control Record

11/12/2012

Update of Stakeholders, Project Team

12/12/2012 12/12/2012 13/12/2012 13/12/2012 14/12/2012 15/12/2012 27/12/2012

Updated timeline and project schedule Update Control Records Review of document Formatting and Miscellaneous Final Check and Compilations Re-checking and re-updating Update Control Record

Lim Sing Hui, Khoo Jun Xiang, Stephen Ang Lim Sing Hui, Khoo Jun Xiang, Stephan Ang ALL Khoo Jun Xiang, Stephen Ang Low JiaHui, Joel Lim Singhui ALL ALL Khoo Jun Xiang,

0.2

0.3

0.4 0.5 0.6 0.7 0.8 0.9 1.0

Page 2 of 28

Project Document

SS12/4B

Contents
Document Control ..................................................................................................................................... 2 1. 2. 3. Introduction ....................................................................................................................................... 5 Project Scope ..................................................................................................................................... 6 Stakeholder ........................................................................................................................................ 7 3.1 Internal to the project team ............................................................................................................. 7 3.2 External to the project team but within the same organization ....................................................... 7 3.3 External to both project team and organization .............................................................................. 8 4. Development Methodology ............................................................................................................... 9 4.1 RUP (Rational Unified Process) ..................................................................................................... 9 4.2 Iteration Plan ................................................................................................................................. 13 4.3 Project Schedule............................................................................................................................ 15 4.4 Project Timeline ............................................................................................................................ 17 5. Project Team .................................................................................................................................... 19 5.1 Organization Chart ........................................................................................................................ 19 5.2 Committee Structure ..................................................................................................................... 20 5.3 Team Structure .............................................................................................................................. 21 5.4 Strength and Weakness ................................................................................................................. 22 6. Project Website ................................................................................................................................ 23 6.1 FYP Home Page ..................................................................................................................... 23 6.2 About Us.................................................................................................................................... 24 6.3 Link ........................................................................................................................................... 25 7. Control Records .................................................................................................................................. 27 7.1 Project Proposal / Pitch Document ............................................................................................... 27 7.2 Requirement Specification / Technical Design ............................................................................. 27 7.3 Design Specification / Art Design Document ............................................................................... 27 7.4 User Manual / Game Manual ........................................................................................................ 27 Page 3 of 28

Project Document

SS12/4B

7.5 Test Plan........................................................................................................................................ 27 7.6 Risk List ........................................................................................................................................ 28 8. Appendix ............................................................................................................................................. 28

Page 4 of 28

Project Document

SS12/4B

1. Introduction
Project document is the overall guiding document for this DB-wrapper project. The reason for this project document is to define the way in which a project will be managed and the governance surrounding it. It is needed to facilitate the planning, tracking and reporting of the project. A project document can either be the driving force behind a projects success or the bottleneck in failure to meet its timeline, budget and scope. In this project document, we would like to outline the projects project team members, stakeholders, the overall time frame and milestones taken to complete this project. In-depth objective of this project, scope and risk faced and type of development method will be included in this proposal. A brief description of the project members will also be included. This will consist of past achievement, current qualifications, their roles and responsibility for the stakeholders' reference. Next, structure and detail of website will be described. Control records of each version of documents are maintained with proper link and reference to all latest versions. The project document is organized in a manner that: 1) 2) 3) 4) 5) 6) 7) First introduce the project boundaries (what it does and doesn't) The stakeholders involved Development methodology chosen Timeframes of project Who are the developers Website to introduce the project Links to other documents relevant to project

To sum it up, project document provides an overview of project processes as well as links to all deliverables, and will be a continuous source of information for the project team members. Relevant project documents will be located in the project website: http://db-engine.blogspot.sg/p/links.html

Page 5 of 28

Project Document

SS12/4B

2. Project Scope
Inference attack is a data mining technique which is use to compromise confidential of a statistical database, it occurs when multiple statistical query are made and combining the results together forming inference chaining which can be used to deduce or infer the confidential information. The DB-Wrapper is intended to work as a query-filter like process that filter queries are not allowed. The wrapper will act as an inference protection mechanism to restrict interactions and protect the statistical database against disclosure of confidential and sensitive information and applicable on Oracle Database through SQLite. As part of the project, the wrapper will provide Query Restrictions, Systematic Rounding, Query set-size control and Auditing to prevent inferences attack. This will provide data confidentiality and integrity to the database. A database must be planned out, together with all the tables and contents. Administrators must be able to view those logged files and set bound limits for query set-size control. It is not necessary to create a graphical user interface for the DB-Wrapper as its main purpose is to sit on top of the database with the main purpose of restricting queries and filtering query results.

Page 6 of 28

Project Document

SS12/4B

3. Stakeholder
3.1 Internal to the project team
The project manager directly controls the group of stakeholders. Stakeholders are given roles and responsibilities to ensure that both iteration phrase and project lifecycle are smoothly flow. Below show the members in the project team and their main roles. Khoo Jun XiangLow Jia Hui Goh Keng Siang Joel Lim Sing Hui Ang Wen Can Stephen Project Manager, Implementer Software Architect, Implementer Test Designer, Integrator Documenter, System Analyst Database Designer, Documenter

3.2 External to the project team but within the same organization
It is important to ensure whole team is on the correct path towards development. Both stakeholders are accessing the project. Mr Sionggo Jappit Mr Tan Kheng Teck Supervisor Assessor

Project assessor evaluates how the project is managed by the team members and review on the project proposal and documentation. The project team will liaise with him to ensure the development of product is fulfilled with the system requirements and keep him informed with the schedule plan on the right track. Therefore, Project assessor is one of our major stakeholders. Project supervisor makes sure the design and architectural decision of the project is on the right track. Project supervisor will provides information and feedback to the project team regularly. He will evaluate the project with respect to the objectives and evaluation scheme and assign a tentative percentage grade. Best efforts will be put in to fulfill the requirements indicated by supervisor.

Page 7 of 28

Project Document

SS12/4B

3.3 External to both project team and organization


This group of stakeholders consists of existing clients and potential clients who will use the product and engage with it services. The stakeholders are listed below.

Users who wish to query statistical database. Interested publics Database Administrator Company Security Engineers

Sufficient service must be provided for this group of stakeholder to keep them satisfied. Projects prototypes must be presented to them and their feedbacks must be taken into consideration during implementation of the source code. Software testers will be required to work closely with them so that all defects can be identified and design can be enhanced, and improve performance and usability.

Page 8 of 28

Project Document

SS12/4B

4. Development Methodology
4.1 RUP (Rational Unified Process)
For this project, Statistical Database, we have decided to adopt a methodology that is highly flexible and it would benefit both developers and the stakeholders. Rational Unified Process (RUP). RUP has advantages that are suitable for this project compared to other Software Process Modeling such as Waterfall and Spiral Model as shown: Ability to modify project specifications according to the changing requirements of customer regardless of the current project stage Project risk is kept to the minimum Documentation of the project is highly required. That will keep us on cue with the project requirements mentioned by the stakeholders Ensure smooth transition to each phrase to the project Helps to ensure that there is quality control on all phrases

Inception Phase In this phase, the primary goal is to establish the project scope. To fully utilize each member, the roles of our team mates must be decided based on individuals skills. All members will be tasked to do the following tasks based on their roles: An identification of objectives for the assignment Establishment of project scope Main end goal of project Identify alternatives to mitigate risk Documentation inclusive of core project requirements, key function requirements, possible constraints, illustrations of use cases Page 9 of 28

Project Document

SS12/4B

Project implementation plan Overall constraints Cost and schedule Milestone identified, (Life-cycle Objective), mainly an understanding of requirements of the project which will be supported by evident use of use cases

Based on the above findings, a detailed plan will be made to guide us on how the development of project will take shape. However, many details are still raw. In the real world, the project can still be cancelled if it is not feasible as not much work has been done. For this final year project, some of the main deliverables for the inception phrase will be the members profile, project proposal, project website, initial project documents and initial preliminary requirement specification.

Elaboration Phase In this phase, the primary goal is to look into the project scope in greater details. It is the most crucial of the 4 phases as it is necessary to clarify all doubts and understand the project fully before further development. Project will get the basic architecture and risks will be analyzed. The blueprint for the development effort to continue is provided. The blueprint consists of the following: Elaboration of scope Development of project plan Identify and eliminate the elements that are identifier to be of the highest risk Specifics of architecture, requirements and plans are being researched and stabilized Usage scenarios and use cases (80%) Prototyping the product before moving to construction phase Find ways to greatly reduce all risks Note down all uncertainties Milestone identified, (Life-cycle Architecture), mainly detailed system objectives and possible resolutions to major risks that have been identified At the end of this phrase, a decision on which approach to use must be decided based on key factors such as effectiveness, efficiency, risks, proficiency of group members and comparison with other approaches. Any changes made after this will be costly and difficult to make because these changes might be made half way through actual development, in which many different parts of the system are interrelated. In the real world, we must take into consideration the budget of the project and make agreement with all stakeholders before moving to the construction phase. For this final year project, some of the main deliverables for the elaboration phrase will be the final version of project document, final version of system requirement specifications, preliminary technical design manual and project prototype. Page 10 of 28

Project Document

SS12/4B

Construction Phase In this phase, actual development of the product will be done. The project development will be heavily based on the blueprint concluded from the previous phase. Flows built in the elaboration phase will be further enhanced. Architecture will not be worried, focused instead on delivering the highest value solution possible. Several iterations of implementing and validating the system are being carried out concurrently. Main activities of the development process consist of: Set targets and schedules Development and integration of application features All features are tested thoroughly Emphasis on management of resources and optimization to reduce costs and increase quality Breaking up the development into several iterations Constant evaluation on the approach Extensive testing on each functionalities Integration of system to different platforms (if applicable) Completion of development of application components and testing of functional requirements Finalized version of User Manuals or ReadMe's are provided to guide users in using the system Milestone identified, (Initial Operational Capability), mainly application is ready for operation, usually known as beta release before actual development on a huge scale

At the end of the construction phase, the program should be able to be used by a small group of end users. For this final year project, some of the main deliverables for the construction phrase will be the system test plan, progress report, user manual.

Page 11 of 28

Project Document

SS12/4B

Transition Phase In this phase, the system is moved to the user environment. Activities consist of: Beta and integration testing Checking product meets end user requirements Deliver product to stakeholder Training personal in utilizing the system Validation of system against operational needs Milestone identified , (Product Release), mainly checking and making sure that objectives are met and determining is another development cycle is necessary For this final year project, some of the main deliverables for the transition phase will be the final result of all the system tests, product and presentation. In comparison, inception and elaboration phase belongs to the genre of developing intellectual property (E.g. proposed ideas, resources needed) and the construction and transition phase belongs to the genre of deploying and management of the product. Through the use of RUP, we will be approaching the project with a clear understanding of the needs of the project. A balance will be kept between project requirements and project risk. The project will be delivered on time with quality.

Page 12 of 28

Project Document

SS12/4B

4.2 Iteration Plan


(Inception phrase) First iteration: Research on the topic and produce a literature review. Create a project website. Identify team members roles and responsibilities. Second iteration: Determine scope and objective of the system. Identify the stakeholders. Enforce on requirements gathering. Third iteration: Understand the systems functionalities. Identify the algorithm and interfaces functional, non-functional and security. Design initial use cases and risk list. Produce preliminary requirement specification and project document. (Elaboration phrase) First iteration: Design case diagram, class diagram, sequence diagram, activity flow diagram. Produce architecture design, database design, and system design. Update project plan, website, use cases. Second iteration: Implementation of design. Develop prototype with basic functionalities. Produce preliminary technical documents, system requirements specifications, and technical design manual. Conduct unit testing and user acceptance test. Third iteration: Demonstrate prototypes. Submit Preliminary Project Documents. (Construction phrase) First iteration: Develop the product. Update technical design documents. Produce system test plan. Page 13 of 28

Project Document

SS12/4B

Second iteration: Conduct integration test. Update technical documentation and user manual. Produce user manual-draft and test summary. (Transition phrase) First iteration: Conduct integration test. Produce user manual. Preparation of demonstration and project presentation. Second iteration: Present and demonstrate the final product to the panel of supervisors and assessor. Produce final project documentations, final functional product demonstration.

Page 14 of 28

Project Document

SS12/4B

4.3 Project Schedule


RUP Phrase Deliverables From: Iteration(Inception) Project Briefing Project Proposal Literature Review Project Website Identify roles and responsibilities Requirement Gathering Initial Use Cases and Risk list Project Document Requirement Specification Case Diagram Iteration(Elaboration) Class Diagram Sequence Diagram Activity Flow Diagram System Design Architectural Design Database Design Preliminary Project Document Technical Design Manual System Prototype Iteration (Construction) Update Technical Design System Test Plan Design Implementation Integration Test Test Summary Iteration (Transition) Final Project Documentation Fully Functional Product 20/10/2012 20/10/2012 21/10/2012 21/10/2012 03/11/2012 03/11/2012 04/11/2012 07/11/2012 23/11/2012 23/11/2012 07/12/2012 12/12/2012 12/12/2012 12/12/2012 12/12/2012 12/12/2012 12/12/2012 12/12/2012 07/12/2012 18/12/2012 18/12/2012 30/12/2012 30/12/2012 05/01/2013 13/01/2013 24/01/2013 24/01/2013 10/02/2013 10/02/2013 10/02/2013 Completion Date To: 14/12/2012 20/10/2012 10/11/2012 24/10/2012 03/11/2012 03/11/2012 07/11/2012 14/11/2012 14/12/2012 11/12/2012 11/12/2012 29/12/2012 18/12/2012 18/12/2012 18/12/2012 18/12/2012 18/12/2012 18/12/2012 22/12/2012 24/12/2012 29/12/2012 09/02/2013 04/01/2013 12/01/2013 23/01/2013 01/02/2013 09/02/2013 02/03/2013 25/02/2013 30/02/2013

Presentation of Product

02/03/2013

02/03/2013

Page 15 of 28

Project Document

SS12/4B

The delay in the deliverables are due to several circumstances as we are taking 2 modules in concurrent with the FYP Inception Phase and the deliverables are due quite close to our final exam on 29 November and 6 December 2012, which we had to prepare for it and right after the exam period two of our team member Khoo JunXiang and Goh Kheng Siang have to commit themselves to national service involving in the reservist from 9-Dec-2012 to 14-Dec-2012. Thus, the team is short-handed however the team manages to finish the Requirement Specification and Project Document on 13th December and it is finalized on 14th December 2012. This causes other deliverables to be delayed but we are confident to be able to meet the preliminary project documents deadline on 22 Dec 2012 after carefully re-planning the project schedule and timeline as shown in this section. Team members are passionate and committed to fulfill all deliverables in phrase one before the deadline 22 Dec 2012.

Page 16 of 28

Project Document

SS12/4B

4.4 Project Timeline


Activity Proposal Due Date Inception Phase FORMING THE TEAM, SET UP PROJECT WEBSITE - Form project team, - Identify roles & responsibilities - Create project website - Do literature review REQUIREMENT -Systems functionalities -Initial Use Cases and Risk list - Test Plan - Algorithms and interfaces( functional, non-functional, security) - Project Document (Preliminary Requirement Specification) Elaboration Phase ANALYZE AND DESIGN - Case Diagram - Class Diagrams - Sequence Diagrams - Activity Flow Diagrams - Architecture Design - Database Design - Produce System Design - Update Project Plan - Update Website - Update Use Cases IMPLEMENTATION - Starts development - Design Implementation - Develop prototype with basic functionalities 1-2 27/10 3- 5 17/11 WEEK 6-7 8-9 1/12 15/12 10-11 29/12 12-14 19/1 15-17 9/2 18-19 23/2 20 2/3

Page 17 of 28

Project Document

SS12/4B

- Preliminary Project Document (SRS, Technical Design Manual) - Unit Testing - User Acceptance Test TERM 1 REVIEW - Demonstrate prototypes - Submit Preliminary Project Documents (Project Document, SRS, Technical Design Manual, Project Website) Construction Phase IMPLEMENTATION - Start implementation of all functions -Unit Testing - Update Technical Design and documents with further development - System Test Plan - Progress Report( Minutes of Meeting and Project Diary) Transition Phase TESTING - Integration Test - Produce User Manual PREPARATION OF DEMONSTRATION & PRESENTATION OF PROJECT - Wrap up development and prepare project presentation - Present to supervisor PROJECT PRESENTATION -Team demonstration to panel of supervisors and assessor

Page 18 of 28

Project Document

SS12/4B

5. Project Team
5.1 Organization Chart

Feedbacks provided by project supervisor and assessor are taken much into consideration. Our project team is committed to work with each other as well as the supervisor and assessor to develop a database inference protection engine that provides high level of quality assurance.

Page 19 of 28

Project Document

SS12/4B

5.2 Committee Structure

Each member will also take out different roles. Manpower will be fully maximized so as to come out with the best solution on different areas of development. However, each member will still provide more focus on their main roles.

Page 20 of 28

Project Document

SS12/4B

5.3 Team Structure


Name Khoo Jun Xiang

Responsibilities Planning and managing of the project Involve in the designing of DB-Wrapper system Involve in the implementation of the system Involve in the designing of the DB-Wrapper system Involve in the implementation the system Involve in the integration the system Involve in the designing of the database system Involve in the designing of the test cases Involve in the testing of the system Involve in the administrating of the project development Involve in the designing the system

Low Jia Hui

Goh Kheng Siang Joel

Stephen Ang

Lim Sing Hui

Involve in the documentation of the project development Involve in the designing of the test cases

Table above provides a main overview of the responsibilities of each member.

Page 21 of 28

Project Document

SS12/4B

5.4 Strength and Weakness


Each members of the team has different roles to play. Each role will be in charge of different aspect of the project. Each member need to deliver the artifacts for aspect that he is responsible for. Realistically, every member will also contribute to other aspects of the project but will only be more focus on those that they are in charge of. To ensure the success of the team, it is imperative that we understand each other's strength and weaknesses. Through that understanding, we are able to avoid assigning members to areas which they are unfamiliar with. Each member wrote about their strength and weaknesses. Strength
Khoo Jun Xiang - Took advance database module - Enjoy working on programming based assignments - Competent in java, C and C++

Weakness
- Poor memory skills - Weak in writing skills - Impatience

Ang Wen Can Stephen

- Knowledge in Database and SQL - Documentation and minutes - Listens actively - Knowledge in Database and SQL - Fast Learner - Exhibits flexibility - Knowledge in Database and SQL - Documentation and minutes - Commitment to team - Works as a problem solver - Familiar in UML designs - Focus and analytical

- Programming languages

Goh Kheng Siang Joel

- Fluency in English - Needs great motivation from team mates. - Overly meticulous - Programming languages

Lim Sing Hui

Low Jia Hui

- Needs more time in documentation

Page 22 of 28

Project Document

SS12/4B

6. Project Website
The objective of having a website is to provide a platform for our stakeholders to keep in touch with our progress. This can be achieved through proper documentation and regular updating of our blog. Stakeholders are able to view these documentations and inform us of any changes. Our team chose to have our Project Website in a blog spot. The URL of our website is http://db-engine.blogspot.sg/.

6.1 FYP Home Page


The FYP page contains updates of our project which includes post introducing, Statistical Database and Inference Attack and lastly our product DB-Wrapper. It also consists of a brochure and its download link for further advertising purpose.

Page 23 of 28

Project Document

SS12/4B

6.2 About Us
The About Us page contains roles of each individual member.

Page 24 of 28

Project Document

SS12/4B

6.3 Link
It contains our project documents such as Minutes of Group Meeting, Project Proposal, Project Documentation, etc.

Page 25 of 28

Project Document

SS12/4B

Upon clicking one of the links, the embedded document will be displayed in scribe as shown:

Page 26 of 28

Project Document

SS12/4B

7. Control Records
The following section is essential to our project. Our product, DB-Wrapper is pieced together by each of the following documents. These are all project deliverables required for the project. All the documents are uploaded to SCRIBD so that they can be shared on our website. Link to all documents can be found in: http://db-engine.blogspot.sg/p/links.html

7.1 Project Proposal / Pitch Document


This document states the initial planning we have for our Product. It contains timeline of the product. Link to current version: http://www.scribd.com/doc/118285069/DSS-12-S4-03-ProjectProposal Document version: v1.1 Last Updated: 27 December 2012

7.2 Requirement Specification / Technical Design


This document states the requirements of our Product by our stakeholders. Link to current version: http://www.scribd.com/doc/118285079/DSS-12-S4-03RequirementSpecification Document version: v1.0 Last Updated: 27 December 2012

7.3 Design Specification / Art Design Document


This document shows how our product, DB-Wrapper, would look like. It contains images of DBWrapper. Link to current version: http://www.scribd.com/doc/118285091/DSS-12-S4-03-DesignSpecification Document version: v1.3 Last Updated: 27 December 2012

7.4 User Manual / Game Manual


This document states how DB-Wrapper functions. It helps to educate stakeholders and clients on how to fully utilize DB-Wrapper. Link to current version: http://www.scribd.com/doc/118285128/DSS-12-S4-03-User-Manual Document version: Preliminary (DRAFT) Last Updated: 27 December 2012

7.5 Test Plan


This document states the testing done by us during the construction phase of DB-Wrapper. Link to current version: Template Only Document version: NIL Last Updated: NIL Page 27 of 28

Project Document

SS12/4B

7.6 Risk List


This document states the risk we might encounter doing the course of developing DB-Wrapper Link to current version: Template Only Document version: NIL Last Updated: NIL Note Those documents with no link are stated as Template Only. The reason is because the document has yet to be created. Link and reference for those documents will be updated once they are created.

8. Appendix
NIL

Page 28 of 28

Anda mungkin juga menyukai