The Islamia University of Bahawalpur
Department of Computer Science
SOFTWARE DESIGN DESCRIPTION
(SDD DOCUMENT)
for
<PROJECT TITLE>
Version 1.0
By
Student Name
Roll No
Session Spring/Fall 20xx – 20xx
Supervisor
Supervisor Name
Bachelor of Science in Computer Science
Table of Contents
Introduction.........................................................................................................................................................1
Design methodology and software process model............................................................................................1
System overview..................................................................................................................................................1
Design models [along with descriptions]...........................................................................................................1
Data design...........................................................................................................................................................2
Algorithm & Implementation............................................................................................................................2
Software requirements traceability matrix......................................................................................................2
Human interface design......................................................................................................................................3
Appendix I...........................................................................................................................................................3
Revision History
Name Date Reason for changes Version
Application Evaluation History
Comments (by committee) Action Taken
*include the ones given at scope time both in doc and
presentation
Supervised by
<Supervisor’s Name>
Signature
Introduction
Architectural Design
The system follows a modular approach with key components such as user authentication, ticket
booking, payment processing, and notification services. The modules interact with each other to ensure a
seamless user experience. The design may follow a client-server or multi-tiered architecture for
scalability and efficiency. A diagram would show subsystems like User Interface, Booking System,
Payment Gateway, and Notification Service.
Design methodology and software process model
Data Design
Data Dictionary
User
o Type: Object
o Attributes: UserID, Name, Email, Phone
o Methods: register(), login()
Ticket
o Type: Object
o Attributes: TicketID, EventID, Price, AvailabilityStatus
o Methods: checkAvailability(), reserve()
Booking
o Type: Object
o Attributes: BookingID, UserID, TicketID, Date, Status
o Methods: createBooking(), cancelBooking()
Payment
o Type: Object
o Attributes: PaymentID, BookingID, Amount, PaymentMethod
o Methods: processPayment(), refund()
Performance
PER-1: 95% of booking transactions shall be processed within 3 seconds.
PER-2: User requests for ticket availability shall return results within 2 seconds.
Business Rules
BR-1: Ticket bookings must be completed within 30 minutes of selecting a ticket.
BR-2: Users must have a valid payment method before booking tickets.
This approach outlines the design, data management, and system performance for the ticket management system.
Let me know if you need more details on any specific section!
System Overview
The Ticket Management System (TMS) is a web-based application designed to allow users to book,
manage, and track tickets for various events. It provides a seamless experience for customers to explore
available events, select tickets, and make payments while ensuring administrative control for event
organizers. The system supports different roles including users (customers), administrators, and event
organizers.
Design models [along with descriptions]
The applicable models may include:
Class Diagram
Sequence Diagram
State Transition Diagram
Data Flow Diagram
Schematic diagram (Hardware projects only)
Timing diagram (Hardware projects
only)
Data Design
The ticket management system allows users to book, manage, and track tickets for various events or services. The
system handles user requests, verifies ticket availability, processes bookings, manages payments, and provides
notifications about bookings. It integrates with databases for storing user data, booking details, and ticket
availability.
Data dictionary
Alphabetically list the system entities or major data along with their types and descriptions. If
you provided a functional description, list all the functions and function parameters. If
you provided an OO description, list the objects and its attributes, methods
and method parameters.
Algorithm & Implementation
In this section, we take a closer look at what each component does in a more systematic way.
Provide a summary of your algorithm for each function listed in procedural description
language (PDL) or pseudo code.
If you gave an OO description, summarize each object member function for all the objects
listed in PDL or pseudo code. Describe any local data when necessary.
Software requirements traceability matrix
This section should contain a table that summarizes how each software requirement has been
met in this document. The tabular format permits one-to-one and one-to-many relationships
to be shown.
Table 7 Requirements Traceability Matrix
Req. Number Ref. Item Design Component Component Items
FR01 Class Diagram ClassName FunctionName(s)
OR
FR01 DFD DiagramNumber/Level FunctionName(s)
Human interface design
Describe the functionality of the system from the user‟s perspective. Explain
how the user will be able to use your system to complete all the expected features and the
feedback information that will be displayed for the user.
Screen images
Display screenshots showing the interface from the user‟s perspective. These can be hand-
drawn, or you can use an automated drawing tool. Just make them as accurate as possible.
(Graph paper works well.)
Screen objects and actions
A discussion of screen objects and actions associated with those objects
Appendix I
How to design using UML (OOP): For guidance please follow the instructions
mentioned in the link: http://agilemodeling.com/artifacts/
How and when to design ER diagrams: For guidance please follow the instructions
mentioned in the link:
http://people.inf.elte.hu/nikovits/DB2/Ullman_The_Complete_Book.pdf
Data flow diagrams: For guidance please follow the instructions mentioned in the link
and book:
o http://www.agilemodeling.com/artifacts/dataFlowDiagram.htm
o Software Engineering –A Practitioner‟s approach by Roger Pressman
Architecture diagram: For guidance please follow the instructions mentioned in the
link and book:
o Ian Sommerville – Software Engineering 9th Edition– Chapter 6