SECJ2203-09 SOFTWARE ENGINEERING (SELF REFLECTION)

This a page of a compilation of my reflections on problem-solving and projects for SECJ2203-09 Software Engineering subject. 

INTRODUCTION

My name is Nuraina Najwa binti Mohd Rauzi(A19EC0137). This a page of a compilation of my reflections on problem-solving and projects. My group name is NEZUKO.  Our project title is Online Food Ordering & Delivery System (E-FORADE). Below is a list of my group members.

GROUP MEMBERS:-

  1. Nuraina Najwa binti Mohd Rauzi   A19EC0137
  2. Wan Nur Atiqah binti Junaidi          A19EC0176
  3. Nur Khuzaimah Binti Iskandar       A19EC0133
  4. Nur Hidayah binti Hamri                 B19EC0046

PR1 REFLECTION

To complete the project proposal for our final project, my group has made a discussion on how to choose a new design system that will be beneficial for all of the UTM students, staff, and guests. We are focused on how to improve the facilities that are already in UTM which why we choose Mak Ngah Cafe Food Ordering & Delivery Service. I think that our proposed system will benefit all of the UTM guests, students, and staff.

The comparison that has been made between the two systems that have been used makes it significant that the system needs to be replaced. The proposed system that we discuss is designing an application where the customers can track the status of the order, payment, and delivery process. I am anticipating that the proposed system that we have been planning will be work.

I hopefully expect that the next process of this project will be going on smoothly and until the end of our project.  I am thankful to our teammates who always give their best in completing this project proposal. Lastly, I also would like to express our gratitude to our lecturer, Dr Johanna binti Ahmad for the guidance and advice during completing this project proposal.

PR2 REFLECTION

To complete this first project report, my group has assigned our task on which member will do the part from the report. This project report needs to include an introduction, specific requirements, performance, and other requirements. I have been assigned to complete the system features of specific requirements. 

The system features need to include the main use case, domain model, main activity diagram, static diagram, and other diagrams. I learned how to create all of the diagrams during the process of completion. I have also got help from my group members to improve my work. I also look for other references in creating good diagrams besides referring to our slides.

During the process also my group's members help me in arranging the flow of events of the use case so our use case will complete the system needs. We also discuss postconditions, alternative flow and exception flow. Besides my part also I learned a lot from my members part. Lastly, I would thank my group members who always helps me during the completion of this project report.

PR3 REFLECTION

For the third project report, we are required to complete a detailed description of components, data design, and user interface design. During the completion process, I learned about drawing or creating a complete package diagram, package diagram for subsystems, and others. I found out that to create a complete package diagram, we need to refer to the component diagram and use case of the system with details. The package diagram will be complete with the requirements that needed if we refer it back to the use case and component diagram. 

For this report, I managed to complete the package diagram and class diagram for subsystems. The package diagram must be included with the view layer, domain layer, and data access layer. During the completion, I learned how to improve or create a complete package diagram and class diagram. I got confused during the process, but I managed to solve the problems with my group members' help. 

The data design part helps me to find out how to complete a description of entities in the database and data dictionary. I managed to find the list of the system entities that needed and have in that systems along with their types and description. Although it is not my part, I understand through my group members' explanation about the descriptions. Lastly, I would like to thank my group members for their great cooperation and dedication throughout the project completion.

PR4 REFLECTION

For the last part of the project report, we are required to complete the report by including the requirement matrix and test cases in the report. The requirement matrix is for us to check the description of entities in the database for the whole project. For the test cases, we need to have our three tases cases which are from subsystem profile, ordering, and menu. 

During the completion, we have already separated our part equally. The test cases that we need to build must be referring to our subsystem. I learned how to complete the test cases and their requirements. I also learn how to point out the steps for the test cases in detail. The test data requirement also needs to be detailed out such as order ID, staff ID, and others. All of the test cases we build must be a pass. The test cases that we build have been reviewed by our leader for project report 4.

I find out that we need to complete project report 3 with a complete diagram. Otherwise, we have a problem in creating the test cases as the sequence diagram is not enough in the previous report. I also leaner that we need to always inform the group members once we are done on our part for our work been check by our group member before submitting it. Lastly, to my group member, I had always believed in you guys and you never disappointed me. Thank you again for accomplishing the project successfully. You guys are the best team member ever! 

PS1 REFLECTION

The Problem Solving 1 (PS1) questions help me on how to choose the most suitable Software Process Model (SPM) for a certain situation to understand the question and description about the question carefully. I also do some reading of the references to choose the Software Process Model. My group members also given a lot of references for us to has a better understanding on the topic.

My group managed to choose the most suitable Software Process Model for question 1 which is Incremental Development. Question 2 helps me to have a better understanding of scaling up and scaling out. I also manage to point out how the method will give benefit or can be used in the case given. Both of these questions helps me to have a better understanding of the topic.

I actually do not understand the topic much as I got confused but I managed to complete the questions where I have been assigned with my group members' help and it does help me on understanding the topic better. I want to thank each of my members as we make great teamwork by dividing the task equally and help each other by giving out the reference for the questions.

PS2 REFLECTION

Problem-solving 2 (PS2) requires us to draw a design class diagram, package diagram, and sequence diagram. Both of class diagram and package diagram are needed for Medical Appointment System (MAS) while the sequence diagram only focuses on the use case Manage Appointment. During the completion, we will be assigned to our own part. 

My part is to draw the package diagram. Although I only draw the package diagram, I need to refer and make contributions to class diagram drawing also because if the class diagram that we are built does not has enough information and incomplete it will affect the package diagram too. I admit that it is quite tricky as we need to ensure that all of the details mentioned will be in the class diagram and package diagram. My group members also help me during the process of completion. 

This problem solving helps me on how to draw a good design class diagram, package diagram, and sequence diagram that will include all of the requirements given. I would like to say thank you to my group member without their cooperation and dedication towards the problem we couldn't have pulled the solution together.

PS3 REFLECTION

For this problem solving 3, there are two questions that we need to solve. The first questions required us to write the test cases for testing the functionality of the module by using the equivalence partitioning (EP) strategy. We also need to state the representative input values based on the boundary value analysis (BVA) for each test case. For the second question, we need to draw a flow graph, calculate cyclomatic complexity, list the independent paths, and design a test case based on the source code that has been given to us.

During the completion, I learned how to identify the range for each category based on the amount of electric energy consumed in kWh for the first and the second rates. I also learned how to write test cases by using the equivalence partitioning (EP) strategy. 

The second question helps me on how to flow graph based on the source code. I get confused at the beginning as there are several cases on how to draw the flow graph based on the source code but I managed to complete it with my group members' help. I have also known how to calculate the cyclomatic complexity by using the formula given in the lecture notes. Lastly, I also learned how to identify the independent paths on the flow graph and design the test case. 

PS4 REFLECTION