You are on page 1of 365

CSE DEPARTMENTAL WEBSITE OF

STAMFORD UNIVERSITY BANGLADESH

This Project Submitted in Partial Fulfillment of the Requirements for the

Degree of

Bachelor of Science in Computer Science & Engineering


by

MD.HABIBUR RAHMAN

ID: CSE 04506186

Supervised by: Tarikuzzaman Emon


Senior Lecturer, Department of Computer Science & Engineering of Stamford University
Bangladesh.

Department of Computer Science & Engineering

STAMFORD UNIVERSITY BANGLADESH

September 23, 2017


ABSTRACT

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

This project report “CSE DEPARTMENTAL WEBSITE OF STAMFORD UNIVERSITY


BANGLADESH” submitted by MD.HABIBUR RAHMAN ID: CSE 04506186 to the Department
of Computer Science & Engineering (CSE), Stamford University Bangladesh. This project has
been accepted as satisfactory for fulfill the requirements for the graduation degree of Bachelor of
Science (B.Sc) in Computer Science & Engineering and approved for its style and contents and
nice work.

Board of Examiner’s Name, Signature and Date:

……………………………... …………………………….. ……………………………..

(Board Member 1) (Board Member 2) (Board Member 3)

Date: Date: Date:

Supervisor’s Signature and Date:

……………………………...

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.

Signature and Date:

……………………………...

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

TABILE OF CONTENTS………………………………………………………………… vii

LIST OF FIGURES……………………………………………………………………….. xviii

LIST OF TABLES………………………………………………………………………… xxvii

BOOK SAMARRY………………………………………………………………………… xxxi

INTRODUCTION………………………………………………………………………… xxxi

PROJECT MOTIVATION………….…………………………………………………….. xxxi

CHAPTER WISE WORKING PLAN AND FLOW CHART ON SAD…………………. xxxi

PART ONE PLANNING PHASE ………………………………………………………. 1

CHAPTER 1: THE SYSTEMS ANALYST AND INFORMATION SYSTEMS


DEVELOPMENT ………………………………………………………………………… 2

1.1 Chapter Introduction……………………………………………………………. 2

1.2 The System Analyst…………………………………………………………….. 2

1.2 .1 System Analyst Skills………………………………………………… 2

1.2 .2 System Analyst Roles………………………………………………... 4

1.3 The Systems Development Life Cycle………………………………………..... 5

1.3.1 Planning………………………………………………………………. 6

1.3.2 Analysis………………………………………………………………. 6

1.3.3 Design…………………………………………………………………... 7

1.3.4 Implementation…………………………………………...…………….. 7

1.4 Project Identification and Initiation………….…………………..……………….. 8

1.4.1 System Request………………………….………………………….…. 8

vii
1.4.2 Applying the Concepts………….....……………………………..…….. 8

1.4.3 Project Background….……………………………………………..…… 8

1.4.4 System Request .……………………………………………........…....… 9

1.4.5 System Request Report Table………………………………….……….. 9

1.5 Feasibility Analysis………………………………………………………………. 11

1.5.1 Technical Feasibility………………………………………………….... 13

1.5.2 Economic Feasibility…………………………………………………… 13

1.5.3 Organizational Feasibility………………………………………………. 13

1.5.4 Applying the Concepts…….……………………………….…………… 14

1.5.5 Feasibility Analysis Report Table………………………………………. 14

CHAPTER 2: SELECTION & MANAGEMENT……………………………………….. 18

2.1 Introduction………………………………………………………………….…… 18

2.2 Project Selection…………………………………………………………….……. 18

2.2.1 Table of Project Selection Questions List ……………………………….. 18

2.2.2 Applying the Concepts…………………………………………………... 19

2.2.2.1 Table Project Selection Question & Answer…………………… 19

2.3 Creating the Project Plan…………………………………………………………… 19

2.3.1 Project Methodology Options…………………………………………... 20

2.3.2 Selecting the Appropriate Development Methodology………………….. 21

2.3.2.1 Table for Selecting Project Development Methodology………. 21

2.3.3 Estimating the Project Time Frame………………………………………. 23

2.3.3.1 Table of user Interface and pages counted estimated…………… 23

2.3.3.2 Database Table counted……………………………………….. 24

2.3.3.3 Table of Estimating the Project Time Frame ………………….. 24

2.3.4 Developing the Work Plan………………………………………………. 27

viii
2.3.4.1 Table of Identify tasks………………………………………….. 25

2.4 Staffing the Project…………………………………………………..…………… 26

2.4.1 Staffing Plan…………………………………………………………… 27

2.4.2 Coordinating Project Activities………………………………………… 27

2.5 Managing and Controlling the Project…………………………………………… 27

2.5.1 Refining Estimates……………………………………………………… 27

2.5.2 Managing Scope………………………………………………………… 27

2.5.3 Time boxing…………………………………………………………….. 28

2.5.4 Managing Risk………………………………………………………….. 28

2.6 Applying the Concepts……………………………………………………………. 28

2.6.1 Table of Project Management and Time Boxing…………………………. 28

2.6.2 Staffing the Project………………………………………………………. 30

PART TWO ANALYSIS PHASE………………………………………………………….. 31

CHAPTER 3: REQUIREMENTS DETERMINATION….………………………………. 33

3.1 Introduction………………………………………………………………………… 33

3.2 The Analysis Phase………………………………………………………………... 33

3.3 Requirements Determination………………………………………………………. 33

3.3.1 What Is a Requirement? ............................................................................. 33

3.3.2 The Process of Determining Requirements……………………………… 34

3.3.3 The Requirements Definition Statement………………………………... 34

3.3.3.1 Table of Requirements Definition Statement………………….. 34

3.4 Requirements Elicitation Techniques………………………………………………. 35

3.4.1 Requirements Elicitation in Practice…………………………….…..…… 36

3.4.2 Interviews………………………………………………………………… 36

ix
3.4.2.1 Table of Interview Notes………………………………………. 36

3.4.3 Joint Application Development (JAD) ………………………………….. 37

CHAPTER 4: USE CASE ANALYSIS…………………………………………………… 39

4.1 Introduction……………………………………………………………………..... 39

4.2 Use Cases…………………………………………………………………………. 39

4.2.1 Elements of a Use Case………………………………………………….. 39

4.3 Applying the Concepts of Use Case Diagram ……………………………………. 41

4.3.1 Details Use Case Diagram of this projects………………………………. 41

CHAPTER 5: PROCESS MODELING …………………………………………………… 48

5.1 Introduction………………………………………………………………………... 48

5.2 Data Flow Diagrams………………………………………………………………... 48

5.2.1 Reading Data Flow Diagrams…………………………………………... 48

5.2.2 Elements of Data Flow Diagrams………………………………………… 49

5.2.3 Using Data Flow Diagrams to Define Business Processes……………….. 49

5.2.4 Process Descriptions……………………………………………..……… 50

5.3 Creating Data Flow Diagrams……………………………………………………… 50

5.3.1 Creating the Context Diagram…………………………………………… 51

5.3.2 Creating Data Flow Diagram Fragments………………………………… 53

5.3.3 Creating the Level 0 Data Flow Diagram (5.3.2)………………………… 53

5.3.4 Creating Level 1 Data Flow Diagrams…………………………………… 54

5.3.5 Validating the Data Flow Diagrams……………………………………… 55

5.4 Applying the Concepts of DFD at my Project……………………………………… 55

5.4.1 Creating the Context, DFD, Level 0, level 1 Diagram……………….…… 56

Chapter 6: Data Modeling …………………………………………………………………… 64

x
6.1 Introduction……………………………………………………………………….... 64

6.2 The Entity Relationship Diagram…………………………………………………... 64

6.3 ERD Elements……………………………………………………………………… 64

6.4 Normalizing the Data Model…………………………………………………….. 66

6.5 Creating an Entity Relationship Diagram………………………………………… 66

PART THREE DESIGN PHASE …………………………………………………………. 73

CHAPTER 7: MOVING INTO DESIGN…………………………………………………. 74

7.1 Introduction………………………………………………………………………. 74

7.2 Transition from Requirements to Design………………………………………… 74

7.3 System Acquisition Strategies…………………………………………………… 75

7.3.1 Custom Development…………………………………………………… 76

7.3.2 Packaged Software………………………………………………………. 76

7.3.3 Outsourcing……………………………………………………………… 77

7.4 Influences on the Acquisition Strategy……………………………………………. 77

7.4.1 Business Need……………………………………………………………. 77

7.4.2 In-House Experience……………………………………………………... 77

7.4.3 Project Skills………………………………………………………….….. 78

7.4.4 Project Management…………………………………………..………… 78

7.5 Selecting an Acquisition Strategy………………………………………….. 78

7.5.1 Alternative Matrix………………………………………………………... 78

CHAPTER 8: ARCHITECTURE DESIGN………………………………………………… 80

8.1 Introduction………………………………………………………………………… 80

8.2 Elements of an Architecture Design 80

8.2.1 Architectural Components…….………………………………………… 80

xi
8.2.1.1 Client–Server Architectures……………………………………. 81

8.2.1.2 Client–Server Tiers…………………………………………….. 81

8.2.1.3 Less Common Architectures…………………………………… 82

8.3 Creating an Architecture Design………………………………………………… 82

8.3.1 Operational Requirements……………………………………………… 82

8.3.2 Performance Requirements…………………………………………….. 82

8.3.3 Security Requirements………………………………………………….. 83

8.3.4 Cultural and Political Requirements…………………………………….. 83

8.3.5 Designing the Architecture……………………………………………… 84

8.4 Hardware and Software Specification……………………………………………… 84

8.4.1 Table List of hardware and Software……………………………………... 85

CHAPTER 9: USER INTERFACE DESIGN ………….…………………………………. 87

9.1 Introduction………………………………………………………………… 87

9.2 Principles for User Interface Design……………………………………….. 87

9.3 User Interface Design Process……………………………………………… 87

9.4 Navigation Design…………………………………………………………. 88

9.5 Input Design………………………………………………………………... 88

9.6 Output Design…………………………………………………………….. 88

9.7 Applying the Concepts………………………………………………….… 88

9.7.1 Interfaces for Public User……………………………………….. 88

9.7.2 Interface for Academic Students………………………………... 113

9.7.3 Interface for Academic Teachers……………………………… 155

9.7.4 Interface for Admin/ Supper Admin……………………………. 171

CHAPTER 10: PROGRAM DESIGN…………………………………………………….. 182

10.1 Introduction1…………………………………………………………………….. 82

xii
10.2 Moving from Logical to Physical Process Models……………………………… 182

10.2.1 The Physical Data Flow Diagram…………………………………….. 182

10.3 All Database Table List………………………………………………………….. 182

10.3.1 Database Table of Admin………………………………………..……. 184

10.3.2 Database Table of admissiontestresult ………………………………… 185

10.3.3 Database Table of dmission_schedule…………………………………. 185

10.3.4 Database Table of advisors…………………………………………….. 186

10.3.5 Database Table of books ………………………………………………. 186

10.3.6 Database Table of courselist………………………………………….... 186

10.3.7 Database Table of courseofferedforcse…………………………….… 187

10.3.8 Database Table of courseoutlinecse…………………………………….. 188

10.3.9 Database Table of courseoutlinecsi…………………………………….. 188

10.3.10 Database Table of coursetaken………………………………………… 189

10.3.11 Database Table of eventscse …………………………………………. 189

10.3.12 Database Table of lecturevideo…………...………………………..… 190

10.3.13 Database Table of new-applicaton …………………………………… 190

10.3.14 Database Table of newscse…………………………………………… 191

10.3.15 Database Table of notice…………………………………………..… 192

10.3.16 Database Table of postsall…………………………………………… 192

10.3.17 Database Table of poststeachers …………………………………...... 193

10.3.18 Database Table of resultdoc …………………………………………. 193

10.3.19 Database Table of results ……………………………………………. 194

10.3.20 Database Table of resultsheet ……………………………………… 195

10.3.21 Database Table of schedule …………………………………………. 195

10.3.22 Database Table of slidelectures ……………………………………… 196

xiii
10.3.23 Database Table of softwaredb ……………………………………....... 196

10.3.24 Database Table of springspring …………………………………..… 197

10.3.25 Database Table of students …………………………………..……… 197

10.3.26 Database Table of studentsall ……………………………………… 198

10.3.27 Database Table of subjects …………………………………………. 199

10.3.28 Database Table of superadmin ……………………………………… 200

10.3.29 Database Table of takencourses ……………………………………. 200

10.3.30 Database Table of teachers …………………………………………. 200

10.4 Applying the Concepts ………………………………………………………… 203

10.5 Database programs …………………………………………………………….. 203

CHAPTER 11: DATA STORAGE DESIGN 254

11.1 Introduction ………………………………………………………………..…. 254

11.2 Data Storage Formats ………………………………………………………….. 254

11.2.1 Files …………………………………………………………………. 254

11.2.2 Databases ……………………………………………………….……. 255

11.2.3 Applying the Concepts ………………………………………….…… 255

11.3 Table of Project Data Description ………………………………………………. 255

PART FOUR IMPLEMENTATION PHASE……………………………………………. 257

CHAPTER 12: MOVING INTO IMPLEMENTATION……………………………….. 259

12.1 Introduction…………………………………………………………………… 259

12.2 Managing the Programming Process……………………………………………. 259

12.2.1 Assigning Programming Tasks……………………………………….. 260

12.2.2 Coordinating Activities………………………………………………. 260

xiv
12.2.3 Managing the Schedule……………………………………………… 260

12.3 Testing ………………………………………………………………………….. 261

12.3.1 Test Planning………………………………………………………… 261

12.3.2 Unit Tests……………………………………………………………. 264

12.3.3 Integration Tests………………………………………………………. 264

12.3.4 System Tests…………………………………………………………… 264

12.3.5 Acceptance Tests ………………………………………………..…… 264

12.4 Developing Documentation…………………………………………………...… 265

12.4.1 Types of Documentation……………………………………………... 265

12.4.2 Designing Documentation Structure………………………………… 265

12.5 Users Manuals …………………………………………………………………. 266

12.5.1 Public User…………………………………………………………… 266

12.5.2 Academic Students ………………………………………………… 268

12.5.3 Academic Teacher…………………………………………………… 268

12.5.4 Admin……………………………………………………………….. 268

12.5.5 Super Admin………………………………………………………… 268

CHAPTER 13: TRANSITIONS TO THE NEW SYSTEM…………………………..… 270

CHAPTER 14: CODDING AND FUNCTIONS……………………........……………… 272

14.1 Introduction…………………………………………………………………… 272

14.2 MySQL Database connect function…………………………………………… 272

14.3 signup function and PHP code ………………………………………………… 272

14.4 login function and code ……………………………………………………… 273

14.5 Function and Code for view admission schedule………………………………. 274

14.6 View admission Test Result ………………………………………………… 274

14.7 Download Class Schedule……………………………………………………. 276

xv
14.8 Changing password …………………………………………………………… 278

14.9 Editing live profile information (JavaScript/PHP). …………………………… 279

14.10 view class Schedule…………………………………………………………. 281

14.11 view events…………………………………………………………………… 284

14.12 view notice…………………………………………………………………… 287

14.13 view news……………………………………………………………………. 288

14.14 view offered course list……………………………………………………… 290

14.15 View E-book Full profile……………………………………………….…… 294

14.16 View Group profile ………………………………………………………….. 295

14.17 View result and mark sheet…………………………………………………… 299

14.18 view CT and other marks …………………………………………………… 303

14.19 view course outline ……………………………………………………….… 305

14.20 view taken courses…………………………………………………………… 309

14.21 View student’s activity………………………………………………………. 311

14.22 View Teacher’s profile……………………………………………………… 315

14.23 Edit profile live (JavaScript)………………………………………………… 315

14.24 Edit Result entry live ………………………………………………………… 316

14.25 Edit function and automation (JavaScript and Ajax)………………………… 319

14.26 Offer new Course……………………………………………………………. 320

14.27 Automation for creating group and Take Course ………………………….… 322

CHAPTER 15: CONCLUSION…………………………………………………………… 328

15.1 Introduction……………………………………………………………………. 328

15.2 Limitations……………………………………………………………………………………………………… 328

15.2.1 Speed of the website ……………………………………………………………………… 328

xvi
15.2.2 Search Box……………………………………………………………. 328

15.2.3 Incomplete Pages…………………………………………………………………….. 328

15.3 Future Enhancement……………………………………………………………………. 328

15.4 Conclusion……………………………………………………………………………… 329

REFEREBCES………………………………………………………………………………. 330

ABBREVIATIONS…………………………………………………………………………. 332

xvii
LIST OF FIGURES:
Sl No Chapter No Topics Page

1. 0 Chapter wise working plan and flow chart on SAD xxx

2. 1 Fig 1.1. The System Development Life Cycle 5

3. 2 Fig: 2.1 Software Development Models 20

4. 2 Fig: 2. 2 Spiral model 22

5. 4 Fig: 4.1 The actors for use-case diagram 40

6. 4 Fig: 4.2 Use Case Diagram of public user view 41

7. 4 Fig: 4.3 Use-Case Diagram for Departmental E-library 42

8. 4 Fig: 4.4 Use Case for Notice Board 42

9. 4 Fig: 4.5 Use Case for News Board 43

10. 4 Fig: 4.6 Use case diagram For Events 43

11. 4 Fig: 4.7 Academic Schedule 44

12. 4 Fig: 4.8 Use-case of course wise grouping 44

13. 4 Fig: 4.9 Online course registration (use-case diagram) 45

14. 4 Fig: 4.10 Academic result board (use case diagram) 45

15. 4 Fig: 4.11 Use case of any profile include teacher, 46


students, course profile.

16. 4 Fig: 4.12 Use Case Diagram of all kinds of lectures 46

17. 5 Fig: 5.1 The Context Level Data Flow Diagram of the 52
Course Registration System

18. 5 Figure: 5.2 The level-0 DFD of the Course Registration 53


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

21. 5 Fig: 5.5 DFD for Notice Board management system 58

22. 5 Fig: 5.6 DFD for News Board management system 58

23. 5 Fig: 5.7 DFD for events Board management system 59

24. 5 Fig: 5.8 DFD for Schedule Board management system 58

25. 5 Fig: 5.9 DFD for Online Courses Registration System 60


Automation

26. 5 Fig: 5.10 DFD for Course Wise Grouping and 60


Massaging

27. 5 Fig: 5.11 DFD for profile and course outline 61


management

28. 5 Fig: 5.12 DFD for Result Management 62

29. 6 Fig: 6.1 Data Modeling Symbol Sets 66

30. Fig: 6.2 Data Dictionary Using MySQL workbench 67

31. 6 Fig: 6.3 Data Dictionary Entry for a Relationship Using 68


MySQL workbench

32. 6 Fig: 6.4 ERD Diagram of Stamford cse departmental 69


website (logical view)

33. 6 Fig: 6.5 ERD Diagram of Stamford cse departmental 70


website (physical view)

34. 6 Fig: 6.6 ERD Diagram of CSE Departmental Project: 71


(Logical view)

35. 7 Fig: 7.1 Relation of drivers, risk and acquisition 75


strategy.

36. 7 Fig: 7.2 acquisition strategy. 75

37. 7 Fig: 7.3 acquisition strategy ALCM. 76

38. 8 Fig: 8.1 Example of Client–Server Architectures 81

xix
39. 8 Fig: 8.2 Client–Server Tiers 81

40. 8 Fig: 8.3 Client–Server Tiers 81

41. 8 Fig: 8.4 Example of Less Common Architecture 82

42. 8 Fig: 8.5 Nonfunctional Requirements and Their 84


Implications for Architecture Design

43. 9 Fig: 9.1 Home page (part 1) 89

44. 9 Fig: 9.2 Home page (part 2) 89

45. 9 Fig: 9.3 Home page (full part) 90

46. 9 Fig: 9.4 Information view links 91

47. 9 92
Fig: 9.5 Admission home Page

48. 9 Fig: 9.6 Admission Requirements Page 93

49. 9 Fig: 9.7 Admission requirements details page 94

50. 9 Fig: 9.8 Viewing Tuition and Cost home page 95

51. Fig: 9.9 Tuition and cost details page 96

52. 9 Fig: 9.10 Admission test information home page 97

53. 9 Fig: 9.11 Admission test details information page 98

54. 9 Fig: 9.12 Admission session and schedule home page 99

55. 9 Fig: 9.13 Session/Schedule details page 100

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

60. 9 Fig: 9.18 Academic Home page 105

xx
61. 9 Fig: 9.19 Teacher’s Information Page 106

62. 9 Fig: 9.20 Teacher’s Profile Information details Page 107

63. 9 Fig: 9.21 View News Page layout 108

64. 9 Fig: 9.22 View News Details Page layout 109

65. 9 Fig: 9.23 showing housing information 110

66. 9 Fig: 9.24 Financial and Scholarship information view 111


page

67. 9 Fig: 9.25 University contract, address information and 112


map view page

68. 9 Fig: 9.26 Signup page home 113

69. 9 Fig: 9.27 Sign up or activate account as Teacher Page 114

70. 9 Fig: 9.28 Sign up page mobile view 115

71. 9 Fig: 9.29 interface for login page 116

72. 9 Fig: 9.30 showing welcome page for student 116

73. 9 Fig: 9.31 layout for View Home Page 117

74. 9 Fig: 9.32 interface for E-library home page. 118

75. 9 Fig: 9.33 interface for E-library page link page. 119

76. 9 Fig: 9.34 interface for full E-library page 120

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

79. 9 Fig: 9.37 Book Profile Details Page 123

80. 9 Fig: 9.38 book profile details page example 2 124

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.

85. 9 Fig: 9.43 Students Home Page Header Information 127


Link View And Next Schedule.

86. 9 Fig: 9.44 Students Home Page Header Information 128


Link

87. 9 Fig: 9.45 Schedule Home Page View 129

88. 9 Fig: 9.46 Layout for Mobile User View. 130

89. 9 Fig: 9.47 Layout for Mobile User View. 131

90. 9 Fig: 9.48 Layout for Mobile User View. 132

91. 9 Fig: 9.49 Students Home Page mobile user view. 133

92. 9 Fig: 9.50 Online Course Registration System Layout-1. 133

93. 9 Fig: 9.51 Online Course Registration System Layout-2. 134

94. 9 Fig: 9.52 Online Course Registration System Layout-3. 135

95. 9 Fig: 9.53 Online Course Registration System Layout-4. 136

96. 9 Fig: 9.54 Online Course Registration System Layout-5. 136

97. 9 Fig: 9.55 Online Course Registration System Layout 6. 137

98. 9 Fig: 9.56 Course Full Profile. 138

99. 9 Fig: 9.57 My Group List Trimester Wise. 139

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.

107. 9 Fig: 9.66 Interface for Course Outline or Profile 145


Example-1

108. 9 Fig: 9.67 Interface for Course Outline or Profile 146


Example-2

109. 9 Fig: 9.68 Interface for deleting course picture-1 147

110. 9 Fig: 9.69 Interface for Deleting Course Picture-2 147

111. 9 Fig: 9.70 Interface for Deleting Course Picture-3 148

112. 9 Fig: 9.71 Interface For Editing Student’s Profile 149


Information

113. 9 Fig: 9.72 Interface For Editing Student’s Profile 150


Information and Changing Profile Picture

114. 9 Fig: 9.73 Interface for lectures Home Page 151

115. 9 Fig: 9.74 Interface for lectures Home Page 152

116. 9 Fig: 9.75 Interface for Viewing Academic Result 153


Layout-1

117. 9 Fig: 9.76 Interface for Viewing Academic Result 153


Layout-2

118. 9 Fig: 9.77 Interface for Viewing Academic Result and 154
My Course Activity

119. 9 Fig: 9.78 Interface for Teacher Home Page. 155

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.

123. 9 Fig: 9.82 Interface for Teacher Lecture Entry. 157

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

134. 9 Fig: 9.93 Interface for view students by teacher’s 164


subject

135. 9 Fig: 9.94 Interface for view students by teacher’s 164


subject and view student full profile

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

139. 9 Fig: 9.98 Registration request from the students, 168


trimester wise.

140. 9 Fig: 9.99 Viewing Registration Request batch wise. 168

141. 9 Fig: 9.100 Accept or delete registration request by 169


advisor.

142. 9 Fig: 9.101 New e-book entry 170

143. 9 Fig: 9.102 Delete e-book 171

144. 9 Fig: 9.103 admin welcome page after login 172

145. 9 Fig: 9.104 admin viewing links of view. 172

146. 9 Fig: 9.105 Supper admin viewing other admin list. 173

147. 9 Fig: 9.106 Supper admin viewing other admin details. 173

148. 9 Fig: 9.107 Edit or delete admin details. 174

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.

152. 9 Fig: 9.111 Viewing teacher Activation code and ID by 176


admin or supper admin.

153. 9 Fig: 9.112 Viewing teacher’s full profile to edit and 177
delete

154. 9 Fig: 9.113 Viewing Navigation of Delete Option for 178


Admin

155. 9 Fig: 9.114 Viewing Navigation of new entry by admin 178

xxv
156. 9 Fig: 9.115 Adding New Academic Teacher by Admin 178

157. 9 Fig: 9.116 Navigation of Edit by Admin 179

158. 9 Fig: 9.117 Viewing Navigation of view Option by 179


Admin

159. 9 Fig: 9.118 Adding New Course by Admin 180

160. 10 Fig: 10.1 Physical DFD for Stamford CSE 183


departmental website

161. 12 Fig: 12.1 Test Plan Report Format 262

162. 12 Fig: 12.2 Testing Separate Models 263

163. 12 Fig: 12.3 Error Discovery Rates for Different Stages of 263
Tests.

164. 12 Fig: 12.4 viewing admission information 266

xxvi
LIST OF TABLES:
Sl No Chapter Topics Page
No

1. 1 1.4.5 System Request Report Table 9-10

2. 1 1.5.5 Feasibility Analysis Report Table 14-16

3. 2 2.2.1 Table of Project Selection Questions List 18

4. 2 2.2.2.1 Table Project Selection Question & Answer 19

5. 2 2.3.2.1 Table for Selecting Project Development 21


Methodology

6. 2 2.3.3.1 Table of User interface blocks and pages counted 23

7. 2 2.3.3.2 Database Table counted 24

8. 2 2.3.3.3 Table of Estimating the Project Time Frame 24-25

9. 2 2.3.4.1 Table of Identify tasks of work plan 25-26

10. 2 2.6.1 Table of Project Management and Time Boxing 28-30

11. 3 3.3.3.1 Table of Requirements Definition Statement 34-35

12. 3 3.4.2.1 Table of Interview Notes 36-37

13. 7 7.5.1 Alternative Matrix 78

14. 8 8.3.5 Designing the Architecture report 84

15. 8 8.4.1 Table List of hardware and Software 85

16. 10 10.3 All Database Table List 183

10 10.3.1. Admin Database table 184

17. 10 10.3.2. admissiontestresult 185

18. 10 10.3.3.admission_schedule 185

19. 10 10.3.4 advisors 186

xxvii
20. 10 10.3.5 books 186

21. 10 10.3.6 coureslist 186

22. 10 10.3.7.courseofferedforcse 187

23. 10 10.3.8 courseoutlinecse 188

24. 10 10.3.9 courseoutlinecsi 188

25. 10 10.3.10 coursetaken 189

26. 10 10.2.11 eventscse 189

27. 10 10.3.12 lecturevideo 190

28. 10 10.3.13 new-applicaton 190

29. 10 10.3.14 newscse 191

30. 10 10.3.15 notice 192

31. 10 10.3.16 postsall 192

32. 10 10.3.17poststeachers 193

33. 10 10.3.18 resultdoc 193

34. 10 10.3.19 results 194

35. 10 10.3.20 resultsheet 195

36. 10 10.3.21 schedule 195

37. 10 10.3.22 slidelectures 196

38. 10 10.3.23. softwaredb 196

39. 10 10.3.24 springspring 197

40. 10 10.3.25 students 197

41. 10 10.3.26 studentsall 198

42. 10 10.3.27 subjects 199

43. 10 10.3.28 superadmin 200

xxviii
44. 10 10.3.29 takencourses 200

45. 10 10.3.30 teachers 200

46. 11 11.3 Table of Project Data description 255

47. 15 ABBREVIATIONS 332

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.

CHAPTER WISE WORKING PLAN AND FLOW CHART


ON SAD:

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.

1.2 The System Analyst


The systems analyst is a key person in the development of information systems. The Systems
analyst helps to analyze the business situation, identify opportunities for improvements, and design
an information system that adds value to the organization.
The systems analyst serves as a change agent, and this complex responsibility requires a wide
range of skills, including technical, business, analytical, interpersonal, management, and ethical.
In some organizations, systems analysts may develop a specialization such as business analyst,
requirements analyst, infrastructure analyst, change management analyst, or project manager.

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.

1.2.1 System Analyst Skills


A system analyst should have

 Working knowledge of software technology


 Computer programming experience and expertise
 General business knowledge
 Problem solving and problem reduction skills
 Interpersonal relation skills
 Flexibility and adaptability
 be able to think logically and analytically in a problem-solving environment
 be imaginative and good at creative reasoning
 be able to work independently or as part of a team
 have good oral and written communication skills
 be able to accept responsibility
 be willing to continuously update personal IT skills and knowledge
 have a business outcome approach

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.

1.2.2 System Analyst Roles


A systems analyst may

 Identify, understand and plan for organizational and human impacts of


planned systems, and ensure that new technical requirements are properly
integrated with existing processes and skill sets.
 Plan a system flow from the ground up.
 Interact with internal users and customers to learn and document
requirements that are then used to produce business requirements
documents.
 Write technical requirements from a critical phase.
 Interact with software architect to understand software limitations.
 Help programmers during system development, e.g. provide use cases,
flowcharts, and UML and BPMN diagrams.
 Document requirements or contribute to user manuals.
 Whenever a development process is conducted, the system analyst is
responsible for designing components and providing that information to the
developer.

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

Fig 1.1. The System Development Life Cycle

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.

1.4 Project Identification and Initiation


Projects are identified when someone recognizes a business need that can be satisfied through the
use of information technology. Project initiation is the point at which an organization creates and
assesses the original goals and expectations for a new system. The first step in the process is to
identify the business value for the system by developing a system request that provides basic
information about the proposed system. Next, the analysts perform a feasibility analysis to
determine the technical, economic, and organizational feasibility of the system.

1.4.1 System Request


The business value for an information system is identified and then described in a system request.
This form contains the project’s sponsor, business need, business requirements, and business value
of the information system, along with any other issues or constraints that are important to the
project. The document is submitted to an approval committee who determines whether the project
would be a wise investment of the organization’s time and resources.

1.4.2 Applying the Concepts on My Project


1.4.3 Project Background
My name is Md.Habibur Rahman and I have to submit a software project for my graduation from
Stamford University Bangladesh. So, to do this software project, an academic supervisor has been
assign for me and he is Tarikuzzaman Emon who is a senior lecturer of the department of computer
science and engineering of Stamford University Bangladesh. Stamford University Bangladesh has
its own website. But there is no any departmental website of Stamford.

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:

1.4.5 System Request Report Table


“CSE DEPARTMANTAL WEBSITE OF STAMFORD UNIVERSITY”

System request:

“Stamfordcse Departmental Website” only for CSE department.

This project has been proposed by Tarikuzzaman Emon who is my project supervisor.

Project Sponsor:

Tarikuzzaman Emon (Advisor)

Md.Habibur Rahman (Student)

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.

Why Stamford Needs a Departmental Website?

1. Save money, effort, and time


2. Easy Communication
3. Keep well-informed
9|Page
4. Enhance the learning experience
5. Students can get access to materials, lecture, E-book.
6. Facilitate enrollment,
7. Serve as a database
8. E-Library
9. Online course registration system

Project Basic Requirements:

1. Provide online access for all


2. Online Course Registration System
3. Admission Information
4. Notice Board
5. News, Events board
6. Free E-library
7. Connected with teacher and students
8. Upload and download lectures and materials, E-book
9. Creating course wise group.

Project Value:

The benefits that the website will create for the organization

1. Increase student for admission


2. Increase academic student’s result
3. Save time
4. CSE department will be well known in the world
5. Increase department value
6. Proper use of technology
7. Department will be smart
8. Accessible from mobile from home
9. Increase university reputation
10. World can see CSE department’s activities.

Special Issues or Constraints:

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.

Feasibility study comprises the following steps:

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.

Environment: Identifies the individuals responsible for software development. It provides


information about input and output requirements, processing requirements of the software and the
interaction of the software with other software. It also identifies system security requirements and
the system's processing requirements

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.

Developmental impacts: Specify developmental impacts such as resources required to develop


databases, resources required to develop and test the software, and specific activities to be
performed by users during software development.

Security impacts: Describe security factors that may influence the development, design, and
continued operation of the proposed software.

Alternative systems: Provide description of alternative systems, which are considered in a


feasibility study. This also describes the reasons for choosing a particular alternative system to
develop the proposed software and the reason for rejecting alternative systems.

1.5.1 Technical Feasibility


Feasibility analysis is to assess the technical feasibility of the project, the extent to which the
system can be successfully designed, developed, and installed by the IT group. Technical
feasibility analysis is, in essence, a technical risk analysis that strives to answer the question: “Can
we build it?”

Technical feasibility also performs the following tasks:

 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.

1.5.2 Economic Feasibility


Feasibility analysis is to perform an economic feasibility analysis. (Also called a cost–benefit
analysis). This attempts to answer the question “Should we build the system?” Economic
feasibility is determined by identifying costs and benefits associated with the system, assigning
values to them, calculating future cash flows, and measuring the financial worthiness of the project.
As a result of this analysis, the financial opportunities and risks of the project can be understood.

1.5.3 Organizational Feasibility


The final technique used for feasibility analysis is to assess the organizational feasibility of the
system: how well the system ultimately will be accepted by its users and incorporated into the
ongoing operations of the organization. There are many organizational factors that can have an
impact on the project.

13 | P a g e
1.5.4 Applying the Concepts at “CSE Departmental
website Project”
1.5.5 Feasibility Analysis Report Table

Feasibility Analysis on “CSE Departmental website Project”

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:

Technical Feasibility: Can I Build It?

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

2. Annual operation cost:


 Install cost: 10000tk
 System Domain and Hosting Cost: 5000tk per month
 For IT administration hired: 30000tk per month.
 Hardware/Software upgrades/Replacement: 20000tk

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?

1. Tarikuzzaman Emon sir who provided me this project, he will be satisfied.


2. CSE Department has low risk
3. CSE Department also has so much interest on this project.
4. Organization work will be easy and comfortable.
5. Teacher can be able to manage student, lectures, books, results by online
6. Administration can control teachers and all users.
7. Students will be benefited a lot
8. Easy to use fro students and teachers.
9. Students can download academic resources
10. Can communicate students and teachers
11. Organization will be more advanced.

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.

2.2 Project Selection


In this section, I am researching the answers of those questions:

2.2.1 Table of Project Selection Questions List

Size 1. What is the size?


2. How many people are needed to work on the project?
Cost 1. How much will the project cost for me?

Purpose 1. What is the purpose of the project?


2. Is it meant to improve the technical infrastructure?
3. Support a current business strategy?
4. Improve operations?
5. Demonstrate a new innovation?
Length 1. How long will the project take before completion?
2. How much time will go by before value is delivered to the
project?
Risk 1. How likely is it that the project will succeed or fail?

Scope 1. How much of the organization is affected by the system?


2. A department?
3. A division?
4. The entire corporation?
Economic value 1. How much money do I expect to receive in return for the amount
the project costs?

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.

Cost 1. According to Economic Feasibility analysis, it will not cost so much


money.
Purpose 1. Project purposes are academic, departmental, university website.
2. Yes, it is meant to improve the technical infrastructure.
3. Both university and developer (I) will be benefited. And it will
support current strategy.
4. It will improve operations.
5. This project will demonstrate a new innovation.

Length 1. The project is large, so it will take at least, 18 month.


2. In two years, the project will be delivered.
Risk 1. There are a lot of risks but I think I can do it.
2. Project must succeed.

Scope 1. The organization, department, entire student and teacher will be


affected by the system a lot.

Economic value 1. I do not expect to receive in return for the amount the project costs.

2.3 Creating the Project Plan


It is time to carefully plan the project. Now, I am going to disuse about project mythology. To
complete the project, activity will be done here,
1. Selecting a project model which is the best for the project.
2. Following the strategy of the project model.
3. Developing a work plan for the project
4. Determining a staffing plan
5. Establishing mechanisms to coordinate and control the project.

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.

Fig: 2.1 Software Development Models

After discussing all of that above, I found that


1. This is an independent project for me.
2. Project test, design, development all will be done by me.
3. I have understood nicely the project requirements.
4. Project goal is clear to me.
5. I myself completely involved in development, testing, user experience, interface, design,
updates, adding new idea and features.
6. No need to show project development activity daily.
7. It is possible to show this project after fully completing.

So it is time to select software development methodology.

20 | P a g e
2.3.2 Selecting the Appropriate Development Methodology

Activity and selection of software development methodology has been given bellow:

2.3.2.1 Table for Selecting Project Development Methodology

Selecting a project methodology Spiral model will be the best.

I am going to use Spiral Methodology for this project.

Identifying project staffing I am doing this project alone. So there is no any staff or group
requirements member for this project.

Spiral model: It is combining elements of both design and prototyping-in-stages, in an effort to


combine advantages of top-down and bottom-up concepts. This model of development combines
the features of the prototyping model and the waterfall model. The spiral model is favored for
large, expensive, and complicated projects. This model uses many of the same phases as the
waterfall model, in essentially the same order, separated by planning, risk assessment, and the
building of prototypes and simulations.

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.

2.3.3 Estimating the Project Time Frame


After analysis all project needs and requirements, I have learnt that I have to make at least 729
blocks and 459 pages for the whole project. The chart of pages and blocks is given bellow:

2.3.3.1 Table of User interface blocks and pages counted


Blocks and pages counted

Interface for blocks needed (at least) Pages (minimum)

For all users( public) 85 32

Public user 68 27

Academic teachers 171 87

Academic student’s 88 60

Admin 142 123

Supper admin 143 130

Total 729 459

23 | P a g e
2.3.3.2 Database Table counted
Database table

Total table need: 30

2.3.3.3 Table of Estimating the Project Time Frame

“Estimating the Project Time Frame ”

 Total Time in hand: (Target complete in 1 year)


 Year = 1
 Months= 12
 Days: 365
 Developer/Tester/Designer in Hand: 1 person (myself).
 My Time to work per day: 5 hours(average)

 Total time in hand:

365 * 5 = 1825 hours

 Target to complete all Blocks:


1825 / 729 = 2.51 blocks in a day

= 3 (aprox)

 Target to complete all Blocks:


1825 / 729 = 3.97 blocks in a day

= 4 (aprox)

24 | P a g e
 Database table :
Total time for database table: 30*5=150 hours

30 tables will need 30 days

Planning Analysis Design Implementation

% of work based time: 15% 15% 35% 35%

Estimates based: Person: 1 Person: 1 Person: 1 Person: 1


(SDLC)
1.8 months 1.8 months 4.2 months 4.2 months

Total time spent: 273.75 hours 273.75 hours 638.75 hours 638.75 hours

Estimates Day: 54 days 54 days 126 days 126 days

2.3.4 Developing the Work Plan


After general idea of the size and approximate schedule for the project, I am going to create a work
plan, which is a dynamic schedule that records and keeps track of all of the tasks that need to be
accomplished over the course of the project.

2.3.4.1 Table of Identify tasks


Task id Task name Duration Dependency Status
(day)

1. Design phase document total 126 Open

2. Database design document 30 Open

3. Documentation 30 Open

25 | P a g e
4. Home page design 7 Open

5. Notice board design 6 Open

6. News board 3 Open

7. Events Board 3 Open

8. Admission information 10 Open

9. Program information 7 Open

10 Tuition information 7 Open

11 Slides 22 Open

12 Academic information 12 Open

13 Financial /Aid 6 Open

14 Login/Logout 10 Open

15 Sign up 10 Open

16 Changing password 2 Open

17 New Teacher /Student entry 15 Open

18 Online course registration System 120 Open

19 E-library 123 Open

20 Creating group 44 Open

21 New course entry 7 Open

2.4 Staffing the Project


Staffing the project includes determining how many people should be assigned to the project,
matching people’s skills with the needs of the project, motivating them to meet the project’s
objectives,

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.

2.4.2 Coordinating Project Activities


I wanted to develop departmental website project to be well coordinated, so I immediately put
several practices in place to support my responsibilities. First, I acquired the CASE tool used at
my project so that it could be used for the analysis-phase tasks (e.g., drawing the data flow
diagrams). I would likely start creating diagrams and defining components of the system fairly
early on. I pulled out some standards that he uses on all development projects and made a note to
review them with my project advisor at the kick-off meeting for the system. I also set up binders
for the project deliverables that would start rolling in. Already, I was able to include the system
request, feasibility analysis, initial work plan, staffing plan, project charter, standards list, and risk
assessment.

2.5 Managing and Controlling the Project


The science (or art) of project management is in making trade-offs among three important
concepts: the size of the system (in terms of what it does), the time to complete the project (when
the project will be finished), and the cost of the project.

2.5.1 Refining Estimates


The estimates that are produced during the planning phase will need to be refined as the project
progresses. This does not necessarily mean that estimates were poorly done at the start of the
project; it is virtually impossible to develop an exact assessment of the project’s schedule before
the analysis and design phases are conducted.

2.5.2 Managing Scope


I may assume that my project will be safe from scheduling problems because you carefully
estimated and planned your project up front. However, the most common reason for schedule and
cost overruns occurs after the project is underway— scope creep.

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.

2.5.4 Managing Risk


One final facet of project management is risk management, the process of assessing and addressing
the risks that are associated with developing a project. Many things can cause risks: weak
personnel, scope creep, poor design, and overly optimistic estimates. I must be aware of potential
risks so that problems can be avoided or controlled well ahead of time.

2.6 Applying the Concepts


With a general time frame determined, I began to identify the tasks that would be needed to
complete the system. I used a Spiral methodology, and I borrowed its high-level phases (e.g.,
analysis) and the major tasks associated with them (e.g., create requirements definition, gather
requirements, and analyze current system). These were recorded in a work plan created in
Microsoft Project. I expected to define the steps in much more detail at the beginning of each
phase.

2.6.1 Table of Project Management and Time Boxing


Task Task Name Duration Starting Finishing Predecessors Resources
Id Date Date Name
days

1 Overall analysis 10 Mon Fri Myself

3/3/16 13/3/16

2 Identify High- 6 14/3/16 19/3/16 Myself


Level
Requirements

3 JAD session 4 20/3/16 23/3/16 Myself

4 Information 2 24/3/16 25/3/16 Myself


benchmarking

5 Prioritize 3 26/3/16 28/3/16 Myself

28 | P a g e
requirements

6 Define scope 2 29/3/16 30/3/16 Myself

7 Detailed 17 31/3/16 16/4/16 Myself


Requirements

8 Develop use 30 17/4/16 16/5/16 Myself

cases

9 Develop process 4 17/5/16 20/5/16 Myself

models

10 Develop data 30 21/5/16 19/6/16 Myself

models

11 Preliminary 27 20/6/16 16/7/16 Myself

Design

12 System 3 17/7/16 19/7/16 Myself

architecture

13 User interface 90 20/7/16 16/10/16 Myself

14 Database 22 17/10/16 7/11/16 Myself

15 Programs 15 8/11/16 23/11/16 Myself

16 Implementation 15 24/11/16 8/12/16 Myself

17 Acquire 7 9/12/16 15/12/16 Myself

HW & SW

18 Construct 7 16/12/16 22/12/16 Myself

database

19 Convert data 0 --/--/-- --/--/-- Myself

20 Write programs 69 23/12/16 1/3/2017 Myself

21 Testing 15 2/3/17 16/3/17 Myself

29 | P a g e
22 Installation 7 17/3/17 23/3/17 Myself

23 Project report 130 24/3/17 26/8/17

24 Delivering 7 27/8/17 2/9/17 Myself


project

Total =
522 days

2.6.2 Staffing the Project


I already said that there is no one with me to complete the project. So, all work will be done by
myself. So there is no staffing plan.

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.

3.2 The Analysis Phase


The analysis phase is so named because the term analysis refers to breaking a whole into its parts
with the intent of understanding the parts’ nature, function, and interrelationships. In the context
of the SDLC, the outputs of the planning phase (the system request, feasibility study, and project
plan), outline the business goals for the new system, define the project’s scope, assess project
feasibility, and provide the initial work plan. These planning phase deliverables are the key inputs
into the analysis phase. In the analysis phase, the systems analyst works extensively with the
business users of the new system to understand their needs from the new system.

The basic process of analysis involves three steps:

■ Understand the existing situation (the as-is system).

■ Identify improvements.

■ Define requirements for the new system (the to-be system).

3.3 Requirements Determination


Requirements determination is performed to transform the system request’s high level statement
of business requirements into a more detailed, precise list of what the new system must do to
provide the needed value to the business. This detailed list of requirements is supported, confirmed,
and clarified by the other activities of the analysis phase: creating use cases, building process
models, and building a data model.

3.3.1 What Is a Requirement?


A requirement is simply a statement of what the system must do or what characteristics it needs to
have.

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.

3.3.3 The Requirements Definition Statement


The requirements definition statement—usually just called the requirements definition—is a
straightforward text report that simply lists the functional and nonfunctional requirements in an
outline format. Table shows a sample requirements definition of my project.

3.3.3.1 Table of Requirements Definition Statement

Requirements Definition Statement

For public user:

 This departmental website allows all to view admission information.


 This departmental website allows all to view educational cost/tuition.
 This departmental website allows all to view program information.
 This departmental website allows all to view academic teacher’s profile.
 This departmental website allows all to view schedule.

For academic teachers:

 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 academic students:

 This departmental website allows students to view offered courses.


 This departmental website allows students to take course.
 This departmental website allows students to download e-book.
 This departmental website allows students to enter group of course.
 This departmental website allows students to view course complete outline.
 This departmental website allows students to view and download lectures.

For admin:

 This departmental website allows admin to control all activity of students and teachers.
 This departmental website allows admin to add student, teachers.

For supper admin:

 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.

3.4 Requirements Elicitation Techniques


In this section, we focus on the five most commonly used requirements elicitation techniques:
interviews, JAD sessions, questionnaires, document analysis, and observation.

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.

3.4.2.1 Table of Interview Notes


Interview Notes

Person Interviewed: Some CSE department current students

Interviewer: Habibur

Purpose of Interview:

• Understand the Student’s need from the current system.

• Determine information requirements for future system.

 Understand the Student’s need from cse departmental website.


Summary of Interview:

• Students want to departmental website.

 They also happy with online registration system.


 They want Online e-library
 They like Grouping

• Two biggest problems with the current system are:

1. Stamford University website does not help academic student.

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.

3.4.3 Joint Application Development (JAD)


Joint application development (or JAD as it is more commonly known) is an information gathering
technique that allows the project team, users, and management to work together to identify
requirements for the system.

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.

4.2 Use Cases


A use case depicts a set of activities performed to produce some output result. Each use case
describes how an external user triggers an event to which the system must respond.

4.2.1 Elements of a Use Case


A use case diagram depicts two types of elements: one representing the business roles (actors) and
the other representing the business processes (Use Case).

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

Public users Academic students Academic Admin Supper admin


teachers

Fig: 4.1 The actors for use-case diagram

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:

Departmental Website view of Public User(Use Case Diagram)

Fig: 4.2 Use Case Diagram of public user view

41 | P a g e
Use-Case Diagram for Departmental E-library

Fig: 4.3 Use-Case Diagram for Departmental E-library

Use Case for Notice Board

Fig: 4.4 Use Case for Notice Board

42 | P a g e
Use case diagram of News Board

Fig: 4.5 Use Case for News Board

Use case diagram For Events

Fig: 4.6 Use case diagram For Events

43 | P a g e
Academic Schedule

Fig: 4.7 Academic Schedule

Use-case of course wise grouping

Fig: 4.8 Use-case of course wise grouping

44 | P a g e
Online course registration(use-case diagram)

Fig: 4.9 Online course registration (use-case diagram)

Academic result board(use case diagram)

Fig: 4.10 Academic result board (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.

Use Case Diagram of all kinds of lectures

Fig: 4.12 Use Case Diagram of all kinds of lectures

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.

A process model describes business processes—the activities that people do.


Process models are developed for the as-is system and/or the to-be system. This chapter describes
data flow diagramming, one of the most commonly used process modeling techniques.
OBJECTIVES
■ Explain the rules and style guidelines for data flow diagrams.
■ Describe the process used to create data flow diagrams.
■ Create data flow diagrams.

5.2 Data Flow Diagrams


Data flow diagrams (DFDs) reveal relationships among and between the various components in a
program or system. DFDs are an important technique for modeling a system’s high-level detail by
showing how input data is transformed to output results through a sequence of functional
transformations. DFDs consist of four major components: entities, processes, data stores, and data
flows. The symbols used to depict how these components interact in a system are simple and easy
to understand; however, there are several DFD models to work from, each having its own
symbology. DFD syntax does remain constant by using simple verb and noun constructs. Such a
syntactical relationship of DFDs makes them ideal for object-oriented analysis and parsing
functional specifications into precise DFDs for the systems analyst There are many different
process modeling techniques in use today. In this chapter, we focus on one of the most commonly
used techniques data flow diagramming. Data flow diagramming is a technique that diagrams the
business processes and the data that pass among them.

5.2.1 Reading Data Flow Diagrams


A data flow diagram (DFD) is a graphical representation of a system. A DFD depicts a system’s
components, the data flows among the components, and the sources, destinations, and storage of
data.

48 | P a g e
5.2.2 Elements of Data Flow Diagrams

5.2.3 Using Data Flow Diagrams to Define Business


Processes
When it comes to conveying how information data flows through systems (and how that data is
transformed in the process), data flow diagrams (DFDs) are the method of choice over technical
descriptions for three principal reasons.

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:

1. External devices sending and receiving data


2. Processes that change that data
3. Data flows themselves
4. Data storage locations
The hierarchical DFD typically consists of a top-level diagram (Level 0) underlain by cascading
lower level diagrams (Level 1, Level 2…) that represent different parts of the system.

5.2.4 Process Descriptions


Data flow diagrams can be expressed as a series of levels. We begin by making a list of business
activities to determine the DFD elements (external entities, data flows, processes, and data stores).
Next, a context diagram is constructed that shows only a single process (representing the entire
system), and associated external entities. The Diagram-0, or Level 0 diagram, is next, which
reveals general processes and data stores. Following the drawing of Level 0 diagrams, child
diagrams will be drawn (Level 1 diagrams) for each process illustrated by Level 0 diagrams.

5.3 Creating Data Flow Diagrams


Example:

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.

5.3.1 Creating the Context Diagram


A context diagram is a top-level or least-detailed diagram of an information system. The diagram
describes data flows into and out of the system and into and out of external entities. External
entities are items such as persons, places, or things outside a system that send data to, or receive
data from, a system.

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

Course Courses Offered Student Registration


Offering Approvement
System
System
Curriculum Info Student Info for Advisor

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

Select Courses Registration Form


Preferred Course
Registration
Preferred Section Form
Student Changes to
Course Registration Registration
Form
D2
Registra tion Info

Approv ement

Courses Ac ceptance
Approv e Approv ement Advisor
Approv ement
Registra tion

Courses Offered for


4 Curriculum
Courses Offered for Student
Curriculum

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

Academic Year Semester Info Get Semester


Specific Info Advisor
Ma nag ement Ma nag ement
Sy stem Student Info for
Advisor Sy stem

Figure: 5.2 The level-0 DFD of the Course Registration System

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.

Figure 4: The DFD of Select Courses (Level-1)

Level-0 DFD: Process-2, Approve Registration

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.

Level-0 DFD: Process-3, Filter Offered Courses:

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.

Level-0 DFD: Process-4, Get Semester Specific Info:

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:

 Has each process a strong imperative verb and object?


 Are the input data flows related to the output data flows?
 Can the flows be reduced?
 Have all data stores flow in and out?
 Are symbols correctly labeled and uniquely referenced?
 Do external entities communicate with at least one process?
 Does the user think that it is an accurate portrayal of the business area?

5.4 Applying the Concepts of DFD at My Project

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:

Fig: 5.4 DFD for E-library management system

57 | P a g e
DFD for Notice Board management system:

Fig: 5.5 DFD for Notice Board management system

DFD for News Board management system:

Fig: 5.6 DFD for News Board management system

58 | P a g e
DFD for events Board management system:

Fig: 5.7 DFD for events Board management system

DFD for Schedule Board management system:

Fig: 5.8 DFD for Schedule Board management system

59 | P a g e
DFD for Online Courses Registration System Automation:

Fig: 5.9 DFD for Online Courses Registration System Automation

DFD for Course Wise Grouping and Massaging:

Fig: 5.10 DFD for Course Wise Grouping and Massaging

60 | P a g e
DFD for profile and course outline management:

Fig: 5.11 DFD for profile and course outline management

61 | P a g e
DFD for Result Management:

Fig: 5.12 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.

6.2 The Entity Relationship Diagram


Diagram (ERD):

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.

6.3 ERD Elements


Common Entity Relationship Diagram Symbols:

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

you want to store information. A weak entity is an entity that must


defined by a foreign key relationship with another entity as it cannot be uniquely identified

by its own attributes alone.

64 | P a g e
 Actions, which are represented by diamond shapes, show how two entities share information

in the database. In some cases, entities can be self-linked. For


example, employees can supervise other employees.

 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,

an employee entity can have multiple skill values. A derived attribute


is based on another attribute. For example, an employee's monthly salary is based on the

employee's annual salary.

65 | P a g e
6.4 Normalizing the Data Model

Data Modeling Symbol Sets which I am going to use:

Fig: 6.1 Data Modeling Symbol Sets

66 | P a g e
6.5 Creating an Entity Relationship Diagram
Description of how I have create ERD has been given bellow:

Data Dictionary Using MySQL workbench:

Fig: 6.2 Data Dictionary Using MySQL workbench

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)

Fig: 6.6 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.

7.2 Transition from Requirements to Design


The purpose of the analysis phase is to figure out what the business needs. The purpose of the
design phase is to decide how to build it. System design is the determination of the overall system
architecture—consisting of a set of physical processing components, hardware, software, people,
and the communication among them—that will satisfy the system’s essential requirements.

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:

Fig: 7.1 Relation of drivers, risk and acquisition strategy.

Fig: 7.2 acquisition strategy.

75 | P a g e
Fig: 7.3 acquisition strategy ALCM.

Developing an acquisition strategy is a key component of acquisition planning.

7.3.1 Custom Development


I did not work on custom development.
7.3.2 Packaged Software
Many business needs are not unique, and because it makes little sense to reinvent the wheel, many
organizations buy packaged software that has already been written, rather than developing their
own custom solution. In fact, there are thousands of commercially available software programs
that have already been written to serve a multitude of purposes.

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.

7.4 Influences on the Acquisition Strategy


7.4.1 Business Need
I understand fully business of my project. So I am perfect to do the project. Because I am a current
student of the institute.

7.4.2 In-House Experience


What do they both mean to a business? If software development is a core competence for the
company, it generally leans toward in-house software development, which stands for the
development taking place onsite. Usually in-house software development makes sense for
companies that have enough resources and favourable infrastructure to develop software on their
own.

According to my ability and my resources, I am able to do my project in house. Because I have


some experience to do that type of project before.

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.

7.4.4 Project Management


Managing project is not easy task but I can do it.

7.5 Selecting an Acquisition Strategy


Once the project team has a good understanding of how well each acquisition strategy fits with the
project’s needs, it must begin to understand exactly how to implement these strategies.

7.5.1 Alternative Matrix


As I have described feasibility analysis past but I am using again alternative matrix so that I can
understand at 1st look all tools and programming languages.

Designing tool  mysql workbench( for ERD)


 Vsual Paradigm For UML and use case
 Edrow Max
 mobirise website builder designer (for
interface design)
 bootstrip

Programming tools  NetBeans IDE


 Notpad++

Database tools and server  Xampp


 MySQL Database
Programming language  HTML
 CSS
 JavaScript
 Ajax
 PHP
 MySQL

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).

8.2 Elements of an Architecture Design


The objective of architecture design is to determine how the software components of the
information system will be assigned to the hardware devices of the system. In this section, we first
discuss the major functions of the software to understand how the software can be divided into
different parts. Then we briefly discuss the major types of hardware onto which the software can
be placed. Although there are numerous ways in which the software components can be placed on
the hardware components, the most common architecture is the client–server architecture, so we
focus on it here.

8.2.1 Architectural Components


The major architectural components of any system are the software and the hardware. The major
software components of the system being developed have to be identified and then allocated to the
various hardware components on which the system will operate. Each of these components can be
combined in a variety of different ways.

80 | P a g e
8.2.1.1 Client–Server Architectures

Fig: 8.1 Example of Client–Server Architectures

8.2.1.2 Client–Server Tiers

Fig: 8.2 Client–Server Tiers

Fig: 8.3 Client–Server Tiers

81 | P a g e
8.2.1.3 Less Common Architectures

Fig: 8.4 Example of Less Common Architecture

8.3 Creating an Architecture Design


The architecture design specifies the overall architecture and the placement of software and
hardware that will be used. Architecture design is very complex process that is often left to
experienced architecture designers and consultants, but we will give a sense of the process here.

8.3.1 Operational Requirements


Operational requirements specify the operating environment(s) in which the system must perform
and how those may change over time. This usually refers to operating systems, system software,
and information systems with which the system must interact, but will on occasion also include
the physical environment if the environment is important to the application.

 Technical Environment
 System Integration
 Portability Requirements
 Maintainability

8.3.2 Performance Requirements


Performance requirements focus on performance issues such as response time, capacity, and
reliability. As analysts define the performance requirements for the system, the testability of those
requirements is a key issue. Each requirement must be measurable so that a benchmark comparison
can be made. Only in that way can the achievement of a performance requirement be verified.

82 | P a g e
 Speed Requirements
 Capacity Requirements
 Availability and Reliability

8.3.3 Security Requirements


Security is the ability to protect the information system from disruption and data loss, whether
caused by an intentional act (e.g., a hacker or a terrorist attack) or a random event (e.g., disk failure,
tornado).5 Security is primarily the responsibility of the operations group—the staff responsible
for installing and operating security controls such as firewalls, intrusion detection systems, and
routine backup and recovery operations. Nonetheless, developers of new systems must ensure that
the system’s security requirements produce reasonable precautions to prevent problems; system
developers are responsible for ensuring security within the information systems themselves.

I am trying to solve those security requirements bellow:

 System value Estimates


 Access control requirements
 Encryption and authentication requirements
 Virus control requirements

8.3.4 Cultural and Political Requirements


Cultural and political requirements are specific to the countries in which the system will be used.
In today’s global business environment, organizations are expanding their systems to reach users
around the world.

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

8.4 Hardware and Software Specification


The design phase is also the time to begin selecting and acquiring the hardware and software that
will be needed for the future system.

84 | P a g e
Here are the list of hardware and software:

8.4.1 Table List of hardware and Software


Standard users Standard Standard Standard
application database
web server server server

Operating Windows Linux Linux Linux


System and
Mozilla Firefox
browser
Google Chrome

Opera

Special Software Adobe Acrobat Same Same Same


Reader

Hardware 250 GB disk drive Same Same Same

Intel core
processor

Network  Always-on Same Same Same


Broadband
preferred
 Speed
minimum
1mbps

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.

9.2 Principles for User Interface Design


To design user interface I have kept some principle in my mind. Those principle helped me a lot
to complete the design part. So I am going to show a list of principle which is used for interface
design.

Principles for User Interface Design are:

o Layout
o Content Awareness
o Aesthetics
o User Experience
o Consistency
o Minimize User Effort

9.3 User Interface Design Process


Only principle can’t complete interface design part. So I need to use those principles correctly. In
the bellow I have shared some process of interface design.

User Interface Design Process are used:

 Use Scenario Development


 Interface Structure Design
 Interface Standards Design
 Interface Design Prototyping
 Interface Evaluation

87 | P a g e
Others design methodology list which I have used has been given bellow.

9.4 Navigation Design


 Basic Principles
 Types of Navigation Controls
 Messages

9.5 Input Design


 Basic Principles
 Types of Inputs
 Input Validation

9.6 Output Design


 Basic Principles
 Types of Outputs
 Media

9.7 Applying the Concepts


Keeping in mind all the points which has been listed in this chapter, I am showing user interface
design bellow with simple description:

9.7.1 Interfaces for Public User


Public users are all user include teachers, students, and parents inside or outside of the Stamford
University. They do not required id or password.

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)

Fig: 9.1 Home page (part 1)

This is 2nd part of home page. Academic, housing, teachers, e-library, research page links contains
here.

Home page (part 2)

Fig: 9.2 Home page (part 2)

89 | P a g e
Complete home page has been shown in the next page:

Home page of Stamford CSE


departmental website

Fig: 9.3 Home page (full part)

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”.

Fig: 9.4 Information view links

What are you seeing in the next page?

Let’s view in the next page.

91 | P a g e
After click on the link admission information, this page will show up. Here admission process and
information are included.

Admission home page

Fig: 9.5 Admission home Page

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.

Admission requirements page

Fig: 9.6 Admission Requirements Page

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.

Admission requirements details page

Fig: 9.7 Admission requirements details page

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.

Viewing Tuition and Cost home page

Fig: 9.8 Viewing Tuition and Cost home page

95 | P a g e
Tuition and cost details page

Fig: 9.9 Tuition and cost details page

96 | P a g e
Admission test information home page

Fig: 9.10 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

Fig: 9.11 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.

Admission session and schedule home page

Fig: 9.12 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

Fig: 9.13 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.

Admission result sheet view home page

Fig: 9.14 Admission result sheet view home page

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

Fig: 9.15 Admission result sheet view details 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

Page interface for student’s and


department facilities

Fig: 9.17 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.

Academic Home Page

Fig: 9.18 Academic Home page

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

Fig: 9.19 Teacher’s Information Page

106 | P a g e
Teacher’s Information details Page

Fig: 9.20 Teacher’s Profile 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.

Fig: 9.21 View News Page layout

108 | P a g e
This page for news details

Fig: 9.22 View News Details Page layout

109 | P a g e
This page is showing housing information.

Fig: 9.23 showing housing information

110 | P a g e
Financial and Scholarship information page

Fig: 9.24 Financial and Scholarship information view 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.

The sign up options are:

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.

Signup page home

Fig: 9.26 Signup page home

113 | P a g e
Sign up or activate account as Teacher Page

Fig: 9.27 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

Fig: 9.28 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.

Fig: 9.29 interface for login page

After login, welcome page will show and now student is in the system. And session will start
automatically.

Fig: 9.30 showing welcome page for student

116 | P a g e
Some more interfaces and layout for academic students has been given bellow:

Fig: 9.31 layout for View Home Page

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

Fig: 9.34 interface for full E-library page

120 | P a g e
Interface for Complete e-library with
link view

Fig: 9.35 Interface for E-library page with link

121 | P a g e
To make the library nice and beautiful, I have used slide show on the library.

Fig: 9.36 interface for E-library page slide design view

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.

Please see the next layout.

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

Fig: 9.39 this interface for 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.

Fig: 9.40 students home page left side bar.

Fig: 9.41 Students Home Page Right Side Bar.

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.

Fig: 9.42 Students Home Page Header Information Link View.

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.

Fig: 9.45 Schedule Home Page View

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 )

Fig: 9.46 Layout for Mobile User View.

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 )

Fig: 9.47 Layout for Mobile User View.

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 )

After clicking information link other


header link will show up.

Fig: 9.48 Layout for Mobile User View.

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 )

After clicking information link other header link


will show up.

Fig: 9.49 Students Home Page mobile user view.

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.

Fig: 9.50 Online Course Registration System Layout-1.

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.

Fig: 9.51 Online Course Registration System Layout-2.

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.

Fig: 9.54 Online Course Registration System Layout-5.

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.

This is group home page.


This page will contains
course title, course
teacher name, post
massage, view massage,
download, add, edit
delete lectures, complete
course outline and
profile, simple video for
course, video lectures.

Fig: 9.59 Interface Course Wise 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.64 Interface For Course Outline Home Page.

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.

Fig: 9.68 Interface for deleting course picture-1

Fig: 9.69 Interface for Deleting Course Picture-2

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

Fig: 9.73 Interface for lectures Home Page

151 | P a g e
Lectures Home Page short by session

Fig: 9.74 Interface for lectures Home Page

152 | P a g e
Fig: 9.75 Interface for Viewing Academic Result Layout-1

Fig: 9.76 Interface for Viewing Academic Result Layout-2

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

Interface for teacher home


page. This page will contain
all links of other pages.

At right side of the page,


teacher will see most
recently offered courses by
him, notice, and news.

At middle side, teacher will


view most recent post, and a
system to offer new course.
He can be able to post
massage directly from here.

From the left sidebar, teacher


will redirected into home
page of my group, add
lecture, view student, result
entry, lecture entry, offer
new course.

Fig: 9.78 Interface for Teacher Home Page.

155 | P a g e
Fig: 9.79 Interface for Teacher Academic Result Entry Layout-1.

Fig: 9.80 Interface for Teacher Academic Result Entry Layout-2.

Fig: 9.81 Interface for Teacher Academic Result Entry Layout-3.

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.

Fig: 9.84 Interface for Teacher Group Entry Step-2.

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

Fig: 9.92 Interface for View Students Batch Wise

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.

Fig: 9.99 Viewing Registration Request batch 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.

9.7.4 Interface for Admin/ 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

Fig: 9.104 admin viewing links of view.

172 | P a g e
Fig: 9.105 Supper admin viewing other admin list.

Fig: 9.106 Supper admin viewing other admin details.

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.

Fig: 9.108 View of course list trimester wise offered.

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

Fig: 9.114 Viewing Navigation of new entry by admin

Fig: 9.115 Adding New Academic Teacher by Admin

178 | P a g e
Fig: 9.116 Navigation of Edit by Admin

Fig: 9.117 Viewing Navigation of view Option 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.

10.2 Moving from Logical to Physical Process Models


During analysis, the systems analysts identified the processes and data flows that are needed to support
the functional requirements of the new system. These processes and data flows are contained on the
logical data flow diagrams for the to-be system. As we discussed in Chapter 5, the analysts avoid making
implementation decisions during analysis, focusing first on the business requirements of the system. The
logical DFDs do not contain any indication of how the system will actually be implemented when the
information system is built; they simply state what the new system will do. In this way, developers do
not get distracted by technical details and are not biased by technical limitations in the initial stages of
system development. Business users better understand diagrams that show the “business view” of the
system. During design, physical process models are created to show implementation details and explain
how the final system will work. These details can include references to actual technology, the format of
information moving through processes, and the human interaction that is involved. In some cases, most
often when packages are used, the use cases may need to be revised as well. These to-be models describe
characteristics of the system that will be created, communicating the “systems view” of the new system.

10.2.1 The Physical Data Flow Diagram


The physical DFD contains the same components as the logical DFD (e.g., data stores, data flows), and
the same rules apply (e.g., balancing, decomposition). The basic difference between the two models is
that a physical DFD contains additional details that describe how the system will be built. There are five
steps to perform to make the transition to the physical DFD

 Add Implementation References


 Draw a Human-Machine Boundary
 Add System-Related Data Stores, Data Flows, and Processes
 Update the Data Elements in the Data Flows
 Update the Metadata in the Computer-Aided Software Engineering Repository

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:

10.3 All Database Table List


Database Tables Information

Table Name Number of Column


1 admin 10
2 admissiontestresult 7
3 admission_schedule 21
4 advisors 3
5 books 15
6 coureslist 11
7 courseofferedforcse 12
8 courseoutlinecse 17
9 courseoutlinecsi 5
10 coursetaken 15
11 eventscse 14

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

Column Type Attributes Null Default Extra Links to Comments MIME


sl int(255) No
trimester text Yes NULL
subjects text Yes NULL
program text Yes NULL
applicationStart Date text Yes NULL
applicationLast Date text Yes NULL
writtenTestStart Date text Yes NULL
writtenTestStart Time text Yes NULL
vivaTestDate text Yes NULL
vivaTestStartTi text Yes NULL
me
vivaTestEnding Time text Yes NULL
writtenResultPu text Yes NULL
blishDate
writtenResultPu text Yes NULL
blishTime
vivaResultPubli shDate text Yes NULL
vivaResultPubli text Yes NULL
shTime
admissionStart Date text Yes NULL
admissionLastD ate text Yes NULL
courseRgStartD ate text Yes NULL
courseRgLastDa te text Yes NULL

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

coursePrerequis ite text Yes NULL

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

presentationTot al double Yes NULL


classTestTotal double Yes NULL
labTestTotal double Yes NULL
ssaignmentTot double Yes NULL
al
classPerforman ceTotal 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

Attribute Nul Links


Column Type Default Extra Comments MIME
s l to
sl int(11) No
scheduleName text Yes NULL
scheduleType text Yes NULL
startingDate date No
endingDate date No
scheduleOwner text Yes NULL
scheduleFile text Yes NULL
ScheduleSessio text Yes NULL
nYear
ScheduleTo text Yes NULL
ScheduleClassS text Yes NULL
ession

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

CourseName text Yes NULL


CourseCredit float No
StudentPass text No
StudentNewPas s text No
StudentImage text No
StudentEmail text Yes NULL
StudentMobile text No

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

stutas 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

Table to ERD schema has been given bellow:

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.

10.5 Database Programs


To create database table which has been shown above, I used MySQL programming language.
And to store all data and table I have used open source xxamp free software as my server local
host.

Complete MySQL language of my project table has been given bellow:

-- MySQL Workbench Forward Engineering

SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;

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`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`takencourses` (

`takencoursesl` INT(222) NOT NULL AUTO_INCREMENT,

`stdid` VARCHAR(100) NULL DEFAULT NULL,

`tcourseid` TEXT NULL DEFAULT NULL,

`ttrimestername` TEXT NULL DEFAULT NULL,

`ttrimesteryear` YEAR(4) NULL DEFAULT NULL,

`department` TEXT NULL DEFAULT NULL,

`tcredithour` DOUBLE NULL DEFAULT NULL,

`trimester` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`takencoursesl`))

ENGINE = InnoDB

AUTO_INCREMENT = 22

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`subjects`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`subjects` (

204 | P a g e
`subjects` TEXT NOT NULL,

`subjectsId` TEXT NOT NULL,

`subjectsName` TEXT NOT NULL,

`subjectsImage` TEXT NOT NULL,

`subjectsVideo` TEXT NOT NULL,

`subjectsSlides` TEXT NOT NULL,

`subjectsLecture` TEXT NOT NULL,

`subjectsDescreption` TEXT NOT NULL,

`subjectsCredite` TEXT NOT NULL,

`subjectsPreReq` TEXT NOT NULL,

`subjectsTeacher` TEXT NOT NULL,

`subjectsCatagory` TEXT NOT NULL,

PRIMARY KEY (`subjectsId`))

ENGINE = InnoDB

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`resultdoc`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`resultdoc` (

`sl` INT(11) NOT NULL AUTO_INCREMENT,

`title` TEXT NULL DEFAULT NULL,

`submittedBy` TEXT NULL DEFAULT NULL,

`batch` TEXT NULL DEFAULT NULL,

205 | P a g e
`examSession` TEXT NULL DEFAULT NULL,

`examSessionyear` TEXT NULL DEFAULT NULL,

`resultSheetFor` TEXT NULL DEFAULT NULL,

`fileName` TEXT NULL DEFAULT NULL,

`massage` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`sl`))

ENGINE = InnoDB

AUTO_INCREMENT = 3

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`books`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`books` (

`booksID` TEXT NOT NULL,

`booksName` TEXT NOT NULL,

`booksAuthors` TEXT NOT NULL,

`booksPublishers` TEXT NOT NULL,

`booksEdition` TEXT NOT NULL,

`booksCatagory` TEXT NOT NULL,

`booksDepartment` TEXT NOT NULL,

`booksSlides` TEXT NOT NULL,

`booksVideos` TEXT NOT NULL,

`booksFiles` TEXT NOT NULL,

206 | P a g e
`booksCover` TEXT NOT NULL,

`booksDescriptions` TEXT NOT NULL,

`booksRecomended` TEXT NOT NULL,

`booksl` INT(222) NOT NULL AUTO_INCREMENT,

`uploaderid` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`booksl`),

INDEX `booksl` (`booksl` ASC))

ENGINE = InnoDB

AUTO_INCREMENT = 32

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`coureslist`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`coureslist` (

`courseId` TEXT NOT NULL,

`courseName` TEXT NOT NULL,

`courseImage` TEXT NULL DEFAULT NULL,

`courseVideo` TEXT NULL DEFAULT NULL,

`coursePrereqisit` TEXT NULL DEFAULT NULL,

`RecomendToRead` TEXT NULL DEFAULT NULL,

`courseMassage` TEXT NULL DEFAULT NULL,

`courseOutline` TEXT NULL DEFAULT NULL,

`coursesl` INT(11) NOT NULL AUTO_INCREMENT,

207 | P a g e
`courseDepartment` TEXT NOT NULL,

`crediteHour` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`coursesl`),

INDEX `coursesl` (`coursesl` ASC),

INDEX `coursesl_2` (`coursesl` ASC),

INDEX `coursesl_3` (`coursesl` ASC))

ENGINE = InnoDB

AUTO_INCREMENT = 15

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`courseofferedforcse`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`courseofferedforcse` (

`coursesl` INT(11) NOT NULL AUTO_INCREMENT,

`advisorname` TEXT NULL DEFAULT NULL,

`courseofferedtobatch` TEXT NULL DEFAULT NULL,

`offeredcoursecode` TEXT NULL DEFAULT NULL,

`offeredcoursename` TEXT NULL DEFAULT NULL,

`offeredcoursetrimester` TEXT NULL DEFAULT NULL,

`couresofferadvisorid` TEXT NULL DEFAULT NULL,

`trimestername` TEXT NULL DEFAULT NULL,

`trimesteryear` YEAR(4) NULL DEFAULT NULL,

`trimester` TEXT NULL DEFAULT NULL,

208 | P a g e
`courseteachername` TEXT NULL DEFAULT NULL,

`courseteacherid` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`coursesl`))

ENGINE = InnoDB

AUTO_INCREMENT = 210

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`courseoutlinecse`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`courseoutlinecse` (

`courseCode` TEXT NOT NULL,

`courseTitle` TEXT NOT NULL,

`courseCrd` DOUBLE NOT NULL,

`coursePrerequisite` TEXT NOT NULL,

`courseCover` TEXT NULL DEFAULT NULL,

`sl` INT(11) NOT NULL AUTO_INCREMENT,

`department` TEXT NULL DEFAULT NULL,

`coursePrerequisitename` TEXT NULL DEFAULT NULL,

`contucthour` TEXT NULL DEFAULT NULL,

`coursetype` TEXT NULL DEFAULT NULL,

`objective` TEXT NULL DEFAULT NULL,

`contents` TEXT NULL DEFAULT NULL,

`referencebooks` TEXT NULL DEFAULT NULL,

209 | P a g e
`softwares` TEXT NULL DEFAULT NULL,

`videointroductions` TEXT NULL DEFAULT NULL,

`pcoursecode` TEXT NULL DEFAULT NULL,

`coursemassage` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`sl`))

ENGINE = InnoDB

AUTO_INCREMENT = 162

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`courseoutlinecsi`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`courseoutlinecsi` (

`courseCode` TEXT NOT NULL,

`courseTitle` TEXT NOT NULL,

`courseCrd` DOUBLE NOT NULL,

`coursePrerequisite` TEXT NULL DEFAULT NULL,

`sl` INT(11) NOT NULL,

PRIMARY KEY (`courseCode`, `sl`),

UNIQUE INDEX `sl_UNIQUE` (`sl` ASC))

ENGINE = InnoDB

DEFAULT CHARACTER SET = latin1;

210 | P a g e
-- -----------------------------------------------------

-- Table `stamfordcse`.`coursetaken`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`coursetaken` (

`sl` INT(11) NOT NULL AUTO_INCREMENT,

`courseId` TEXT NULL DEFAULT NULL,

`courseName` TEXT NULL DEFAULT NULL,

`sessionName` TEXT NULL DEFAULT NULL,

`sessionYear` TEXT NULL DEFAULT NULL,

`courseCredite` TEXT NULL DEFAULT NULL,

`coursePreReqisite` TEXT NULL DEFAULT NULL,

`studentName` TEXT NULL DEFAULT NULL,

`studentId` TEXT NULL DEFAULT NULL,

`studentBatch` TEXT NULL DEFAULT NULL,

`trimester` TEXT NULL DEFAULT NULL,

`courseteachername` TEXT NULL DEFAULT NULL,

`courseteacherid` TEXT NULL DEFAULT NULL,

`advisorid` TEXT NULL DEFAULT NULL,

`advisorStatus` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`sl`))

ENGINE = InnoDB

AUTO_INCREMENT = 91

DEFAULT CHARACTER SET = latin1;

211 | P a g e
-- -----------------------------------------------------

-- Table `stamfordcse`.`eventscse`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`eventscse` (

`eventLength` TEXT NULL DEFAULT NULL,

`eventDate` TEXT NULL DEFAULT NULL,

`sl` INT(222) NOT NULL AUTO_INCREMENT,

`eventTopics` TEXT NULL DEFAULT NULL,

`descriptions` TEXT NULL DEFAULT NULL,

`eventImage` TEXT NULL DEFAULT NULL,

`eventDemoVideo` TEXT NULL DEFAULT NULL,

`eventCatagory` TEXT NULL DEFAULT NULL,

`eventGoal` TEXT NULL DEFAULT NULL,

`organizesBy` TEXT NULL DEFAULT NULL,

`mideaPratner` TEXT NOT NULL,

`entryFee` TEXT NULL DEFAULT NULL,

`place` TEXT NULL DEFAULT NULL,

`startingtime` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`sl`))

ENGINE = InnoDB

AUTO_INCREMENT = 17

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

212 | P a g e
-- Table `stamfordcse`.`lecturevideo`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`lecturevideo` (

`videolecturesl` INT(11) NOT NULL AUTO_INCREMENT,

`videoName` TEXT NULL DEFAULT NULL,

`department` TEXT NULL DEFAULT NULL,

`courseCode` TEXT NULL DEFAULT NULL,

`courseName` TEXT NULL DEFAULT NULL,

`batch` TEXT NULL DEFAULT NULL,

`postedBy` TEXT NULL DEFAULT NULL,

`lectureNo` INT(200) NULL DEFAULT NULL,

`trimester` TEXT NULL DEFAULT NULL,

`trimesterYear` TEXT NULL DEFAULT NULL,

`videoFile` TEXT NULL DEFAULT NULL,

`lectureDate` DATE NULL DEFAULT NULL,

`massage` TEXT NULL DEFAULT NULL,

`courseteacherid` TEXT NULL DEFAULT NULL,

`videolink` TEXT NULL DEFAULT NULL,

`videostatus` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`videolecturesl`))

ENGINE = InnoDB

AUTO_INCREMENT = 45

DEFAULT CHARACTER SET = latin1;

213 | P a g e
-- -----------------------------------------------------

-- Table `stamfordcse`.`newscse`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`newscse` (

`sl` INT(111) NOT NULL AUTO_INCREMENT,

`date` DATE NULL DEFAULT NULL,

`newsDate` DATE NOT NULL,

`newsTopics` TEXT NULL DEFAULT NULL,

`newsDescriptions` TEXT NULL DEFAULT NULL,

`newsImage` TEXT NOT NULL,

`newsCatagory` TEXT NOT NULL,

`newsBy` TEXT NOT NULL,

PRIMARY KEY (`sl`))

ENGINE = InnoDB

AUTO_INCREMENT = 12

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`notice`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`notice` (

`title` TEXT NOT NULL,

`sl` INT(111) NOT NULL AUTO_INCREMENT,

`descriptions` TEXT NOT NULL,

214 | P a g e
`noticeBy` TEXT NOT NULL,

`file` TEXT NOT NULL,

`startDate` DATE NOT NULL,

`lastDate` DATE NOT NULL,

`postedDate` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE


CURRENT_TIMESTAMP,

PRIMARY KEY (`sl`),

UNIQUE INDEX `sl_3` (`sl` ASC),

INDEX `sl` (`sl` ASC),

INDEX `sl_2` (`sl` ASC),

INDEX `sl_4` (`sl` ASC))

ENGINE = InnoDB

AUTO_INCREMENT = 15

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`postsall`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`postsall` (

`postallsl` INT(11) NOT NULL AUTO_INCREMENT,

`postsubmitterid` TEXT NULL DEFAULT NULL,

`postdescriptions` TEXT NULL DEFAULT NULL,

`postdate` DATETIME NOT NULL,

`postsubmittername` TEXT NULL DEFAULT NULL,

215 | P a g e
`department` TEXT NULL DEFAULT NULL,

`courseCode` TEXT NULL DEFAULT NULL,

`courseName` TEXT NULL DEFAULT NULL,

`batch` TEXT NULL DEFAULT NULL,

`trimesterName` TEXT NULL DEFAULT NULL,

`trimesterYear` TEXT NULL DEFAULT NULL,

`massagetopics` TEXT NULL DEFAULT NULL,

`courseTeacherId` TEXT NULL DEFAULT NULL,

`postStutas` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`postallsl`))

ENGINE = InnoDB

AUTO_INCREMENT = 69

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`poststeachers`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`poststeachers` (

`teacherpostsl` INT(11) NOT NULL AUTO_INCREMENT,

`postteacherid` VARCHAR(100) NULL DEFAULT NULL,

`postteachername` TEXT NULL DEFAULT NULL,

`postdescription` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`teacherpostsl`))

ENGINE = InnoDB

216 | P a g e
AUTO_INCREMENT = 23

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`results`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`results` (

`sl` INT(11) NOT NULL AUTO_INCREMENT,

`courseCode` TEXT NULL DEFAULT NULL,

`courseName` TEXT NULL DEFAULT NULL,

`courseDepartment` TEXT NULL DEFAULT NULL,

`courseCreditHr` TEXT NULL DEFAULT NULL,

`trimesterName` TEXT NULL DEFAULT NULL,

`trimesterYear` DATE NULL DEFAULT NULL,

`courseTeacherName` TEXT NULL DEFAULT NULL,

`courseTeacherId` TEXT NULL DEFAULT NULL,

`StudentId` TEXT NULL DEFAULT NULL,

`studentName` TEXT NULL DEFAULT NULL,

`studentBatch` TEXT NULL DEFAULT NULL,

`midMarks` TEXT NULL DEFAULT NULL,

`finalMarks` TEXT NULL DEFAULT NULL,

`classTest1` TEXT NULL DEFAULT NULL,

`classTest2` TEXT NULL DEFAULT NULL,

`classTest3` TEXT NULL DEFAULT NULL,

217 | P a g e
`classTest4` TEXT NULL DEFAULT NULL,

`labTest1` TEXT NULL DEFAULT NULL,

`labTest2` TEXT NULL DEFAULT NULL,

`labTest3` TEXT NULL DEFAULT NULL,

`labTest4` TEXT NULL DEFAULT NULL,

`assignment1` INT(200) NULL DEFAULT NULL,

`assignment2` TEXT NULL DEFAULT NULL,

`assignment3` TEXT NULL DEFAULT NULL,

`assignment4` TEXT NULL DEFAULT NULL,

`totalMarks` TEXT NULL DEFAULT NULL,

`trimesterCgpa` TEXT NULL DEFAULT NULL,

`totalCGPA` TEXT NULL DEFAULT NULL,

`result` TEXT NULL DEFAULT NULL,

`trimester` TEXT NULL DEFAULT NULL,

`presentation1` DOUBLE NULL DEFAULT NULL,

`presentation2` DOUBLE NULL DEFAULT NULL,

`presentation3` DOUBLE NULL DEFAULT NULL,

`presentation4` DOUBLE NULL DEFAULT NULL,

`presentationTotal` DOUBLE NULL DEFAULT NULL,

`classTestTotal` DOUBLE NULL DEFAULT NULL,

`labTestTotal` DOUBLE NULL DEFAULT NULL,

`assaignmentTotal` DOUBLE NULL DEFAULT NULL,

`classPerformanceTotal` DOUBLE NULL DEFAULT NULL,

`resultgread` TEXT NULL DEFAULT NULL,

`report1` TEXT NULL DEFAULT NULL,

218 | P a g e
`report2` TEXT NULL DEFAULT NULL,

`report3` TEXT NULL DEFAULT NULL,

`report4` TEXT NULL DEFAULT NULL,

`reporttotal` TEXT NULL DEFAULT NULL,

`attandance` TEXT NULL DEFAULT NULL,

`extrabyteacher` TEXT NULL DEFAULT NULL,

`totalin40` TEXT NULL DEFAULT NULL,

`advisorid` TEXT NULL DEFAULT NULL,

`advisorStatus` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`sl`))

ENGINE = InnoDB

AUTO_INCREMENT = 81

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`resultsheet`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`resultsheet` (

`sl` INT(11) NOT NULL AUTO_INCREMENT,

PRIMARY KEY (`sl`))

ENGINE = InnoDB

DEFAULT CHARACTER SET = latin1;

219 | P a g e
-- -----------------------------------------------------

-- Table `stamfordcse`.`schedule`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`schedule` (

`sl` INT(11) NOT NULL AUTO_INCREMENT,

`scheduleName` TEXT NULL DEFAULT NULL,

`scheduleType` TEXT NULL DEFAULT NULL,

`startingDate` DATE NOT NULL,

`endingDate` DATE NOT NULL,

`scheduleOwner` TEXT NULL DEFAULT NULL,

`scheduleFile` TEXT NULL DEFAULT NULL,

`ScheduleSession` TEXT NULL DEFAULT NULL,

`ScheduleSessionYear` TEXT NULL DEFAULT NULL,

`ScheduleTo` TEXT NULL DEFAULT NULL,

`ScheduleClassSession` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`sl`))

ENGINE = InnoDB

AUTO_INCREMENT = 21

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`slidelectures`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`slidelectures` (

220 | P a g e
`slidesl` INT(11) NOT NULL AUTO_INCREMENT,

`slideName` TEXT NULL DEFAULT NULL,

`department` TEXT NULL DEFAULT NULL,

`courseCode` TEXT NULL DEFAULT NULL,

`courseName` TEXT NULL DEFAULT NULL,

`batch` TEXT NULL DEFAULT NULL,

`postedBy` TEXT NULL DEFAULT NULL,

`lectureNo` INT(200) NULL DEFAULT NULL,

`trimester` TEXT NULL DEFAULT NULL,

`trimesterYear` TEXT NULL DEFAULT NULL,

`slideFile` TEXT NULL DEFAULT NULL,

`slideLink` TEXT NULL DEFAULT NULL,

`lectureDate` DATE NULL DEFAULT NULL,

`massage` TEXT NULL DEFAULT NULL,

`teacherid` TEXT NULL DEFAULT NULL,

`stutaslecture` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`slidesl`))

ENGINE = InnoDB

AUTO_INCREMENT = 47

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`softwaredb`

-- -----------------------------------------------------

221 | P a g e
CREATE TABLE IF NOT EXISTS `stamfordcse`.`softwaredb` (

`softsl` INT(100) NOT NULL AUTO_INCREMENT,

`coursecode` TEXT NULL DEFAULT NULL,

`courseName` TEXT NULL DEFAULT NULL,

`courseTeacherid` TEXT NULL DEFAULT NULL,

`courseTeacherName` TEXT NULL DEFAULT NULL,

`softwareName` TEXT NULL DEFAULT NULL,

`department` TEXT NULL DEFAULT NULL,

`batch` TEXT NULL DEFAULT NULL,

`trimesterName` TEXT NULL DEFAULT NULL,

`trimesterYear` TEXT NULL DEFAULT NULL,

`softwarefile` TEXT NULL DEFAULT NULL,

`submissionDate` DATE NULL DEFAULT NULL,

PRIMARY KEY (`softsl`))

ENGINE = InnoDB

AUTO_INCREMENT = 7

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`studentsall`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`studentsall` (

`sl` INT(11) NOT NULL AUTO_INCREMENT,

`id` TEXT NOT NULL,

222 | P a g e
`stdFullName` TEXT NULL DEFAULT NULL,

`firstName` TEXT NULL DEFAULT NULL,

`lastName` TEXT NULL DEFAULT NULL,

`birthDate` DATE NULL DEFAULT NULL,

`gander` TEXT NULL DEFAULT NULL,

`phoneNumber` TEXT NULL DEFAULT NULL,

`email` TEXT NULL DEFAULT NULL,

`password` TEXT NULL DEFAULT NULL,

`program` TEXT NULL DEFAULT NULL,

`batchName` TEXT NULL DEFAULT NULL,

`batchNumber` INT(222) NULL DEFAULT NULL,

`stdgroup` TEXT NULL DEFAULT NULL,

`depertment` TEXT NULL DEFAULT NULL,

`trimester` TEXT NULL DEFAULT NULL,

`shiftvalue` TEXT NULL DEFAULT NULL,

`campus` TEXT NULL DEFAULT NULL,

`profilePicture` TEXT NULL DEFAULT NULL,

`fatherName` TEXT NULL DEFAULT NULL,

`motherName` TEXT NULL DEFAULT NULL,

`gradianName` TEXT NULL DEFAULT NULL,

`gradianRelation` TEXT NULL DEFAULT NULL,

`gradianMobile` TEXT NULL DEFAULT NULL,

`presentAdress1` TEXT NULL DEFAULT NULL,

`presentAdress2` TEXT NULL DEFAULT NULL,

`presentCity` TEXT NULL DEFAULT NULL,

223 | P a g e
`presentState` TEXT NULL DEFAULT NULL,

`presentPostalCode` TEXT NULL DEFAULT NULL,

`presentCountry` TEXT NULL DEFAULT NULL,

`permanentAdress1` TEXT NULL DEFAULT NULL,

`permanentAdress2` TEXT NULL DEFAULT NULL,

`permanentCity` TEXT NULL DEFAULT NULL,

`permanentState` TEXT NULL DEFAULT NULL,

`permanentPostalCode` TEXT NULL DEFAULT NULL,

`permanentCountry` TEXT NULL DEFAULT NULL,

`activationcode` TEXT NULL DEFAULT NULL,

`status` TEXT NULL DEFAULT NULL,

`batch` TEXT NULL DEFAULT NULL,

`cgpacurrent` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`sl`),

CONSTRAINT `studentsall`

FOREIGN KEY ()

REFERENCES `stamfordcse`.`resultdoc` ()

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`books` (`booksl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

224 | P a g e
FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`coureslist` (`coursesl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`courseofferedforcse` (`coursesl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`courseoutlinecse` (`sl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`courseoutlinecsi` (`sl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`coursetaken` (`sl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

225 | P a g e
FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`eventscse` (`sl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`lecturevideo` (`videolecturesl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`newscse` (`sl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`notice` (`sl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`postsall` (`postallsl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

226 | P a g e
FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`poststeachers` (`teacherpostsl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`resultdoc` (`sl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`results` (`sl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`resultsheet` (`sl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`schedule` (`sl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

227 | P a g e
FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`slidelectures` (`slidesl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`softwaredb` (`softsl`)

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`

FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`takencourses` (`takencoursesl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `studentsall`

FOREIGN KEY (`sl`)

REFERENCES `stamfordcse`.`teachers` (`postsall_postallsl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION)

ENGINE = InnoDB

228 | P a g e
AUTO_INCREMENT = 41

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`students`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`students` (

`studentId` VARCHAR(100) NOT NULL,

`StudentName` TEXT NOT NULL,

`Student1stName` TEXT NULL DEFAULT NULL,

`StudentLastName` TEXT NULL DEFAULT NULL,

`StudentMidName` TEXT NULL DEFAULT NULL,

`HscResult` TEXT NULL DEFAULT NULL,

`SscResult` TEXT NULL DEFAULT NULL,

`StdAdmitted` INT(50) NULL DEFAULT NULL,

`StudentBatch` TEXT NULL DEFAULT NULL,

`StudentSession` TEXT NULL DEFAULT NULL,

`Spring` TEXT NOT NULL,

`Summer` TEXT NULL DEFAULT NULL,

`Fall` TEXT NULL DEFAULT NULL,

`CourseId` TEXT NULL DEFAULT NULL,

`CourseName` TEXT NULL DEFAULT NULL,

`CourseCredit` FLOAT NOT NULL,

`StudentPass` TEXT NOT NULL,

229 | P a g e
`StudentNewPass` TEXT NOT NULL,

`StudentImage` TEXT NOT NULL,

`StudentEmail` TEXT NULL DEFAULT NULL,

`StudentMobile` TEXT NOT NULL,

`slidelectures_slidesl` INT(11) NOT NULL,

`postsall_postallsl` INT(11) NOT NULL,

`resultdoc_sl` INT(11) NOT NULL,

`softwaredb_softsl` INT(100) NOT NULL,

PRIMARY KEY (`studentId`),

INDEX `fk_students_slidelectures1_idx` (`slidelectures_slidesl` ASC),

INDEX `fk_students_postsall1_idx` (`postsall_postallsl` ASC),

INDEX `fk_students_resultdoc1_idx` (`resultdoc_sl` ASC),

INDEX `fk_students_softwaredb1_idx` (`softwaredb_softsl` ASC),

CONSTRAINT `fk_students_slidelectures1`

FOREIGN KEY (`slidelectures_slidesl`)

REFERENCES `stamfordcse`.`slidelectures` (`slidesl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `fk_students_postsall1`

FOREIGN KEY (`postsall_postallsl`)

REFERENCES `stamfordcse`.`postsall` (`postallsl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `fk_students_resultdoc1`

FOREIGN KEY (`resultdoc_sl`)

230 | P a g e
REFERENCES `stamfordcse`.`resultdoc` (`sl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `fk_students_softwaredb1`

FOREIGN KEY (`softwaredb_softsl`)

REFERENCES `stamfordcse`.`softwaredb` (`softsl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION)

ENGINE = InnoDB

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`advisors`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`advisors` (

`sl` INT(11) NOT NULL AUTO_INCREMENT,

`advisorid` TEXT NULL DEFAULT NULL,

`batch` TEXT NULL DEFAULT NULL,

`students_studentId` VARCHAR(100) NOT NULL,

PRIMARY KEY (`sl`, `students_studentId`),

INDEX `fk_advisors_students1_idx` (`students_studentId` ASC),

CONSTRAINT `fk_advisors_students1`

FOREIGN KEY (`students_studentId`)

REFERENCES `stamfordcse`.`students` (`studentId`)

231 | P a g e
ON DELETE NO ACTION

ON UPDATE NO ACTION)

ENGINE = InnoDB

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`admission_schedule`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`admission_schedule` (

`sl` INT(255) NOT NULL AUTO_INCREMENT,

`trimester` TEXT NULL DEFAULT NULL,

`subjects` TEXT NULL DEFAULT NULL,

`program` TEXT NULL DEFAULT NULL,

`applicationStartDate` TEXT NULL DEFAULT NULL,

`applicationLastDate` TEXT NULL DEFAULT NULL,

`writtenTestStartDate` TEXT NULL DEFAULT NULL,

`writtenTestStartTime` TEXT NULL DEFAULT NULL,

`vivaTestDate` TEXT NULL DEFAULT NULL,

`vivaTestStartTime` TEXT NULL DEFAULT NULL,

`vivaTestEndingTime` TEXT NULL DEFAULT NULL,

`writtenResultPublishDate` TEXT NULL DEFAULT NULL,

`writtenResultPublishTime` TEXT NULL DEFAULT NULL,

`vivaResultPublishDate` TEXT NULL DEFAULT NULL,

`vivaResultPublishTime` TEXT NULL DEFAULT NULL,

232 | P a g e
`admissionStartDate` TEXT NULL DEFAULT NULL,

`admissionLastDate` TEXT NULL DEFAULT NULL,

`courseRgStartDate` TEXT NULL DEFAULT NULL,

`courseRgLastDate` TEXT NULL DEFAULT NULL,

`classStartDate` TEXT NULL DEFAULT NULL,

`massage` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`sl`))

ENGINE = InnoDB

AUTO_INCREMENT = 36

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`teachers`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`teachers` (

`teacherId` TEXT NOT NULL,

`activationkey` TEXT NULL DEFAULT NULL,

`teacherName` TEXT NULL DEFAULT NULL,

`teacher1stName` TEXT NOT NULL,

`teacherLastName` TEXT NOT NULL,

`teacherEducation` TEXT NOT NULL,

`teacherInerest` TEXT NOT NULL,

`teacherGender` TEXT NOT NULL,

`teacherPassword` TEXT NOT NULL,

233 | P a g e
`teacherEmail` TEXT NOT NULL,

`teacherMobile` TEXT NOT NULL,

`teacherDescriptions` TEXT NOT NULL,

`teacherImage` TEXT NOT NULL,

`teacherCatagory` TEXT NOT NULL,

`sl` INT(11) NOT NULL AUTO_INCREMENT,

`Specialization` TEXT NULL DEFAULT NULL,

`designation` TEXT NULL DEFAULT NULL,

`department` TEXT NOT NULL,

`active` TEXT NOT NULL,

`country` TEXT NULL DEFAULT NULL,

`city` TEXT NULL DEFAULT NULL,

`zip` TEXT NULL DEFAULT NULL,

`state` TEXT NULL DEFAULT NULL,

`address2` TEXT NULL DEFAULT NULL,

`street` TEXT NULL DEFAULT NULL,

`campus` TEXT NULL DEFAULT NULL,

`advising` TEXT NULL DEFAULT NULL,

`status` TEXT NULL DEFAULT NULL,

`appointedDate` TEXT NULL DEFAULT NULL,

`schedule_sl` INT(11) NOT NULL,

`postsall_postallsl` INT(11) NOT NULL,

`results_sl` INT(11) NOT NULL,

`poststeachers_teacherpostsl` INT(11) NOT NULL,

`eventscse_sl` INT(222) NOT NULL,

234 | P a g e
`newscse_sl` INT(111) NOT NULL,

`subjects_subjectsId` TEXT NOT NULL,

`coursetaken_sl` INT(11) NOT NULL,

`courseoutlinecsi_courseCode` TEXT NOT NULL,

`courseoutlinecsi_sl` INT(11) NOT NULL,

`courseoutlinecse_sl` INT(11) NOT NULL,

`books_booksl` INT(222) NOT NULL,

`courseofferedforcse_coursesl` INT(11) NOT NULL,

`teachers_teacherId` TEXT NOT NULL,

`teachers_postsall_postallsl` INT(11) NOT NULL,

`teachers_eventscse_sl` INT(222) NOT NULL,

`teachers_newscse_sl` INT(111) NOT NULL,

`teachers_subjects_subjectsId` TEXT NOT NULL,

`teachers_coursetaken_sl` INT(11) NOT NULL,

`teachers_courseoutlinecse_sl` INT(11) NOT NULL,

`teachers_books_booksl` INT(222) NOT NULL,

`courseoutlinecsi_courseCode1` TEXT NOT NULL,

`courseoutlinecsi_sl1` INT(11) NOT NULL,

`eventscse_sl1` INT(222) NOT NULL,

INDEX `sl` (`sl` ASC),

PRIMARY KEY (`teacherId`, `postsall_postallsl`, `eventscse_sl`, `newscse_sl`,


`subjects_subjectsId`, `coursetaken_sl`, `courseoutlinecse_sl`, `books_booksl`,
`teachers_teacherId`, `teachers_postsall_postallsl`, `teachers_eventscse_sl`,
`teachers_newscse_sl`, `teachers_subjects_subjectsId`, `teachers_coursetaken_sl`,
`teachers_courseoutlinecse_sl`, `teachers_books_booksl`, `eventscse_sl1`),

UNIQUE INDEX `teacherId_UNIQUE` (`teacherId` ASC),

INDEX `fk` (),


235 | P a g e
CONSTRAINT `teachers`

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

DEFAULT CHARACTER SET = latin1;

240 | P a g e
-- -----------------------------------------------------

-- Table `stamfordcse`.`admissiontestresult`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`admissiontestresult` (

`adtestresultsl` INT(11) NOT NULL AUTO_INCREMENT,

`trimester` TEXT NULL DEFAULT NULL,

`admissionresultfile` TEXT NULL DEFAULT NULL,

`postedDate` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,

`testType` TEXT NULL DEFAULT NULL,

`topics` TEXT NULL DEFAULT NULL,

`massage` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`adtestresultsl`),

UNIQUE INDEX `adtestresultsl` (`adtestresultsl` ASC),

CONSTRAINT ``

FOREIGN KEY (`adtestresultsl`)

REFERENCES `stamfordcse`.`teachers` (`postsall_postallsl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION)

ENGINE = InnoDB

AUTO_INCREMENT = 8

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`admin`

241 | P a g e
-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`admin` (

`sl` INT(200) NOT NULL AUTO_INCREMENT,

`adminId` TEXT NULL DEFAULT NULL,

`adminName` TEXT NULL DEFAULT NULL,

`adminPassword` TEXT NULL DEFAULT NULL,

`adminEmail` TEXT NULL DEFAULT NULL,

`adminMobile` TEXT NULL DEFAULT NULL,

`adminCatagory` TEXT NULL DEFAULT NULL,

`pincode` TEXT NULL DEFAULT NULL,

`admintype` TEXT NULL DEFAULT NULL,

`status` TEXT NULL DEFAULT NULL,

`teachers_teacherId` TEXT NOT NULL,

`teachers_postsall_postallsl` INT(11) NOT NULL,

`teachers_eventscse_sl` INT(222) NOT NULL,

`teachers_newscse_sl` INT(111) NOT NULL,

`teachers_subjects_subjectsId` TEXT NOT NULL,

`teachers_coursetaken_sl` INT(11) NOT NULL,

`teachers_courseoutlinecse_sl` INT(11) NOT NULL,

PRIMARY KEY (`sl`),

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

DEFAULT CHARACTER SET = latin1;

247 | P a g e
-- -----------------------------------------------------

-- Table `stamfordcse`.`new-applicaton`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`new-applicaton` (

`sl` INT(11) NOT NULL AUTO_INCREMENT,

`studentsFullName` TEXT NULL DEFAULT NULL,

`studentCatagory` TEXT NULL DEFAULT NULL,

`std1stname` TEXT NULL DEFAULT NULL,

`stdlastname` TEXT NULL DEFAULT NULL,

`profilePicture` TEXT NULL DEFAULT NULL,

`applyingFor` TEXT NULL DEFAULT NULL,

`studentType` TEXT NULL DEFAULT NULL,

`studentSubjectChosse` TEXT NULL DEFAULT NULL,

`sscGPA` TEXT NULL DEFAULT NULL,

`hscGpa` TEXT NULL DEFAULT NULL,

`sscmarksheetfile` TEXT NULL DEFAULT NULL,

`hscmarksheetfile` TEXT NULL DEFAULT NULL,

`session` TEXT NULL DEFAULT NULL,

`mobile` TEXT NULL DEFAULT NULL,

`email` TEXT NULL DEFAULT NULL,

`password` TEXT NULL DEFAULT NULL,

`newpassword` TEXT NULL DEFAULT NULL,

`streetAdress` TEXT NULL DEFAULT NULL,

`streetAdress2` TEXT NULL DEFAULT NULL,

`city` TEXT NULL DEFAULT NULL,

248 | P a g e
`state` TEXT NULL DEFAULT NULL,

`postalcode` TEXT NULL DEFAULT NULL,

`country` TEXT NULL DEFAULT NULL,

PRIMARY KEY (`sl`))

ENGINE = InnoDB

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`springspring`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`springspring` (

`id` INT(6) UNSIGNED NOT NULL AUTO_INCREMENT,

`firstname` VARCHAR(30) NOT NULL,

`lastname` VARCHAR(30) NOT NULL,

`email` VARCHAR(50) NULL DEFAULT NULL,

`reg_date` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE


CURRENT_TIMESTAMP,

PRIMARY KEY (`id`))

ENGINE = InnoDB

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`teachers_has_courseoutlinecse`

249 | P a g e
-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `stamfordcse`.`teachers_has_courseoutlinecse` (

`teachers_teacherId` TEXT NOT NULL,

`courseoutlinecse_sl` INT(11) NOT NULL,

PRIMARY KEY (`teachers_teacherId`, `courseoutlinecse_sl`),

INDEX `fk_teachers_has_courseoutlinecse_courseoutlinecse1_idx` (`courseoutlinecse_sl`


ASC),

INDEX `fk_teachers_has_courseoutlinecse_teachers_idx` (`teachers_teacherId` ASC),

CONSTRAINT `fk_teachers_has_courseoutlinecse_teachers`

FOREIGN KEY (`teachers_teacherId`)

REFERENCES `stamfordcse`.`teachers` (`teacherId`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `fk_teachers_has_courseoutlinecse_courseoutlinecse1`

FOREIGN KEY (`courseoutlinecse_sl`)

REFERENCES `stamfordcse`.`courseoutlinecse` (`sl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION)

ENGINE = InnoDB

DEFAULT CHARACTER SET = latin1;

-- -----------------------------------------------------

-- Table `stamfordcse`.`teachers_has_lecturevideo`

-- -----------------------------------------------------

250 | P a g e
CREATE TABLE IF NOT EXISTS `stamfordcse`.`teachers_has_lecturevideo` (

`teachers_teacherId` TEXT NOT NULL,

`teachers_postsall_postallsl` INT(11) NOT NULL,

`teachers_eventscse_sl` INT(222) NOT NULL,

`teachers_newscse_sl` INT(111) NOT NULL,

`teachers_subjects_subjectsId` TEXT NOT NULL,

`teachers_coursetaken_sl` INT(11) NOT NULL,

`lecturevideo_videolecturesl` INT(11) NOT NULL,

PRIMARY KEY (`teachers_teacherId`, `teachers_postsall_postallsl`, `teachers_eventscse_sl`,


`teachers_newscse_sl`, `teachers_subjects_subjectsId`, `teachers_coursetaken_sl`,
`lecturevideo_videolecturesl`),

INDEX `fk_teachers_has_lecturevideo_lecturevideo1_idx` (`lecturevideo_videolecturesl`


ASC),

INDEX `fk_teachers_has_lecturevideo_teachers1_idx` (`teachers_teacherId` ASC,


`teachers_postsall_postallsl` ASC, `teachers_eventscse_sl` ASC, `teachers_newscse_sl` ASC,
`teachers_subjects_subjectsId` ASC, `teachers_coursetaken_sl` ASC),

CONSTRAINT `fk_teachers_has_lecturevideo_teachers1`

FOREIGN KEY (`teachers_teacherId` , `teachers_postsall_postallsl` , `teachers_eventscse_sl` ,


`teachers_newscse_sl` , `teachers_subjects_subjectsId` , `teachers_coursetaken_sl`)

REFERENCES `stamfordcse`.`teachers` (`teacherId` , `postsall_postallsl` , `eventscse_sl` ,


`newscse_sl` , `subjects_subjectsId` , `coursetaken_sl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `fk_teachers_has_lecturevideo_lecturevideo1`

FOREIGN KEY (`lecturevideo_videolecturesl`)

REFERENCES `stamfordcse`.`lecturevideo` (`videolecturesl`)

ON DELETE NO ACTION

ON UPDATE NO ACTION)

251 | P a g e
ENGINE = InnoDB

DEFAULT CHARACTER SET = latin1;

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.

11.2 Data Storage Formats


There are two main types of data storage formats: files and databases. Files are electronic lists of
data that have been optimized to perform a particular transaction. A database is a collection of
groupings of information that are related to each other in some way. Open-source DBMS’s are
popular, such as MySQL.

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.

11.2.3 Applying the Concepts


After understand all the description of this chapter I have made a report so that I can use those
information correctly. The report on data information has been given bellow:

11.3 Table of Project Data description


Data Type Use Suggested Formats
Students information Simple (mostly text, Transactions Relational
number)
Teachers Information Simple text and Transections Relational
number
Admin information Simple text and Transections Relational
number
Profile picture Picture(png, jpg, gif) Transections Relational
Course information Simple text and transections Relational
number
E-book Simple text and Transection Transactional file
complex pdf file
Schedule Simple text, date, Transection Relational and
time and file(.doc and transactional file
pdf)
Admission Simple text Transactional Relational
information
Program information Simple text Transactional Relational

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.

12.2 Managing the Programming Process


The programming process is quite well understood and generally flows smoothly. When system
development projects fail, it is usually not because the programmers were unable to write the
programs. Flaws in analysis, design, or project management are the leading contributors to project
failure. In order to ensure that the process of programming is conducted successfully, we discuss

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.

12.2.1 Assigning Programming Tasks


During project planning (Chapter 2), I identified the programming support required for
constructing the system in terms of the numbers and skill to complete this project. Now I must
assign program modules again. As discussed in Chapter 10, each programming module should be
as separate and distinct as possible from the other modules. The best strategy is to try to break the
project into a series of smaller parts that can function as independently as possible.

12.2.2 Coordinating Activities


Coordination can be done through both high-tech and low-tech means. The simplest approach is
to have a weekly project meeting to discuss any changes to the system that have arisen during the
past week—or just any issues that have come up. Regular meetings, even if they are brief,
encourage the widespread communication and discussion of issues before they become problems.

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.2.3 Managing the Schedule


The time estimates that were produced during the initial planning phase and refined during the
analysis and design phases must almost always be refined as the project progresses during
construction, because it is virtually impossible to develop an exact assessment of the project’s
schedule. As we discussed in Chapter 2, a well-done set of time estimates will usually have a 10%
margin of error by the time implementation is reached. It is critical that the time estimates be
revised as the construction step proceeds. If a program module takes longer to develop than
expected, then the prudent response is to move the expected completion date later by the same
amount of time. One of the most common causes for schedule problems is scope creep. Scope
creep occurs when new requirements are added to the project after the system design has been
finalized. Scope creep can be very expensive because changes made late in the SDLC can require
much of the completed system design (and even programs already written) to be redone. Any
proposed change during construction will require the approval of the project manager and should
be addressed only after a quick cost–benefit analysis has been done.

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.

12.3.1 Test Planning


For testing, I have made a good idea. I will code for task wish. After completing every task, I will
test my task. If my task run without any error than I will go to code for next task. After completing
all task coding and testing I will submit my project to my advisor for testing again. If he find out
any error or mistake, I will solve that error and mistake. If there is no error or mistake, my project
is done.

At time of codding and testing I will follow a report sheet format to understand my error and
mistake clearly.

The picture of report given bellow:

261 | P a g e
Fig: 12.1 Test Plan Report Format

262 | P a g e
Fig: 12.2 Testing Separate Models

Fig: 12.3 Error Discovery Rates for Different Stages of Tests.

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.

12.3.3 Integration Tests


Integration tests assess whether a set of modules or programs that must work together do so without
error. They ensure that the interfaces and linkages between different parts of the system work
properly. At this point, the modules have passed their individual unit tests, so the focus now is on
the flow of control among modules and on the data exchanged among them. Integration testing
follows the same general procedures as unit testing: the tester develops a test plan that has a series
of tests. Integration testing is often done by a set of programmers and/or systems analysts. There
are four approaches to integration testing: user interface testing, use scenario testing, data flow
testing, and system interface testing. Most projects use all four approaches.

12.3.4 System Tests


System tests are usually conducted by the systems analysts to ensure that all modules and programs
work together without error. System testing is similar to integration testing, but is much broader
in scope. Whereas integration testing focuses on whether the modules work together without error,
system tests examine how well the system meets business requirements and its usability, security,
and performance under heavy load (see Figure 12-5). It also tests the system’s documentation.

12.3.5 Acceptance Tests


Acceptance tests are done primarily by the users with support from the project team. The goal is
to confirm that the system is complete, meets the business needs that prompted the system to be
developed, and is acceptable to the users. Acceptance testing is done in two stages: alpha testing,
in which users test the system using made-up data, and beta testing, in which users begin to use
the system with real data and carefully monitor the system for errors. The users’ perceptions of the
264 | P a g e
new system will be significantly influenced by their experiences during acceptance testing. Since
first impressions are sometimes difficult to change, analysts should strive to ensure that acceptance
testing is conducted only following rigorous (and successful) system testing. In addition, listening
to and responding to user feedback will be essential

12.4 Developing Documentation


There are two fundamentally different types of documentation. System documentation is intended
to help programmers and systems analysts understand the application software and enable them to
build it or maintain it after the system is installed. System documentation is a by-product of the
systems analysis and design process and is created as the project unfolds. Each step and phase
produces documents that are essential in understanding how the system is built or is to be built,
and these documents are stored in the project binder(s).

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.

12.4.1 Types of Documentation


There are three fundamentally different types of user documentation: reference documents,
procedures manuals, and tutorials. Reference documents (also called the help system) are designed
to be used when the user needs to learn how to perform a specific function (e.g., updating a field,
adding a new record). Typically, people read reference information only after they have tried and
failed to perform the function. Writing reference documents requires special care because users
are often impatient or frustrated when they begin to read them.

12.4.2 Designing Documentation Structure


In this section, we focus on the development of online documentation because we believe that it is
the most common form of user documentation. The general structure used in most online
documentation, whether reference documents, procedures manuals, or tutorials, is to develop a set
of documentation navigation controls that lead the user to documentation topics. The
documentation topics are the material that users want to read, whereas the navigation controls are
the way in which users locate and access a specific topic.

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 PageINFORMATIONADMISSION INFORMATIONSCHEDULE/ADMISSION
TEST INFORMATION/TEST RESULT INFORMATION”. Please see the picture bellow with
tick in red color.

Fig: 12.4 viewing admission information

2. To view program information, all user will follow:


HOME PAGEINFORMATIONSUNDERGRADUATE (CSE/CSI)/GRADUATE
(MCA/MSCSE)/NETWORKING (CCNA/CISCO).

266 | P a g e
3. To view admission requirements, all user will follow:
HOME PAGEINFORMATIONREQUIREMENTSUNDERGRADUATE/GRADUATE.

4. To view academic information, all user will follow:


HOME PAGEINFORMATIONSACADEMIC INFORMATIONSand click on one of
followings:

 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.

6. To view student’s facilities and campus life students will follow:


HOME PAGE INFORMATIONS FACILITIES AND CAMPUS LIFE.

7. To view scholarship and aid information, public user will follow:


HOME PAGE  INFORMATION SCHOLARSHIP/AIDREAD 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.

12.5.2 Academic Students


As an academic student, every student should know how to use this website. Here step by step user
manual for academic students has been described at chapter-9 in user interface design. So please
view user interface at chapter-9.

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.

12.5.5 Super admin


As a Super admin, Super admin should know how to use this website. Here step by step user
manual for Super 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

CHAPTER 13: TRANSITIONS TO THE NEW


SYSTEM
This chapter examines the activities needed to install the information system and successfully
convert the organization to using it. It also discusses post implementation activities, such as system
support, system maintenance, and project assessment. Installing the system and making it available
for use from a technical perspective is relatively straightforward. However, the training and
organizational issues surrounding the installation are more complex and challenging because they
focus on people, not computers.

269 | P a g e
For doing all activity, I am going to doing those activity which has been given bellow:

o Making the Transition to the New System


o The Migration Plan
 Selecting the Conversion Strategy
 Preparing a Business Contingency Plan
 Preparing the Technology
 Preparing People for the New System
 Understanding Resistance to Change
 Revising Management Policies
 Assessing Costs and Benefits
 Motivating Adoption
 Enabling Adoption: Training

Post implementation Activities are

 System Support
 System Maintenance
 Project Assessment

270 | P a g e
CHAPTER 14
CODDING AND FUNCTION

CHAPTER 14: CODDING AND FUNCTIONS


14.1 Introduction
There are lot of function and programming logic has been used for completing the project. In this
chapter I am going to describe some important PHP, MySQL and JavaScript function. For privacy
and security, I am not showing all programming function and logic. So here just some of all
codding.

14.2 MySQL Database connect function


271 | P a g e
<?php
$dbhost = "localhost";
$dbuser = "root";
$dbpass = "";
$dbname = "stamfordcse";
mysql_connect($dbhost,$dbuser,$dbpass) or die('cannot connect to the server');
mysql_select_db($dbname) or die('database selection problem');
?>

14.3 signup function and PHP code

<?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'];

$sqlt="select * from teachers where teacherId='$adminId' and


teacherPassword='$password'";
$runt= mysql_query($sqlt);

$sqls="select * from studentsall where id='$adminId' and password='$password'";


$runs= mysql_query($sqls);

$sql="select * from admin where adminId='$adminId' and adminPassword='$password'";


$run= mysql_query($sql);

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>";

}
}
?>

14.5 Function and Code for view admission schedule

<?php
include 'dbconfig.php';

$sql="SELECT * FROM admission_schedule ORDER BY sl DESC LIMIT 1";


$result_set=mysql_query($sql);
while($row=mysql_fetch_array($result_set))
{

Table html and css code here


}
?>

14.6 View admission Test Result

<?php
include 'dbconfig.php';
$admissionresultinfo = "SELECT * FROM `admissiontestresult` GROUP BY trimester
ORDER BY `admissiontestresult`.`adtestresultsl` DESC LIMIT 0 , 5";
$resultadmissionresultinfo = mysql_query($admissionresultinfo);

while ($row = mysql_fetch_array($resultadmissionresultinfo)) {


$trimester = $row['trimester'];

echo '<button class="accordion">'.$trimester.'</button>';


echo '<div class="panel">';
echo '<br>';

$selecttrimester = "SELECT * FROM `admissiontestresult` WHERE trimester='$trimester'


ORDER BY `admissiontestresult`.`adtestresultsl` DESC";
$selecttrimesterRESULT = mysql_query($selecttrimester);
while ($row = mysql_fetch_array($selecttrimesterRESULT)) {

$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'];

echo '<table style="overflow-x:auto; background-color: #009999; color: #000000; border:


purple solid;max-width:auto; width: 100%;">';
echo '<tr>';
echo '<td>'; echo "Posted:&nbsp;".$postedDate; echo '</td>';
echo '<td>'; echo $topics; echo '</td>';
echo '<td>'; echo "Exam Type:&nbsp;". $testType; echo '</td>';
echo '</tr>';
echo '</table>';
echo '<table style="overflow-x:auto; background-color: #009999; color: #000000; border:
purple solid;max-width:auto; width: 100%;">';
echo '<tr>';
echo '<td>'; echo "Massage:&nbsp;".$massage; echo '</td>';
echo '<td>'; echo "&nbsp;"; echo '</td>';
echo '<td>'; echo '<a
href="../../resouresall/admissionTestResultSheet/'.$admissionresultfile.'">Download Result
Sheet</a>'; echo '</td>';
echo '</tr>';
echo '</table>';
echo '<br><br><br><br>';
}
echo '</div>';
echo '<br>'
}
?>

14.7 Download Class Schedule

<?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>

<div id="foo" class="panel">


<br><br>

<?php
$ScheduleSession =$row['ScheduleSession'];
$ScheduleSessionYear =$row['ScheduleSessionYear'];

$newsql = "SELECT * FROM schedule where ScheduleSession='$ScheduleSession' AND


ScheduleSessionYear='$ScheduleSessionYear' AND scheduleType='Class Schedule' 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 '<table align="center" width="90%"style="border: 3px solid black; cellspacing:3;


cellpadding:3;">';
echo '<tr background="tabile-bg-image.jpg" align="left">';

276 | P a g e
echo '<td style="padding: 15px;">';
echo " ".$ScheduleSession."-".$ScheduleSessionYear.'<br>';
echo "(".$scheduleType.")";
echo '<br>';
echo " By:".$scheduleOwner.'<br>';

echo '<br>';

print"<a href='../../resouresall/scheduleFile/$scheduleFile' style='color:blue;'>";


echo "DOWNLOAD SCHEDULE";
echo '</a>';
echo '</td>';

echo '<td>';

echo '</td>';

echo '</tr>';
echo '</table>';
echo '<br>';
echo '<br>';

?>
</div>
<br>

<?php } ?>

14.8 Changing password

<?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){

$activatemyaccount = "UPDATE `studentsall` SET


password='$confirmpassword',status='$status' WHERE id='$stdid' AND
activationcode='$stdpincode' AND email='$stdemail'";
$runqury = mysql_query($activatemyaccount);
if($runqury){

//$_SESSION["id"]=$teacherid;
echo "<script>alert('sucsess.')window.open('loginAll.php','_self')</script>";
}

} else {
echo "<script>alert('password did not match.')</script>";
}

?>

14.9 Editing live profile information(javaScript/PHP ).


PHP CODE:

<?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/";

// new file size in KB


$new_size = $file_size/1024;
// new file size in KB

// make file name in lower case


$new_file_name = strtolower($file);
// make file name in lower case

$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
}

?>

JavaScript and PHP:


<script>
$(function(){
//acknowledgement message
var message_status = $("#status");
$("td[contenteditable=true]").blur(function(){
var field_userid = $(this).attr("id") ;
var value = $(this).text() ;
$.post('ajaxeditmyprofile.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>
<script type="text/javascript">
function readURL(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$('#test').attr('src', e.target.result);
//$("#test").css("display", "block");
$('#test').css({"display":"block","float":"right" });

}
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)));

//from the fieldname:user_id we need to get user_id


$split_data = explode(':', $field_userid);
$user_id = $split_data[1];
$field_name = $split_data[0];
if(!empty($user_id) && !empty($field_name) && !empty($val))
{
//update the values
mysql_query("UPDATE studentsall SET $field_name = '$val' WHERE
sl = $user_id") or mysql_error();
echo "Successfully Updated Info";
} else {
echo "Invalid Requests";
}
}
} else {
echo "Invalid Requests";
}
?>

14.10 view class Schedule

<?php
$ScheduleSession =$row['ScheduleSession'];
$ScheduleSessionYear =$row['ScheduleSessionYear'];

$newsql = "SELECT * FROM schedule where ScheduleSession='$ScheduleSession' AND


ScheduleSessionYear='$ScheduleSessionYear' AND scheduleType='Class Schedule' 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'];

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 '<td style="padding: 15px;">';


echo " ".$ScheduleSession."-".$ScheduleSessionYear.'<br>';
echo "(".$scheduleType.")";
echo '<br>';
echo " By:".$scheduleOwner.'<br>';

echo '<br>';

print"<a href='../../resouresall/scheduleFile/$scheduleFile' style='color:blue;'>";


echo "DOWNLOAD SCHEDULE";
echo '</a>';
echo '</td>';

echo '<td>';

echo '</td>';

echo '</tr>';
echo '</table>';
echo '<br>';
echo '<br>';

?>
</div>
<br>

<?php } ?>

<div id="foo" class="panel" style="background-color: #62D0BA">


<br><br>

<?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 '<table align="center" width="90%"style="border: 3px solid black; cellspacing:3;


cellpadding:3;">';
echo '<tr background="tabile-bg-image.jpg" align="left">';

echo '<td style="padding: 15px;">';


echo " ".$ScheduleSession."-".$ScheduleSessionYear.'<br>';
echo "(".$scheduleType.")";
echo '<br>';
echo " By:".$scheduleOwner.'<br>';

echo '<br>';

print"<a href='../../resouresall/scheduleFile/$scheduleFile' style='color:blue;'>";


echo "DOWNLOAD SCHEDULE";
echo '</a>';
echo '</td>';

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;

for (i = 0; i < acc.length; i++) {


acc[i].onclick = function(){
this.classList.toggle("active");
this.nextElementSibling.classList.toggle("show");
}
}
</script>

14.11 view events

<?php

include 'dbconfig.php';
$eventsl = $_GET['eventsl'];
$noticeinfo1 = "SELECT * FROM `eventscse` WHERE sl='$eventsl'";
$resultnoticeinfo1 = mysql_query($noticeinfo1);
$counter1 = 0;

while ($row = mysql_fetch_array($resultnoticeinfo1)) {


$counter1 = $counter1+1;

$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;

while ($row = mysql_fetch_array($resulteventinfo)) {


$counter = $counter+1;

$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:&nbsp;'.$eventBy.'</h5>
<h5 class="card-subtitle">Start:
&nbsp;'.$eventDate.'&nbsp;&nbsp;('.$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 class="container" style="">


<div class="row">
<div class="col-xs-12">
<div class="text-xs-center">
<h1 style="color: yellow;">More Events</h1>
</div>
</div>
</div>
</div>

</div>';

echo '<div class="mbr-cards-row row striped">';


}

?>

14.12 view notice


286 | P a g e
<?php

include 'dbconfig.php';
$noticeinfo = "SELECT * FROM `notice` ORDER BY `sl` DESC LIMIT 0 , 16";
$resultnoticeinfo = mysql_query($noticeinfo);
$counter = 0;

while ($row = mysql_fetch_array($resultnoticeinfo)) {


$counter = $counter+1;

$sl = $row['sl'];
$title = $row['title'];
$descriptions = substr($row['descriptions'],0,100).".......";
$noticeBy = $row['noticeBy'];
$file = $row['file'];
$startDate = $row['startDate'];
$lastDate = $row['lastDate'];

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/noticeFile/'.$file.'" class="card-
img-top"></div>
<div class="card-block">
<h4 class="card-title">'.$title.'</h4>
<h5 class="card-subtitle">By &nbsp;'.$noticeBy.'</h5>
<h5 class="card-subtitle">Posted: &nbsp;'.$startDate.'</h5>
<p class="card-text">'.$descriptions.'</p>
<div class="card-btn"><a href="viewNoticeone.php?noticesl='.$sl.'" class="btn
btn-primary">MORE</a></div>
</div>
</div>
</div>
</div>';

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;">

<div class="container" style="">

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>';

echo '<div class="mbr-cards-row row striped">';


}

?>

14.13 view news

<?php

include 'dbconfig.php';

$newsinformation = "SELECT *
FROM `newscse`
ORDER BY `sl` DESC
LIMIT 0 , 16";
$newsinformationqury = mysql_query($newsinformation);
$counter = 0;

while ($row = mysql_fetch_array($newsinformationqury)) {


$counter = $counter+1;

$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'];

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/newsImages/'.$newsImage.'"
class="card-img-top"></div>
<div class="card-block">
<h4 class="card-title">'.$newsTopics.'</h4>
<h5 class="card-subtitle">News By:&nbsp;'.$newsBy.'</h5>
<h5 class="card-subtitle">News Date:
&nbsp;'.$newsDate.'&nbsp;&nbsp;<br>
Posted:'.$posted.' </h5>
<p class="card-text">'.$newsDescriptions.'</p>
<div class="card-btn"><a href="viewNewsOne.php?newssl='.$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 class="container" style="">


<div class="row">
<div class="col-xs-12">
<div class="text-xs-center">
<h1 style="color: yellow;">More News</h1>
</div>
</div>
</div>
</div>

289 | P a g e
</div>';

echo '<div class="mbr-cards-row row striped">';


}

?>

14.14 view offered course list

<?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'];

echo '<center><h2 style="background-color: #330099;color: white; text-align: center;float:


contour;">'. $recenttrimesterH.'<h2></center>';
echo ' <h1 class="mbr-section-title display-1">RECENTLY OFFERED </h1>';

$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>

<div id="foo" class="panel">


<br><br>

<!-- take a cse courses start-->


<?php

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;?>">

<div class="w3-container w3-card-2 w3-round w3-margin"style="background-


color:#00cc99;">
<br>

<img src="stamfordlogo/stamfordlogo.jpg" alt="Avatar" class="w3-left w3-margin-right"


style="width:60px">

<span class="w3-right w3-opacity">

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; ?>

<br>Course Offered To:<?php echo $courseofferedtobatchnumberHH ?>


<br>Course Teacher:<?php echo $row['courseteachername']; ?>
</p>

<div class="w3-right">
<table>
<th></th>

<tr>
<td colspan="100%" ng-controller="examCtrl">

<span> </span>

<select name="trimestername" id="className">


<option value="">Select Trimester</option>
<option value="SPRING">Spring</option>
<option value="SUMMER">Summer</option>
<option value="FALL">Fall</option>

</select>

<select name="trimesteryear" id="" >


<option value="">Year</option>
<option value="2016">2016</option>
<option value="2017">2017</option>
<option value="2018">2018</option>
<option value="2019">2019</option>
<option value="2020">2020</option>
<option value="2021">2021</option>
<option value="2022">2022</option>
<option value="2023">2023</option>
<option value="2024">2024</option>

292 | P a g e
<option value="2025">2025</option>

</select>

</td>
</tr></table>
</div>

<hr class="w3-clear">

<div class="w3-row-padding" style="margin:0 -16px">


</div>
<div class="w3-container w3-padding">
<input type="submit" name="offercsecourse" class="w3-btn post-booton" value="TAKE
THIS COURSE">
<button type="button" name="offercsecourse"class="w3-btn post-booton">

<i class="fa fa-pencil"></i>


<a href="viewcsecourseoutlineprofile.php?habib=<?php echo $courseslnumber1H;?>">VIEW
FULL PROFILE</a>

</button>

</div>

</div>

</form>

<?php } ?>

</div>
<br>

<?php } ?>

14.15 View E-book Full profile

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;

while ($row = mysql_fetch_array($resultbookinfo)) {


$counter1 = $counter1+1;

$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'];

}
?>

14.16 View Group profile

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'];

$courseinfo3456 = "SELECT * FROM postsall,courseofferedforcse,courseoutlinecse"


. " WHERE courseofferedforcse.courseteacherid='$teacherid'"
. " AND courseofferedforcse.coursesl='$offerdcoursesl'"
. " AND courseofferedforcse.offeredcoursecode=courseoutlinecse.courseCode"
. " AND postsall.courseCode=courseofferedforcse.offeredcoursecode"
. " AND postsall.trimesterName=courseofferedforcse.trimestername"
. " AND postsall.trimesterYear=courseofferedforcse.trimesteryear "
. " AND postsall.postsubmitterid !='$studentid' ORDER BY `postallsl` DESC LIMIT
0 , 1";

$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'];

echo '<h3><b>'.$massagetopics.'</b></h3>“ '.$massagepoststd.'”';

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'];

$courseinfo3456 = "SELECT * FROM postsall,courseofferedforcse,courseoutlinecse"


. " WHERE courseofferedforcse.courseteacherid='$teacherid'"
. " AND courseofferedforcse.coursesl='$offerdcoursesl'"
. " AND courseofferedforcse.offeredcoursecode=courseoutlinecse.courseCode"
. " AND postsall.courseCode=courseofferedforcse.offeredcoursecode"
. " AND postsall.trimesterName=courseofferedforcse.trimestername"
. " AND postsall.trimesterYear=courseofferedforcse.trimesteryear "
. " AND postsall.postsubmitterid='$studentid'";

$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 '<table style="width:100%; background-color:#009966;">';

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>';

echo '<td style=" border: 3px solid black;padding: 5px; width:20px;">';


echo '<form id="form1" method="POST" action="viewGroupProfile.php"
enctype="multipart/form-data">
<input type="hidden" name="massagesl" value="'.$postallsl.'">
<input type="submit" name="deletemassage" value="DELETE" class="btn
btn-primary"/>

</form>';
echo '</td>';

echo '</tr>';

echo '</table>';

if($counterlectures%1==0){

298 | P a g e
echo '<br>';
}

}
}

?>

14.17 View result and mark sheet

<?php
$stdid =$_SESSION['id'];
$trimester = $row['trimester'];
$resultcalculate = 0;
$subjectcalculate = 0;

echo '<table align="center"style=" '


. 'border: 7px solid black;border-collapse: '
. 'collapse;text-align: center;padding: 5px;">';
echo '<tr style=" border: 3px solid black;background-color: powderblue;">';

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>';

$selecttrimester = "SELECT * FROM results where StudentId='$stdid' AND trimester


='$trimester' GROUP BY courseCode ORDER BY sl DESC";
$selecttrimesterresult=mysql_query($selecttrimester);
while($row=mysql_fetch_array($selecttrimesterresult)){

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';
}

echo '<tr style= "background-color: powderblue;">';

302 | P a g e
echo '<td>'.'<br><br>Trimester CGPA:&nbsp;&nbsp;'.$totalavgmarks.'</td><br>';
echo '<td>'. '<br><br>&nbsp;Trimester Grade:&nbsp;&nbsp;'.$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 } ?>

14.18 view CT and other marks

<?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'];

echo '<table align="center" width="90%"style="border: 3px solid black; cellspacing:3;


cellpadding:3;">';

303 | P a g e
echo '<tr background="" align="left">';

echo '<td align="center">';


print "<img src='stamfordlogo.jpg' width='60px' height='70px'>";
print"</img>";
echo '</td>';

echo '<td style="padding: 15px;">';


echo " <h3>".$courseCode.":&nbsp;&nbsp;&nbsp;".$courseName.'</h3><br>'
. "<b>Course Offerd To:</b>".$courseofferedtobatch."<br>"
."<b>Course Teacher:</b>"." ".$courseteachername;

echo '<br>';
echo "(".$trimester.")";
echo '<br>';

echo '<a href="viewGroupProfile.php?ofcoursesl='.$ocsl.'" style="color:blue;">';


echo "<b>GO TO GROUP PAGE</b>";
echo '</a>';
echo '&nbsp;&nbsp;&nbsp;';
echo '<a href="viewclasstestLabtestMarks.php?ofcoursesl='.$ocsl.'"
style="color:blue;">';
echo "<b>RESULT VIEW</b>";
echo '</a>';
echo '</td>';

echo '<td>';

echo '</td>';

echo '</tr>';
echo '</table>';
echo '<br>';
echo '<br>';

?>

14.19 view course outline

304 | P a g e
<?php
// Make a MySQL Connection
include_once 'dbconfig.php';

if(isset($_GET['habib'])){
$sl=$_GET['habib'];

$result = mysql_query("SELECT * FROM coureslist where coureslist.coursesl='$sl' ")


or die(mysql_error());

while($row = mysql_fetch_array( $result )) {

echo '<div class="jumbotron text-center">';


echo ' <h1>';
echo '<center>';
echo $row['courseName'];
echo '</center>';
echo '</h1>';
echo '</div>';

echo '<div class="jumbotron text-center">';


echo '<div class="container">';

echo '<table border="1" cellpadding="4" align="center">';


echo '<tr>';
echo '<td >';
print "<img
src=../../resouresall/courseProfileResourses/courseProfileImages/$row[courseImage]
width=370px; height=380px;>";
print "</img>";
echo '</td>';
echo '</tr>';
echo '</table>';

print '<br>'; print '<br>';


$outlinefilw=$row['courseOutline'];
$filelink="../../resouresall/courseProfileResourses/courseProfileFile";

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="jumbotron text-center" style="background-color: skyblue;">


<center>
<h1>ALL LECTURES LIST</h1>
<p>Download your lectures from here pdf/ppt/doc or video files all are here</p></center>
</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'];

$result = mysql_query("SELECT coureslist.*,slidelectures.* FROM coureslist,slidelectures


where coureslist.coursesl='$sl' "
. "AND coureslist.courseId=slidelectures.courseCode ")

306 | P a g e
or die(mysql_error());

while($row = mysql_fetch_array( $result )) {

echo '<table style="border: 3px solid black;">';


echo '<p style="color: black">';
echo "Lecture No:";
echo $row['lectureNo'];
echo '</p>';

echo "Topics: ";


echo $row['slideName'];
echo '<br>';

echo "Course Teacher: (";


echo $row['postedBy'];
echo ")";

echo '<br>';

$lectureDocLink=$row['slideFile'];
$lectureurl="../../resouresall/lectureDocumentsFile";

print "<a href='$lectureurl/$lectureDocLink' style='color: blue;'>";


print 'DOWNLOAD LECTURE';
print '</a>';
echo '<br>';
echo "-----------------";

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'];

$result = mysql_query("SELECT coureslist.*,lecturevideo.* FROM coureslist,lecturevideo


where coureslist.coursesl='$sl' "
. "AND coureslist.courseId=lecturevideo.courseCode")
or die(mysql_error());

while($row = mysql_fetch_array( $result )) {


echo "Lecture No:";
echo $row['lectureNo'];
echo '<br>';

echo "Topics: ";


echo $row['videoName'];
echo '<br>';
echo "By (";
echo $row['postedBy'];
echo ")";
echo '<br>';

$lectureDocLink=$row['videoFile'];
$lectureurl="../../resouresall/videoLectures";

print "<a href='$lectureurl/$lectureDocLink' style='color: darkorchid'>";

print '<b>'.'VIEW VIDEO'.'</b>';


print '</a>';
echo '<br>';
echo "-----------------";
echo '<br>';echo '<br>';

308 | P a g e
}
?>

14.20 view taken courses

<?php
include_once 'dbconfig.php';
if (isset($_POST['offercsecourse'])) {

$takencoursesl = $_POST['takencoursesl'];

$selectTakenCourseInformations = "SELECT * FROM `coursetaken` WHERE


sl='$takencoursesl'";
$selectTakenCourseInformationsrunQury =
mysql_query($selectTakenCourseInformations);

if ($row= mysql_fetch_array($selectTakenCourseInformationsrunQury)){

$tcourseId = $row['courseId'];
$ttrimester = $row['trimester'];
$tcourseteacherid = $row['courseteacherid'];
$tstudentId = $row['studentId'];

$deleteResult = "DELETE FROM `results`"


. "WHERE "
. "results.courseCode='$tcourseId' AND "
. "results.trimester='$ttrimester' AND "
. "results.courseTeacherId='$tcourseteacherid' AND "
. "results.StudentId='$tstudentId'";

$deleteResultrunQury = mysql_query($deleteResult);

if($deleteResultrunQury){

$deleteTakenCourse = "DELETE FROM `coursetaken`"


. "WHERE "
. "coursetaken.courseId='$tcourseId' AND "
. "coursetaken.trimester='$ttrimester' AND "
. "coursetaken.courseteacherid='$tcourseteacherid' AND "
. "coursetaken.studentId='$tstudentId' ";

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>";

}
}

?>

14.21 View student’s activity

<?php
$stdid =$row['StudentId'];
$trimester = $row['trimester'];
$resultcalculate = 0;

310 | P a g e
$subjectcalculate = 0;

echo '<table align="center"style=" '


. 'border: 7px solid black;border-collapse: '
. 'collapse;text-align: center;padding: 5px;">';
echo '<tr style=" border: 3px solid black;background-color: powderblue;">';

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>';

$selecttrimester = "SELECT * FROM results where StudentId='$stdid' AND trimester


='$trimester' ORDER BY sl DESC";
$selecttrimesterresult=mysql_query($selecttrimester);
while($row=mysql_fetch_array($selecttrimesterresult)){

$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';
}

echo '<tr style= "background-color: powderblue;">';


echo '<td>'.'<br><br>Trimester CGPA:&nbsp;&nbsp;'.$totalavgmarks.'</td><br>';
echo '<td>'. '<br><br>&nbsp;Trimester Grade:&nbsp;&nbsp;'.$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 } ?>

14.22 View Teacher’s profile

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
}

14.23 Edit profile live (JavaScript)

<?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)));

//from the fieldname:user_id we need to get user_id


$split_data = explode(':', $field_userid);
$user_id = $split_data[1];
$field_name = $split_data[0];
if(!empty($user_id) && !empty($field_name) && !empty($val))
{
//update the values
mysql_query("UPDATE studentsall SET $field_name = '$val' WHERE
sl = $user_id") or mysql_error();
echo "Successfully Updated Info";
} else {
echo "Invalid Requests";
}

315 | P a g e
}
} else {
echo "Invalid Requests";
}
?>

14.24 Edit Result entry live

<?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 " ";

echo " Course Counted: ";

echo "(";

echo "<td>" . $row['COUNT(*)'] . "</td>";

echo ")";
echo '</button>';

echo '<div id="foo" class="panel"><br><br>';


$courseteacherid=$row['courseteacherid'];
$trimester = $row['trimester'];
$newsql = "SELECT * FROM coursetaken where trimester='$trimester' AND
courseteacherid='$courseteacherid' GROUP BY courseId";
$newresult_set=mysql_query($newsql);

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 '<table align="center" width="90%"style="border: 3px solid black; cellspacing:3;


cellpadding:3;">';
echo '<tr background="tabile-bg-image.jpg" align="left">';

echo '<td align="center">';


//print "<img src='../adminpenel/studentsProfilePics/$profilepic' width='60px'
height='70px'>";
print"</img>";
echo '</td>';

echo '<td style="padding: 15px;">';


echo "".$stdId ."".':';
echo " ".$stdName.'<br>';

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)));

//from the fieldname:user_id we need to get user_id


$split_data = explode(':', $field_userid);
$user_id = $split_data[1];
$field_name = $split_data[0];
if(!empty($user_id) && !empty($field_name) && !empty($val))
{
//update the values
mysql_query("UPDATE results SET $field_name = '$val' WHERE sl =
$user_id") or mysql_error();
echo "Result Updated";
} else {
echo "Invalid Requests";
}
}

318 | P a g e
} else {
echo "Invalid Requests";
}
?>

14.25 Edit function and automation (JavaScript and Ajax)


<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)));

//from the fieldname:user_id we need to get user_id


$split_data = explode(':', $field_userid);
$user_id = $split_data[1];
$field_name = $split_data[0];
if(!empty($user_id) && !empty($field_name) && !empty($val))
{
//update the values

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";
}
?>

14.26 Offer new Course

<?php
// Make a MySQL Connection
include_once 'dbconfig.php';

// Get all the data from the "course" table


$result = mysql_query("SELECT * FROM coureslist where courseDepartment='cse' OR
courseDepartment='CSE' ")
or die(mysql_error());

//echo "<table border='2' bgcolor='pink'>";


//echo "<tr> <th>course code</th> <th>course name</th> </tr>";
// keeps getting the next row until there are no more to get
while($row = mysql_fetch_array( $result )) {
// Print out the contents of each row into a table

// print '<table cellspacing="0" cellpadding="0" border="1px solid black;">';


print '<table align="center" width="90%"style="border: 3px solid black; cellspacing:3;
cellpadding:3;" >';

print '<tr background="tabile-bg-image.jpg" align="left">';

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 style="padding: 15px;">';


echo "<h4>";
echo $row['courseId'];
echo ": ";
echo " ".$row['courseName'];
echo "</h4>";
print '<br>';
echo " ".'Prereqisite : ';
echo $row['coursePrereqisit'];
print '<br>';
echo '<input type="submit" name="offerCourse" value="OFFER THIS COURSE">';

echo '</td>';

echo '<td style="padding: 15px;">';


$sl=$row['coursesl'];

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 width="450" align="left">';

//print '</td>';

print '</tr>';

print '<br>';
print '</table>';

}
?>

14.27 Automation for creating group and Take Course

<?php //take course php code

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'];

$datetimenow = date_create()->format('Y-m-d H:i:s');

if($postsubmittername!=""){

$offeredcourseinsertion="INSERT INTO `coursetaken`("


. "`courseId`, "
. "`courseName`, "
. "`sessionName`, "
. "`sessionYear`, "
. "`courseCredite`, "
. "`coursePreReqisite`, "

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;

$createresultsheet = "INSERT INTO `results`("


. "courseCode,"
. "courseName,"
. "courseTeacherName,"
. "courseTeacherId,"
. "StudentId,"
. "studentName,"
. "studentBatch,"
. "trimester"
. ")VALUES("
. "'$resultcourseCode',"
. "'$resultcourseName',"

324 | P a g e
. "'$resultcourseTeacherName',"
. "'$resultcourseTeacherId',"
. "'$resultStudentId',"
. "'$resultstudentName',"
. "'$resultstudentBatch',"
. "'$resulttrimester'"
. ")";
$createresultsheetqury = mysql_query($createresultsheet);

if($sql){
echo '<script type="text/javascript">';

echo 'alert("Course Offered Sucsessfull");';

echo 'window.location.href = "takeacourse.php";';

echo '</script>';

} else {
echo '<script type="text/javascript">';

echo 'alert("Post un-Sucsessfull");';

echo 'window.location.href = "studentsHome.php";';

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.

15.2.1 Speed of the website


As I know, there are a lot of google font have been used by online link. For this, website can be
slow at the 1st time loading.

15.2.2 Search Box


I have just design a search boox. But I did not complete the complete search system. As this is a
large project, I have done a lot of work.

15.2.3 Incomplete Pages


I have kept some page incomplete. So some of you can be unhappy for this. But I think as I am
only one member of the full project, it is imposible to complete full work.

15.3 Future Enhancement


In my analysis chapter, I have analised a lot of fetures which can make this website more easy and
helpful for the students and teachers. So I am going to show some list which can be added in this
website.
 Search option
 Advance search option
 A automation for making Schedule

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:

[6] MySQL Tutarial | [online]. Avaible: https://www.tutorialspoint.com/mysql/index.htm.

[7] PHP Tutarial | [online]. Avaible: https://www.tutorialspoint.com/php/index.htm

[8] Bootstrap Tutarial | [online]. Avaible: https://www.tutorialspoint.com/bootstrap/index.htm

[9] Website Development| [online]. Avaible:


https://www.tutorialspoint.com/website_development/index.htm

[10] CSS Tutarial | [online]. Avaible: https://www.tutorialspoint.com/css/index.htm

[11] JavaScript Tutarial | [online]. Avaible: https://www.tutorialspoint.com/javascript/index.htm

[12] HTML Tutarial | [online]. Avaible: https://www.w3schools.com/html/default.asp

[13] PHP Tutarial | [online]. Avaible: https://www.w3schools.com/php/

[14] Bootstrap Tutarial | [online]. Avaible: https://www.w3schools.com/bootstrap/default.asp

[15] W3.CSS Templates| [online]. Avaible:


https://www.w3schools.com/w3css/w3css_templates.asp

330 | P a g e
[16] CSS Tutarial | [online]. Avaible: https://www.w3schools.com/css/default.asp

[17] JavaScript Tutarial | [online]. Avaible: https://www.w3schools.com/js/default.asp

[18] 14 of the Best College Websites | [online]. Availbe:


https://blog.hubspot.com/marketing/best-college-websites

[19] Purdue University Website [design view]. Abailbe: http://www.purdue.edu/

[20] University of New South Wales [design view]. Abailbe: https://www.unsw.edu.au/

[21] University Websites: Top 10 Design Guidelines [online] Abailbe:


https://www.nngroup.com/articles/university-sites/

[22] Programming error and problem solution [online] Abaible: https://stackoverflow.com/

[23] Beginner PHP Tutorial [video] [youtube]. Abaible:


https://www.youtube.com/watch?v=iCUV3iv9xOs&list=PL442FA2C127377F07 .

331 | P a g e
ABBREVIATIONS

HTML Hyper Text Markup Language

PHP Personal Home Page

CSS Cascading Style Sheet

SDLC Systems Development Life Cycle

ERD Entity Relationship Diagram

URL Uniform Resource Locator

XAMPP Cross-Platform (X), Apache (A), MySQL (M), PHP (P) and Perl (P)

EMAIL Electronic Mail

HTTP HyperText Transfer Protocol

HTTPS HyperText Transfer Protocol Secure

JPG Joint Photographic Experts

PNG Portable Network Graphics

DFD Data Flow Diagram

ORG Online Course Registration

332 | P a g e
333 | P a g e

You might also like