Design specifications, coding, and testing
This is a very important report that generates test documentation, which is required to assist in evaluating technical tasks such as test cases for white and black box. Every test case is expected to indicate the person, who is responsible for performing it, the required items to be evaluated and the necessary preconditions that must be available to evaluation process to continue. It is also important to show the required input, output and the appropriate steps which must be followed to accomplish the entire test specification.
Model Class Diagram
In the development of class diagram, it is important to share resources of the model package. The resources in this case include lecture rooms, classrooms, students, tutors and courses. To effectively create a timetable, it is appropriate to make timetabling as a behavior that is used to identify and select different items. When we use Java language, all the classes are described by the interface and this imply that the development of interface is a good step.
Design Class Diagram
Based on the description of GRASP, it is vital to select some descriptive patterns for this software design. Controller pattern is appropriate for it, as we will use GUI to interact with the user. It therefore shows that we must develop a class called controller to introduce listening interfaces to ensure that all code that relates to the events are added in a different class. It is also important to note that Model in MVC is a representation of an object or JAVAPOJO which carries data, it is therefore possible to update controller when the data in it changes. The view section represents visualization of data found in the model and it is the responsibility of the controller to operate in both models and view. In this manner, there will be effective control of data flow into the model object and ensure that they are updated when there is a change in data. It also ensures that the view and model are separated in the system.
There is also another important way in which MVC can be understood. It is a model that keeps retrieved data and ensures that they are display data in a view. The view will be responsible for producing new output to users in relation to the current changes. It is the responsibility of a controller to send commands to the model so that it can update the condition of the model. It is also having the power to send command to the view so that its presentation can have a new look in the model. For the users to understand GUI, it is important to develop some view classes to be linked to the controller class.
Because timetable officer is there to maintain most of the components, it is necessary to create view to execute authentication and view to indicate GUI. Because authorization checks are only able to login and accept password and all these are coded in the authorization view classes. We also have both authorization and time table view and only one controller class. It is necessary when the controller class is referenced to the timetable object view. This is to allow for free access to the required variable such JMenuItems and JTable. The defined reference is passed to controller through a process called Authorization view class. This only works when the user enters the correct login. All the changes, which have been made in the database, are entered through serialization and this helps in the creation of serial class that only contains two methods to maintain all changes and restore all the data from the main memory. In this case, we only need 4 items to store, we can also develop another class to store.
Case Diagram with Explanation
Report Source Code
Running this program require the use of project management certification in a netbeam. For it to work effectively, we must have jdk1.8.0 as minimum! Since we used lambda expression in some methods and for us to login for the timetable officer we must use the username tmtblofficer and password is 12345:
If there is success, the result is as shown below
Menu file only has a single option-exit. If it is selected, it turns you back into the login frame. In the next stage, we only have 5 different options in the timetable menu including developing course timetable, room timetable, student timetable and instructors timetable. To ensure that we apply them effectively, we must have one of the items above so that when we click create course timetable the following results are obtained.
To get ideal result, it is important to initially create course. This will help us write the mane of the course in the cells available and then click any point in the table. This only works successfully when we chose correct dates and time.
In the next stage, we develop a new module following the same procedure
Creation of new room
Creation of new instructor then follows immediately
Add a new student
The result of the entire process now looks like the table below
To illustrate more effect on the above table, it is important to add some items as shown below.
Based on the above result, it is important to note that the initial instructor has 2016years, the second 2015years and third 2017 years. Immediately we click create instructor timetable, the name of all the instructors will be shown in a series.
Knocking it once also helps at a great deal or split or demolishes the rooms
We can also click help option to get additional information to guide us through the entire process
https://en.wikipedia.org/wiki/Class_diagram http://www.tutorialspoint.com/uml/uml_class_diagram.htm http://agilemodeling.com/artifacts/classDiagram.htm
https://en.wikipedia.org/wiki/GRASP_(object-oriented_design) https://www.cs.colorado.edu/~kena/classes/5448/f12/presentation-materials/duncan.pdf http://www.tutorialspoint.com/design_pattern/mvc_pattern.htm