Home - AmaraCela/LibrarySystem-SMD GitHub Wiki
Week 1 (17/03/2023)
During the first week the team members gathered to brainstorm ideas that we would like to develop further in the project. After the discussion, it was settled that we would like to work on developing a web application for Epoka University's library, precisely the documentation for it regarding Software Modelling and Design. The GitHub repository was created and channels of communication between members were established.
Week 2 (29/03/2023)
During the second week, the team members gathered to discuss the job division regarding all the topics that were covered in the lessons up to this week. We divided our responsibilities in an equal manner, after clear consideration of a guideline of what was needed for each section of the documentation up to section 3. As a product of this discussion, section one, regarding the executive summary as well as the functional requirements on section 3.1 were assigned to Amara Çela and Anita Mjeshtri, as the initiators of the idea. Section 2 regarding product/service description was assigned to Irisa Nazari. The product's non-functional requirements were assigned to John Nase and Sara Berberi. The organizational, external non-functional requirements as well as the domain requirements were assigned to Patrik Madhi.
Week 3(06/04/2023)
The weekly meeting focused on:
Review of past work
During the weekly meeting the team discussed the finished product of the previous stage: the documentation of the project overview, the scope of the project, the specifications, the user characteristics and the functional, non-functional and domain requirements. After proposing new ideas or improvements on the work, the leader finalized the first version of the documentation for the project.
Division of work for the upcoming week
Then, the job division for the upcoming week was discussed. In the end of this discussion, it was settled that:
- Amara Çela is assigned the DFD diagrams.
- Anita Mjeshtri is assigned the BPMN.
- Irisa Nazari is assigned the ERD and RS.
- John Nase is assigned the use case diagrams.
- Patrik Madhi is assigned the state diagrams.
- Sara Berberi is assigned the activity diagrams.
Week 4(09/05/2023)
The weekly meeting consisted of:
Review of the past work
After carefully viewing the work of each-other, we gathered to discuss the extent to which our work conformed to the previously-set specifications. For this part, the diagrams designed by each member were re-checked and suggestions were made on how to improve them.
Potential improvements
- It was settled that to better represent the features of the Web App, the activity diagrams had to be separated into several individual diagrams. This was assigned to Sara, who was responsible for designing them.
- Inconsistencies on the naming of the Favourites table in the ERD and RS with the naming of that table in the data flow diagram were detected and set to be corrected by Irisa.
- It was settled that the state diagrams need to be separated into different diagrams to better represent the state of each interface. This was assigned to Patrik.
Week 5 (16/05/2023)
During this week our work consisted of:
Week's duties
This phase of our work was focused on a closer approach to the actual implementation of the Web Application, the designing of which has to be done through the class diagrams, sequence diagrams and the communication (collaboration) diagrams.
Assignment of work
Keeping in mind the complexity of the diagrams, out team was divided in groups of two, each group being mainly responsible for one of the diagrams mentioned above.
- Amara and Anita were assigned the class diagrams.
- John and Sara were assigned the sequence diagrams.
- Patrik and Irisa were assigned the communication (collaboration) diagrams.
Other than these main responsibilities, our communication was persistent and necessary for the coordination of our work.
Week 6(24/05/2023)
During this week we dealt with the second part of designing the class, sequence and collaboration (communication) diagrams, which consisted of their revision and the improvement of inconsistencies. As expected, the tight dependency between these diagrams creates ground for detecting missing pieces both in methods and the data fields that are used. The actual work we did was:
Class diagrams
- We had to separate some of the functions that are performed in the database, into the methods of actual classes.
- We had to remove duplicate writing of the methods of interfaces that are implemented in subclasses.
Sequence diagrams
- We had to remove the database representation in the sequence diagram.
- We had to remove user input action from the sequence diagrams.
Collaboration diagrams
- The changes in the sequence diagrams had to be reflected in the collaboration diagrams.
Week 7(31/05/2023)
During this week our job was to finalize the entire project, by adding what was left as well as reviewing all the work done. More precisely we dealt with:
- Sequence diagrams changes
- Collaboration diagrams changes
- Design patterns
- User scenarios
- Extended use cases
Sequence diagram changes
The sequence diagrams were changed according to the instructions we got during the lab session. As a result the front end part was removed from these diagrams, and instead the processes performed in the back-end were shown. Also, the diagrams were altered to not represent as much the database and the queries, as they represent the functions performed by each entity. As during the two previous weeks, this task was assigned to John and Sara, who were responsible for designing the sequence diagrams.
Collaboration diagram changes
The collaboration(communication) diagrams were also to be changed, following the above mentioned criteria, since these diagrams derive from the sequence ones. As a follow-up this job was assigned to Irisa and Patrik.
Design patterns
The design patterns were carefully considered when the class diagram was designed by Anita and Amara. During this last phase, a document with the used design patterns was written, in which they were explained and illustrated according to their usage in the project. Apart form that, the Object Oriented Principles were clearly defined and represented with their actual usage on the class diagram.
User scenarios
Part of the task of this week was also completing all the parts of the documentation, to make it more complete and well-defined. Therefor, the user scenarios were assigned to Sara and John.
Extended use cases
We also recognized the need of also defining the extended use cases as part of our project, in order to clearly identify our work, as well as to compare it to the requirements that were previously set. Therefore, the 7 first user requirements: student log in, student order item, student save item, student search item, send feedback, student view profile, student edit profile were assigned to Amara. Librarian log in, librarian deactivate account, librarian delete account, librarian edit account, librarian view order, librarian cancel order, librarian mark order as returned, librarian receive notification were assigned to Anita. Student delete profile, student deactivate profile, student log out, librarian receive feedback, administrator log in, administrator add library item, administrator delete library item were assigned to Patrik. Administrator register librarian, confirm librarian request, view statistics, view profile, edit profile, delete profile, receive feedback, administrator log out were assigned to Irisa.
Overall, we are really content with our work and consistency. The diagrams and the requirements seem to go hand - in - hand.