Professional Documents
Culture Documents
Degree of
MD.HABIBUR RAHMAN
The current methods of registration and departmental works are manual. Also, as CSE department
it must be advanced than other department. “STAMFORD CSE DEPARTMENTAL WEBSITE”
is a website which is created to bring students, teachers and other users bring together. There are
mainly 4 parts of this website, 1st automated online course registration system, 2nd a complete e-
library, 3rd creating group with subjective teacher with their students and 4TH a university website
where Admission, tuition, scholarship, academic and department’s information including notice,
news, events will be found from here. I have also included a complete result management system,
schedule management system, admin panel. Teachers will be able to offer course online and
students will take those courses by online. Students and teachers can be able to upload and
download e-book in pdf/.doc format from E-Library. There is one more important thing is creating
automated subject wise group. Teacher can upload lectures and students will download it. And
they can massage each other in that group. To get all facility from the website, students and
Teachers must complete registration with signup option. Also teacher can be able to create result
sheet for the students. And other users who are not Stamford’s students or want to know about
CSE Department of Stamford University Bangladesh can be able to watch all admission
information including events, news, notice etc.
ii
APPROVAL
……………………………...
Tarikuzzaman Emon
Date:
iii
DECLARATION
I, hereby, declare that the work presented in this Project is the outcome of the investigation performed by
me under the supervision of Tarikuzzaman Emon, Senior Lecturer, Department of Computer Science &
Engineering of Stamford University Bangladesh. I also declare that no part of this Project and thereof has
been or is being submitted elsewhere for the award of any degree or Diploma.
……………………………...
Md.Habibur Rahman
Date:
iv
This project is dedicated to my mother.
For her endless love, support and encouragement
v
ACKNOWLEDGEMENTS
First of all I would like to thank almighty ALLAH. Today I am successful in completing my project because
of Allah. He has given me ability, chance to do so. And also I would like to thank my mother who always
support me and prayed for me.
Thank you so much to my supervisor, Tarikuzzaman Emon, Senior Lecturer, Department of computer
Science & Engineering. I would like to thank again him because he has given me so much time, permit me
to do the work independently. He has also given me proper guideline and departmental resources.
Thank you so much to all CSE teachers. I have learnt many things from all of you. That’s why I am able to
work this kind of project.
vi
TABLE OF CONTENTS
ABSTRACT……………………………………………………………………………… ii
ACKNOWLEDGEMENTS………………………………………………………………. vi
INTRODUCTION………………………………………………………………………… xxxi
1.3.1 Planning………………………………………………………………. 6
1.3.2 Analysis………………………………………………………………. 6
1.3.3 Design…………………………………………………………………... 7
1.3.4 Implementation…………………………………………...…………….. 7
vii
1.4.2 Applying the Concepts………….....……………………………..…….. 8
2.1 Introduction………………………………………………………………….…… 18
viii
2.3.4.1 Table of Identify tasks………………………………………….. 25
3.1 Introduction………………………………………………………………………… 33
3.4.2 Interviews………………………………………………………………… 36
ix
3.4.2.1 Table of Interview Notes………………………………………. 36
4.1 Introduction……………………………………………………………………..... 39
5.1 Introduction………………………………………………………………………... 48
x
6.1 Introduction……………………………………………………………………….... 64
7.1 Introduction………………………………………………………………………. 74
7.3.3 Outsourcing……………………………………………………………… 77
8.1 Introduction………………………………………………………………………… 80
xi
8.2.1.1 Client–Server Architectures……………………………………. 81
9.1 Introduction………………………………………………………………… 87
10.1 Introduction1…………………………………………………………………….. 82
xii
10.2 Moving from Logical to Physical Process Models……………………………… 182
xiii
10.3.23 Database Table of softwaredb ……………………………………....... 196
xiv
12.2.3 Managing the Schedule……………………………………………… 260
xv
14.8 Changing password …………………………………………………………… 278
14.27 Automation for creating group and Take Course ………………………….… 322
xvi
15.2.2 Search Box……………………………………………………………. 328
REFEREBCES………………………………………………………………………………. 330
ABBREVIATIONS…………………………………………………………………………. 332
xvii
LIST OF FIGURES:
Sl No Chapter No Topics Page
17. 5 Fig: 5.1 The Context Level Data Flow Diagram of the 52
Course Registration System
19. 5 Fig: 5.3 DFD for Home page and public user 56
management system
xviii
20. 5 Fig: 5.4 DFD for E-library management system: 57
xix
39. 8 Fig: 8.2 Client–Server Tiers 81
47. 9 92
Fig: 9.5 Admission home Page
56. 9 Fig: 9.14 Admission result sheet view home page 101
57. 9 Fig: 9.15 Admission result sheet view details page 102
58. 9 Fig: 9.16 Admission test result sheet view link details 103
page
59. 9 Fig: 9.17 Page interface for student’s and department 104
facilities
xx
61. 9 Fig: 9.19 Teacher’s Information Page 106
75. 9 Fig: 9.33 interface for E-library page link page. 119
77. 9 Fig: 9.35 Interface for E-library page with link 121
78. 9 Fig: 9.36 interface for E-library page slide design view 122
81. 9 Fig: 9.39 this interface for students home page. 125
82. 9 Fig: 9.40 students home page left side bar. 126
83. 9 Fig: 9.41 Students Home Page Right Side Bar. 126
xxi
84. 9 Fig: 9.42 Students Home Page Header Information 127
Link View.
91. 9 Fig: 9.49 Students Home Page mobile user view. 133
100. 9 Fig: 9.58 My Group List Trimester Wise and Course 139
List In Details.
101. 9 Fig: 9.59 Interface Course Wise Group Home Page 140
102. 9 Fig: 9.60 Interface And Layout for Sending Massage 141
by Student to Teacher
103. 9 Fig: 9.62 Massage Board For Students At Course Wise 142
Group View My Massage.
xxii
104. 9 Fig: 9.63 Interface For Subject Wise Group, View All 143
Lectures.
105. 9 Fig: 9.64 Interface For Course Outline Home Page. 144
106. 9 Fig: 9.65 Interface for Course List for Viewing Course 144
Outline.
118. 9 Fig: 9.77 Interface for Viewing Academic Result and 154
My Course Activity
120. 9 Fig: 9.79 Interface for Teacher Academic Result Entry 156
Layout-1.
xxiii
121. 9 Fig: 9.80 Interface for Teacher Academic Result Entry 156
Layout-2.
122. 9 Fig: 9.81 Interface for Teacher Academic Result Entry 156
Layout-3.
124. 9 Fig: 9.83 Interface for Teacher Group Entry Step-1. 158
125. 9 Fig: 9.84 Interface for Teacher Group Entry Step-2. 158
126. 9 Fig: 9.85 Interface for Course Wise Group Home Page 159
for Teacher.
127. 9 Fig: 9.86 Interface for Course Wise Group Lecture 160
Entry by Teacher.
128. 9 Fig: 9.87 Interface for Course Wise Group Edit/Delete, 160
Software Lecture, Massage by Teacher
129. 9 Fig: 9.88 Interface for Course Wise Group, Delete 161
Massage by Teacher
130. 9 Fig: 9.89 Interface for Course Wise Group, Change 162
Lecture File and Information by Teacher
131. 9 Fig: 9.90 Interface for Course Wise Group, View 162
Massage Board by Teacher
132. 9 Fig: 9.91 Interface for Course Wise Group, View My 163
Massage by Teacher
133. 9 Fig: 9.92 Interface for View Students Batch Wise 163
136. 9 Fig: 9.95 Interface for view students full profile by 165
teacher
xxiv
137. 9 Fig: 9.96 Interface for view courses and offered courses 166
by teacher
138. 9 Fig: 9.97 Interface for offering new courses by teacher 167
146. 9 Fig: 9.105 Supper admin viewing other admin list. 173
147. 9 Fig: 9.106 Supper admin viewing other admin details. 173
149. 9 Fig: 9.108 View of course list trimester wise offered. 174
150. 9 Fig: 9.109 Edit and Delete offered course by admin or 175
supper admin.
151. 9 Fig: 9.110 Edit and Delete offered course information 175
live update (save) by admin or supper admin.
153. 9 Fig: 9.112 Viewing teacher’s full profile to edit and 177
delete
xxv
156. 9 Fig: 9.115 Adding New Academic Teacher by Admin 178
163. 12 Fig: 12.3 Error Discovery Rates for Different Stages of 263
Tests.
xxvi
LIST OF TABLES:
Sl No Chapter Topics Page
No
xxvii
20. 10 10.3.5 books 186
xxviii
44. 10 10.3.29 takencourses 200
xxix
BOOK SAMMARY
INTRODUCTION
xxx
INTRODUCTION: This report has been written for the project “CSE Departmental
website of Stamford University Bangladesh” by (myself) the student Md. Habibur Rahman. Online
departmental website is important for every university. That’s why, I have created that
departmental website and I have made this report to understand how to complete a software
development project. After reading this report, anyone can be able to understand how I have
completed this project step by step using software development mythology and system analysis
and design.
PROJECT MOTIVATION:
As student of CSE department of Stamford University, I have seen a lot of manual work without
using technology. Those make me so much thoughtful, hanging notice in wall, taking lecture from
pc and then damage pen drive for virus. Even though Chairman Sir himself post notice in his
Facebook wall. Most of the books of library, I found without pages.
So, I have found that a departmental website can solve every problem. And it will make CSE
department is like a CSE department. Now I just completed my project. I think it will help all
students, teachers and other users.
xxxi
xxxii
PART ONE PLANNING PHASE
1|Page
CHAPTER 1
THE SYSTEMS ANALYST AND
INFORMATION SYSTEMS DEVELOPMENT
2|Page
CHAPTER 1: THE SYSTEMS ANALYST AND
INFORMATION SYSTEMS DEVELOPMENT
1.1 Chapter Introduction
The Planning Phase is the fundamental two-step process of understanding why
“DEPARTMENTAL WEBSITE” should be developed and creating a plan for how the project I
will develop it...The deliverables from both steps are combined into the project plan, which is
presented to the Project approval committee at the end of the Planning Phase. I and my supervisor
will decide whether it is advisable to proceed with the system Development project.
For the project “CSE DEPARTMENTAL WEBSITE”, I am doing the key role of system analyst.
So Now I am a System Analyst for the project.
3|Page
have an ability to think creatively
have a capacity to articulate visions
have very good oral and written communications skills
have interpersonal skills to evoke commitment from the client
have a high standard of ethics and integrity in all dealings
have sound administrative skills and good analytical and reporting abilities
have effective time management and personal organization skills
have an understanding of user needs
I think I have those skills and knowledge listed above. So I decided to not take any other system
analyst as group member for the project.
As I am performing key person for system analyst, I am going to do those works listed above at
the beginning my project.
4|Page
1.3 The Systems Development Life Cycle
The system development life cycle (SDLC) is the traditional system development method that
organizations use for large-scale IT Projects. The SDLC is a structured framework that consists of
sequential processes by which an information system is developed. Like
System Investigation
System Analysis
System Design
Programming
Testing
Implementation
Operation and Maintenance
All system development projects follow essentially the same fundamental process called the
system development life cycle (SDLC). The SDLC starts with a planning phase in which the
project team identifies the business value of the system, conducts, a feasibility analysis, and plans
the project.
The second phase is the analysis phase, in which the team develops an analysis strategy, gathers
information, and builds a set of analysis models.
In the next phase, the design phase, the team develops the design strategy, the physical design,
architecture design, interface design, database and file specifications, and program design.
In the final phase, implementation, the system is built, installed, and maintained. Like other
developers, I am doing the same work described above and using the technique of SDLC so that I
can complete my project nicely.
5|Page
1.3.1 Planning
The planning phase is the fundamental process of understanding why an information system should
be built and determining how the project team will go about building it. It has two steps:
1. During project initiation, the feasibility analysis examines key aspects of the proposed project
which I am thinking initially in my project work are:
■ The technical feasibility (Can I build it?)
■ The economic feasibility (Will it provide business value?)
■ The organizational feasibility (If I build it, will it be used?)
The system request and feasibility analysis are presented to an information systems approval
committee (sometimes called a steering committee), which decides whether the project should be
undertaken. I talked with my advisor sir about my CSE Departmental Project. After talking and
thinking, we both agreed to do this project. So my project is approved and permitted by him.
2. Once the project is approved, it enters project management. During project management, I
creates a work plan, staffs the project, and puts techniques in place to help the project control and
direct the project through the entire SDLC. The deliverable for project management is a project
plan that describes how the project I will go about developing the system.
1.3.2 Analysis
The analysis phase answers the questions of who will use the system, what the system will do, and
where and when it will be used. (See Figure 1-3.) During this phase, the project team investigates
any current system(s), identifies improvement opportunities, and develops a concept for the new
system.
This phase has three steps:
1. An analysis strategy is developed to guide the project team’s efforts. Such a strategy usually
includes a study of the current system (called the as-is system) and its problems, and envisioning
ways to design a new system (called the to-be system).
2. The next step is requirements gathering (e.g., through interviews, group workshops, or
questionnaires). The analysis of this information—in conjunction with input from the project
sponsor and many other people—leads to the development of a concept for a new system. The
system concept is then used as a basis to develop a set of business analysis models that describes
how the business will operate if the new system were developed. The set typically includes models
that represent the data and processes necessary to support the underlying business process.
3. The analyses, system concept, and models are combined into a document called the system
proposal, which is presented to the project sponsor and other key decision makers (e.g., members
of the approval committee) who will decide whether the project should continue to move forward.
The system proposal is the initial deliverable that describes what business requirements the new
system should meet. Because it is really the first step in the design of the new system, some experts
6|Page
argue that it is inappropriate to use the term analysis as the name for this phase; some argue a better
name would be analysis and initial design. Because most organizations continue to use the name
analysis for this phase, we will use it in this book as well. It is important to remember, however,
that the deliverable from the analysis phase is both an analysis and a high-level initial design for
the new system.
1.3.3 Design
The design phase decides how the system will operate in terms of the hardware, software, and
network infrastructure that will be in place; the user interface, forms, and reports that will be used;
and the specific programs, databases, and files that will be needed. Although most of the strategic
decisions about the system are made in the development of the system concept during the analysis
phase, the steps in the design phase determine exactly how the system will operate. The design
phase has four steps:
1. The design strategy must be determined. This clarifies whether the system will be developed by
the company’s own programmers, whether its development will be outsourced to another firm
(usually a consulting firm), or whether the company will buy an existing software package.
2. This leads to the development of the basic architecture design for the system that describes the
hardware, software, and network infrastructure that will be used. In most cases, the system will
add to or change the infrastructure that already exists in the organization. The interface design
specifies how the users will move through the system (e.g., by navigation methods such as menus
and on-screen buttons) and the forms and reports that the system will use.
3. The database and file specifications are developed. These define exactly what data will be stored
and where they will be stored.
4. The analyst team develops the program design, which defines the programs that need to be
written and exactly what each program will do. This collection of deliverables (architecture design,
interface design, database and file specifications, and program design) is the system specification
that is used by the programming team for implementation. At the end of the design phase, the
feasibility analysis and project plan are reexamined and revised, and another decision is made by
the project sponsor and approval committee about whether to terminate the project or continue.
(See Figure 1-3.)
1.3.4 Implementation
The final phase in the SDLC is the implementation phase, during which the system is actually built
(or purchased, in the case of a packaged software design and installed). This is the phase that
usually gets the most attention, because for most systems it is the longest and most expensive
single part of the development process. This phase has three steps:
1. System construction is the first step. The system is built and tested to ensure that it performs as
designed. Since the cost of fixing bugs can be immense, testing is one of the most critical steps in
7|Page
implementation. Most organizations spend more time and attention on testing than on writing the
programs in the first place.
2. The system is installed. Installation is the process by which the old system is turned off and the
new one is turned on. There are several approaches that may be used to convert from the old to the
new system. One of the most important aspects of conversion is the training plan, used to teach
users how to use the new system and help manage the changes caused by the new system.
3. The analyst team establishes a support plan for the system. This plan usually includes a formal
or informal post-implementation review, as well as a systematic way for identifying major and
minor changes needed for the system.
8|Page
1.4.4 System Request
Tarikuzzaman Emon asked me to make a website for our CSE department and he said that you are
given full independence and a lot of time to complete the project though we have a university
website.
After the system request, I have made a report initially which is given bellow:
System request:
This project has been proposed by Tarikuzzaman Emon who is my project supervisor.
Project Sponsor:
Project Need:
There’s a lot to achieve for Educational Institutions having their own departmental websites. I
want my institution to stand out from the crowd. Part of what makes a great university is having
a smart, well put together website. A departmental website needs to not only look good and
provide the basic information – it should also become an interactive hub for the community. Let
me tell about some benefits we are going to enjoy with this departmental Website.
Project Value:
The benefits that the website will create for the organization
To build this project, I need a lot of time, support from my teachers and all academic resources
from CSE department. Also, this system needs Top-level security.
10 | P a g e
1.5 Feasibility Analysis on This Project
Once the need for the system and its business requirements have been defined, a feasibility analysis
is then used to provide more detail about the risks associated with the proposed system, and it
includes technical, economic, and organizational feasibilities. The technical feasibility focuses on
whether the system can be built, by examining the risks associated with the users’ and analysts’
familiarity with the application, familiarity with the technology, project size, and compatibility
with existing systems. The economic feasibility addresses whether the system should be built. It
includes a cost–benefit analysis of development costs, operational costs, tangible benefits, and
intangible costs and benefits. Finally, the organizational feasibility analysis assesses how well the
system will be accepted by its users and incorporated into the ongoing operations of the
organization. The strategic alignment of the project and a stakeholder analysis can be used to assess
this feasibility dimension.
Information assessment: Identifies information about whether the system helps in achieving the
objectives of the organization. It also verifies that the system can be implemented using new
technology and within the budget and whether the system can be integrated with the existing
system.
Information collection: Specifies the sources from where information about software can be
obtained. Generally, these sources include users (who will operate the software), organization
(where the software will be used), and the software development team (which understands user
requirements and knows how to fulfill them in software).
Report writing: Uses a feasibility report, which is the conclusion of the feasibility study by the
software development team. It includes the recommendations whether the software development
should continue. This report may also include information about changes in the software scope,
budget, and schedule and suggestions of any requirements in the system.
General information: Describes the purpose and scope of feasibility study. It also describes
system overview, project references, acronyms and abbreviations, and points of contact to be used.
System overview provides description about the name of the organization responsible for the
software development, system name or title, system category, operational status, and so on. Project
references provide a list of the references used to prepare this document such as documents relating
to the project or previously developed documents that are related to the project. Acronyms and
abbreviations provide a list of the terms that are used in this document along with their meanings.
Points of contact provide a list of points of organizational contact with users for information and
coordination. For example, users require assistance to solve problems (such as troubleshooting)
and collect information such as contact number, e-mail address, and so on.
11 | P a g e
Management summary: Provides the following information.
Current functional procedures: Describes the current functional procedures of the existing
system, whether automated or manual. It also includes the data-flow of the current system and the
number of team members required to operate and maintain the software.
Functional objective: Provides information about functions of the system such as new services,
increased capacity, and so on.
Performance objective: Provides information about performance objectives such as reduced staff
and equipment costs, increased processing speeds of software, and improved controls.
Assumptions and constraints: Provides information about assumptions and constraints such as
operational life of the proposed software, financial constraints, changing hardware, software and
operating environment, and availability of information and sources.
Methodology: Describes the methods that are applied to evaluate the proposed software in order
to reach a feasible alternative. These methods include survey, modeling, benchmarking, etc.
Evaluation criteria: Identifies criteria such as cost, priority, development time, and ease of system
use, which are applicable for the development process to determine the most suitable system
option.
Recommendation: Describes a recommendation for the proposed system. This includes the delays
and acceptable risks.
Proposed software: Describes the overall concept of the system as well as the procedure to be
used to meet user requirements. In addition, it provides information about improvements, time and
resource costs, and impacts. Improvements are performed to enhance the functionality and
performance of the existing software. Time and resource costs include the costs associated with
software development from its requirements to its maintenance and staff training. Impacts describe
the possibility of future happenings and include various types of impacts as listed below.
Equipment impacts: Determine new equipment requirements and changes to be made in the
currently available equipment requirements.
Software impacts: Specify any additions or modifications required in the existing software and
supporting software to adapt to the proposed software.
Organizational impacts: Describe any changes in organization, staff and skills requirement.
12 | P a g e
Operational impacts: Describe effects on operations such as user-operating procedures, data
processing, data entry procedures, and so on.
Security impacts: Describe security factors that may influence the development, design, and
continued operation of the proposed software.
Analyzes the technical skills and capabilities of the software development team members
Determines whether the relevant technology is stable and established
Ascertains that the technology chosen for software development has a large number of
users so that they can be consulted when problems arise or improvements are required.
13 | P a g e
1.5.4 Applying the Concepts at “CSE Departmental
website Project”
1.5.5 Feasibility Analysis Report Table
I created the following feasibility analysis for the Departmental website Project. The System
Request is attached, along with the detailed feasibility study. The highlights of the feasibility
analysis are as follows:
CSE Departmental website system is feasible technically, although there is some risk.
1. Familiarity:
I am going to all work for this project and I have completed same types of projects before.
And this project and my previous projects were familiar. So it will not be so hard to do this
project to me.
2. Familiarity with technology:
This project will be built using PHP, MYSQL, CSS, HTML, JavaScript
programming language and I am good in programming on those languages.
I am comfortable and familiar using computer, laptop and internet. So if I fail to
understand any logic or coding, I can get help from online like YouTube, Google
and w3school in programming tutorial. I will take proper training from there.
3. Project Size:
This project is very large project.
Though this project is a large project, I can build it. Because it has been said that
from the requirement, I will just stand up the project and system with minimum
requirement. I need not built full project alone. Using spiral project method, I will
build some important futures which are important for the department. In future, other
developers will be assign so that they can complete it. So I am going to built at least
minimum prototype.
From those technical feasibility analyses, I am sure that I can build this project alone.
14 | P a g e
Economic Feasibility: Should I Build It?
1. Development cost:
Myself: Programmer, analyzer, designer, Tester and Developer.
Internet bill: (1000 *14)=14000 Tk for 14 months
I need a laptop: 70000 tk(at least)
I need a desktop pc: 40000tk
If I was a developer than a student, company must pay me at least 40000 taka per
month. So for 14 month, 560000 taka.
Rent: 14*10000= 140000 taka
Electricity bill: 14 *500 = 7000tk
Printing documents: 15000tk at least.
Hardware/Software Replacement: 20000tk
Development server(localhost): free version
Server software: free version
3. Annual benefit:
For me: If build this project, I will be certified computer engineer and in future I
shall be able to make so much money.
For users:
This system will save time and money. It will help academically.
For Organization:
--Students and teachers satisfaction.
--Public satisfaction
--Increase students
From the above Economical analysis, I think that I should build it.
15 | P a g e
Organizational Feasibility: If We Build It, Will They use?
From the above analysis, I think students, teachers and other user must use this system.
16 | P a g e
CHAPTER 2
SELECTION & MANAGEMENT
17 | P a g e
CHAPTER 2: SELECTION & MANAGEMENT
2.1 INTRODUCTION
In this chapter I am going to discusses how I evaluate and select projects to undertake from the
many available projects. After that, I plan the project management. Project management involves
selecting a project methodology, creating the project work plan, identifying project staffing
requirements, and preparing to manage and control the project. These steps produce important
project management deliverables, including the work plan, staffing plan, standards list, project
charter, and risk assessment.
18 | P a g e
2.2.2 Applying the Concepts
2.2.2.1 Table Project Selection Question & Answer
Size 1. Project is large.
2. Need many people to complete the project.
But if I do it alone, it will take much time.
Economic value 1. I do not expect to receive in return for the amount the project costs.
19 | P a g e
2.3.1 Project Methodology Options
A methodology is a formalized approach to implementing the SDLC (i.e., it is a list of steps and
deliverables). There are many different systems development methodologies, and they vary in
terms of the progression that is followed through the phases of the SDLC.
20 | P a g e
2.3.2 Selecting the Appropriate Development Methodology
Activity and selection of software development methodology has been given bellow:
Identifying project staffing I am doing this project alone. So there is no any staff or group
requirements member for this project.
21 | P a g e
Fig: 2. 2 Spiral model
It is used in the large applications and systems which built-in small phases or segments.
22 | P a g e
Advantages and Disadvantages:
Advantages Disadvantages
Estimates (i.e. budget, schedule, etc.) High cost and time to reach the final
become more realistic as work progressed product.
because important issues are discovered Needs special skills to evaluate the risks and
earlier. assumptions.
Early involvement of developers. Highly customized limiting re-usability
Manages risks and develops the system into
phases.
Public user 68 27
Academic student’s 88 60
23 | P a g e
2.3.3.2 Database Table counted
Database table
= 3 (aprox)
= 4 (aprox)
24 | P a g e
Database table :
Total time for database table: 30*5=150 hours
Total time spent: 273.75 hours 273.75 hours 638.75 hours 638.75 hours
3. Documentation 30 Open
25 | P a g e
4. Home page design 7 Open
11 Slides 22 Open
14 Login/Logout 10 Open
15 Sign up 10 Open
For this project, I am the only one person will work to complete the whole project.
26 | P a g e
2.4.1 Staffing Plan
The first step to staffing is determining the average number of staff needed for the project. To
calculate this figure, divide the total person-months of effort by the optimal schedule.
Here, I am going to work alone in whole schedule.
Scope creep happens when new requirements are added to the project after the original project
scope was defined and “frozen.” It can happen for many reasons: I may suddenly understand the
potential of the new system and realize new functionality that would be useful; I may discover
interesting capabilities to which all become much attached; my advisor may decide to let this
system support a new strategy that was developed at a recent board meeting.
27 | P a g e
2.5.3 Time boxing
Up until now, I have described projects that are task oriented. In other words, I have described
projects that have a schedule that is driven by the tasks that need to be accomplished, so the greater
number of tasks and requirements, the longer the project will take.
3/3/16 13/3/16
28 | P a g e
requirements
cases
models
models
Design
architecture
HW & SW
database
29 | P a g e
22 Installation 7 17/3/17 23/3/17 Myself
Total =
522 days
30 | P a g e
PART TWO ANALYSIS PHASE
31 | P a g e
CHAPTER 3
REQUIREMENTS DETERMINATION
32 | P a g e
CHAPTER 3: REQUIREMENTS DETERMINATION
3.1 Introduction
The analysis phase answers the questions of who will use the system, what the system will do, and
where and when it will be used. All of the deliverables are combined into a system proposal, which
is presented to management, who decides whether the project should continue to move forward.
■ Identify improvements.
33 | P a g e
3.3.2 The Process of Determining Requirements
There are a variety of elicitation techniques that can be used to acquire information, including
interviews, questionnaires, observation, and joint application development (JAD), and document
analysis. We will discuss these techniques in the next section. The information gathered by these
techniques is critically analyzed and used to craft the requirements definition statement. The
analyst works with the entire project team and the business users to verify, change, and complete
the list of requirements and, if necessary, to prioritize the importance of the requirements that are
identified. During this process, use cases, process models, and data models may be used to clarify
and define the ideas for the new system. This process continues throughout the analysis phase, and
the requirements definition evolves over time as new requirements are identified and as the project
moves into later phases of the SDLC.
Teacher can add new course, new pdf book, result, and schedule.
This departmental website allows teacher’s to view students activity.
34 | P a g e
This departmental website allows teacher’s to view students result.
This departmental website allows teacher’s to view students courses.
This departmental website allows teacher’s to view e-book and lectures file.
For admin:
This departmental website allows admin to control all activity of students and teachers.
This departmental website allows admin to add student, teachers.
This departmental website allows supper admin to control all activity of admin, students
and teachers.
This departmental website allows admin to add student, teachers.
This departmental website allows supper admin to add new admin.
35 | P a g e
3.4.1 Requirements Elicitation / Eliciting and Analyzing Requirements
I believed that it would be important to understand the current Web-based processes and systems
that already existed in the organization, because they would have to be closely integrated with the
system. Two requirements-gathering techniques proved to be helpful in understanding the current
systems and processes—document analysis and interviews.
3.4.2 Interviews
The interview is the most commonly used requirements elicitation technique. After all, it is
natural—usually, if you need to know something, you ask someone.
There are five basic steps to the interview process: selecting interviewees, designing interview
questions, preparing for the interview, conducting the interview, and post interview follow-up.
Interviewer: Habibur
Purpose of Interview:
2. Students can’t see departmental news, information, result, schedule, lectures etc.
36 | P a g e
Note:
Most of the students wanted to know about extra and different features than old website in my
present departmental website.
Here, I am only one person and no team at all. So JAD won’t use.
But I have done some Questionnaires, Document Analysis, Observation, Selecting the Appropriate
Techniques, Requirements Analysis Strategies, Problem Analysis, Root Cause Analysis, Duration
Analysis etc.
37 | P a g e
CHAPTER 4
USE CASE ANALYSIS
38 | P a g e
CHAPTER 4: USE CASE ANALYSIS
4.1 Introduction
Use cases are used to explain and document the interaction that is required between the user and
the system to accomplish the user’s task. Use cases are created to help the development team
understand more fully the steps that are involved in accomplishing the user’s goals. Once created,
use cases often can be used to derive more detailed functional requirements for the new system.
Actors: An actor portrays any entity (or entities) that perform certain roles in a given system. The
different roles the actor represents are the actual business roles of users in a given system. An actor
in a use case diagram interacts with a use case. The person who provides service at the counter is
also an actor. But it is up to me to consider what actors make an impact on the functionality that I
want to model. If an entity does not affect a certain piece of functionality that I am modeling, it
makes no sense to represent it as an actor. An actor is shown as a stick figure in a use case diagram
depicted "outside" the system boundary, as shown in the below figure.
39 | P a g e
The actors for use-case diagram of my Departmental website are:
Actors
Use case: A use case in a use case diagram is a visual representation of distinct business
functionality in a system. The key term here is "distinct business functionality." To choose a
business process as a likely candidate for modeling as a use case, I need to ensure that the business
process is discrete in nature. As the first step in identifying use cases, I should list the discrete
business functions in my problem statement. Each of these business functions can be classified as
a potential use case. I have to remember that identifying use cases is a discovery rather than a
creation. As business functionality becomes clearer, the underlying use cases become more easily
evident. A use case is shown as an ellipse in a use case diagram.
System boundary: A system boundary defines the scope of what a system will be. A system
cannot have infinite functionality. So, it follows that use cases also need to have definitive limits
defined. A system boundary of a use case diagram defines the limits of the system. The system
boundary is shown as a rectangle spanning all the use cases in the system.
40 | P a g e
4.3 Applying the Concepts of Use Case Diagram
4.3.1 Details Use Case Diagram of this projects
All Use case diagram has been given bellow:
41 | P a g e
Use-Case Diagram for Departmental E-library
42 | P a g e
Use case diagram of News Board
43 | P a g e
Academic Schedule
44 | P a g e
Online course registration(use-case diagram)
45 | P a g e
Use case of any profile include teacher, students, course profile , course outline
Fig: 4.11 Use case of any profile include teacher, students, course profile.
46 | P a g e
CHAPTER 5
PROCESS MODELING
47 | P a g e
CHAPTER 5: PROCESS MODELING
5.1 Introduction
Process modeling is a visual way to represent how an organization or system performs work and
services. Process models have been a part of structured systems analysis and design techniques for
many years.
48 | P a g e
5.2.2 Elements of Data Flow Diagrams
49 | P a g e
1. DFDs are easier to understand by technical and nontechnical audiences
2. DFDs can provide a high level system overview, complete with boundaries and connections to
other systems
3. DFDs can provide a detailed representation of system components.
DFDs help system designers and others during initial analysis stages visualize a current system or
one that may be necessary to meet new requirements. Systems analysts prefer working with DFDs,
particularly when they require a clear understanding of the boundary between existing systems and
postulated systems.
DFDs represent the following:
50 | P a g e
In Figure 8, Student and Faculty are the source and destination of information (the entities),
respectively. Register 1, Exam 2, and Graduate 3 are the processes in the program. Student Record
is the data store. Register 1 performs some task on Registration Form from Student, and the Subject
Registered moves to the data store. The Class Rolls information flows on to Faculty. Graduate 3
obtains Academic Record information from Student Record, and Degree/Transcript information is
moved to Student. Exam 2 obtains exam/paper information from Faculty, and moves the Grades
to the Student Record for storage.
The system provides the semester specific information like the academic year, semester, courses
offered and their sections.
The system filters out those courses that cannot be selected by student since they are not part of
the curriculum or their pre-requisites are not satisfied. The repeat courses are specifically
highlighted. The student makes course selections. The repeat courses are directly added by the
systems. The advisor approves/rejects the whole registration or only some of the courses. The
student makes corrections to the course selection.
51 | P a g e
The system produces a course registration in my departmental website has been given
bellow:
Rules &
Regulation Course Registration Rules Student
Management and Regulations
System
Courses Registration
Changes to Course Offered for Form
Courses Advisor
Registration Student Acceptance
Curriculum
Preferred Course
0
Student Registration Form
Approvement
Advisor Student List
Preferred Section
Courses Offered for Curriculum
Advisor
Repeat Management
Courses System
Curriculum Student
Management Success
System Status
Academic Academic Year
History Semester Management
Management Info System
System
Fig: 5.1 The Context Level Data Flow Diagram of the Course Registration System
52 | P a g e
5.3.2 Creating Data Flow Diagram Fragments and Creating
the Level 0 Data Flow Diagram
Rules &
Regulation Course Registration 1
Registration Form
Ma nag ement Rules and Regulations
Student
Sy stem
Approv ement
Courses Ac ceptance
Approv e Approv ement Advisor
Approv ement
Registra tion
Repeat Courses
Filter Offered
Co urses
Curriculum Curriculum Info
Ma nag ement
system Academic
Student History
Succes s Status Ma nag ement
Sy stem
Courses
Offered
D1
Co urse Semester Specific Info
Offering
Sy stem
Semester Semester
Specific Specific
Info Info
Courses
Offered
Advisor Student List
3
53 | P a g e
5.3.4 Creating Level 1 Data Flow Diagrams (and Below)
Level-0 DFD: Process-1, Select Courses
The student provides which of the courses, sections, and lab groups are preferred. The system
checks the course selection to see if the rules and regulations (credit restrictions, prerequisites and
collisions) are applied. If so the Registration Form is produced and stored. The student can make
modification to the registration form as far as s/he not approves the registration form. Only, the
repeat courses cannot be removed and the rules and regulations are applied at each time.
The student approves the course selection at any time. After the approvement, the system prevents
any changes to be done by the student. The advisor, approves or rejects the course registration
form either wholly, and/or partly, i.e. individual course selections. Each rejection is explained by
the Advisor. The student is informed about the results of the approvement/rejections. If the Advisor
rejects some courses, the student shall select new courses instead. After the approvement of
Advisor, the registration form is locked against any modifications.
Student's curriculum is compared with the offered courses to find out which of the offered courses
match courses listed in curriculum. Next, the offered courses matching with the student's
curriculum are compared to check if there are any of student’s repeat courses. The matched ones
are specially highlighted. Other semester courses of the student are provided to the student with
their section and lab groups. The advisor can display the course list of students s/he is advising.
The academic year and semester information is received from the Academic Year Management
System.
Student's advisors are received from the Advisor Management System. Courses offered with their
section, lab group, and scheduling information is received from the Course Offering System. The
information is stored for further usage.
54 | P a g e
5.3.5 Validating the Data Flow Diagrams
Before moving on from this initial high-level DFD, we must ensure it is consistent. Below is a
checklist of points to watch out for before moving on to a detailed investigation which will take
us to lower levels. I am flowing:
This is a large project and I have planned using spiral method to complete my project. So I did not
create complete DFD diagrams in one page. I have showed DFD diagrams as block wise So that I
can understand every step and features of system part by part. Every DFD will be considered that
as joined in one system known as Stamford’s cse departmental website. And admin, teacher,
student should login 1st to access in every block.
55 | P a g e
5.4.1 Creating the Context Diagram
DFD for Home page and public user management system of CSE Departmental Website:
Fig: 5.3 DFD for Home page and public user management system
56 | P a g e
DFD for E-library management system:
57 | P a g e
DFD for Notice Board management system:
58 | P a g e
DFD for events Board management system:
59 | P a g e
DFD for Online Courses Registration System Automation:
60 | P a g e
DFD for profile and course outline management:
61 | P a g e
DFD for Result Management:
62 | P a g e
CHAPTER 6
DATA MODELING
63 | P a g e
CHAPTER 6: DATA MODELING
6.1 Introduction
A data model describes the data that flow through the business processes in an organization. During
the analysis phase, the data model presents the logical organization of data without indicating how
the data are stored, created, or manipulated so that analysts can focus on the business without being
distracted by technical details. Later, during the design phase, the data model is changed to reflect
exactly how the data will be stored in databases and files. This chapter describes entity relationship
diagramming, one of the most common data modeling techniques used in industry.
An entity relationship diagram (ERD) shows the relationships of entity sets stored in a database.
An entity in this context is a component of data. In other words, ER diagrams illustrate the logical
structure of databases.
At first glance an entity relationship diagram looks very much like a flowchart. It is the specialized
symbols, and the meanings of those symbols, that make it unique.
An ER diagram is a means of visualizing how the information a system produces is related. There
are five main components of an ERD:
Entities, which are represented by rectangles. An entity is an object or concept about which
64 | P a g e
Actions, which are represented by diamond shapes, show how two entities share information
Attributes, which are represented by ovals. A key attribute is the unique, distinguishing
characteristic of the entity. For example, an employee's social security number might be the
employee's key attribute.
A multivalued attribute can have more than one value. For example,
65 | P a g e
6.4 Normalizing the Data Model
66 | P a g e
6.5 Creating an Entity Relationship Diagram
Description of how I have create ERD has been given bellow:
67 | P a g e
Data Dictionary Entry for a Relationship Using MySQL workbench:
Fig: 6.3 Data Dictionary Entry for a Relationship Using MySQL workbench
68 | P a g e
Complete ERD Diagram of Stamford cse departmental
website has been given bellow.
Collapse: (logical model)
Fig: 6.4 ERD Diagram of Stamford cse departmental website (logical view)
69 | P a g e
Complete ERD Diagram of Stamford cse departmental
website has been given bellow:
Expand all: (physical model):
Fig: 6.5 ERD Diagram of Stamford cse departmental website (physical view)
70 | P a g e
ERD Diagram of CSE Departmental Project: (Logical view)
71 | P a g e
_________________________________
PART THREE DESIGN PHASE
72 | P a g e
CHAPTER 7
MOVING INTO DESIGN
73 | P a g e
CHAPTER 7: MOVING INTO DESIGN
The design phase of the SDLC uses the requirements that were gathered during analysis to create
a blueprint for the future system. A successful design builds on what was learned in earlier phases
and leads to a smooth implementation by creating a clear, accurate plan of what needs to be done.
This chapter describes the initial transition from analysis to design and presents three ways to
accomplish the design for the new system.
7.1 Introduction
The design phase decides how the new system will operate. Many activities will be involved as
the development team develops the system requirements. This chapter provides an outline of those
design phase activities.
74 | P a g e
7.3 System Acquisition Strategies
An acquisition strategy is a top-level roadmap used to guide acquisition toward a successful
outcome in terms of cost, schedule, delivered capability, and quality. It spans the life cycle from
initiation of acquisition through sustainment and is focused on highlighting and managing risks to
a successful outcome.
Example:
75 | P a g e
Fig: 7.3 acquisition strategy ALCM.
76 | P a g e
To complete my project I need many softwares which will help to complete this project. All
software which has been used for this project has been given bellow:
1. Xampp
2. NetBeans IDE
3. Notpad++
4. mysql workbench
5. Vsual Paradigm For UML
6. Edrow Max
7. mobirise website builder designer
7.3.3 Outsourcing
The acquisition choice that requires the least in-house resources is outsourcing, which means
hiring an external vendor, developer, or service provider to create or supply the system.
I want to do this project by myself and I want to increase my ability on software development
technology. So I do not want any outsourcing for help.
77 | P a g e
7.4.3 Project Skills
Project skill is important for taking new project and work done confidently. I have already done 5
projects by myself where 3 project were web application. And this project web application too. As
I have some experience on website design and development, I can use my skill on this project. I
can handle programming, design, and development too.
78 | P a g e
CHAPTER 8
ARCHITECTURE DESIGN
79 | P a g e
CHAPTER 8: ARCHITECTURE DESIGN
An important component of the design phase is the architecture design, which describes the
system’s hardware, software, and network environment. The architecture design flows primarily
from the nonfunctional requirements, such as operational, performance, security, cultural, and
political requirements. The deliverables from architecture design include the architecture design
and the hardware and software specification.
8.1 Introduction
A Web based system can run in the browser on any desktop computer, but will interact with the
Web server (and possibly other computers) over the Internet. A system that operates completely
inside a company’s network may have a Visual Basic program installed on any computer, but
interact with a database server elsewhere on the company network. An important step of the design
phase is the creation of the architecture design, the plan for how the information system
components will be distributed across multiple computers and what hardware, operating system
software, and application software will be used on each computer (e.g., Windows or Linux
operating system software).
80 | P a g e
8.2.1.1 Client–Server Architectures
81 | P a g e
8.2.1.3 Less Common Architectures
Technical Environment
System Integration
Portability Requirements
Maintainability
82 | P a g e
Speed Requirements
Capacity Requirements
Availability and Reliability
83 | P a g e
8.3.5 Designing the Architecture
A complete report (Fig: 8.5) has been given bellow on requirements:
Fig: 8.5 Nonfunctional Requirements and Their Implications for Architecture Design
84 | P a g e
Here are the list of hardware and software:
Opera
Intel core
processor
85 | P a g e
CHAPTER 9
USER INTERFACE DESIGN
86 | P a g e
CHAPTER 9: USER INTERFACE DESIGN
A user interface is the part of the system with which the users interact. It includes the screen
displays that provide navigation through the system, the screens and forms that capture data, and
the reports that the system produces (whether on paper, on the Web, or via some other media).
This chapter introduces the basic principles and processes of interface design and discusses how
to design the interface structure and standards.
9.1 Introduction
I have design user interfaces based on the user’s types of my project. After analysis user I found
that four types of users will use this website. It is not possible to show all interface at a time. So I
am showing user by user interfaces which will be used most of the time.
o Layout
o Content Awareness
o Aesthetics
o User Experience
o Consistency
o Minimize User Effort
87 | P a g e
Others design methodology list which I have used has been given bellow.
This page is the layout of home page. This is so large page so I am showing it part by part. This
page will contains header, footer, notice board, news, events, motivational video, links of all other
pages in header etc. after clicking on information link , everyone can go to other pages. From home
page, users can access directly the information pages like admission, program, tuition and cost etc.
88 | P a g e
Home page (part 1)
This is 2nd part of home page. Academic, housing, teachers, e-library, research page links contains
here.
89 | P a g e
Complete home page has been shown in the next page:
90 | P a g e
To enter other page from home page, we have to click on “information” which is on header. For
public user we are seeing that after clicking information 11 links are showing like admission,
program, requirements, academic, tuition etc. let’s click on the link “ADMISSION
REQUIREMENTS”.
91 | P a g e
After click on the link admission information, this page will show up. Here admission process and
information are included.
92 | P a g e
If someone click on admission requirement link, this page will show up. After that, user will just
click on his program, it will show all requirements information of that program selected.
93 | P a g e
Suppose, someone click on the link undergraduate program, he can be able to see this page here. Here
GPA requirements and other requirements will show.
94 | P a g e
To view tuition and cost information, we need to click on tuition and cost link. After that tuition and
cost home page will display. After that, we need to click in subject area like CSE, CSI or MCA for
specific area tuition and cost information. And then user can see detail information.
95 | P a g e
Tuition and cost details page
96 | P a g e
Admission test information home page
This page is for Admission test information. Students who will take new admission need to know
admission test information. By clicking specific program area from the above page, user can view
details admission test information.
The next page is showing the details admission test information for both written and viva test.
97 | P a g e
Admission test details information page
98 | P a g e
Future students can also view admission session time, admission schedule for any subject area. The
page is showing admission session and schedule home page.
When someone click on the lick for schedule by subject area, he will enter into admission schedule
details page. Please see the next page.
99 | P a g e
Session/Schedule details page
100 | P a g e
After performing admission test, students need to know admission test result. Admin will upload
result sheet and students can download and view those result sheet. The next page is showing
admission result sheet list trimester wise. The layout for admin and public user is same. So you can
see the admin layout here. In this page admin can view, edit and delete result file. Though the layout
is same, public user can view and download result sheet only. For doing this special function and
programming logic is used.
Suppose someone clicked on summer-2019 which is showing above. He will re-directed into
admission test result sheet link with simple description. Please see the next page.
101 | P a g e
Admission test result sheet download link page
The page above is showing two types of result sheet written and viva. Let’s click on fall-2019 from
the same page again. What is showing? Please see next page.
102 | P a g e
Admission test result sheet view link details page
Fig: 9.16 Admission test result sheet view link details page
The page is showing only written exam result sheet. That means viva is not taken yet.
The next page designed for showing facilities of our cse department. This page will contain layout
and information of free wifi, projector, free Math and ACM training, Digital Computer lab,
Electronic Lab, Library, CISCO, CCNA, Language learning and Campus information. From this
one page students will understand about our CSE department and its facilities. Please see in the next
page.
103 | P a g e
Page interface for student’s and department facilities
104 | P a g e
Next page is about academic information. Academic page contains academic policy, academic
calendar, credit transfer, team of faculty and academic excellence information.
Suppose someone click on the link team of faculty, the next page will show page with all teacher
list.
105 | P a g e
Teacher Information Home Page
106 | P a g e
Teacher’s Information details Page
107 | P a g e
This layout a home page of News Board. The
user interface of News, Notice, Events Board so
I am showing here only News board.
108 | P a g e
This page for news details
109 | P a g e
This page is showing housing information.
110 | P a g e
Financial and Scholarship information page
111 | P a g e
University contract , address
information and map will
show in the page
Fig: 9.25 University contract, address information and map view page
We already have seen many layout for public user. Now let’s see layout for academic students.
112 | P a g e
9.7.2Interface for Academic Students
I have design a lot of page for academic students so that student can get help from this website. I think
student will feel lucky for this website. Because this website will help them in many ways.
1st step for students, academic teachers and admin is sign up and activate their account. We can see on
the page here that it is showing three option for sign up.
1. Teacher
2. Students
3. Admin
Suppose a teacher activate his account and he click on the button TEACHER. The next page will show
account activation and sign up page.
113 | P a g e
Sign up or activate account as Teacher Page
To activate account a teacher need teacher id, email, activation pin code, password and confirm
password. Activation pin code and teacher id will be probided by admin.
114 | P a g e
Sign up page mobile view
115 | P a g e
After activation of user id, student need to login with ID and password to enter the system.
After login, welcome page will show and now student is in the system. And session will start
automatically.
116 | P a g e
Some more interfaces and layout for academic students has been given bellow:
If an academic student want to view directly e-boo, video lecture, lecture slide, he can get all link from
this page at a time. He also can use Information and e-library link from above the header.
Suppose a students want to read academic book from e-library or he need to download a book. He will
click on the link PDF Books or E-LIBRARY.
After clicking on that link E-library home page will show up. Please watch the next layout of e-library.
E-library will contains most recent book, shorting books by type, books by category, books by
alphabetically.
A student and a teacher can be able to download, view any pdf book from the library. Students will also
see full profile of any book.
117 | P a g e
Fig: 9.32 interface for E-library home page.
Student can also view books by type or category from the link bellow:
118 | P a g e
Fig: 9.33 interface for E-library page link page.
Complete layout of e-library of my departmental website has been given in the next page.
119 | P a g e
Interface for Complete e-library
120 | P a g e
Interface for Complete e-library with
link view
121 | P a g e
To make the library nice and beautiful, I have used slide show on the library.
Suppose a student want to view full profile of a book, he need to click on the book name or the link
details.
Let see an example with a layout, a student clicked on the title Pro Java Programming. He will re-
directed into book profile details page. Book profile contains title, edition, content, type, category,
authors name, publishers information etc.
122 | P a g e
Fig: 9.37 Book Profile Details Page
123 | P a g e
Fig: 9.38 book profile details page example 2
124 | P a g e
Students Home Page
125 | P a g e
In the left side bar of home page, student can go to the page of lecture, schedule, result board, courses
pages. And in the right bar student can see notice, news, events.
The picture is showing the link of Public lecture link in the left side. It has appeared when student clicked
on View lecture link.
126 | P a g e
In information header link, student will find all page link like view, edit, add, delete and e-library. Please
see the page bellow.
After clicking in the link VIEW, student will see more link like profile view, schedule, courses, my
group, result view, notice board, news, event, view lectures and home page link.
Fig: 9.43 Students Home Page Header Information Link View And Next Schedule.
When a student will click on the link SCHEDULE, he will view all links of all types of schedule like
teacher’s schedule, class schedule, teacher schedule, exam schedule and others. Please watch at the next
page.
127 | P a g e
Fig: 9.44 Students Home Page Header Information Link
We are watching all schedule link above, Students will view and download any kinds of schedule from
the above page and link. The schedule home page has been organized by trimester, schedule type,
category and more.
Let’s click on Schedule Home page link. And now we can see the schedule home page which has been
given bellow.
At the next page schedule home page has been shown and after the next page I have shown students
home page as mobile view. I design all user interface mobile friendly so that student and teachers or
other user can use this website by mobile, laptop or computer.
128 | P a g e
This is Schedule Home Page. Any schedule
can be download from here.
129 | P a g e
This page is showing all course list which has
been offered recently. And this interface
layout for mobile user.
(layout -1 )
130 | P a g e
This page is showing all course list which has
been offered recently. And this interface
layout for mobile user.
(layout -2 )
131 | P a g e
This page is showing all course list
which has been offered recently. And
this interface layout for mobile user.
(layout -3 )
132 | P a g e
This page is showing all course list which has
been offered recently. And this interface layout
for mobile user.
(layout -4 )
Online Course registration is an important features for my project. Let’s watch how to do it.1 st Select
Add. After that, click on online course registration link. Please see the next fig.
133 | P a g e
After that, click on online course registration link, list of most recently offered course will be shown
shorted by batch.
A student can know about which course offered for which batch. A student is permitted to take any
course from the list. Maximum 9 course will be accepted. And if someone try to take more than 9 course
it show a massage that he has already taken 9 courses.
When a student will click on his batch, a course list will be shown which will contains the information
like course Title, credit hour, trimester year, course teacher name, course pre-requisite with Take This
Course and View Full Profile link.
I think every student should view course outline and full profile of a course before taking that course.
After viewing the course outline or profile student will understand about the course.
After taking courses for new trimester, list of taken recent courses will be shown at right side of home
page. Please see next 3 page.
A course profile layout, home page with taken course list and take a course page given bellow:
134 | P a g e
Fig: 9.52 Online Course Registration System Layout-3.
135 | P a g e
Fig: 9.53 Online Course Registration System Layout-4.
136 | P a g e
Fig: 9.55 Online Course Registration System Layout 6.
We are watching my recent courses at right side of the above page. We are also watching some
information like summer-2019, course list, credit hour, total credit hour.
At the end of the list, we are watching a button like “Details (Group Entry)”. For what is this button?
Actually after taking any course and after accepting that course by teacher, a student is permitted to
enter the course wise group which is created automatically.
Creating course wise group is an automation. Let’s click on that button and watch more about the group.
After viewing course full profile, I have shown and described about course wise group. So please see at
the next page.
137 | P a g e
Fig: 9.56 Course Full Profile.
138 | P a g e
Fig: 9.57 My Group List Trimester Wise.
Course wise group is one of the most important features for my project. This features will help academic
student and teachers a lot. Suppose a student want to enter into a group page for example, student click
on SUMMER-2017. All course which has been taken at summer 2017 by the student will be shown.
Please watch at next image:
Fig: 9.58 My Group List Trimester Wise and Course List In Details.
139 | P a g e
After clicking GO TO GROUP PAGE, this group home page will come. This is group home page.
140 | P a g e
What can students and teachers do with this group? Student and teacher will massage each other from
thus group. Teacher will upload lecture pdf, ppt slide lecture, doc file, video lecture etc. after that
student will view and download those documents which has been uploaded by course teacher.
A teacher can make his lecture public or privet. Privet lectures can be downloaded by group student
and members. And public lecture will be downloaded by all academic student.
Fig: 9.60 Interface And Layout for Sending Massage by Student to Teacher
By clicking on button massage, student can go to massage board where all teacher massage, most
massage, student’s own massage will be found. From massage board, student can edit, view, and
delete his own massage. Please see massage board in the next page.
141 | P a g e
Fig: 9.61 massage board for students at course wise group.
Fig: 9.62 Massage Board For Students At Course Wise Group View My Massage.
142 | P a g e
Fig: 9.63 Interface For Subject Wise Group, View All Lectures.
143 | P a g e
Student can view course profile and outline outside the group. Like those next screen picture.
Fig: 9.65 Interface for Course List for Viewing Course Outline.
144 | P a g e
Fig: 9.66 Interface for Course Outline or Profile Example-1
145 | P a g e
Fig: 9.67 Interface for Course Outline or Profile Example-2
146 | P a g e
If student add course by mistake, he can be able to delete the course. The system will allow for the
student for limited time. But if new trimester course offered, he will fail to delete the course.
147 | P a g e
Fig: 9.70 Interface for Deleting Course Picture-3
148 | P a g e
Fig: 9.71 Interface For Editing Student’s Profile Information
149 | P a g e
Fig: 9.72 Interface For Editing Student’s Profile Information and Changing Profile Picture
At the time of changing profile picture, student will upload any picture for his profile. After upload
complete live picture will be shown. To complete editing profile picture, student should click on button
save image.
And to updates the detail profile information, student will just click on information table and write on
it. And do not need to click on save. System will automatically take update in database. For this
JavaScript programming language and special logic will be used.
We already have seen that we can download lectures from our group. But there are a lot of students who
are so advanced in their education. They want to know and study of their upcoming courses. So they
want to get lectures before new trimester start. For those student I have made lectures home page. From
this home page student will download all public lectures. The lectures which has been made public by
subjective teacher.
At lecture home page, all lectures are organized and shorted by session, trimester, and teachers. To do
this I also have used slide show. Please watch next page.
150 | P a g e
Lectures Home Page short by teacher
151 | P a g e
Lectures Home Page short by session
152 | P a g e
Fig: 9.75 Interface for Viewing Academic Result Layout-1
153 | P a g e
Fig: 9.77 Interface for Viewing Academic Result and My Course Activity
We have seen a lot of interface of students. Now let’s watch some interface for our academic teachers.
154 | P a g e
9.7.3 Interface for Academic Teachers
155 | P a g e
Fig: 9.79 Interface for Teacher Academic Result Entry Layout-1.
156 | P a g e
Fig: 9.82 Interface for Teacher Lecture Entry.
157 | P a g e
Fig: 9.83 Interface for Teacher Group Entry Step-1.
158 | P a g e
Interface for course wise group
home page for teacher
Fig: 9.85 Interface for Course Wise Group Home Page for Teacher.
159 | P a g e
Fig: 9.86 Interface for Course Wise Group Lecture Entry by Teacher.
Fig: 9.87 Interface for Course Wise Group Edit/Delete, Software Lecture, Massage by Teacher
160 | P a g e
Fig: 9.88 Interface for Course Wise Group, Delete Massage by Teacher
161 | P a g e
Fig: 9.89 Interface for Course Wise Group, Change Lecture File and Information by Teacher
Fig: 9.90 Interface for Course Wise Group, View Massage Board by Teacher
162 | P a g e
Fig: 9.91 Interface for Course Wise Group, View My Massage by Teacher
163 | P a g e
Fig: 9.93 Interface for view students by teacher’s subject
Fig: 9.94 Interface for view students by teacher’s subject and view student full profile
164 | P a g e
Fig: 9.95 Interface for view students full profile by teacher
165 | P a g e
Fig: 9.96 Interface for view courses and offered courses by teacher
The next image will show us course list to offer for new trimester. To offer new course, a teacher must
be provided a batch as advisor. Teacher will select trimester, trimester year, course teacher. And then he
will offer the course for his batch.
After offer the courses, the courses will be added to recently offered course list and to the batch whom
he is advising. When teacher will offer course, a list of recent course offered by him will be shown at
the right-side of the page.
After that students will take new course and will sent request for acceptation. After taking course by
student automatically registration request will be shown to the teacher as student’s advisor.
166 | P a g e
Fig: 9.97 Interface for offering new courses by teacher
167 | P a g e
Fig: 9.98 Registration request from the students, trimester wise.
168 | P a g e
Fig: 9.100 Accept or delete registration request by advisor.
From the above page, we are watching that a advisor can accept and delete any students registration
request. If the course is accepted by teacher, it will show like green color and otherwise it will show as
red color.
As we saw previous page, the link with student in two color. One is purple and another was red. Student
id red color means, he has a pending course registration request. If student’s all course request accepted
or deleted, it will show purple color only.
Next page, I am going to show how a teacher will add e-book in e-library.
169 | P a g e
Fig: 9.101 New e-book entry
170 | P a g e
Fig: 9.102 Delete e-book
A teacher can be able to delete pdf book from e-library but the book must be uploaded by him. He has
no permit to delete other book from the e-library.
There are a lot of interface which are same for academic student, teacher and admin. Just programming
code and logic are changed for user type. So I did not show all screen shoot in this report. We have just
finished a lot of interface design for student and teacher. Now I am going to share interface for admin
and supper admin.
Admin and supper admin will do same work accept, supper admin control admin as an extra features.
So all interface of admin and supper admin are same.
171 | P a g e
Fig: 9.103 admin welcome page after login
172 | P a g e
Fig: 9.105 Supper admin viewing other admin list.
By using edit and delete button, a supper admin can be able to edit or delete any admin information. If
supper admin click on EDIT button, he will redirected to edit page.
173 | P a g e
Fig: 9.107 Edit or delete admin details.
174 | P a g e
Fig: 9.109 Edit and Delete offered course by admin or supper admin.
Fig: 9.110 Edit and Delete offered course information live update (save) by admin or supper
admin.
175 | P a g e
Fig: 9.111 Viewing teacher Activation code and ID by admin or supper admin.
To activate teacher status teacher need to active his account. Ant to activate a teacher’s account, a teacher
need email, Teacher Id and activation code. By viewing activation code, admin will provide id and
activation code to teacher.
An admin can be able to update teacher information. Again a student need also activation code and
student id. When an admin will make new entry of a teacher or student, an activation code will be created
automatically.
Admin can control fully of a teacher and teacher. But there is no activity on subject wise grouping. The
group is for student and teacher only.
176 | P a g e
Fig: 9.112 Viewing teacher’s full profile to edit and delete
177 | P a g e
Fig: 9.113 Viewing Navigation of Delete Option for Admin
178 | P a g e
Fig: 9.116 Navigation of Edit by Admin
179 | P a g e
Fig: 9.118 Adding New Course by Admin
180 | P a g e
CHAPTER 10
PROGRAM DESIGN
181 | P a g e
CHAPTER 10: PROGRAM DESIGN
10.1 Introduction
Another important activity of the design phase is designing the programs that will perform the system’s
application logic. Programs can be quite complex, so analysts must create instructions and guidelines
for programmers that clearly describe what the program must do. This chapter describes the activities
that are performed when the program design is developed. First, the process of revising logical data flow
diagrams into physical data flow diagrams is outlined. Then, two techniques typically used together for
describing programs are presented. The structure chart depicts a program at a high level in graphic form.
The program specification contains a set of written instructions in more detail. Together, these
techniques communicate how the application logic for the system needs to be developed.
182 | P a g e
Fig: 10.1 Physical DFD for Stamford CSE departmental website
To better understand physical DFDs, I will now show complete Database Table schema based on my
whole project. After analysis, I have learn that I need to create 30 database table. All database table has
been given bellow:
183 | P a g e
12 lecturevideo 16
13 new-applicaton 24
14 newscse 8
15 notice 8
16 postsall 14
17 poststeachers 4
18 resultdoc 9
19 results 51
20 resultsheet 1
21 schedule 11
22 slidelectures 16
23 softwaredb 12
24 springspring 5
25 students 21
26 tudentsall 40
27 subjects 12
28. superadmin 6
29. takencourses 8
30 teachers 29
10.3.1. Admin
Links
Column Type Attributes Null Default Extra Comments MIME
to
sl int(200) No
adminId text Yes NULL
adminName text Yes NULL
adminPassword text Yes NULL
adminEmail text Yes NULL
adminMobile text Yes NULL
adminCatagory text Yes NULL
pincode text Yes NULL
admintype text Yes NULL
status text Yes NULL
184 | P a g e
10.3.2. admissiontestresult
Links
Column Type Attributes Null Default Extra Comments MIME
to
adtestresultsl int(11) No
trimester text Yes NULL
admissionresult text Yes NULL
file
postedDate timestamp No CURRENT_TI
MESTAMP
testType text Yes NULL
topics text Yes NULL
massage text Yes NULL
10.3.3.admission_schedule
185 | P a g e
classStartDate text Yes NULL
massage text Yes NULL
10.3.4 advisors
Links
Column Type Attributes Null Default Extra Comments MIME
to
sl int(11) No
advisorid text Yes NULL
batch text Yes NULL
10.3.5 books
Links
Column Type Attributes Null Default Extra Comments MIME
to
booksID text No
booksName text No
booksAuthors text No
booksPublishers text No
booksEdition text No
booksCatagory text No
booksDepartme nt text No
booksSlides text No
booksVideos text No
booksFiles text No
booksCover text No
booksDescriptio ns text No
booksRecomen ded text No
booksl int(222) No
uploaderid text Yes NULL
10.3.6 coureslist
Links
Column Type Attributes Null Default Extra Comments MIME
to
courseId text No
courseName text No
courseImage text Yes NULL
courseVideo text Yes NULL
186 | P a g e
coursePrereqisit text Yes NULL
RecomendToRe ad text Yes NULL
courseMassage text Yes NULL
courseOutline text Yes NULL
coursesl int(11) No
courseDepartm ent text No
crediteHour text Yes NULL
10.3.7.courseofferedforcse
Links
Column Type Attributes Null Default Extra Comments MIME
to
coursesl int(11) No
advisorname text Yes NULL
courseofferedto batch text Yes NULL
offeredcourseco de text Yes NULL
offeredcoursen text Yes NULL
ame
offeredcoursetri mester text Yes NULL
couresofferadvi sorid text Yes NULL
trimestername text Yes NULL
trimesteryear year(4) Yes NULL
trimester text Yes NULL
courseteachern ame text Yes NULL
courseteacherid text Yes NULL
10.3.8 courseoutlinecse
187 | P a g e
Links
Column Type Attributes Null Default Extra Comments MIME
to
courseCode text No
courseTitle text No
courseCrd double No
coursePrerequis ite text No
courseCover text Yes NULL
sl int(11) No
department text Yes NULL
coursePrerequis text Yes NULL
itename
contucthour text Yes NULL
coursetype text Yes NULL
objective text Yes NULL
contents text Yes NULL
referencebooks text Yes NULL
softwares text Yes NULL
videointroducti ons text Yes NULL
pcoursecode text Yes NULL
coursemassage text Yes NULL
10.3.9 courseoutlinecsi
Links
Column Type Attributes Null Default Extra Comments MIME
to
courseCode text No
courseTitle text No
courseCrd double No
sl int(11) No
188 | P a g e
10.3.10 coursetaken
Column Type Attributes Null Default Extra Links to Comments MIME
sl int(11) No
courseId text Yes NULL
courseName text Yes NULL
sessionName text Yes NULL
sessionYear text Yes NULL
courseCredite text Yes NULL
coursePreReqisi te text Yes NULL
studentName text Yes NULL
studentId text Yes NULL
studentBatch text Yes NULL
trimester text Yes NULL
courseteachern text Yes NULL
ame
courseteacherid text Yes NULL
advisorid text Yes NULL
advisorStatus text Yes NULL
10.2.11 eventscse
Links
Column Type Attributes Null Default Extra Comments MIME
to
eventLength text Yes NULL
eventDate text Yes NULL
sl int(222) No
eventTopics text Yes NULL
descriptions text Yes NULL
eventImage text Yes NULL
eventDemoVide o text Yes NULL
eventCatagory text Yes NULL
eventGoal text Yes NULL
organizesBy text Yes NULL
mideaPratner text No
entryFee text Yes NULL
place text Yes NULL
startingtime text Yes NULL
10.3.12 lecturevideo
Links
Column Type Attributes Null Default Extra Comments MIME
to
189 | P a g e
videolecturesl int(11) No
videoName text Yes NULL
department text Yes NULL
courseCode text Yes NULL
courseName text Yes NULL
batch text Yes NULL
postedBy text Yes NULL
lectureNo int(200) Yes NULL
trimester text Yes NULL
trimesterYear text Yes NULL
videoFile text Yes NULL
lectureDate date Yes NULL
massage text Yes NULL
courseteacherid text Yes NULL
videolink text Yes NULL
videostatus text Yes NULL
10.3.13 new-applicaton
Links
Column Type Attributes Null Default Extra Comments MIME
to
sl int(11) No
studentsFullNa text Yes NULL
me
studentCatagor y text Yes NULL
std1stname text Yes NULL
stdlastname text Yes NULL
profilePicture text Yes NULL
applyingFor text Yes NULL
studentType text Yes NULL
studentSubject text Yes NULL
Chosse
sscGPA text Yes NULL
hscGpa text Yes NULL
sscmarksheetfil e text Yes NULL
hscmarksheetfil e text Yes NULL
session text Yes NULL
mobile text Yes NULL
email text Yes NULL
password text Yes NULL
newpassword text Yes NULL
streetAdress text Yes NULL
streetAdress2 text Yes NULL
city text Yes NULL
190 | P a g e
state text Yes NULL
postalcode text Yes NULL
country text Yes NULL
10.3.14 newscse
Links
Column Type Attributes Null Default Extra Comments MIME
to
sl int(111) No
date date Yes NULL
newsDate date No
newsTopics text Yes NULL
newsDescriptio ns text Yes NULL
newsImage text No
newsCatagory text No
newsBy text No
191 | P a g e
10.3.15 notice
Attribut Nul Link Commen MIM
Column Type Default Extra
es l s to ts E
title text No
sl int(111) No
descriptio text No
ns
noticeBy text No
file text No
startDate date No
lastDate date No
postedDat timestam No CURRENT_ on update CUR
e p TI RENT_TIMEST
MESTAMP A MP
10.3.16 postsall
Links
Column Type Attributes Null Default Extra Comments MIME
to
postallsl int(11) No
postsubmitterid text Yes NULL
postdescription s text Yes NULL
postdate datetime No
postsubmittern ame text Yes NULL
department text Yes NULL
courseCode text Yes NULL
courseName text Yes NULL
batch text Yes NULL
trimesterName text Yes NULL
trimesterYear text Yes NULL
massagetopics text Yes NULL
courseTeacherI d text Yes NULL
postStutas text Yes NULL
10.3.17poststeachers
Links
Column Type Attributes Null Default Extra Comments MIME
to
teacherpostsl int(11) No
192 | P a g e
postteacherid varchar(100 Yes NULL
)
postteacherna text Yes NULL
me
postdescription text Yes NULL
10.3.18 resultdoc
Links
Column Type Attributes Null Default Extra Comments MIME
to
sl int(11) No
title text Yes NULL
submittedBy text Yes NULL
batch text Yes NULL
examSession text Yes NULL
examSessionye text Yes NULL
ar
resultSheetFor text Yes NULL
fileName text Yes NULL
massage text Yes NULL
193 | P a g e
10.3.19 results
Links
Column Type Attributes Null Default Extra Comments MIME
to
sl int(11) No
courseCode text Yes NULL
courseName text Yes NULL
courseDepartm ent text Yes NULL
courseCreditHr text Yes NULL
trimesterName text Yes NULL
trimesterYear date Yes NULL
courseTeacherN ame text Yes NULL
courseTeacherI d text Yes NULL
StudentId text Yes NULL
studentName text Yes NULL
studentBatch text Yes NULL
midMarks text Yes NULL
finalMarks text Yes NULL
classTest1 text Yes NULL
classTest2 text Yes NULL
classTest3 text Yes NULL
classTest4 text Yes NULL
labTest1 text Yes NULL
labTest2 text Yes NULL
labTest3 text Yes NULL
labTest4 text Yes NULL
assignment1 int(200) Yes NULL
assignment2 text Yes NULL
assignment3 text Yes NULL
assignment4 text Yes NULL
totalMarks text Yes NULL
trimesterCgpa text Yes NULL
totalCGPA text Yes NULL
result text Yes NULL
trimester text Yes NULL
presentation1 double Yes NULL
presentation2 double Yes NULL
presentation3 double Yes NULL
presentation4 double Yes NULL
194 | P a g e
resultgread text Yes NULL
report1 text Yes NULL
report2 text Yes NULL
report3 text Yes NULL
report4 text Yes NULL
reporttotal text Yes NULL
attandance text Yes NULL
extrabyteacher text Yes NULL
totalin40 text Yes NULL
advisorid text Yes NULL
advisorStatus text Yes NULL
10.3.20 resultsheet
Links
Column Type Attributes Null Default Extra Comments MIME
to
sl int(11) No
10.3.21 schedule
195 | P a g e
10.3.22 slidelectures
Links
Column Type Attributes Null Default Extra Comments MIME
to
slidesl int(11) No
slideName text Yes NULL
department text Yes NULL
courseCode text Yes NULL
courseName text Yes NULL
batch text Yes NULL
postedBy text Yes NULL
lectureNo int(200) Yes NULL
trimester text Yes NULL
trimesterYear text Yes NULL
slideFile text Yes NULL
slideLink text Yes NULL
lectureDate date Yes NULL
massage text Yes NULL
teacherid text Yes NULL
stutaslecture text Yes NULL
10.3.23. softwaredb
Links
Column Type Attributes Null Default Extra Comments MIME
to
softsl int(100) No
coursecode text Yes NULL
courseName text Yes NULL
courseTeacheri d text Yes NULL
courseTeacherN text Yes NULL
ame
softwareName text Yes NULL
department text Yes NULL
batch text Yes NULL
trimesterName text Yes NULL
trimesterYear text Yes NULL
softwarefile text Yes NULL
submissionDate date Yes NULL
10.3.24 springspring
196 | P a g e
Links
Column Type Attributes Null Default Extra Comments MIME
to
id int(6) UNSIGNED No
firstname varchar(30) No
lastname varchar(30) No
email varchar(50) Yes NULL
reg_date timestamp No CURRENT_TI on update CUR
MESTAMP RENT_TIMESTA
MP
10.3.25 students
Com
Link MI
Column Type Attributes Null Default Extra ment
s to ME
s
studentId varchar(10 No
0
)
StudentName text No
Student1stNam e text Yes NULL
StudentLastNa text Yes NULL
me
StudentMidNam e text Yes NULL
HscResult text Yes NULL
SscResult text Yes NULL
StdAdmitted int(50) Yes NULL
StudentBatch text Yes NULL
StudentSession text Yes NULL
Spring text No
Summer text Yes NULL
Fall text Yes NULL
CourseId text Yes NULL
197 | P a g e
10.3.26 studentsall
Links
Column Type Attributes Null Default Extra Comments MIME
to
sl int(11) No
id text No
stdFullName text Yes NULL
firstName text Yes NULL
lastName text Yes NULL
birthDate date Yes NULL
gander text Yes NULL
phoneNumber text Yes NULL
email text Yes NULL
password text Yes NULL
program text Yes NULL
batchName text Yes NULL
batchNumber int(222) Yes NULL
stdgroup text Yes NULL
depertment text Yes NULL
trimester text Yes NULL
shiftvalue text Yes NULL
campus text Yes NULL
profilePicture text Yes NULL
fatherName text Yes NULL
motherName text Yes NULL
gradianName text Yes NULL
gradianRelation text Yes NULL
gradianMobile text Yes NULL
presentAdress1 text Yes NULL
presentAdress2 text Yes NULL
presentCity text Yes NULL
presentState text Yes NULL
presentPostalC text Yes NULL
ode
presentCountry text Yes NULL
permanentAdre text Yes NULL
ss1
permanentAdre text Yes NULL
ss2
permanentCity text Yes NULL
permanentStat e text Yes NULL
permanentPost text Yes NULL
alCode
permanentCoun text Yes NULL
try
198 | P a g e
activationcode text Yes NULL
status text Yes NULL
batch text Yes NULL
10.3.27 subjects
Links
Column Type Attributes Null Default Extra Comments MIME
to
subjects text No
subjectsId text No
subjectsName text No
subjectsImage text No
subjectsVideo text No
subjectsSlides text No
subjectsLecture text No
subjectsDescre ption text No
subjectsCredite text No
subjectsPreReq text No
subjectsTeache text No
r
subjectsCatagor y text No
10.3.28 superadmin
Links
Column Type Attributes Null Default Extra Comments MIME
to
sl int(111) No
sadminid text Yes NULL
password text Yes NULL
email text Yes NULL
199 | P a g e
name text Yes NULL
10.3.29 takencourses
Lin
Attribut Nu Defaul Commen
Column Type Extra ks MIME
es ll t ts
to
takencoursesl int(222) No auto_increment
stdid varchar(10 Yes NULL
0
)
tcourseid text Yes NULL
ttrimestername text Yes NULL
ttrimesteryear year(4) Yes NULL
department text Yes NULL
tcredithour double Yes NULL
trimester text Yes NULL
10.3.30 teachers
Attri Links
Column Type Null Default Extra Comments MIME
butes to
teacherId text No
activationkey text Yes NULL
teacherName text Yes NULL
teacher1stNam e text No
teacherLastNa text No
me
teacherEducati on text No
teacherInerest text No
teacherGender text No
teacherPasswor d text No
teacherEmail text No
teacherMobile text No
teacherDescript ions text No
teacherImage text No
teacherCatagor y text No
sl int(11) No auto_incr
ement
200 | P a g e
Specialization text Yes NULL
designation text Yes NULL
department text No
active text No
country text Yes NULL
city text Yes NULL
zip text Yes NULL
state text Yes NULL
address2 text Yes NULL
street text Yes NULL
campus text Yes NULL
advising text Yes NULL
status text Yes NULL
appointedDate text Yes NULL
201 | P a g e
202 | P a g e
10.4 Applying the Concepts
We just saw all table which will have to create in database. So in the next complete database
programming of all table has been given bellow.
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS,
FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE,
SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';
-- -----------------------------------------------------
-- Schema mydb
-- -----------------------------------------------------
-- -----------------------------------------------------
-- Schema stamfordcse
-- -----------------------------------------------------
-- -----------------------------------------------------
-- Schema stamfordcse
-- -----------------------------------------------------
203 | P a g e
CREATE SCHEMA IF NOT EXISTS `stamfordcse` DEFAULT CHARACTER SET latin1 ;
USE `stamfordcse` ;
-- -----------------------------------------------------
-- Table `stamfordcse`.`takencourses`
-- -----------------------------------------------------
ENGINE = InnoDB
AUTO_INCREMENT = 22
-- -----------------------------------------------------
-- Table `stamfordcse`.`subjects`
-- -----------------------------------------------------
204 | P a g e
`subjects` TEXT NOT NULL,
ENGINE = InnoDB
-- -----------------------------------------------------
-- Table `stamfordcse`.`resultdoc`
-- -----------------------------------------------------
205 | P a g e
`examSession` TEXT NULL DEFAULT NULL,
ENGINE = InnoDB
AUTO_INCREMENT = 3
-- -----------------------------------------------------
-- Table `stamfordcse`.`books`
-- -----------------------------------------------------
206 | P a g e
`booksCover` TEXT NOT NULL,
ENGINE = InnoDB
AUTO_INCREMENT = 32
-- -----------------------------------------------------
-- Table `stamfordcse`.`coureslist`
-- -----------------------------------------------------
207 | P a g e
`courseDepartment` TEXT NOT NULL,
ENGINE = InnoDB
AUTO_INCREMENT = 15
-- -----------------------------------------------------
-- Table `stamfordcse`.`courseofferedforcse`
-- -----------------------------------------------------
208 | P a g e
`courseteachername` TEXT NULL DEFAULT NULL,
ENGINE = InnoDB
AUTO_INCREMENT = 210
-- -----------------------------------------------------
-- Table `stamfordcse`.`courseoutlinecse`
-- -----------------------------------------------------
209 | P a g e
`softwares` TEXT NULL DEFAULT NULL,
ENGINE = InnoDB
AUTO_INCREMENT = 162
-- -----------------------------------------------------
-- Table `stamfordcse`.`courseoutlinecsi`
-- -----------------------------------------------------
ENGINE = InnoDB
210 | P a g e
-- -----------------------------------------------------
-- Table `stamfordcse`.`coursetaken`
-- -----------------------------------------------------
ENGINE = InnoDB
AUTO_INCREMENT = 91
211 | P a g e
-- -----------------------------------------------------
-- Table `stamfordcse`.`eventscse`
-- -----------------------------------------------------
ENGINE = InnoDB
AUTO_INCREMENT = 17
-- -----------------------------------------------------
212 | P a g e
-- Table `stamfordcse`.`lecturevideo`
-- -----------------------------------------------------
ENGINE = InnoDB
AUTO_INCREMENT = 45
213 | P a g e
-- -----------------------------------------------------
-- Table `stamfordcse`.`newscse`
-- -----------------------------------------------------
ENGINE = InnoDB
AUTO_INCREMENT = 12
-- -----------------------------------------------------
-- Table `stamfordcse`.`notice`
-- -----------------------------------------------------
214 | P a g e
`noticeBy` TEXT NOT NULL,
ENGINE = InnoDB
AUTO_INCREMENT = 15
-- -----------------------------------------------------
-- Table `stamfordcse`.`postsall`
-- -----------------------------------------------------
215 | P a g e
`department` TEXT NULL DEFAULT NULL,
ENGINE = InnoDB
AUTO_INCREMENT = 69
-- -----------------------------------------------------
-- Table `stamfordcse`.`poststeachers`
-- -----------------------------------------------------
ENGINE = InnoDB
216 | P a g e
AUTO_INCREMENT = 23
-- -----------------------------------------------------
-- Table `stamfordcse`.`results`
-- -----------------------------------------------------
217 | P a g e
`classTest4` TEXT NULL DEFAULT NULL,
218 | P a g e
`report2` TEXT NULL DEFAULT NULL,
ENGINE = InnoDB
AUTO_INCREMENT = 81
-- -----------------------------------------------------
-- Table `stamfordcse`.`resultsheet`
-- -----------------------------------------------------
ENGINE = InnoDB
219 | P a g e
-- -----------------------------------------------------
-- Table `stamfordcse`.`schedule`
-- -----------------------------------------------------
ENGINE = InnoDB
AUTO_INCREMENT = 21
-- -----------------------------------------------------
-- Table `stamfordcse`.`slidelectures`
-- -----------------------------------------------------
220 | P a g e
`slidesl` INT(11) NOT NULL AUTO_INCREMENT,
ENGINE = InnoDB
AUTO_INCREMENT = 47
-- -----------------------------------------------------
-- Table `stamfordcse`.`softwaredb`
-- -----------------------------------------------------
221 | P a g e
CREATE TABLE IF NOT EXISTS `stamfordcse`.`softwaredb` (
ENGINE = InnoDB
AUTO_INCREMENT = 7
-- -----------------------------------------------------
-- Table `stamfordcse`.`studentsall`
-- -----------------------------------------------------
222 | P a g e
`stdFullName` TEXT NULL DEFAULT NULL,
223 | P a g e
`presentState` TEXT NULL DEFAULT NULL,
CONSTRAINT `studentsall`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`resultdoc` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
224 | P a g e
FOREIGN KEY (`sl`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
225 | P a g e
FOREIGN KEY (`sl`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
226 | P a g e
FOREIGN KEY (`sl`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
227 | P a g e
FOREIGN KEY (`sl`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`subjects` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `studentsall`
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
228 | P a g e
AUTO_INCREMENT = 41
-- -----------------------------------------------------
-- Table `stamfordcse`.`students`
-- -----------------------------------------------------
229 | P a g e
`StudentNewPass` TEXT NOT NULL,
CONSTRAINT `fk_students_slidelectures1`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_students_postsall1`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_students_resultdoc1`
230 | P a g e
REFERENCES `stamfordcse`.`resultdoc` (`sl`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_students_softwaredb1`
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
-- -----------------------------------------------------
-- Table `stamfordcse`.`advisors`
-- -----------------------------------------------------
CONSTRAINT `fk_advisors_students1`
231 | P a g e
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
-- -----------------------------------------------------
-- Table `stamfordcse`.`admission_schedule`
-- -----------------------------------------------------
232 | P a g e
`admissionStartDate` TEXT NULL DEFAULT NULL,
ENGINE = InnoDB
AUTO_INCREMENT = 36
-- -----------------------------------------------------
-- Table `stamfordcse`.`teachers`
-- -----------------------------------------------------
233 | P a g e
`teacherEmail` TEXT NOT NULL,
234 | P a g e
`newscse_sl` INT(111) NOT NULL,
FOREIGN KEY ()
REFERENCES `stamfordcse`.`teachers` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`takencourses` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`subjects` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`studentsall` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`softwaredb` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
236 | P a g e
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`slidelectures` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`schedule` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`resultsheet` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`results` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`resultdoc` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
237 | P a g e
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`poststeachers` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`postsall` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`notice` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`newscse` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`lecturevideo` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
238 | P a g e
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`eventscse` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`coursetaken` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`courseoutlinecsi` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`courseoutlinecse` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`courseofferedforcse` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
239 | P a g e
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`coureslist` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`books` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`advisors` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `teachers`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`admission_schedule` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = ndbcluster
AUTO_INCREMENT = 18
240 | P a g e
-- -----------------------------------------------------
-- Table `stamfordcse`.`admissiontestresult`
-- -----------------------------------------------------
CONSTRAINT ``
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
AUTO_INCREMENT = 8
-- -----------------------------------------------------
-- Table `stamfordcse`.`admin`
241 | P a g e
-- -----------------------------------------------------
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`teachers` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
242 | P a g e
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`takencourses` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`subjects` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`studentsall` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`students` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`schedule` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
243 | P a g e
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`resultsheet` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`results` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`resultdoc` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`poststeachers` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`postsall` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
244 | P a g e
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`notice` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`newscse` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`lecturevideo` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`eventscse` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`coursetaken` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
245 | P a g e
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`courseoutlinecsi` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`courseoutlinecse` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`courseofferedforcse` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`coureslist` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`books` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
246 | P a g e
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`advisors` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`admissiontestresult` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`admission_schedule` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `admin`
FOREIGN KEY ()
REFERENCES `stamfordcse`.`admin` ()
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
AUTO_INCREMENT = 7
247 | P a g e
-- -----------------------------------------------------
-- Table `stamfordcse`.`new-applicaton`
-- -----------------------------------------------------
248 | P a g e
`state` TEXT NULL DEFAULT NULL,
ENGINE = InnoDB
-- -----------------------------------------------------
-- Table `stamfordcse`.`springspring`
-- -----------------------------------------------------
ENGINE = InnoDB
-- -----------------------------------------------------
-- Table `stamfordcse`.`teachers_has_courseoutlinecse`
249 | P a g e
-- -----------------------------------------------------
CONSTRAINT `fk_teachers_has_courseoutlinecse_teachers`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_teachers_has_courseoutlinecse_courseoutlinecse1`
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
-- -----------------------------------------------------
-- Table `stamfordcse`.`teachers_has_lecturevideo`
-- -----------------------------------------------------
250 | P a g e
CREATE TABLE IF NOT EXISTS `stamfordcse`.`teachers_has_lecturevideo` (
CONSTRAINT `fk_teachers_has_lecturevideo_teachers1`
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_teachers_has_lecturevideo_lecturevideo1`
ON DELETE NO ACTION
ON UPDATE NO ACTION)
251 | P a g e
ENGINE = InnoDB
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
252 | P a g e
CHAPTER 11
DATA STORAGE DESIGN
253 | P a g e
CHAPTER 11: DATA STORAGE DESIGN
Another important activity of the design phase is designing the data storage component of the
system. This chapter describes the activities that are performed when developing the data storage
design. First, the different ways in which data can be stored are described. Several important
characteristics that should be considered when selecting the data storage format are discussed. The
process of revising the logical data model into the physical data model is then outlined. Because
one of the most popular data storage formats today is the relational database, optimization of
relational databases from both storage and access perspectives is also included.
11.1 Introduction
As explained in Chapter 8, the work done by any application program can be divided into four
general functions: data storage, data access logic, application logic, and presentation logic. The
data storage function is concerned with how data is stored and handled by the programs that run
the system.
The next section describes several different kinds of files and databases that can be used to handle
a system’s data storage requirements.
11.2.1 Files
A data file contains an electronic list of information that is formatted for a particular transaction,
and the information is changed and manipulated by programs that are written for those purposes.
Files created by older, legacy systems are frequently in a proprietary format, while newer systems
use a standard format such as CSV (comma separated value) or tab-delimited. Typically, files are
organized sequentially, and new records are added to the file’s end. These records can be
associated with other records by a pointer, which is information about the location of the related
record. A pointer is placed at the end of each record, and it “points” to the next record in a series
or set. Sometimes files are called linked lists because of the way the records are linked together by
the pointers.
There are several types of files that differ in the way they are used to support an application:
254 | P a g e
Master files,
Look-up files,
Transaction files,
Audit files, and
History files.
11.2.2 Databases
There are many different types of databases that exist on the market today. In this section, I provide
a brief description of four databases with which we may come into contact:
Legacy,
Relational,
Object, and
Multidimensional.
We will likely encounter a variety of ways to classify databases in our studies, but in this book we
classify databases in terms of how they store and manipulate data.
255 | P a g e
Tuition and cost Simple text and Transactional Relational
information number
Department Simple text Transactional Relational
information
Academic Simple text Transactional Relational
information
Student facilities Text and image Transactional Relational and
transactional file
Events, news, notice Simple text and Transactional Transactional file
board picture
Result Simple text , number Transactional Transactional file and
and file (.doc , pdf ) Relational
Course Registration Simple text, number Transactional Relational and
and date transactional file
256 | P a g e
PART FOUR IMPLEMENTATION PHASE
257 | P a g e
CHAPTER 12
MOVING INTO IMPLEMENTATION
258 | P a g e
CHAPTER 12: MOVING INTO IMPLEMENTATION
As the design phase is completed, the systems analyst begins to focus on the tasks associated with
building the system, ensuring that it performs as designed and developing documentation for the
system. Programmers will carry out the time-consuming and costly task of writing programs, while
the systems analyst prepares plans for a variety of tests that will verify that the system performs as
expected. Several different types of documentation will also be designed and written during this
part of the systems development life cycle.
12.1 Introduction
As the implementation phase begins, foremost on people’s minds is construction of the new
system. A major component of building the system is writing programs. In fact, some people
mistakenly believe that programming is the focal point of systems development. We hope you
agree that doing a good, thorough job on the analysis and design phases is essential to a smooth
and successful implementation phase.
The implementation phase consists of developing and testing the system’s software,
documentation, and new operating procedures. These topics are presented in this chapter.
Developing the system’s software (writing programs) can be the largest single component of any
systems development project in terms of both time and cost. It is generally also the best understood
component and may offer the fewest problems of all the aspects of the SDLC. Since the systems
analyst is usually not actually doing the programming (programmers are), in this chapter we
concentrate our attention on managing the programming process.
While programmers are transforming program specifications into working program code, the
systems analysts will be designing a variety of tests that will be performed on the new system. As
the programs are finalized, the systems analysts may conduct these tests to verify that the system
actually does what it was designed to do. Testing may be a major element of the implementation
phase for the systems analysts.
During this phase, it is also the responsibility of the systems analysts to finalize the system
documentation and develop the user documentation. The final section of this chapter discusses the
various types of documentation that must be prepared.
259 | P a g e
several tasks that the project manager must do to manage the programming effort: assigning
programming tasks, coordinating the activities, and managing the programming schedule.
For this project I am the only one person for programming, design and analyzing. but I have my
advisor teacher. So it is not possible to make weakly meeting. But I can meet my advisor teacher
every month for one time. And it is also possible to meet him if I fall in any problem in my project
work.
12.3 Testing
260 | P a g e
Writing programs is a fun, creative activity. Novice programmers tend to get caught up in the
development of the programs themselves and are often much less enchanted with the tasks of
testing and documenting their work. Testing and documentation aren’t fun; consequently, they
receive less attention than writing the programs.
Programming and testing are very similar to writing and editing, however. No professional writer
(or serious student writing an important term paper) would stop after writing the first draft.
Rereading, editing, and revising the initial draft into a good paper is the hallmark of good writing.
Likewise, thorough testing is the hallmark of professional software developers. Most professional
organizations devote more time and money to testing (and to revision and retesting) than to writing
the programs in the first place.
A program is not considered finished until it has passed its testing. For this reason, programming
and testing are tightly coupled. Testing is frequently the primary focus of the systems analysts as
the system is being constructed. The analysts must resist the temptation to rush into testing as soon
as the very first program module is complete, however. Spontaneously testing different events and
possibilities without spending time to develop a comprehensive test plan is dangerous, because
important tests may be overlooked. If an error does occur, it may be difficult to reproduce the exact
sequence of events that cause it. Instead, testing must be performed and documented systematically
so that the project team always knows what has and has not been tested.
At time of codding and testing I will follow a report sheet format to understand my error and
mistake clearly.
261 | P a g e
Fig: 12.1 Test Plan Report Format
262 | P a g e
Fig: 12.2 Testing Separate Models
263 | P a g e
12.3.2 Unit Tests
Unit tests focus on one unit—a program or a program module that performs a specific function
that can be tested. The purpose of a unit test is to ensure that the module or program performs its
function as defined in the program specification. Unit testing is performed after the programmer
has developed and tested the code and believes it to be error free. These tests are based strictly on
the program specification and may discover errors resulting from the programmer’s
misinterpretation of the specifications. Unit tests are often conducted by the systems analyst or,
sometimes, by the programmer who developed the unit.
There are two approaches to unit testing: black-box and white-box . Black-box testing is the most
commonly used. In this case, the test plan is developed directly from the program specification:
Each item in the program specification becomes a test, and several test cases are developed for it.
White-box testing is reserved for special circumstances in which the tester wants to review the
actual program code, usually when complexity is high.
User documentation (such as user manuals, training manuals, and online help systems) is designed
to help the user operate the system. Although most project teams expect users to have received
training and to have read the user manuals before operating the system, unfortunately, this is not
always the case. It is more common today—especially in the case of commercial software
packages for microcomputers—for users to begin using the software without training or reading
the user manuals. In this section, we focus on user documentation.
In this chapter I have described about documentation. Now I am going to apply all knowledge
from this chapter.
265 | P a g e
12.5 Users Manuals
User manuals is a kinds of documentation which will teach user about how to use the departmental
website. In my departmental website there are 5 types of user which are:
Public User
Academic Students
Academic Teacher
Admin
Supper Admin
12.5.1 Public User
Public user are parents, future student and any other person.
1. To know and view “Admission Information”, public user will follow like this
“Home PageINFORMATIONADMISSION INFORMATIONSCHEDULE/ADMISSION
TEST INFORMATION/TEST RESULT INFORMATION”. Please see the picture bellow with
tick in red color.
266 | P a g e
3. To view admission requirements, all user will follow:
HOME PAGEINFORMATIONREQUIREMENTSUNDERGRADUATE/GRADUATE.
ACADEMIC POLICY
ACADEMIC CALENDER
FACELITIES OF STUDENTS
CREDIT TRANSFER
TEAM OF FACULTY
ACADEMIC EXCELLENCE
5. To view tuition and cost information, all user will follow:
HOME PAGE INFORMATIONS TUITION AND COST CSE/CSI/MCA/MSCAE
DETAILS.
As departmental website, the website will contains a lot information like notice board, news
board, events information etc.
8. To view notice board, news or events, all user will find headline of notice and news
at the home page. User can view details just clicking on the link. Or they can follow
the followings:
HOME PAGE INFORMATIONS NOTICE BOARD DETAILS
There are more information to view for all user from the website. I think all user will find those
information easily by using this website. Public user will just follow: Home Page Header
INFORMATIONS AS USER NEED TO VIEW.
267 | P a g e
12.5.3 Academic Teacher
As an academic Teacher, every Teacher should know how to use this website. Here step by step
user manual for academic Teacher has been described at chapter-9 in user interface design. So
please view user interface at chapter-9.
12.5.4 Admin
As an Admin, every Admin should know how to use this website. Here step by step user manual
for Admin has been described at chapter-9 in user interface design. So please view user interface
at chapter-9.
268 | P a g e
CHAPTER 13
TRANSITIONS TO THE NEW SYSTEM
269 | P a g e
For doing all activity, I am going to doing those activity which has been given bellow:
System Support
System Maintenance
Project Assessment
270 | P a g e
CHAPTER 14
CODDING AND FUNCTION
<?php
include 'dbconfig.php';
if(isset($_POST['activemyaccount'])){
$adminid = $_POST['teacherid'];
$adminemail = $_POST['teacheremail'];
$adminpincode = $_POST['teacheractivationcode'];
$adminpassword = $_POST['password'];
$confirmpassword = $_POST['confirmpassword'];
$status ="active";
if($adminpassword == $confirmpassword){
$activatemyaccount = "UPDATE `admin` SET
adminPassword='$confirmpassword',status='$status' WHERE adminId='$adminid' AND
pincode='$adminpincode' AND adminEmail='$adminemail'";
$runqury = mysql_query($activatemyaccount);
if($runqury){
$_SESSION["id"]=$teacherid;
echo "<script>window.open('loginAll.php','_self')</script>";
}
} else {
echo "<script>alert('password did not match.')</script>";
}
?>
272 | P a g e
14.4 login function and code
<?php
include 'dbconfig.php';
if(isset($_POST['habib'])){
$adminId = $_POST['adminId'];
$password = $_POST['password'];
if(mysql_num_rows($run)>0){
$_SESSION["adminId"]=$adminId;
echo
"<script>window.open('privete/adminpenel/adminHome.php?id=$adminId','_self')</script>";
} else if(mysql_num_rows($runt)>0){
$_SESSION["teacherId"]=$adminId;
echo
"<script>window.open('privete/teachers/teacherHome.php?id=$adminId','_self')</script>";
} else if(mysql_num_rows($runs)>0){
$_SESSION["id"]=$adminId;
echo
"<script>window.open('privete/students/studentsHome.php?id=$adminId','_self')</script>";
} else {
273 | P a g e
echo "<script>alert('ID or password incurrect.')</script>";
}
}
?>
<?php
include 'dbconfig.php';
<?php
include 'dbconfig.php';
$admissionresultinfo = "SELECT * FROM `admissiontestresult` GROUP BY trimester
ORDER BY `admissiontestresult`.`adtestresultsl` DESC LIMIT 0 , 5";
$resultadmissionresultinfo = mysql_query($admissionresultinfo);
$trimesternew = $row['trimester'];
274 | P a g e
$adtestresultsl = $row['adtestresultsl'];
$postedDate = $row['postedDate'];
$testType = $row['testType'];
$admissionresultfile = $row['admissionresultfile'];
$topics = $row['topics'];
$massage = $row['massage'];
<?php
include 'dbconfig.php';
$abc="SELECT *,COUNT(*)
FROM schedule WHERE scheduleType='Class Schedule'
GROUP BY ScheduleSession,ScheduleSessionYear ORDER BY ScheduleSessionYear DESC
LIMIT 0,3";
$result_set=mysql_query($abc);
275 | P a g e
while($row=mysql_fetch_array($result_set))
{
?>
<button class="accordion">
<?php
echo "<td>" . $row['ScheduleSession'] . "</td>";
echo "";
echo " ";echo " ";echo " ";
echo " : ".$row['ScheduleSessionYear'];
echo "(";
echo "<td>" . $row['COUNT(*)'] . "</td>";
echo ")";
?>
</button>
<?php
$ScheduleSession =$row['ScheduleSession'];
$ScheduleSessionYear =$row['ScheduleSessionYear'];
$ScheduleSession=$row['ScheduleSession'];
$ScheduleSessionYear=$row['ScheduleSessionYear'];
$scheduleType=$row['scheduleType'];
$scheduleOwner=$row['scheduleOwner'];
$scheduleFile =$row['scheduleFile'];
276 | P a g e
echo '<td style="padding: 15px;">';
echo " ".$ScheduleSession."-".$ScheduleSessionYear.'<br>';
echo "(".$scheduleType.")";
echo '<br>';
echo " By:".$scheduleOwner.'<br>';
echo '<br>';
echo '<td>';
echo '</td>';
echo '</tr>';
echo '</table>';
echo '<br>';
echo '<br>';
?>
</div>
<br>
<?php } ?>
<?php
include 'dbconfig.php';
if(isset($_POST['activemyaccount'])){
277 | P a g e
$stdid = $_POST['teacherid'];
$stdemail = $_POST['teacheremail'];
$stdpincode = $_POST['teacheractivationcode'];
$stdpassword = $_POST['password'];
$confirmpassword = $_POST['confirmpassword'];
$status ="active";
if($stdpassword == $confirmpassword){
//$_SESSION["id"]=$teacherid;
echo "<script>alert('sucsess.')window.open('loginAll.php','_self')</script>";
}
} else {
echo "<script>alert('password did not match.')</script>";
}
?>
<?php
include 'dbconfig.php';
if(isset($_POST['saveimage']))
{
//$sl= $_POST['datasl'];
278 | P a g e
//INSERT
$file = rand(10000,1000000)."-".$_FILES['file']['name'];
$file_loc = $_FILES['file']['tmp_name'];
$file_size = $_FILES['file']['size'];
$file_type = $_FILES['file']['type'];
$folder="../../resouresall/studentsProfilePics/";
$final_file=str_replace(' ','-',$new_file_name);
if(move_uploaded_file($file_loc,$folder.$final_file))
{
$insertprofilepic ="UPDATE `studentsall` SET `profilePicture`='$final_file' where
sl='$sl'";
$pictureeditresult = mysql_query($insertprofilepic);
if($pictureeditresult){
echo "<script>
alert('successfully uploaded');
window.location.href='editmyprofile.php?success';
</script>";
} else {
echo "<script>
alert('successfully uploaded but not inserted');
window.location.href='editmyprofile.php?fail';
</script>";
}
}else {
echo "<script>
alert('unsuccessfully uploaded');
window.location.href='editmyprofile.php?fail';
</script>";
279 | P a g e
}
?>
}
reader.readAsDataURL(input.files[0]);
}
}
</script>
<?php
if(!empty($_POST))
{
//database settings
include "dbconfig.php";
foreach($_POST as $field_name => $val)
{
//clean post values
280 | P a g e
$field_userid = strip_tags(trim($field_name));
$val = strip_tags(trim(mysql_real_escape_string($val)));
<?php
$ScheduleSession =$row['ScheduleSession'];
$ScheduleSessionYear =$row['ScheduleSessionYear'];
$ScheduleSession=$row['ScheduleSession'];
$ScheduleSessionYear=$row['ScheduleSessionYear'];
$scheduleType=$row['scheduleType'];
$scheduleOwner=$row['scheduleOwner'];
$scheduleFile =$row['scheduleFile'];
281 | P a g e
echo '<table align="center" width="90%"style="border: 3px solid black; cellspacing:3;
cellpadding:3;">';
echo '<tr background="tabile-bg-image.jpg" align="left">';
echo '<br>';
echo '<td>';
echo '</td>';
echo '</tr>';
echo '</table>';
echo '<br>';
echo '<br>';
?>
</div>
<br>
<?php } ?>
<?php
$scheduleType =$row['scheduleType'];
282 | P a g e
$newsql = "SELECT * FROM schedule where scheduleType='$scheduleType' ORDER BY sl
DESC";
$newresult_set=mysql_query($newsql);
while($row=mysql_fetch_array($newresult_set)){
$ScheduleSession=$row['ScheduleSession'];
$ScheduleSessionYear=$row['ScheduleSessionYear'];
$scheduleType=$row['scheduleType'];
$scheduleOwner=$row['scheduleOwner'];
$scheduleFile =$row['scheduleFile'];
echo '<br>';
echo '<td>';
echo '</td>';
echo '</tr>';
echo '</table>';
echo '<br>';
echo '<br>';
283 | P a g e
?>
</div>
<br>
<?php } ?>
<script>
var acc = document.getElementsByClassName("accordion");
var i;
<?php
include 'dbconfig.php';
$eventsl = $_GET['eventsl'];
$noticeinfo1 = "SELECT * FROM `eventscse` WHERE sl='$eventsl'";
$resultnoticeinfo1 = mysql_query($noticeinfo1);
$counter1 = 0;
$sl1 = $row['sl'];
$eventtitle1 = $row['eventTopics'];
$eventdescriptions1 = $row['descriptions'];
$eventBy1 = $row['organizesBy'];
$eventimage1 = $row['eventImage'];
$starttime1 = $row['startingtime'];
284 | P a g e
$eventDate1 = $row['eventDate'];
$eventLength1 = $row['eventLength'];
$eventCatagory1 = $row['eventCatagory'];
$eventGoal1 = $row['eventGoal'];
$mideaPratner1 = $row['mideaPratner'];
$entryFee1 = $row['entryFee'];
$place1 = $row['place'];
$eventvideo = $row['eventDemoVideo'];
?>
<section>events list</section>
}
<?php
include 'dbconfig.php';
$eventinfo = "SELECT *
FROM `eventscse`
ORDER BY `sl` DESC
LIMIT 0 , 8";
$resulteventinfo = mysql_query($eventinfo);
$counter = 0;
$sl = $row['sl'];
$eventtitle = $row['eventTopics'];
$eventdescriptions = substr($row['descriptions'],0,100).".......";
$eventBy = $row['organizesBy'];
$eventimage = $row['eventImage'];
$starttime = $row['startingtime'];
$eventDate = $row['startingtime'];
$eventLength = $row['eventLength'];
$eventCatagory = $row['eventCatagory'];
$eventGoal = $row['eventGoal'];
$mideaPratner = $row['mideaPratner'];
$entryFee = $row['entryFee'];
$place = $row['place'];
285 | P a g e
echo ' <div class="mbr-cards-col col-xs-12 col-lg-3" style="padding-top: 80px; padding-
bottom: 80px;">
<div class="container">
<div class="card cart-block">
<div class="card-img"><img
src="../../resouresall/events/eventsImages/'.$eventimage.'" class="card-img-top"></div>
<div class="card-block">
<h4 class="card-title">'.$eventtitle.'</h4>
<h5 class="card-subtitle">Organized By: '.$eventBy.'</h5>
<h5 class="card-subtitle">Start:
'.$eventDate.' ('.$starttime.')</h5>
<p class="card-text">'.$eventdescriptions.'</p>
<div class="card-btn"><a href="viewEventsOne.php?eventsl='.$sl.'" class="btn
btn-primary">MORE</a></div>
</div>
</div>
</div>
</div>';
if($counter%3==0){
echo '</div>';
echo '<div class="mbr-section mbr-section__container" id="buttons1-4"
style="background-color: rgb(43, 6, 128); padding-top: 20px; padding-bottom: 20px;">
</div>';
?>
include 'dbconfig.php';
$noticeinfo = "SELECT * FROM `notice` ORDER BY `sl` DESC LIMIT 0 , 16";
$resultnoticeinfo = mysql_query($noticeinfo);
$counter = 0;
$sl = $row['sl'];
$title = $row['title'];
$descriptions = substr($row['descriptions'],0,100).".......";
$noticeBy = $row['noticeBy'];
$file = $row['file'];
$startDate = $row['startDate'];
$lastDate = $row['lastDate'];
if($counter%4==0){
echo '</div>';
echo '<div class="mbr-section mbr-section__container" id="buttons1-4"
style="background-color: rgb(43, 6, 128); padding-top: 20px; padding-bottom: 20px;">
287 | P a g e
<div class="row">
<div class="col-xs-12">
<div class="text-xs-center">
<h1 style="color: yellow;">More Notice</h1>
</div>
</div>
</div>
</div>
</div>';
?>
<?php
include 'dbconfig.php';
$newsinformation = "SELECT *
FROM `newscse`
ORDER BY `sl` DESC
LIMIT 0 , 16";
$newsinformationqury = mysql_query($newsinformation);
$counter = 0;
$sl = $row['sl'];
$newsTopics = $row['newsTopics'];
$newsDescriptions = substr($row['newsDescriptions'],0,100).".......";
$newsBy = $row['newsBy'];
288 | P a g e
$newsImage = $row['newsImage'];
$newsDate = $row['newsDate'];
$posted = $row['date'];
$newsCatagory = $row['newsCatagory'];
if($counter%3==0){
echo '</div>';
echo '<div class="mbr-section mbr-section__container" id="buttons1-4"
style="background-color: rgb(43, 6, 128); padding-top: 20px; padding-bottom: 20px;">
289 | P a g e
</div>';
?>
<?php
include 'dbconfig.php';
$recenttrimester9= "SELECT * "
. "FROM courseofferedforcse ORDER BY courseofferedforcse.coursesl DESC LIMIT
0,1";
$run_queryrecenttrimester9=mysql_query($recenttrimester9);
if($row=mysql_fetch_array($run_queryrecenttrimester9)){
$recenttrimesterH = $row['trimester'];
$abcH="SELECT *,COUNT(*)
FROM courseofferedforcse WHERE trimester='$recenttrimesterH'
GROUP BY courseofferedtobatch ORDER BY coursesl DESC";
$result_setH=mysql_query($abcH);
while($row=mysql_fetch_array($result_setH))
{
?>
<button class="accordion">
<?php
echo "<td>" . $row['courseofferedtobatch'] . "</td>";
echo "(";
echo "<td>" . $row['COUNT(*)'] . "</td>";
echo ")";
290 | P a g e
?>
</button>
include_once 'dbconfig.php';
$trimesterH = $row['trimester'];
$courseofferedtobatchnumberH = $row['courseofferedtobatch'];
$teacherIdH = $_SESSION['id'];
$courseinfoH="SELECT * FROM courseofferedforcse,courseoutlinecse WHERE
trimester='$recenttrimesterH' AND
courseofferedforcse.offeredcoursecode=courseoutlinecse.courseCode AND
courseofferedtobatch='$courseofferedtobatchnumberH' ";
$run_querycourseinfoH= mysql_query($courseinfoH);
while ($row= mysql_fetch_array($run_querycourseinfoH)){
$courseslnumber1H = $row['sl'];
$courseCodeH = $row['offeredcoursecode'];
$courseTitleH = $row['offeredcoursename'];
$courseCrdH = $row['courseCrd'];
$coursePrerequisiteH = $row['coursePrerequisite'];
$courseCoverH = $row['courseCover'];
$slH = $row['sl'];
$courseofferedtobatchnumberHH = $row['courseofferedtobatch'];
?>
<form enctype="multipart/form-data" action="viewRecentlyOfferedCourses.php"
method="POST" style="background-color: #ccffcc;">
<input type="hidden" name="courseselectedid" value="<?php echo $courseCodeH;?>">
291 | P a g e
<p>
CREDIT HR:<?php echo $courseCrdH;?>
</p>
</span>
<h4 align="left">
<b> <?php echo $courseCodeH.':'.$courseTitleH; ?></b>
</h4>
<br>
<p align="left">
Prerequisite:<?php echo $coursePrerequisiteH; ?>
<div class="w3-right">
<table>
<th></th>
<tr>
<td colspan="100%" ng-controller="examCtrl">
<span> </span>
</select>
292 | P a g e
<option value="2025">2025</option>
</select>
</td>
</tr></table>
</div>
<hr class="w3-clear">
</button>
</div>
</div>
</form>
<?php } ?>
</div>
<br>
<?php } ?>
293 | P a g e
<?php
session_start();
if(!isset($_SESSION['id'])){
header("location:../../index.php");
}
?>
<?php
include 'dbconfig.php';
$booksl = $_GET['boookscatchup'];
$bookinfo = "SELECT * FROM `books` WHERE booksl='$booksl'";
$resultbookinfo = mysql_query($bookinfo);
$counter1 = 0;
$booksl = $row['booksl'];
$booksID = $row['booksID'];
$booksName = $row['booksName'];
$booksAuthors = $row['booksAuthors'];
$booksPublishers = $row['booksPublishers'];
$booksEdition = $row['booksEdition'];
$booksCatagory = $row['booksCatagory'];
$booksDepartment = $row['booksDepartment'];
$booksSlides = $row['booksSlides'];
$booksVideos = $row['booksVideos'];
$booksFiles = $row['booksFiles'];
$booksCover = $row['booksCover'];
$booksDescriptions = $row['booksDescriptions'];
$booksRecomended = $row['booksRecomended'];
$uploaderid = $row['uploaderid'];
}
?>
Group Lectures:
<?php
294 | P a g e
include 'dbconfig.php';
if(isset($_GET['ofcoursesl'])){
$offerdcoursesl = $_GET['ofcoursesl'];
$teacherid = $courseteacherid;
$counterlectures = 0;
$studentid = $_SESSION['id'];
$courseinforesult_set3456=mysql_query($courseinfo3456);
if($courseinforesult_set3456!=TRUE){
echo '<h3>Sorry!No lecture uploaded yet</h3>';
}else{
while($row=mysql_fetch_array($courseinforesult_set3456)){
$counterlectures=$counterlectures+1;
$courseName=$row['offeredcoursename'];
$courseCode=$row['offeredcoursecode'];
$courseofferedtobatch = $row['courseofferedtobatch'];
$trimester=$row['trimester'];
$courseteachername = $row['courseteachername'];
$ocsl = $row['coursesl'];
$coursePreiqisiteName = $row['coursePrerequisitename'];
$coursePreiqisiteCode = $row['coursePrerequisite'];
$contucthour = $row['contucthour'];
$courseCode = $row['courseCode'];
$courseTitle = $row['courseTitle'];
$courseCrd = $row['courseCrd'];
295 | P a g e
$courseCover = $row['courseCover'];
$sl = $row['sl'];
$department = $row['department'];
$coursePrerequisitename = $row['coursePrerequisitename'];
$contucthour = $row['contucthour'];
$coursetype = $row['coursetype'];
$objective = $row['objective'];
$contents = $row['contents'];
$referencebooks = $row['referencebooks'];
$softwares = $row['softwares'];
$videointroductions = $row['videointroductions'];
$massagetopics = $row['massagetopics'];
$massagepoststd = $row['postdescriptions'];
$postallsl = $row['postallsl'];
if($counterlectures%1==0){
echo '<br>';
}
}
}
?>
Group Massage:
<?php
include 'dbconfig.php';
if(isset($_GET['ofcoursesl'])){
$offerdcoursesl = $_GET['ofcoursesl'];
$teacherid = $courseteacherid;
$counterlectures = 0;
296 | P a g e
$studentid = $_SESSION['id'];
$courseinforesult_set3456=mysql_query($courseinfo3456);
if($courseinforesult_set3456!=TRUE){
echo '<h3>Sorry!No lecture uploaded yet</h3>';
}else{
while($row=mysql_fetch_array($courseinforesult_set3456)){
$counterlectures=$counterlectures+1;
$courseName=$row['offeredcoursename'];
$courseCode=$row['offeredcoursecode'];
$courseofferedtobatch = $row['courseofferedtobatch'];
$trimester=$row['trimester'];
$courseteachername = $row['courseteachername'];
$ocsl = $row['coursesl'];
$coursePreiqisiteName = $row['coursePrerequisitename'];
$coursePreiqisiteCode = $row['coursePrerequisite'];
$contucthour = $row['contucthour'];
$courseCode = $row['courseCode'];
$courseTitle = $row['courseTitle'];
$courseCrd = $row['courseCrd'];
$courseCover = $row['courseCover'];
$sl = $row['sl'];
$department = $row['department'];
$coursePrerequisitename = $row['coursePrerequisitename'];
$contucthour = $row['contucthour'];
$coursetype = $row['coursetype'];
$objective = $row['objective'];
$contents = $row['contents'];
297 | P a g e
$referencebooks = $row['referencebooks'];
$softwares = $row['softwares'];
$videointroductions = $row['videointroductions'];
$massagetopics = $row['massagetopics'];
$massagepoststd = $row['postdescriptions'];
$postallsl = $row['postallsl'];
echo '<tr>';
echo '<td style=" color:black; border: 3px solid black;padding: 5px; width:166px;">';
echo $massagetopics;
echo '</td>';
echo '<td style=" border: 3px solid black;padding: 5px; width:auto; min-width:220px;">';
echo '<p href="" style="color:#000066;">Massage:<br> '.$massagepoststd.'</p>';
echo '</td>';
</form>';
echo '</td>';
echo '</tr>';
echo '</table>';
if($counterlectures%1==0){
298 | P a g e
echo '<br>';
}
}
}
?>
<?php
$stdid =$_SESSION['id'];
$trimester = $row['trimester'];
$resultcalculate = 0;
$subjectcalculate = 0;
echo '<td style=" border: 1px solid black;">'; echo 'Course Code:'; echo '</td>';
echo '<td style=" border: 1px solid black;">'; echo 'Course Name:'; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo 'Total(40%)'; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo 'Mid(30%)'; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo 'Final(30%)'; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo 'Total(100%)'; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo 'CGPA(point)'; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo 'CGPA'; echo '</td>';
echo '</tr>';
299 | P a g e
$coursecode = $row['courseCode'];
$coursename = $row['courseName'];
$crdhour =$row['courseCreditHr'];
$myname = $row['studentName'];
$totalin40 = $row['totalin40'];
$midtotal = $row['midMarks'];
$finaltotal = $row['finalMarks'];
$totalin100 = $row['totalMarks'];
$cgpatrimesterpoint = $row['totalCGPA'];
$gpatrimestergread = $row['result'];
$totalmarks = $row['totalMarks'];
if($totalmarks!="null"){
$resultcalculate =$resultcalculate+$totalmarks;
$subjectcalculate =$subjectcalculate+1;
}
if($totalmarks >=80){
$cgpatrimesterpoint= '4.00';
}elseif ($totalmarks >=75) {
$cgpatrimesterpoint= '3.75';
}elseif ($totalmarks >=70) {
$cgpatrimesterpoint= '3.50';
}elseif ($totalmarks >=65) {
$cgpatrimesterpoint= '3.25';
}elseif ($totalmarks >=60) {
$cgpatrimesterpoint= '3.00';
}elseif ($totalmarks >=55) {
$cgpatrimesterpoint= '2.75';
}elseif ($totalmarks >=50) {
$cgpatrimesterpoint= '2.50';
}elseif ($totalmarks >=45) {
$cgpatrimesterpoint= '2.25';
}elseif ($totalmarks >=40) {
$cgpatrimesterpoint= '2.00';
}elseif ($totalmarks <40) {
$cgpatrimesterpoint= '0.0';
}
if($totalmarks >=80){
$gpatrimestergread= 'A+';
}elseif ($totalmarks >=75) {
300 | P a g e
$gpatrimestergread= 'A';
}elseif ($totalmarks >=70) {
$gpatrimestergread= 'A-';
}elseif ($totalmarks >=65) {
$gpatrimestergread= 'B+';
}elseif ($totalmarks >=60) {
$gpatrimestergread= 'B';
}elseif ($totalmarks >=55) {
$gpatrimestergread= 'B-';
}elseif ($totalmarks >=50) {
$gpatrimestergread= 'C+';
}elseif ($totalmarks >=45) {
$gpatrimestergread= 'C';
}elseif ($totalmarks >=40) {
$gpatrimestergread= 'D';
}elseif ($totalmarks <40) {
$gpatrimestergread= '0.0';
}
echo '<tr>';
echo '<td style=" border: 1px solid black;">'; echo $coursecode; echo '</td>';
echo '<td style=" border: 1px solid black;">'; echo $coursename; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo $totalin40; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo $midtotal; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo $finaltotal; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo $totalin100; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo $cgpatrimesterpoint; echo
'</td>';
echo '<td style=" border: 1px solid black;">';echo $gpatrimestergread; echo '</td>';
echo '<tr>';
$trimesterpoint =$resultcalculate/$subjectcalculate;
$totalavgmarks = $resultcalculate/$subjectcalculate;
$trimestergpa=$trimesterpoint;
if($totalavgmarks >=80){
$totalavgmarks= '4.00';
301 | P a g e
}elseif ($totalavgmarks >=75) {
$totalavgmarks= '3.75';
}elseif ($totalavgmarks >=70) {
$totalavgmarks= '3.50';
}elseif ($totalavgmarks >=65) {
$totalavgmarks= '3.25';
}elseif ($totalavgmarks >=60) {
$totalavgmarks= '3.00';
}elseif ($totalavgmarks >=55) {
$totalavgmarks= '2.75';
}elseif ($totalavgmarks >=50) {
$totalavgmarks= '2.50';
}elseif ($totalavgmarks >=45) {
$totalavgmarks= '2.25';
}elseif ($totalavgmarks >=40) {
$totalavgmarks= '2.00';
}elseif ($totalavgmarks <40) {
$totalavgmarks= '0.0';
}
if($trimesterpoint >=80){
$gpatrimestergread= 'A+';
}elseif ($trimesterpoint >=75) {
$trimestergpa= 'A';
}elseif ($trimesterpoint >=70) {
$trimestergpa= 'A-';
}elseif ($trimesterpoint >=65) {
$trimestergpa= 'B+';
}elseif ($trimesterpoint >=60) {
$trimestergpa= 'B';
}elseif ($trimesterpoint >=55) {
$trimestergpa= 'B-';
}elseif ($trimesterpoint >=50) {
$trimestergpa= 'C+';
}elseif ($trimesterpoint >=45) {
$trimestergpa= 'C';
}elseif ($trimesterpoint >=40) {
$trimestergpa= 'D';
}elseif ($trimesterpoint <40) {
$trimestergpa= '0.0';
}
302 | P a g e
echo '<td>'.'<br><br>Trimester CGPA: '.$totalavgmarks.'</td><br>';
echo '<td>'. '<br><br> Trimester Grade: '.$trimestergpa.'</td>';
echo '<td></td>';echo '<td></td>';echo '<td></td>';echo '<td></td>';echo '<td></td>';echo
'<td></td>';
echo '</tr>';
echo '</table><br><br><br>';
?>
</div>
<br>
<?php } ?>
<?php
$trimester =$row['trimester'];
$stdudentsid = $_SESSION['id'];
$courseteacherid12 = $row['courseteacherid'];
$coursecodetaken = $row['courseId'];
$newsql = "SELECT * FROM coursetaken,courseofferedforcse "
. "WHERE coursetaken.trimester='$trimester' "
. "AND coursetaken.studentId='$stdudentsid' AND "
. "courseofferedforcse.trimester=coursetaken.trimester AND "
. "courseofferedforcse.courseteacherid=coursetaken.courseteacherid AND "
. "coursetaken.courseId=courseofferedforcse.offeredcoursecode";
$newresult_set=mysql_query($newsql);
while($row=mysql_fetch_array($newresult_set)){
$courseName=$row['courseName'];
$courseCode=$row['courseId'];
$courseofferedtobatch = $row['courseofferedtobatch'];
$trimester=$row['trimester'];
$courseteachername = $row['courseteachername'];
$ocsl = $row['coursesl'];
303 | P a g e
echo '<tr background="" align="left">';
echo '<br>';
echo "(".$trimester.")";
echo '<br>';
echo '<td>';
echo '</td>';
echo '</tr>';
echo '</table>';
echo '<br>';
echo '<br>';
?>
304 | P a g e
<?php
// Make a MySQL Connection
include_once 'dbconfig.php';
if(isset($_GET['habib'])){
$sl=$_GET['habib'];
305 | P a g e
echo "<a href='$filelink/$outlinefilw'>";
echo '<h3 style="color: blue">';
echo '<center>';
print 'DOWNLOAD COURSE OUTLINE';
echo '</center>';
echo '</h3>';
print '</a>';
print '<br>';
echo '</div>';
echo '</div>';
}
}
?>
<div class="container">
<div class="row" style="background-color: skyblue">
<div class="col-sm-4" style="background-color: darkseagreen">
<center><h3>All Lecture<br>( Pdf/ppt/doc) files</h3>
<p>-------------------------------</p><br>
</center>
<?php
// Make a MySQL Connection
include_once 'dbconfig.php';
if(isset($_GET['habib'])){
$sl=$_GET['habib'];
306 | P a g e
or die(mysql_error());
echo '<br>';
$lectureDocLink=$row['slideFile'];
$lectureurl="../../resouresall/lectureDocumentsFile";
echo '</table>';
echo '<br>';
}
}
?>
</div>
<div class="col-sm-4">
<h3>ALL VIDEO LECTURES</h3>
<p>-------------------------------</p><br>
307 | P a g e
<?php
// Make a MySQL Connection
include_once 'dbconfig.php';
if(isset($_GET['habib'])){
$sl=$_GET['habib'];
$lectureDocLink=$row['videoFile'];
$lectureurl="../../resouresall/videoLectures";
308 | P a g e
}
?>
<?php
include_once 'dbconfig.php';
if (isset($_POST['offercsecourse'])) {
$takencoursesl = $_POST['takencoursesl'];
if ($row= mysql_fetch_array($selectTakenCourseInformationsrunQury)){
$tcourseId = $row['courseId'];
$ttrimester = $row['trimester'];
$tcourseteacherid = $row['courseteacherid'];
$tstudentId = $row['studentId'];
$deleteResultrunQury = mysql_query($deleteResult);
if($deleteResultrunQury){
309 | P a g e
// $deleteTakenCourse = "DELETE FROM `results`"
// . "WHERE "
// . "results.courseCode='$tcourseId' AND "
// . "results.trimester='$ttrimester' AND "
// . "results.courseTeacherId='$tcourseteacherid' AND "
// . "results.StudentId='$tstudentId'";
$deleteTakenCourserunQury = mysql_query($deleteTakenCourse);
if($deleteTakenCourserunQury){
echo "<script>
alert('successfully Deleted');
window.location.href='viewRecentlyTakenCourses.php?successfull';
</script>";
}else {
echo "<script>
alert('Sorry! Un-successfull');
window.location.href='viewRecentlyTakenCourses.php?fail';
</script>";
}
}
?>
<?php
$stdid =$row['StudentId'];
$trimester = $row['trimester'];
$resultcalculate = 0;
310 | P a g e
$subjectcalculate = 0;
echo '<td style=" border: 1px solid black;">'; echo 'Course Code:'; echo '</td>';
echo '<td style=" border: 1px solid black;">'; echo 'Course Name:'; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo 'Total(40%)'; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo 'Mid(30%)'; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo 'Final(30%)'; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo 'Total(100%)'; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo 'CGPA(point)'; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo 'CGPA'; echo '</td>';
echo '</tr>';
$coursecode = $row['courseCode'];
$coursename = $row['courseName'];
$crdhour =$row['courseCreditHr'];
$myname = $row['studentName'];
$totalin40 = $row['totalin40'];
$midtotal = $row['midMarks'];
$finaltotal = $row['finalMarks'];
$totalin100 = $row['totalMarks'];
$cgpatrimesterpoint = $row['totalCGPA'];
$gpatrimestergread = $row['result'];
$totalmarks = $row['totalMarks'];
if($totalmarks!="null"){
$resultcalculate =$resultcalculate+$totalmarks;
$subjectcalculate =$subjectcalculate+1;
}
311 | P a g e
if($totalmarks >=80){
$cgpatrimesterpoint= '4.00';
}elseif ($totalmarks >=75) {
$cgpatrimesterpoint= '3.75';
}elseif ($totalmarks >=70) {
$cgpatrimesterpoint= '3.50';
}elseif ($totalmarks >=65) {
$cgpatrimesterpoint= '3.25';
}elseif ($totalmarks >=60) {
$cgpatrimesterpoint= '3.00';
}elseif ($totalmarks >=55) {
$cgpatrimesterpoint= '2.75';
}elseif ($totalmarks >=50) {
$cgpatrimesterpoint= '2.50';
}elseif ($totalmarks >=45) {
$cgpatrimesterpoint= '2.25';
}elseif ($totalmarks >=40) {
$cgpatrimesterpoint= '2.00';
}elseif ($totalmarks <40) {
$cgpatrimesterpoint= '0.0';
}
if($totalmarks >=80){
$gpatrimestergread= 'A+';
}elseif ($totalmarks >=75) {
$gpatrimestergread= 'A';
}elseif ($totalmarks >=70) {
$gpatrimestergread= 'A-';
}elseif ($totalmarks >=65) {
$gpatrimestergread= 'B+';
}elseif ($totalmarks >=60) {
$gpatrimestergread= 'B';
}elseif ($totalmarks >=55) {
$gpatrimestergread= 'B-';
}elseif ($totalmarks >=50) {
$gpatrimestergread= 'C+';
}elseif ($totalmarks >=45) {
$gpatrimestergread= 'C';
}elseif ($totalmarks >=40) {
$gpatrimestergread= 'D';
}elseif ($totalmarks <40) {
$gpatrimestergread= '0.0';
}
312 | P a g e
echo '<tr>';
echo '<td style=" border: 1px solid black;">'; echo $coursecode; echo '</td>';
echo '<td style=" border: 1px solid black;">'; echo $coursename; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo $totalin40; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo $midtotal; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo $finaltotal; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo $totalin100; echo '</td>';
echo '<td style=" border: 1px solid black;">';echo $cgpatrimesterpoint; echo
'</td>';
echo '<td style=" border: 1px solid black;">';echo $gpatrimestergread; echo '</td>';
echo '<tr>';
$trimesterpoint =$resultcalculate/$subjectcalculate;
$totalavgmarks = $resultcalculate/$subjectcalculate;
$trimestergpa=$trimesterpoint;
if($totalavgmarks >=80){
$totalavgmarks= '4.00';
}elseif ($totalavgmarks >=75) {
$totalavgmarks= '3.75';
}elseif ($totalavgmarks >=70) {
$totalavgmarks= '3.50';
}elseif ($totalavgmarks >=65) {
$totalavgmarks= '3.25';
}elseif ($totalavgmarks >=60) {
$totalavgmarks= '3.00';
}elseif ($totalavgmarks >=55) {
$totalavgmarks= '2.75';
}elseif ($totalavgmarks >=50) {
$totalavgmarks= '2.50';
}elseif ($totalavgmarks >=45) {
$totalavgmarks= '2.25';
}elseif ($totalavgmarks >=40) {
$totalavgmarks= '2.00';
}elseif ($totalavgmarks <40) {
$totalavgmarks= '0.0';
}
313 | P a g e
if($trimesterpoint >=80){
$gpatrimestergread= 'A+';
}elseif ($trimesterpoint >=75) {
$trimestergpa= 'A';
}elseif ($trimesterpoint >=70) {
$trimestergpa= 'A-';
}elseif ($trimesterpoint >=65) {
$trimestergpa= 'B+';
}elseif ($trimesterpoint >=60) {
$trimestergpa= 'B';
}elseif ($trimesterpoint >=55) {
$trimestergpa= 'B-';
}elseif ($trimesterpoint >=50) {
$trimestergpa= 'C+';
}elseif ($trimesterpoint >=45) {
$trimestergpa= 'C';
}elseif ($trimesterpoint >=40) {
$trimestergpa= 'D';
}elseif ($trimesterpoint <40) {
$trimestergpa= '0.0';
}
<?php } ?>
314 | P a g e
<?php
include 'dbconfig.php';
$teachersslno = $_GET['teachersl'];
$information = "SELECT * FROM teachers WHERE sl='$teachersslno'";
$sql = mysql_query($information);
while($row = mysql_fetch_array($sql))
{
$sl=$row['sl'];
?>
// profile information
}
<?php
if(!empty($_POST))
{
//database settings
include "dbconfig.php";
foreach($_POST as $field_name => $val)
{
//clean post values
$field_userid = strip_tags(trim($field_name));
$val = strip_tags(trim(mysql_real_escape_string($val)));
315 | P a g e
}
} else {
echo "Invalid Requests";
}
?>
<?php
include 'dbconfig.php';
if(isset($_SESSION['teacherId'])){
$courseteacherid = $_SESSION['teacherId'];
$abc="SELECT *,COUNT(*)
FROM coursetaken WHERE courseteacherid='$courseteacherid'
GROUP BY trimester ORDER BY trimester DESC";
$result_set=mysql_query($abc);
while($row=mysql_fetch_array($result_set))
{
echo '<button class="accordion">';
echo "<td>" . $row['trimester'] . "</td>";
echo "(";
echo ")";
echo '</button>';
316 | P a g e
while($row=mysql_fetch_array($newresult_set)){
$stdName=$row['courseName'];
$stdId = $row['courseId'];
$coursesl = $row['sl'];
//$profilepic=$row['profilePicture'];
echo '<br>';
echo '<a href="academicresulentry.php?courseid=',$coursesl,'" style="color:blue;">';
echo "EDIT RESULT SHEET";
echo '</a>';
echo '</td>';
echo '<td>';
echo '</td>';
echo '</tr>';
echo '</table>';
echo '<br>';
echo '<br>';
}
echo '</div>';
}
?>
317 | P a g e
<script>
$(function(){
//acknowledgement message
var message_status = $("#status");
$("td[contenteditable=true]").blur(function(){
var field_userid = $(this).attr("id") ;
var value = $(this).text() ;
$.post('ajaxEditeResultSheet.php' , field_userid + "=" + value, function(data){
if(data != '')
{
message_status.show();
message_status.text(data);
//hide the message
setTimeout(function(){message_status.hide()},3000);
}
});
});
});
</script>
<?php
if(!empty($_POST))
{
//database settings
include "dbconfig.php";
foreach($_POST as $field_name => $val)
{
//clean post values
$field_userid = strip_tags(trim($field_name));
$val = strip_tags(trim(mysql_real_escape_string($val)));
318 | P a g e
} else {
echo "Invalid Requests";
}
?>
<?php
if(!empty($_POST))
{
//database settings
include "dbconfig.php";
foreach($_POST as $field_name => $val)
{
//clean post values
$field_userid = strip_tags(trim($field_name));
$val = strip_tags(trim(mysql_real_escape_string($val)));
319 | P a g e
mysql_query("UPDATE results SET $field_name = '$val' WHERE sl =
$user_id") or mysql_error();
echo "Result Updated";
} else {
echo "Invalid Requests";
}
}
} else {
echo "Invalid Requests";
}
?>
<?php
// Make a MySQL Connection
include_once 'dbconfig.php';
echo '<td style="padding: 15px; border: 3px solid black; cellspacing:3; cellpadding:3;">';
320 | P a g e
echo '<table align="center" style="border:3px solid black;">';
echo '<tr>';
echo '<td>';
print "<img
src=../../resouresall/courseProfileResourses/courseProfileImages/$row[courseImage]
width=90px; height=90px; >";
print "</img>";
echo '</td>';
echo '</tr>';
echo '</table>';
echo '</td>';
echo '</td>';
echo '<br>';
echo"<a style='color: blue;' href='viewcseCourseFullProfileHome.php?habib=$sl'>";
print 'VIEW FULL PROFILE';
print '</a>';
echo ' ';
print '<br>'; print '<br>';
$outlinefilw=$row['courseOutline'];
$filelink="../../resouresall/courseProfileResourses/courseProfileFile";
echo "<a style='color: blue;' href='$filelink/$outlinefilw'>";
print 'COURSE OUTLINE';
321 | P a g e
print '</a>';
echo ' ';
print '<br>'; print '<br>';
print '<a style="color: blue;" href="#">';
print 'LECTURES';
print '</a>';
print '<br>';
echo '</td>';
//print '</td>';
print '</tr>';
print '<br>';
print '</table>';
}
?>
include_once 'dbconfig.php';
if(isset($_POST['offercsecourse']))
{
$courseselectedid = $_POST['courseselectedid'];
$teacherid = $_SESSION['id'];
$trimestername =$_POST['trimestername'];
$trimesteryear = $_POST['trimesteryear'];
$trimester = $trimestername.'-'.$trimesteryear ;
$courseofferdinfo="SELECT * FROM courseofferedforcse,studentsall WHERE
courseofferedforcse.offeredcoursecode='$courseselectedid' AND studentsall.id='$teacherid'";
$run_query= mysql_query($courseofferdinfo);
322 | P a g e
if (empty($_POST) == true)
{
header('Location: studentsHome.php');
}else
{
if($trimestername!="" && $trimesteryear!=""){
if ($row= mysql_fetch_array($run_query)){
$postsubmittername = $row['stdFullName'];
$couresofferadvisorid = $row['id'];
$string = "-S-";
$courseofferedtobatchname = $row['batchName'];
$courseofferedtobatchnumber = $row['batchNumber'];
$courseofferedtobatch = $courseofferedtobatchname."-"."S"."-
".$courseofferedtobatchnumber ;
$offeredcoursecode = $row['offeredcoursecode'];
$offeredcoursename = $row['offeredcoursename'];
$sessionName = $row['trimestername'];
$sessionYear = $row['trimesteryear'];
$studentName = $row['stdFullName'];
$studentId = $row['id'];
$studentBatch = $courseofferedtobatch;
// $trimester = $row['trimester'];
$courseteachernameofthiscourse = $row['courseteachername'];
$courseteacheridofthiscourse = $row['courseteacherid'];
if($postsubmittername!=""){
323 | P a g e
. "`studentName`, "
. "`studentId`, "
. "`studentBatch`, "
. "`trimester`, "
. "`courseteachername`, "
. "`courseteacherid`) "
. "VALUES "
. "('$offeredcoursecode', "
. "'$offeredcoursename', "
. "'$trimestername', "
. "'$trimesteryear', "
. "'null', "
. "'null', "
. "'$studentName', "
. "'$studentId', "
. "'$studentBatch', "
. "'$trimester', "
. "'$courseteachernameofthiscourse', "
. "'$courseteacheridofthiscourse'"
. ")";
$sql= mysql_query($offeredcourseinsertion);
if ($sql){
$resultcourseCode = $offeredcoursecode;
$resultcourseName = $offeredcoursename;
$resultcourseTeacherName = $courseteachernameofthiscourse;
$resultcourseTeacherId = $courseteacheridofthiscourse;
$resultStudentId = $studentId;
$resultstudentName = $studentName;
$resultstudentBatch = $studentBatch;
$resulttrimester = $trimester;
324 | P a g e
. "'$resultcourseTeacherName',"
. "'$resultcourseTeacherId',"
. "'$resultStudentId',"
. "'$resultstudentName',"
. "'$resultstudentBatch',"
. "'$resulttrimester'"
. ")";
$createresultsheetqury = mysql_query($createresultsheet);
if($sql){
echo '<script type="text/javascript">';
echo '</script>';
} else {
echo '<script type="text/javascript">';
echo '</script>';
}
} else {
echo 'window.location.href = "studentsHome.php";';
} else {
echo '<script type="text/javascript">';
echo 'alert("SORRY! Trimester and Year did not selected");';
325 | P a g e
echo 'window.location.href = "returnToOffercsecourse.php";';
echo '</script>';
?>
326 | P a g e
CHAPTER 15
CONCLUTION
327 | P a g e
CHAPTER 15: CONCLUTION
15.1 Introduction
Departmental website represents about our identity in the world. So departmental website must
have for Stamford University. As I am a single student, I tried to add many important fetures to
make this website more usable and more helpful. If there are five or foure mebers for this project,
the project could be perfect. In this chapter I am going to tell some limitation, future fretures of
this departmental website.
15.2 Limitations
People is not God. So threre may have some limitation on my work. Some limitation of this project
have been given bellow.
328 | P a g e
A ranking board for Students
A online teachers ranking and voting system to identify best teacher of the trimester
including teacher’s performance, quality of teaching, satisfaction of teacher,
behavior etc. in this system, student can give marks for their teacher.
Smart Board for Notice, Ranking etc.
I think those fetures will make this website more helpful for the user. I wanted to add those fetures
but for time, I kept those incomplete. I hope I will see those fetures in this website.
15.4 Conclusion
I did this project for not only my teachers but also the students who want to be a future Computer
Engineer. I have experienced a lot of problems and limitastion in this CSE department. I feels
those limitation and want of laking. So I tried to solve those limitation and laking. As my simple
atampt, I just made this website. I know it will not remove all the probelems and limitations of the
department but I alos think this work is just a starting. This will help us in many way. And one day
my dream will complete on my CSE department of Stamford University Bangladesh. An attempt
is made in all its earnest towards the successful completion of the project. This system was verified
with valid as well as with invalid data. This system is user friendly. The control will be more
powerful. Connecting it to any type of database extends the development control. Any suggestions
for future development of the system are welcome. Upgrading the system if may can be done
without affecting the proper functioning of system.
329 | P a g e
References:
References are important source to complete my project. I have folloed many books, handbook,
Confarence articles, online sources and other university website of the world. All referances which
have been used to complete my project given bellow.
Books:
[1] “Systems Analysis and Design”, 5th Ed by Dennis, Wixom, Roth| ISBN – 9788126562954| All
Chapter.
[2] TutarialPoint simplyesylearning pdf PHP reference book from www.tutorialspoint.com url:
https://www.tutorialspoint.com/php/php_tutorial.pdf.
[3] “Learning PHP, MySQL, and JavaScript: A Step-by-Step Guide to Creating Dynamic Websites 5th
edition” Author: Robin Nixon. Publisher: O'Reilly Media. Release Date: July 2009 .
[4] “Learning PHP, MySQL & JavaScript: With jQuery, CSS & HTML5 (Learning Php, Mysql,
Javascript, Css & Html5)” Author: Robin Nixon. Publisher: O'Reilly Media. Release Date: 14 Dec 2014.
[5] Database System Concepts (Irwin Computer Science) 6th Edition, Kindle Edition by Abraham
Silberschatz (Author)
Online Sources:
330 | P a g e
[16] CSS Tutarial | [online]. Avaible: https://www.w3schools.com/css/default.asp
331 | P a g e
ABBREVIATIONS
XAMPP Cross-Platform (X), Apache (A), MySQL (M), PHP (P) and Perl (P)
332 | P a g e
333 | P a g e