Software Design Description - CankayaUniversity/ceng-407-408-2020-2021-Mobile-School-Management-System GitHub Wiki

Software Design Description for MOBILE SCHOOL MANAGEMENT SYSTEM (MSMS)

You can access PDF file through this link : MSMS-SDD

Table Of Contents

  • 1.Introduction
  • 1.1 Purpose
  • 1.2 Scope
  • 1.3 Glossary
  • 1.4 Overview
  • 2.Design Considerations
  • 2.1 Approach
  • 2.2 Tools Used
  • 2.3 Constraints
  • 2.4 Assumptions and Dependencies
  • 3.Architecture
  • 3.1 Software Architecture
  • 3.2 Hardware Architecture
  • 4.Process Design
  • 4.1 Use Cases
  • 4.2 Sequence Diagrams
    1. Database Design

1 INTRODUCTION

In this documentation file, it is a documentation content that describes the parts of the project that cover the design and architectural goals of the project. Mobile School Management System's design and database includes operation diagrams.

1.1 Purpose

This document has been created to indicate details in the design part of Mobile School Management System Mobile School Management System (MSMS). At the same time, this document was created according to the IEEE 1016-2009. Those expected to use this system are the Mobile School Management System (MSMS)'s students, teachers, school management, school IT management and system management but school IT management and especially the system administrator will perform operations on the back, not the front of the application.

1.2 Scope

This SDD document contains general definitions and project features as content. It covers the architectural designs within the project and the content and design parts of these designs.these designs consist of process design, use case diagram, sequence diagram and database design. For those who study this content, project formation becomes more understandable and easy.

1.3 GLOSSARY

Abbreviation Meaning
MSMS Mobile School Management System
IEEE Institute of Electrical and Electronics Engineers
SDD Software Design Description
UML Unified Modeling Language
MSSQL Microsoft SQL Server
DB Database

1.4 Overview

This SDD is divided into five sections to provide target readers with a complete and comprehensible perception of the system. The first part is mostly about the scope and purpose of the document. The second part specifies design topics and consists of two parts. In the first section, design assumptions, dependencies, and constraints of the systems are defined. The second section provides design goals and guidelines for the reliability, availability, portability and extensibility of the system.In addition, the tools used for project design are explained. In the third section, the architectural design of the application and the detailed description of the modules are detailed. In the fourth section, this section covers what users can do and which users have access to what.Interaction diagrams detailing how operations are performed for each user type are available here.The sequence of interaction is shown visually using the vertical axis in the sequence diagram. In the fifth section,there is detailed information about the database design of the project.

2 DESIGN CONSIDERATIONS

2.1 Approach

While developing the project, we have decided to use MSSQL for creating and maintaining the database in future operations. It provides the data to be classified to where it belongs.It has a structure that is flexible for maintaining and inserting or deleting new data to database structure.

2.2 Tools Used

Microsoft Visual Studio 2019 Programing,testing,developing website
Microsoft SQL Server For Database Management
Microsoft Office Word Software Requirements Specifications
https://app.diagrams.net/ Diagrams, UML diagrams, Sequence Diagram

2.3 Constraints

2.3.1 Time

Ceng 407 project we have exactly a period to finish the documentation. To advance in this project, we will adopt the waterfall model and advance the project. As this method progresses step by step, we will make every feedback we receive without going to the previous step, and thus we will complete the general design templates of our project.

2.3.2 Performance

Performance is an important criterion for each software product. Since the MSMS project will be run by local customers in the web browser and is a multi-user process, users internet speeds and hardware-wise, RAM and CPU quality are factors that affect the performance.

2.4 Assumptions and Dependencies

In designing this project, we had to make some basic assumptions about software and hardware. Our program is designed to run on all operating systems. So it is enough to have any computer and internet connection to use a web browser

3 ARCHITECTURE

3.1 Software Architecture

The database will be used to contain the data of students,parents, teachers, school management, system management, school IT management, and will help to add new data or make changes to the data. More importantly our database will contribute to the functions that are defined for each user type to be used. Database is the cornerstone of our project that keeps all the necessary information in our system. We might call our architecture type the Repository Architecture Style.

software_arch

3.2 Hardware Architecture

We use the Client-Server model for our project. In the client-server architecture, when the client computer sends a request for data to the server through the internet, the server accepts the requested process and delivers the data packets requested back to the client.

hardware_arch

4. PROCESS DESIGN

In a project, process management is the cornerstone of the project. We used the waterfall model as it is always more effective to progress step by step in our project and facilitates the process management.

process_design

4.1 Use Cases

use_case

4.2 Sequence Diagrams

4.2.1 Student Diagram

student

4.2.2 Parent Diagram

parent

4.2.3 Teacher Diagram

teacher

4.2.4 School Management Diagram

school_management

4.2.5 School IT Manager / System Management ( Admin )

school_IT

5. DATABASE DESIGN

database