analysis and reflection - talha469/PWPProject GitHub Wiki

Important information for final deadline

‼️  This chapter should be completed by final deadline (see course information at Lovelace)


📑  Chapter summary In this section we would like that you reflect about the work you have done during the course.

SECTION GOALS:

  • Reflect about own learning
  • Feedback on course instruction

✔️     Chapter evaluation (max 5 points) You can get a maximum of 5 points after completing the Analysis and Reflection section. More information in Lovelace return box for Final deadline.

Analysis and reflection

Future Work

📑  Content that must be included in the section Explain how you would improve your RESTful API and your client application. Try to develop the ideas, and explain why each improvement is needed

API is not implemented as it should be, so in future we will focus more on the planning phase and then start coding the API as required, so this will be our first task in future to cover this up. Hypermedia needs more details and it would be really nice if we can make hypermedia for all the required endpoints with more details, currently, it is only covering some of the end points which is a short term goal

Client side is not consuming all the hypermedia instead only some are used and not properly, there is a dire need to make UI side according to API and somehow keeping API requests in some comon file. Auxilary API is just doing some dummy funciton to generate thumbnails of the videos and it is actually not a useful function in the whole application and hence one nice implementation could be to generate at least three thumbnails and let the user choose which one he want for the video just like most of the application currently in the market are doing

As the documentation part is concerened of API on swagger, it is in external file since i was not able to integrate bulit in C# OpenAPI swagger for that detailed response examples as it was required in the course and not really in market it is used in that way either so we might need to find some way to include it inside code for more control over it


Lessons learnt

📑  Content that must be included in the section

Hypermedia was really a big thing for us to understand even after 3 months of the course so it was necessary to clarify from the instrcutor at the very start since due to it, we have delayed our project a lot, secondly, alongwith with hypermedia swagger implementation took time since it was not in C# code and externally we have to manage and it was not easy at all and took a lot of time so we might need to start R&D on this very early

One common mistake we have done in this project was to overcomplecating this and defined a lot of resources instead of necessary ones and that has made this course a really lengthy one, It was necessary to pay attention to the project at the start of the course so it would have been completed more efficiently. One more mistake we had made in this course is to take the dcomentation lightly and due to which we were unable to write the wiki documentation in detail

It was better to make some project management dashboard for example JIRA or trello since it was easy then to monitor the progress smoothly but this was not done at our end so next time it would be our top priority for such project related courses


Comments about the project

📑  Content that must be included in the section Comment where you encountered the main difficulties while doing your project work. Discuss about the easiest/most difficult parts of the project. Provide convincing statements.

First of all the project was too lenghty and it can be little tricky for students who have taken other necessary courses at the same time to ceomplete it due to the large requirements of the projec and a lot of effort is required and we have made this thing more complex by just having 2 member instead of 4, Hypermedia understanding and implementation was really a hard thing and took a lot of effort and especially implementing it in C# was a very time taking process, URL Converters were confusing and hard to achieve as well

Database implementation was pretty easy and course details were well documented for that due to whihc we were able to establihs that very easily. JWT implementation was very useful and we have learned some concepts from it but for more industrial standards two factor authentication could be a choice.

Auxilary service was a new concpet for me and in the first go i have implemented it wrong, again with a bit understanding i have tried and now I think i am fully aware with the purpose of it, it would be really a good addition in my skills. Client side implementation was easy for us but consumption of hypermedia in the client side was really a big task since not all the applications in the industry are using it in that way and it was challanging


Comments about the course

📑  Content that must be included in the section Make sincere comments about the course. How this course could be improved? What should be changed? What should not be changed?

Understanding of hypermedia was not an easy task and we have to work for it even after submitting the initial draft of the project, in the example project provided in the labs, it made it more confusing and till to the date i was remembering it "mumeta" is some sort of reserved keyword and in controls it should be added like it was in examples. Some more documentation could help students undertanding it better

Since we were only 2 members in the team and the length of the project was really big so we have really struggled with all the process and it was not easy to complete this course along with other necessary course. 5 credits for this course content is not justifiable in my understanding or course content should be less to make it little easy for learners

Documentation was a good part of the project and course and it had really helped us a lot and hope this will be helpful for us in future while working with industry. Excercises were well designed and covers all the concepts but sometimes it was pretty annoying to understand the issue while submitting the labs and linting made it really challangin, some linting tools could be introduced in the course with more details that are used commercially in the industry like SonarQube

Lovelace is good but it is really a challange to remember all the dates and due to which we have missed some meetings, it would be a better idea to atleast add meetings dates, assignment deadline and other such dates on Tuddo


Resources allocation

Task Student Estimated time
Documentation Muhammad Talha Arshad 1 hr
Documentation Muhammad Ahmed 1 hr
⚠️ **GitHub.com Fallback** ⚠️