timetablesystem.files.wordpress.com … · Web viewNowadays, preparing timetable system is big...
Transcript of timetablesystem.files.wordpress.com … · Web viewNowadays, preparing timetable system is big...
ÇANKAYA UNIVERSITYFACULTY OF ENGINEERING
COMPUTER ENGINEERING DEPARMENT
CENG 407
INNOVATIVE SYSTEM DESIGN AND DEVELOPMENT I
Software Requirements Specification
Version 1.0
Mert Çelebi201311012
Ali Can Aygör201211009
Atilla Duruel201111017
25 / 11 / 2016
TABLE OF CONTENTS
1. Introduction21.1.................................................................................................................................... Purpose1.2....................................................................................................................................... Scope1.3.............................................................................................................................. Definitions1.4..................................................................................................... Overview of the Document
2. Overall Description 2.1. Product Perspective 2.2. Product Functions6 2.2.1. System User Use Case6 2.2.2. Department Administrator Use Case8 2.2.3. System Adminstrator Use Case9 2.3. User Characteristics11 2.4. Constraints11 2.5. References12
LIST OF FIGURES
Figure 1: General Use Case5Figure 2: System User Diagram7Figure 3: Department Administrator Diagram8Figure 4: System Administrator Diagram10
1
1. INTRODUCTION
1.1. Purpose
In this software requirements specification document, cloud based undergraduate,
graduate and faculty courses timetable system’s requirements will be detailed. Questions like
what will be the developers needs, what will be the system’s needs and what will be the user’s
needs in terms of development process will be responsed. Actors and stakeholders will be
identified. In general, the objectives of an SRS document are minimizing product
development cost, saving development time and maximizing the efficiency. The
specifications and features of the product must be well defined before design and
implementation processes. The general purpose of this project will be observing the
requirements inclusively and representing more stable, faster and recoverable system to users.
1.2. Scope
Nowadays, preparing timetable system is big trouble and development of timetable
system is a complex process. However, new solutions and new ideas are revealed day by day.
To produce consistent products, it is necessary to make a significant effort. Scope of this
project depends on requirements. If new requirements need to be added on old requirements
or if the requirements need to be changed, the scope of the project also changes naturally. Our
system will include the whole instructions of timetable system. As an innovation unlike other
timetable systems, the application will use cloud based system. Hence, it need not always
consume storage space on the user’s computer.
In this project, there should be three actors. These are: System administrator,
department administrator and system users. System administrator can open course in the
semester and describe lecture hours and lecture places. Department administrator can change
lecture hours, instructor name and approve user’s timetable. If users have trouble with their
program, in the add/drop time, department administrator can organise syllabus with sending
confirmation code by user automatically. Users only can choose courses and communicate
with the department administrator. Adding courses are fully dependent to system
administrator. Department, faculty, graduate courses are independent fields from each other;
however instructors of a department can give courses from all three fields. Undergraduate,
graduate and faculty courses can be given by the same instructor.
2
1.3. Definitions
TERM DEFINITION
User The person who can make only certain changes in the program like choosing course
Department Administrator The person who can make only certain changes in the program like changing instructor name, course time and course room.
System Administrator The person who can make only certain changes in the program like add/drop courses, instructors, students, changing user information and course name.
Database A database is a place where we store information. More than that, its a place where we store organized information for a purpose or a set of purposes. [1].
Student User type with specific characteristics
Instructor User type with specific characteristics
Software Development Methodologies
Software Development Methodologies provide a framework for planning, executing, and managing the process of developing software systems [2].
Agile Software Development (ASD)
Agile proponents claim that the focal aspects of light and agile methods are simplicity and speed [3].
Kanban The Kanban development team is responsible for all small feature requests along with bugs [4].
3
1.4. Overview of Document
This document will consist of many titles and subtitles about what the system should
do. Functional and non-functional requirements will be mentioned. User requirements,
department administrator requirements, system administrator requirements will be explained
separately in each subtitle. Use case diagrams will be used to make the project easier to
understand in terms of visualization of the project. All of these parts will be in product
perspective and product functions chapters. In the following sections, the features that should
be in a good software will be described. While describing the features that should be, the
constraints of our system will also be determined. In summary, the connections between the
elements in the system will be made clear. We need to remember that the requirements may
change if we consider that this project is made an agreement with the customer even if it is
not. Where future changes may cause changes in requirements will be examined in
assumptions and dependencies section. In the last section, apportioning of requirements will
be explained.
4
2. Overall Description
2.1. Product Perspective
Figure 1: General Use Case
5
In this project, one of the most important criteria is to create a robust database. Here,
robust database implies that also relationships in database must be robust. To create the
database, Sql Server Management Studio environment will be used. There are many things to
be aware of when creating a database. One of these things is to prevent data redundancy.
Another thing is identifying primary and foreign keys clearly. The database is the basis for
our work and because of all transactions are done through this database, it has a great
importance.
While a software is being developed, if some software development methodologies are
followed, the yield from that software is much higher. Since the last fifteen years, Agile
development model has a significant share among methodologies. We may use the Kanban
that one of the agile software development methodologies. Agile development provides to
respond immediately to the customer’s requests. Development process gets faster and work is
done within a specific layout.
In Figure 1, the functions of the system are shown in general. The functions will be
explained in the next chapter.
2.2. Product Functions
2.2.1. System User Use Case
Use Case:
Login/Logout Select Course Change User Information Send Mail View All Courses Register to System
6
Diagram:
Figure 2: System User Diagram
General Description
In system user section, allowing the system user to stay in touch with the lessons.
After registering and logging in to the system, he/she can see the course schedule and the
contents of the course.
Step-By-Step Description
1. System user can choose Course, View Courses, Change Information,
Timetable buttons.
2. When a system user clicks on the course button, he/she can see all his/her
courses.
3. If he/she clicks on the View Courses button, he/she can see all the courses
he/she has received.
4. He/She can change his/her personal information.
7
5. If he/she clicks the Timetable button, he/she can see the weekly schedule.
2.2.2. Department Administrator Use Case
Use case:
Login/Logout
Confirm Timetable
Change Department Information
Change Instructor Name
Change Course Time
Change Course Room
Send Mail
View All Courses
Diagram:
Figure 3: Department Administrator Diagram
8
General Description
The department administrator section deals with the lessons taken by the student. It
can change course management content when needed.
Step-By-Step Description
1. Department administrator can choose Timetable of students or lessons, Change
Department/Instructor/Course Information, Mail buttons.
2. When the department administrator clicks on the course schedule, he or she can
view the weekly schedule of the student or course.
3. Department administrator can change department information.
4. Department administrator can change instructor name or add/drop new
instructor.
5. Department administrator can change course time/room or view all course
name.
6. Department administrator can send e-mail to students or system.
2.2.3. System Administrator Use Case
Use case:
Login/Logout
Change User Information
Send Mail
Add/Drop Courses
Add/Drop Instructor
Change Course Name
Register to System
Add/Drop Student
View All Courses
Showing Online Student
9
Diagram:
Figure 4: System Administrator Diagram
General Description
System administrator is completely involved with the system. It has a confirmation.
mechanism. Approves or deletes the student, instructor and course records.
Step-By-Step Description
1. System administrator can choose Students, Instructors, Courses, Mail, Register
buttons.
2. When the system administrator clicks on the student button, students can be
added or deleted.
3. When the system administrator clicks the instructor button, the instructor can
be added or deleted.
4. When the system administrator clicks on the courses button, he or she approves
the course change and can change the course if necessary.
5. Send e-mail to system users or department administrator.
6. Approves new register (student,instructor,course).
10
2.3 User Characteristics
2.3.1 User must know the computer usage.
2.3.2 System user should know the information of course and credit limit.
2.3.3 Department Administrator must be academic personnel.
2.3.4 User as student must know how to add/drop courses and user as instructor must
know how to confirm students’ course.
2.3.5. System administrator must be able to handle all situations about system
operations.
2.4 Constraints
2.4.1 Usability
System user can add course as possible as their credit limit is enough for
adding course.
Department Administrator can change only “CENG” coded course in system.
2.4.2 Scalability
When system logins increases, the system speed decreases.
2.4.3 Security
Each user must have a login mail and password.
User must use valid mail.
Passwords must at least 6 character long and include 1 uppercase character and
1 special character (e.g.:”!’^+%&/()=?_”).
2.4.4 Performance
Quickly editable, fixable and accessible because cloud database will used.
Average login time must be 1-4 sec.
2.4.5 Portability
This program can developed for mobile devices and tablets
If its developed to a level, virtually accessible from any device with internet
access.
2.5 References
11
[1] J. Connell and P. J. Connell, Beginning Visual Basic 6 Database Programming.
New York, NY, United States: Apress L. P., 2003.
[2] L. R. Vijayasarathy and C. W. Butler, "Choice of Software Development
Methodologies: Do Organizational, Project, and Team Characteristics Matter?"
in IEEE Software, vol. 33, no. 5, pp. 86-94, Sept.-Oct. 2016.
[3] B. Choudhary and S. K. Rakesh, "An approach using agile method for software
development," 2016 International Conference on Innovation and Challenges in
Cyber Security (ICICCS-INBUSH), Noida, 2016, pp. 155-158.
[4] R. Polk, "Agile and Kanban in Coordination," Agile Conference (AGILE),
2011, Salt Lake City, UT, 2011, pp. 263-268.
12