0% found this document useful (0 votes)
4 views

Software Engi. Assignment 7

Use case, class diagram etc for school of scse

Uploaded by

Shivam Yadav
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Software Engi. Assignment 7

Use case, class diagram etc for school of scse

Uploaded by

Shivam Yadav
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Name – Vinayak

SHIVAM kumar
YADAV
Admission No – 22scse1012800
22SCSE1012951
Sec – 27.

Design the Use case diagram, Class Diagram, Activity diagram, Sequence diagram,
Component diagram, Deployment Model for GU - SCSE.

To design the various UML diagrams (Use Case Diagram, Class Diagram, Activity Diagram,
Sequence Diagram, Component Diagram, and Deployment Model) for a GU - SCSE (Generic
University - School of Computer Science and Engineering), I’ll assume that this system
pertains to managing the core aspects of a university's computer science and engineering
department, such as student enrollments, course registrations, staff management, and academic
planning.

Here’s how we can break down and design each diagram based on a typical university system:

1. Use Case Diagram


A Use Case Diagram shows the interactions between the actors (users or systems) and the system itself,
outlining the system's major functionalities. For GU - SCSE, the main actors might include Students,
Faculty/Professors, Admin Staff, and System (i.e., for internal processes).

Use Case Diagram Elements:

• Actors:

o Student

o Faculty

o Admin

o System (Automated processes)

• Use Cases:

o Student:

▪ Register for Courses

▪ View Transcripts

▪ Submit Assignments

▪ View Timetable
▪ Apply for Leave

o Faculty:

▪ Manage Courses

▪ View Student Records

▪ Grade Assignments

▪ Create Timetable

▪ Assign Grades

o Admin:

▪ Manage Student Records

▪ Register Faculty

▪ Schedule Classes

▪ Manage Course Catalog

▪ Generate Reports

o System:

▪ Send Notifications

▪ Automatically Generate Timetable

Visualizing the Diagram:

+------------------------------------+

| |

| Student |

| |

+------------------------------------+

| Register for Courses |

| View Transcripts |

| Submit Assignments |

| View Timetable |

| Apply for Leave |

+-------------------------------------+

|
+--------------------+---------------------+

| |

+-------------------+ +---------------------+

| | | |

| Faculty | | Admin |

| | | |

+-------------------+ +---------------------+

| Manage Courses | | Manage Student |

| View Student | | Register Faculty |

| Grade Assignments | | Schedule Classes |

| Create Timetable | | Manage Course |

| Assign Grades | | Generate Reports |

+---------------------------+ +----------------------------+

| +--------------------------------------+

+------>| System |

| |

| Send Notifications |

| Auto-Generate Timetable |

+----------------------------------+

2. Class Diagram
A Class Diagram shows the structure of the system by defining its classes, attributes, methods, and
relationships.

Example Classes and Relationships:

• Student Class

o Attributes: studentId, name, email, enrollmentYear

o Methods: registerForCourse(), viewTranscript(), applyLeave()

• Course Class
o Attributes: courseCode, courseName, credits, schedule

o Methods: addStudent(), removeStudent(), updateSchedule()

• Faculty Class

o Attributes: facultyId, name, email, department

o Methods: createCourse(), gradeAssignment()

• Admin Class

o Attributes: adminId, name, email

o Methods: registerStudent(), manageFaculty()

• Timetable Class

o Attributes: schedule, roomNumber

o Methods: generateSchedule(), assignRoom()

• Grade Class

o Attributes: gradeId, studentId, courseCode, grade

o Methods: assignGrade()

Relationships:

• Student ↔ Course: Many-to-many (A student can enroll in multiple courses and vice versa)

• Faculty ↔ Course: One-to-many (A faculty member can teach many courses)

• Admin ↔ Student/Faculty: One-to-many (Admin can register/manage multiple


students/faculty)

• Grade ↔ Student/Course: One-to-many (Each student can receive grades for multiple courses)

Visualizing the Diagram:

+-----------------+ +-------------------+ +-------------------+


| Student | | Course | | Faculty |
+-----------------+ +-------------------+ +-------------------+
| - studentId | | - courseCode | | - facultyId |
| - name | | - courseName | | - name |
| - email | | - credits | | - department |
| - enrollmentYear| | - schedule | | - email |
+-----------------+ +-------------------+ +-------------------+
| +registerCourse()| | +addStudent() | | +createCourse() |
| +viewTranscript()| | +removeStudent() | | +gradeAssignment()|
| +applyLeave() | | +updateSchedule() | | |
+-----------------+ +-------------------+ +-------------------+
| | |
| * | 1..* | 1..*
| | |
| | |
+------------------+ +---------------------+ +------------------+
| Grade | | Admin | | Timetable |
+------------------+ +---------------------+ +------------------+
| - gradeId | | - adminId | | - schedule |
| - studentId | | - name | | - roomNumber |
| - courseCode | | - email | | +generateSchedule()|
| - grade | +---------------------+ | +assignRoom() |
+------------------+ | +registerStudent() | +------------------+
| +assignGrade() | | +manageFaculty() |
+------------------+ +---------------------+

3. Activity Diagram
An Activity Diagram represents the workflow of the system. Below is an example of a process like
"Student Registering for Courses."

Workflow:

1. Start

2. Student logs into the system

3. Student views available courses

4. Student selects course(s)

5. System checks prerequisites

6. If prerequisites are met, courses are added to the schedule

7. End

[Start] --> [Login to System] --> [View Courses] --> [Select Courses] --> [Check Prerequisites] --> [Add
Courses to Schedule] --> [End]

4. Sequence Diagram

A Sequence Diagram shows the interaction between objects over time. For example, consider the
sequence of actions when a Student registers for a course.

Sequence Steps:

1. The Student initiates the registration process.

2. The System authenticates the student.

3. The System queries available courses.

4. The Student selects courses.


5. The System verifies course prerequisites and confirms registration.

Student System CourseDB

| | |

|--Login()------> | |

| | |

|--ViewCourses()-->|---Query--->|

| | |

|--SelectCourse() |<-Available---|

| | Courses |

|--Register()----> | |

| | |

|--Confirm()----> | |

5. Component Diagram

A Component Diagram illustrates the organization and dependencies among software components. For
GU - SCSE, components might include Authentication System, Course Management System, Grading
System, Notification Service, and Database.

+-------------------+

| Authentication |

| System |

+-------------------+

+-------------------+ +-------------------+

| Course Management | <-------> | Database |

| System | | |
+-------------------+ +-------------------+

+-------------------+

| Grading System |

+-------------------+

+-------------------+

| Notification |

| Service |

6. Deployment Model

A Deployment Diagram shows the physical deployment of software on hardware. For GU - SCSE, typical
nodes might include Student Workstations, Faculty Workstations, Web Server, and Database Server.

+---------------------+ +------------------------+

| Student | | Web Server |

| Workstation | | (Application Server) |

| (Client) |<----->| (Servlets, Web App) |

+---------------------+ +------------------------+

+---------------------+ +------------------------+

| Faculty | | Database Server |

| Workstation | | (SQL Database) |

| (Client) |<----->| (SQL Server) |


+--------------------+ +------------------------+

You might also like