0% found this document useful (0 votes)
3 views5 pages

Sen Assignment PDF

The document outlines a Software Engineering assignment for a Student Course Registration System, detailing the project title, student information, and project description. It includes the Software Development Life Cycle (SDLC) using the Waterfall Model, covering requirements, system design, implementation, testing, and deployment. Additionally, it provides a GitHub repository link for the project and code snippets for the application structure and web pages.

Uploaded by

rvwcbnztrf
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views5 pages

Sen Assignment PDF

The document outlines a Software Engineering assignment for a Student Course Registration System, detailing the project title, student information, and project description. It includes the Software Development Life Cycle (SDLC) using the Waterfall Model, covering requirements, system design, implementation, testing, and deployment. Additionally, it provides a GitHub repository link for the project and code snippets for the application structure and web pages.

Uploaded by

rvwcbnztrf
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

I've created a fully formatted SEN assignment with your GitHub username ready for PDF conversion.

Below is the content you can directly save as PDF:

SOFTWARE ENGINEERING (SEN) ASSIGNMENT


PROJECT TITLE:

Student Course Registration System

NAME:

IBITOYE RAFIU KEHINDE

MATRICULATION NUMBER:

24/15364

COURSE CODE:

INTRODUCTION TO SOFTWARE ENGINEERING

DEPARTMENT:

Computer Science

PROJECT DESCRIPTION
This project is a Student Course Registration System, a simple web-based application that allows
students to register, login, select courses, and view their registered courses. The system is designed to
demonstrate the Software Development Life Cycle (SDLC) in practice.

SOFTWARE DEVELOPMENT LIFE CYCLE (SDLC)


We will use the Waterfall Model for this project.

1. Requirement Analysis
Functional Requirements: - Student can create an account - Student can login - Student can register
courses - Student can view registered courses

Non-Functional Requirements: - Easy to use interface - Secure storage of data - Fast response - Works
on any browser

1
2. System Design
Architecture: - Client–Server Architecture

Database Design:

Table: students | Field | Type | |-------|------| | id | Integer | | name | Text | | email | Text | |
password | Text |

Table: courses | Field | Type | |-------|------| | id | Integer | | course_name | Text |

Table: registrations | Field | Type | |-------|------| | id | Integer | | student_id | Integer | | course_id |


Integer |

3. Implementation

Project Folder Structure

student_course_registration_system/

├── [Link]
├── [Link]
├── templates/
│ ├── [Link]
│ ├── [Link]
│ ├── [Link]
├── static/
│ └── [Link]
└── [Link]

[Link]

from flask import Flask, render_template, request, redirect


import sqlite3

app = Flask(__name__)

def get_db():
return [Link]("[Link]")

@[Link]("/", methods=["GET", "POST"])


def login():
if [Link] == "POST":
email = [Link]["email"]
password = [Link]["password"]

db = get_db()

2
cursor = [Link]()
[Link]("SELECT * FROM students WHERE email=? AND password=?",
(email, password))
student = [Link]()

if student:
return redirect("/dashboard")
return render_template("[Link]")

@[Link]("/register", methods=["GET", "POST"])


def register():
if [Link] == "POST":
name = [Link]["name"]
email = [Link]["email"]
password = [Link]["password"]

db = get_db()
cursor = [Link]()
[Link]("INSERT INTO students (name, email, password) VALUES
(?, ?, ?)",
(name, email, password))
[Link]()
return redirect("/")
return render_template("[Link]")

@[Link]("/dashboard")
def dashboard():
return render_template("[Link]")

if __name__ == "__main__":
[Link](debug=True)

[Link]

<!DOCTYPE html>
<html>
<head>
<title>Login</title>
</head>
<body>
<h2>Student Login</h2>
<form method="post">
<input type="email" name="email" placeholder="Email" required><br>
<input type="password" name="password" placeholder="Password"
required><br>
<button type="submit">Login</button>
</form>
<a href="/register">Register</a>

3
</body>
</html>

[Link]

<!DOCTYPE html>
<html>
<head>
<title>Register</title>
</head>
<body>
<h2>Student Registration</h2>
<form method="post">
<input type="text" name="name" placeholder="Full Name" required><br>
<input type="email" name="email" placeholder="Email" required><br>
<input type="password" name="password" placeholder="Password"
required><br>
<button type="submit">Register</button>
</form>
</body>
</html>

[Link]

<!DOCTYPE html>
<html>
<head>
<title>Dashboard</title>
</head>
<body>
<h2>Welcome to Student Dashboard</h2>
<p>You have successfully logged in.</p>
</body>
</html>

4. Testing
Testing Methods: - Unit Testing
- Manual Testing

Test Cases: | Test Case | Expected Result | |-----------|----------------| | Login with correct details | Login
successful | | Login with wrong details | Login denied | | Register student | Data saved |

4
5. Deployment & Maintenance
• Runs on local server (localhost)
• Can be deployed on Heroku / Render
• Future updates:
• Admin panel
• Password encryption
• Course management

6. GitHub Repository
Push the project to GitHub using:

git init
git add .
git commit -m "Initial commit – SEN project"
git branch -M main
git remote add origin [Link]
[Link]
git push -u origin main

Add this at the last page of your assignment:

GitHub Repository Link:


[Link]

You might also like