Vous êtes sur la page 1sur 26

SOFTWARE DESIGN DESCRIPTION (SDD)

Online Secure Document Sharing and Management System Team 41

Team Members
Emre Genco YAKAR mit Caferi Elif Serim Hilmi Emre LKER

Acquirer: Dr. zlem Albayrak Consultant: Hamdi Murat YILDIRIM

Change History Table


Project Name Online Secure Document Sharing and Management System Version 1.0 Person Responsible Emre Genco YAKAR mit CAFER Elif SERM Hilmi Emre LKER Date 24.04.2011 Changes Team 41 SDD.doc was created

Project Name Online Secure Document Sharing and Management System

Version 2.0

Person Responsible Emre Genco YAKAR mit CAFER Elif SERM Hilmi Emre LKER

Date 05.05.2011

Changes Team 41 SDD.doc was created

ii

Table of Contents
Change History Table................................................................................................................ii Table of Contents......................................................................................................................iii List of Figures...........................................................................................................................iv List of Tables.............................................................................................................................v 1 Introduction..............................................................................................................................1 1.1 Overview...........................................................................................................................1 1.2 References.........................................................................................................................1 1.3 Definitions and Acronyms................................................................................................1 2 Design Considerations.............................................................................................................1 2.1 Assumptions......................................................................................................................1 2.2 Constraints........................................................................................................................2 2.3 Design Methodology.........................................................................................................3 3 System Overview.....................................................................................................................3 4 ..................................................................................................................................................5 5 System Design..........................................................................................................................5 5.1 Design Goals.....................................................................................................................5 5.2 System Decomposition.....................................................................................................6 5.3 Subsystems Mapping........................................................................................................6 5.4 Data Management.............................................................................................................7 5.5 Security Management.......................................................................................................7 5.6 Control Flow.....................................................................................................................8 5.7 Boundary Conditions........................................................................................................8 6 Object Design ..........................................................................................................................9 6.1 OSDSMS System Package................................................................................................9 6.1.1 Package Description...................................................................................................9 6.1.2 Design Class Diagram ...............................................................................................9 6.2 User Package..................................................................................................................10 6.2.1 Package Description.................................................................................................10 6.2.2 Design Class Diagram .............................................................................................11 6.2.3 Sequence Diagram(s) and Mock-up Screens...........................................................11 6.3 Database Package............................................................................................................20 6.3.1 Package Description.................................................................................................20 7 Traceability Matrix................................................................................................................20

iii

List of Figures
Figure 1 Use Case Diagram of Manage Document Operations..................................................4 Figure 2 Use Case Diagram for member and admin operations.................................................5 Figure 3 OSDSMS Package Diagram.........................................................................................6 Figure 4 OSDSMS Deployment Diagram..................................................................................7 Figure 5 System Class Diagram..................................................................................................9 Figure 6 User Interface Class Diagram.....................................................................................11 Figure 7 Share Document Mock-up Screen 1...........................................................................12 Figure 8 Share Document Mock-up Screen 2...........................................................................13 Figure 9 Share Document Mock-up Screen 3...........................................................................14 Figure 10 Share Document Mock-up Screen 4.........................................................................14 Figure 11 Share Document Mock-up Screen 5.........................................................................15 Figure 12 Share Document Sequence Diagram........................................................................16 Figure 13 Download Document Mock-up Screen 1.................................................................17 Figure 14 Download Document Mock-up Screen 2.................................................................18 Figure 15 Download Document Mock-up Screen 3.................................................................18 Figure 16 Download Document Mock-up Screen 4.................................................................19 Figure 17 Download Document Sequence Diagram.................................................................20

iv

List of Tables
Table 1 Traceability Matrix......................................................................................................21

1 Introduction
1.1 Overview
The purpose of the Software Design Description (SDD) is to explain how the implementation will be done through the requirements that analyzed in the Software Requirements Specification (SRS) of Online Secure Document Sharing and Management System (OSDSMS). In this SDD, the design details of OSDSMS such as design model, system overview and object design are provided to guide the people who are responsible for the development, design, and implementation of OSDSMS. The intended audiences of this document are; all of the project members of Team 41,tester,designer,developers.

1.2 References
IEEE Std 1016-1998 <IEEE_Std_1016_1998_IEEE_recommended_practice_for_software_req.pdf> Team-41 Initial Plan CTIS359 Lecture Notes Software Requirements Specification. Albayrak, Dr. zlem, < http://www.bilkent.edu.tr/~ozlemal/> http://en.wikipedia.org/wiki/software_requirements_specification<21.04.2011> UML Sequence Diagrams, <http://www.agilemodeling.com/artifacts/sequenceDiagram.htm><21.04.2011> Use-case, < http://www.usecase.org/> UML 2 Activity Diagram, <http://www.agilemodeling.com/artifacts/activityDiagram.htm><21.04.2011>

1.3 Definitions and Acronyms


OSDSMS: Online Secure Document Sharing and Management System GUI : Graphical User Interface. SRS: Software Requirements Specification. CTIS: Computer Technology and Information System. DB : Database. SW: Software. UML: Unified Modeling Language. SRS: Software Requirements Specification SDD : Software Design Document SPMP : Software Project Management Plan SVN : Subversion (Version Control System)

2 Design Considerations
2.1 Assumptions
The project will be planned with the following constraints: Team members and customer will meet regularly during the project.

Additional requests of the customer which is related to the design part shall be integrated into project.

By the help of the SVN (Version Control System), project consultant and customer shall give feedback to committed files of project.

To create the system, we will use MS Visual Studio 2008 (ASP.NET) as a development Environment.

To create the system, we will use MS SQL Server 2008 Express Edition as a Database management System.

To create models we will use Microsoft Office Visio.

Project members will pass CTIS 459 course in order to sustain development of the system.

Users internet connection should be more than 512 kbps or more.

2.2 Constraints
The project will be planned with the following constraints:

OSDSMS works on a system which consists of:

Pentium4 1.5 GHZ processor or better 1 GB RAM


512 kbps Internet or more Connection or better.

IE 6.0 or better.

The usage rights of deliverables belong to CTIS Department. Deliverables must be submitted in exact dates.

2.3 Design Methodology


During the project, Object Oriented Approach and Technique will be used. OSDSMS SW will be implemented via Microsoft Visual Studio 8.0. UML will be used for drawing the Design and Development diagrams. Class diagrams of the projects are created by using Microsoft Visio because easy to use and less capacity for the team members computers. DB will be created by using the class diagrams and its environment will be MS SQL Server 2008 Express Edition. Ajax web development technique will be used on the client-side in order to create interactive web applications.

3 System Overview
OSDSMS is an online and secure document sharing and management system which allows secure and efficient document distribution and sharing between all system users. It provides storage, sharing and security capabilities such as message privacy, integrity and authenticity with the help of cryptographic algorithms and related protocols. System have different types o users and only authorized users can access specific documents and produce digital signatures for them and also can share with other users. There will be two types of users; one is administrator and the others are members. Administrator will give some access rights for documents to the members. Administrators will also verify member registrations. Members will manage their documents with different activities. They can upload documents to the system, share documents with other members, download shared documents from the system and delete their documents from the system. They can also send emails to other users.

Figure 1 Use Case Diagram of Manage Document Operations

4
Figure 2 Use Case Diagram for member and admin operations

5 System Design
Systems design is the process of defining the architecture, components, modules, interfaces, and data for a system to satisfy specified requirements. The objectives of the design are practicality, efficiency, cost, flexibility, security system design, physical designing and logical designing. The logical design of a system pertains to an abstract representation of the data flows, inputs and outputs of the system and the physical design relates to the actual input and output processes of the system.

5.1 Design Goals


OSDSMS shall be available 7/24, efficient on performance, maintainable, secure and usability.

Ease of use: The System includes user-friendly graphical interfaces. Each modules and components integrated in the system is going to be comprehensible by all type of users that is why it is not required to spend so much time to adapt the system.

Reusability: The infrastructure of system is generic software which performs much different type of tasks but it is not specifically designed one type of module. Therefore It makes system shall enable to make change on requirements and adding new modules during the development of software.

5.2 System Decomposition


System decomposition divides to the system to the subsystems. It causes the low complexity for the system and helps to the developers during to the implementation.

Figure 3 OSDSMS Package Diagram

5.3 Subsystems Mapping


OSDSMS will be a web based application. Our system will be running on servers. Preaccounting sub-system is desktop application that does not required server. While

implementing, a dummy database will be used to store usernames and passwords for employees but a method body will be integrated by OSDSMS to link the user directory which is already running to our application.

Figure 4 OSDSMS Deployment Diagram

5.4 Data Management


OSDSMS project will use MySql 5.1 database engine for storing data. To make OSDSMS more maintainable, database will be centralized. To prevent information loss, our database daily back-up will be taken automatically. When the administrator makes some changes such as add document, delete document, update document, it will be saved on database directly. Since using common attributes in OSDSMS data set, relational database will be used to reach any columns easily.

5.5 Security Management


There are 3 rules to ensure the safety of OSDSMS system. These are;

Encryption: All user passwords and usernames will be will be stored as encrypted in related database. In addition to this, we will use SSL (Secure Sockets Layer) 3.0 to encrypt all data transfer.

SQL Injection: Users are not allowed to do any interaction with the system such as add product or delete product. To provide this, SQL injection will be checked by filter the every single input to text fields or text areas. If user tries to do SQL injection, system will ban that user.

Authorization System: As OSDSMS is web based system, if only user name and password match user can login the system it will have authorization system so user cannot do anything within the system. Everyone can see the home page and search documents within the site. In addition to this, authorization will be provided by session variables. Every single page will check if the user has right to see this page or not.

5.6 Control Flow


In OSDSMS application, user sends the request to the server using the web browser, and the web server waits-for the request from client. However, for login authentications, software will send requests to another server. After the login requests or any typical action requests, the web server creates the threads for each action coming from the browsers. By using threads, the server responds to the browser simultaneously. These types of actions will require using event-driven control flow pattern.

5.7 Boundary Conditions


OSDSMS is web-based system so by the help of the I.E 6.0 or higher user can start the system and then user must login the system with username and password. After user successfully login the system, system will set a session variable to that user which helps us during tracking users. OSDSMS will also store users IP address and date/time of establish connection. When user logouts by clicking on logout button, system will destroy the session key. During the run time, system can have some problems with database connectivity, SQL statement etc. We will show these exceptions to user with appropriate messages. We will store all messages and error code in a file.

6 Object Design
Object design is the process of constructing the systems objects and adding the details of software requirements which is defined in the problem domain to the object design diagrams. It also redefines the object model before implementation.

6.1 OSDSMS System Package


6.1.1 Package Description
OSDMS Package is the main package of the system. It performs main functionalities of the system which are: Share Document Download Document Upload Document Delete Document Verify Registration Send Email Register

6.1.2 Design Class Diagram

Figure 5 System Class Diagram

6.2 User Package


6.2.1 Package Description
User package supports interfaces for the interaction of the system with the all users. Administrator and the members can perform all user activities by the help of the interfaces that are included in user package. These are: Main Screen Login Screen Registration Screen History Screen Share Document Screen Share Info Document Screen Receive Document Screen Upload Document Screen Delete Document Screen Download Document Screen

10

6.2.2 Design Class Diagram

Figure 6 User Interface Class Diagram

6.2.3 Sequence Diagram(s) and Mock-up Screens

11

Figure 7 Share Document Mock-up Screen 1

12

Figure 8 Share Document Mock-up Screen 2

13

Figure 9 Share Document Mock-up Screen 3

Figure 10 Share Document Mock-up Screen 4

14

Figure 11 Share Document Mock-up Screen 5

15

Figure 12 Share Document Sequence Diagram

16

Figure 13 Download Document Mock-up Screen 1

17

Figure 14 Download Document Mock-up Screen 2

Figure 15 Download Document Mock-up Screen 3

18

Figure 16 Download Document Mock-up Screen 4

19

Figure 17 Download Document Sequence Diagram

6.3 Database Package


6.3.1 Package Description
Database package have interfaces with OSDSMS package. All main functionalities which are performed by OSDSMS package will have an effect on the system database and database package supports some query interfaces for these functionalities.

7 Traceability Matrix
ReqNumbers 1 2 3 4 5 7 8 Functional Requirement Web browser Online registration X.509 certificate Log On Log Out Upload Document View Identification and Information SDD Package/Class User Package User Package / User/Member User Package/User/Registration Page Database Package OSDSMS Package/ X.509Certificate/ OSDSMS Package/ Certificate User Package / User/Member User Package/User/Login page Database Package User Package / User/Member User Package/User/Login page OSDSMS Package/Document/ User Package /ShareDocumentPage User Package /UploadDocumentPage OSDSMS Package/Document/ OSDSMS Package/User/

20

View History

10 11 12 13 14 15 16 17 18 19 20 21 22-23 24

Download Document Share Document Create Digital Signature Verify Digital Signatures Verify Registration Encription Methods User Encription Methods HTTPS protocol Create and keep signatures Create and keep signatures for server activities Sign digitally Create and Send Notifications Proof of receipt- proof of origin Language Table 1 Traceability Matrix

Database Package OSDSMS Package/Document/ OSDSMS Package/User/ User Package /HistoryPage Database Package OSDSMS Package/Document/ User Package /User/ReceivedDocumentPage User Package /User/DownloadDocumentPage OSDSMS Package/Document/ User Package /ShareDocumentPage OSDSMS Package/ X.509Certificate/ OSDSMS Package/ Certificate Database Package OSDSMS Package/ X.509Certificate/ OSDSMS Package/ Certificate User Package / User/Admin Database Package OSDSMS Package/ X.509Certificate/ OSDSMS Package/ Certificate OSDSMS Package/ X.509Certificate/ OSDSMS Package/ Certificate OSDSMS Package/ Certificate OSDSMS Package/ X.509Certificate/ OSDSMS Package/ Certificate OSDSMS Package/ X.509Certificate/ OSDSMS Package/ Certificate Database Package User Package / User/Admin OSDSMS Package/ X.509Certificate/ OSDSMS Package/ Certificate OSDSMS Package OSDSMS Package/ X.509Certificate/ OSDSMS Package/ Certificate User Package

21

Vous aimerez peut-être aussi