وصف المشروع

Software Analysis

Functional Requirements:

1.User :: Student:

a.User can sign up

i.Required: Name, Mail, Phone, Major, Grade, Age, Gender , photo

b.User can login

c.User can activate his account by email verifying

d.User can reset their password

e.User can change and update their info

i.Phone, Major, Grade, Age, photo

f.Users can show course details

i.Course name, Major, Grade, Subject, Level, Teacher, course rate, sessions, sessions duration, status, price, reviews

g.User can enroll in a course

h.User can pay course fees

i.User can see his paid bills and payments

j.User can exit with a refund

k.User can enroll in real course or a trial session

l.User can rate session

m.User must be notified with new sessions, quizzes, and exams in registered courses.

n.User can be notified with messages

o.User can send messages to the teacher who enrolled their courses

p.User can attend sessions

q.User can attend quizzes and get the result

r.User can attend exams and get the result

s.User can show their quizzes

t.User can show their exams

u.User can get certificates at the end of the course

v.User can show homework of session

w.User can upload answers of homework

x.User can chat with support

y.User can download material of course

z.User can ask and answer in FAQ

2.User :: Teacher:

a.User can sign up

i.Required: Name, Mail, Phone, Age, Gender , photo

ii.Required: Major, Grade, subject, Level, ex years

iii.Required: About, intro video

b.User can login

c.User can activate his account by email verifying

d.User can reset their password

e.User can change and update their info

i.Age. photo, Major, Grade, subject, Level, ex years, About, intro video

f.User can create and edit course info

i.Course name, Major, Grade, Subject, Level, session duration, status, price, description, schedule

g.User can show their course details and schedule

h.User can create and edit session info

i.Title, status, price, description, schedule

i.User can set and change their schedule Session-timetable

j.User can show session reviews

k.User can manage payments

i.Show: payment history, pending,

ii.Withdraw available payment

l.User must be notified of a new student enrollment, pending, available payment.

m.User can be notified with messages

n.User can send messages to students enrolled in his courses

o.User can Start the session

p.User can create questions bank and question be saved automatically and can explore them.

i.Subject - Unit - Lesson - Title - Notes

q.User can create, edit, schedule quiz and assign questions

r.User can create, edit, schedule exam and assign questions

s.User can evaluate exams and quizzes

t.User can show his quizzes with answers of students and model answer

u.User can show their exams with answers of students and model answer

v.User can assign homework for session

w.User can evaluate homework

x.User must put signatures for certificates

y.User can chat with support

z.User can upload material to class like pdf, videos, images with size limitation on google drive service

aa.User can ask and answer in FAQ

bb.Statistic on Exams and quizes

3.User :: parent:

a.User can sign up

b.User can login

c.User can activate his account by email verifying

d.User can reset password

e.User can change and update his info

f.Get notify with messages

g.Get notify with student sessions, quizzes and exams and results

h.Can pay course bill

4.User :: admin:

a.User can login using an authenticated account created by the manager account

b.User can activate his account by email verifying

c.User can reset their password

d.User can change and update their info

e.User can create and edit rolls for other users

f.User can assign roles to other users

g.User can lock other users' account

h.User can Send messages to all user

i.User can Notify all users with messages

j.User can send email to users

k.User can review teacher's CV and accept or reject

l.User can create and edit Curriculums

m.User can create and edit Grades

n.User can create and edit Level

o.User can access questions bank

p.User can view all schedules

q.User must be notified of new payments for teacher and student

r.User must be notified of new teacher registration

s.User must be notified with the refund action

t.User must be notified if other users need support

5.User :: Manager:

●User can login using an authenticated account

●User can create admin

●User can reset his password

●User can create and edit rolls for other users

●User can assign roles to other users

●User can lock other users' account

●User can Send messages to all user and also delete it

●User can Notify all users with messages

●User can send emails to users

●User can review the teacher's CV and accept or reject and review why was accepted or refused

●User can access questions bank

●User can view all schedules

●User must be notified of new payments for teacher and student

●User must be notified of new teacher registration

●User must be notified of the refund action

●User must be notified if other users need support

●User must be provided with a weekly and monthly report

●All active, deactivated, new Student number

●All active, deactivated, new Teacher number

●Refund

●Paid service

●Other expense

●Taxes & Gross income & ads income & Net income

●User must review all reports

Courses Schema:

IGCSE has gardes (10, 11, 12) each grade contains subjects (English, Biology, Math, Chemistry, physics humanities, Arabic, ICT) each subject contains Levels ( O, A, AS).

SAT has gardes (10, 11, 12) each grade contains subjects (English, Math, EST1 English, EST2 Biology, EST2 Math, EST2 Physics, EST2 Chemistry) .

TOEFL

IELTS

General English

Major schema

MajorGradeSubjectLevel

IGCSE10

11

12English

Biology

Math

Chemistry

physics humanities

Arabic

ICTO

A

AS

SAT10

11

12English

Math

EST1 English

EST2 Biology

EST2 Math

EST2 Physics

EST2 ChemistryNull

TOEFLNullReading

Writing

Speaking

ListeningNull

IELTSNullReading

Writing

Speaking

ListeningNull

General EnglishNullReading

Writing

Speaking

ListeningNull

Manager DashBoard Reports:

Income Finance details:

Total gross and net income, pending.

Payment Details with filter on type, status and date with summary

Students:

Number of New Students Today,week,month

Number of paid Students Today,week,month

Number of refund students Today,week,month

Teacher:

Number of New Teacher Today,week,month

Number of pending Teacher Today,week,month

Number of paid Teacher Today,week,month

Courses:

Number of courses started Today,week,month

Number of session Today,week,month

Number of students attend sessions Today,week,month

Number of canceled sessions

Teacher Details

Course Details

Session Details

Student Details

Initial Design

Database :

1. Users Table:

- UserID (Primary Key)

- Name

- Email

- Phone

- Age

- Gender

- Photo

- Password

- Activation_Status

- Activation_date

- Role (Foreign Key to Roles Table)

2. Students Table:

- StudentID (Primary Key, Foreign Key to Users Table)

- Major

- Grade

3. Teachers Table:

- TeacherID (Primary Key, Foreign Key to Users Table)

- Major

- Grade

- Subject

- Experience_Years

- About

- Intro_Video_url

4. Parents Table:

- ParentID (Primary Key, Foreign Key to Users Table)

5. Admins Table:

- AdminID (Primary Key, Foreign Key to Users Table)

6. Managers Table:

- ManagerID (Primary Key, Foreign Key to Users Table)

7. Roles Table:

- RoleID (Primary Key)

- Role_Name

- Description

- Notes

8. Courses Table:

- CourseID (Primary Key)

- Course_Name

- Major

- Grade

- Subject

- Level

- TeacherID (Foreign Key to Teachers Table)

- Course_Rate *

- Session_Duration

- Status

- Price

- Number of sessions

Courses rate comment Table:

9. Enrollments Table:

- EnrollmentID (Primary Key)

- UserID (Foreign Key to Users Table)

- CourseID (Foreign Key to Courses Table)

- Enrollment_Type (Real Course or Trial Session)

- Date

10. Payments Table:

- PaymentID (Primary Key)

- UserID (Foreign Key to Users Table)

- itemID: CourseID (Foreign Key to Courses Table)

- Type course, exam, service, expense

- Amount

- Payment_Date

- Status

11. Messages Table:

- MessageID (Primary Key)

- SenderID (Foreign Key to Users Table)

- ReceiverID (Foreign Key to Users Table)

- Message_Content

- Timestamp

- Read_ststus

- Delete Flag

12. Sessions Table:

- SessionID (Primary Key)

- CourseID (Foreign Key to Courses Table)

- Title

- Status

- Price

- Description

- Schedule

13. Sessions Attendance Table:

- SessionID (Foreign Key to Session Table)

- CourseID (Foreign Key to Courses Table)

- StudentID (Foreign Key to Student Table)

- Date

- Status

14. Questions Bank Table:

- QuestionID (Primary Key)

- creatorID (Foreign Key to Teacher)

- creation_date

- question_type: written , mcq, matching

- major

- grade

- level

- Subject

- Unit

- Lesson

- Title

- Notes

- Question_Content

- choice1

- choice2

- choice3

- choice4

- part1

- part2

- Answer

- Timestamp

15. Quizzes Table:

- QuizID (Primary Key)

- SessionID (Foreign Key to Sessions Table)

- Schedule_date

16. Exams Table:

- ExamID (Primary Key)

- CourseID (Foreign Key to Sessions Table)

- creatorID (Foreign Key to Teacher Table)

- Schedule

- Questions

- Timestamp

17. Quizzes_exams Questions Table:

- ID (Primary Key)

- QuestionID (Foreign Key to Questions Table)

18. Quizzes_exams Questions student answer Table:

- ID (Primary Key)

- QuestionID (Foreign Key to Questions Table)

- studentID (Foreign Key to student Table)

- answer

- garde

- model answer

- Timestamp

19. Homework Table:

- HomeworkID (Primary Key)

- SessionID (Foreign Key to Sessions Table)

- Title

- Description

- Deadline

20. Homework Answers Table:

- AnswerID (Primary Key)

- UserID (Foreign Key to Users Table)

- HomeworkID (Foreign Key to Homework Table)

- Answer_Content

- Timestamp

21. Certificates Table:

- CertificateID (Primary Key)

- UserID (Foreign Key to Users Table)

- CourseID (Foreign Key to Courses Table)

- Date_Issued

22. FAQs Table:

- FAQID (Primary Key)

- session_id

- Question

- Answer

23. Support Chat Table:

- ChatID (Primary Key)

- UserID (Foreign Key to Users Table)

- Support_Team_MemberID (Foreign Key to Users Table)

- Message_Content

- Timestamp

24. Material Table:

- MaterialID (Primary Key)

- CourseID (Foreign Key to Courses Table) subject

- Material_Type

- Material_URL

- Upload_Date

- Num of downloads

25. Reviews Table:

- ReviewID (Primary Key)

- UserID (Foreign Key to Users Table)

- CourseID (Foreign Key to Courses Table)

- SessionID (Foreign Key to Session Table)

- Rating

- Review_Content

- Timestamp

26. Schedule Table:

- ScheduleID (Primary Key)

- TeacherID (Foreign Key to Teachers Table)

- SessionID (Foreign Key to Sessions Table)

- Date

- Start_Time

- End_Time

27. Notifications Table:

- Notification_id (Primary Key)

- reciverID (Foreign Key to Teachers Table)

- Date

- status

- content

Blogs

1. User Management:

- POST /api/signup (User sign up)

- POST /api/login (User login)

- POST /api/activate (Activate user account)

- POST /api/reset_password (Reset user password)

- PUT /api/user/:id (Update user info)

2. Course Management:

- GET /api/courses (Get course details)

- POST /api/enroll (Enroll in a course)

- POST /api/payments (Pay course fees)

- GET /api/payments/:userID (Get user's paid bills and payments)

- DELETE /api/enroll/:enrollmentID (Exit from a course with refund)

3. Session Management:

- GET /api/sessions/:userID (Get user's sessions)

- POST /api/sessions/:sessionID/rate (Rate a session)

4. Quiz and Exam Management:

- GET /api/quizzes/:userID (Get user's quizzes)

- GET /api/exams/:userID (Get user's exams)

- POST /api/quizzes/:quizID/submit (Submit quiz answers)

- POST /api/exams/:examID/submit (Submit exam answers)

5. Homework Management:

- GET /api/homework/:userID (Get user's homework)

- POST /api/homework/:homeworkID/submit (Submit homework answers)

6. Certificate Management:

- GET /api/certificates/:userID (Get user's certificates)

7. Message Management:

- GET /api/messages/:userID (Get user's messages)

- POST /api/messages (Send message)

9. Material Download:

- GET /api/materials/:courseID/download (Download course material)

10. FAQs Management:

- GET /api/faqs (Get FAQs)

- POST /api/faqs (Ask question)

- PUT /api/faqs/:faqID (Answer question)

11. Teacher Management:

- POST /api/teacher/signup (Teacher sign up)

- PUT /api/teacher/:id (Update teacher info)

- POST /api/teacher/courses (Create course)

- PUT /api/teacher/courses/:courseID (Update course info)

- DELETE /api/teacher/courses/:courseID (Delete course)

- POST /api/teacher/sessions (Create session)

- PUT /api/teacher/sessions/:sessionID (Update session info)

- DELETE /api/teacher/sessions/:sessionID (Delete session)

- POST /api/teacher/quizzes (Create quiz)

- PUT /api/teacher/quizzes/:quizID (Update quiz info)

- DELETE /api/teacher/quizzes/:quizID (Delete quiz)

- POST /api/teacher/exams (Create exam)

- PUT /api/teacher/exams/:examID (Update exam info)

- DELETE /api/teacher/exams/:examID (Delete exam)

- POST /api/teacher/homework (Assign homework)

- PUT /api/teacher/homework/:homeworkID (Update homework info)

- DELETE /api/teacher/homework/:homeworkID (Delete homework)

12. Admin and Manager Management:

- POST /api/admin/signup (Admin sign up)

- POST /api/manager/signup (Manager sign up)

- PUT /api/admin/:id (Update admin info)

- PUT /api/manager/:id (Update manager info)

- POST /api/admin/roles (Create role)

- PUT /api/admin/roles/:roleID (Update role)

- DELETE /api/admin/roles/:roleID (Delete role)

- POST /api/admin/notifications (Send notification)

Laravel

أضف عرضك الآن

العروض المقدمة

انا عملت علي منصه مشابه للاتي تطلبها سوف ارفق لك صور لها يمكنك الاطلاع عليها في حال عجبتك الصور تواصل معي ويمكن ان اعطيك مستخدم لطالب ومستخدم لمعلم لكي تستطيع ا...

صباح النور احمد اسعد الله اوقاتك،، قرأت القائمة الطويلة الي وضعتها، فهمت اجزائها والمطلوب في التطوير لبناء النظام، هل ممكن نفوت في مقابلة عمل ومناقشة التفاصيل و...

السلام عليكم مرحبا اخي يمكنك مراسلتي من أجل المطلوب. سنستخدم Laravel Livewire. وقاعدة البيانات. PostgreSql. او mySql. شكرا

السلام عليكم ورحمة الله وبركاته، أهلا وسهلا أستاذ أحمد هل تبحث عن مبرمج ومطور مواقع الويب هل تريد تجهيز لوحة تحكم موائمة ومتوافقة مع كل الشاشات هل تريد تصميم خا...

السلام عليكم اطلعت علي المطلوب ولدي خبرة باستخدام لارافيل يمكنني تنفيذ المنصة التعليمية وتطبيق كافة الصلاحيات التي تحتاجها كما لدي تصميم جاهز للوحة التحكم قمت ب...

السلام عليكم اطلعت علي الموقع المرفق ويمكنني تنفيذ المطلوب حيث أن لدي خبرة كبيرة باستخدام laravel framework ما ستحصل عليه: 1- لوحة تحكم خاصة بالادمن لكي تستطيع ...

السلام عليكم معاك محمود مبرمج ومطور مواقع وتطبيقات هاتف ، لقد اطلعت على تفاصيل العمل بدقة ، استطيع انجاز العمل بجودة عالية وتصميم احترافى مميز شامل، تصميم الموق...

السلام عليكم أستاذ انا مروة سعيد مهندسة برمجيات اعمل كـ Full Stack Developer , و لقد قرأت متطلباتك جيدا واستطيع تنفيذ طلبك فقد عملت ع الكثير من المشاريع المختلف...

السلام عليكم. انا web developer عندي خبره 5 سنوات استخدم php laravel اشتغلت علي مواقع تعليميه متعدده وعندي خبره ممتازه في هذا النوع من المنصات التعليميه, كما سأ...

سلام عليكم مع حضرتك اسلام Php Laravel developer اشتغلت ع مشروع ادارة مدرسة من اول تسجيل الطلاب في الصفوف والامتحانات علي الموقع وتسجيل اولياء الامور والمدرسين و...

bonjour je suis ingenieur en info et jai une grande experience en laravel contact moi pour commencer le projet

عزيزي العميل، أنا متاح حالا وجاهز للتفرغ الكامل لهذا المشروع. أنا مطور واجهات امامية و اعمل كمدير مشاريع لدي أكثر من 5 سنوات من الخبرة

شارك المشروع

قبولك لهذا العرض يعتبر اتفاقاً بينك وبين المستقل وسيبقى موقع مستقل وسيطاً بينكما حتى تسليم المشروع. لن تتمكن من تغيير العرض أو إلغائه لاحقًا لذلك تأكد من اختيارك للعرض المناسب باتّباع النصائح التالية:

  • راجع صفحة حساب المستقل الذي اخترته واطّلع على أعماله السابقة
  • إن كانت هناك تفاصيل غير مذكورة في المشروع، فتواصل مع المستقل وأخبره بها أولًا
  • بإمكانك أن تتواصل مع المستقل وتسأله عن أية أمور تحتاجها
  • احرص دائمًا على إبقاء التواصل مع المستقل داخل الموقع قدر الإمكان وذلك لضمان حقوقك
  • لا تتردد من التواصل معنا ان احتجت لأي مساعدة، نحن نحب مساعدتك!

المستقل غير متاح لاستلام مشاريع، يمكنك ارسال تنبيه له لقبول العرض وإعادة المحاولة بعد بضعة ساعات، أو اختيار عرضاً من مستقل آخر.