Contents Introduction....................................................................................................................................2 Microservices..................................................................................................................................2 Architecture Principles.................................................................................................................2 Justification and explanation........................................................................................................3 Architectural designs and their justification...............................................................................3 Sequence diagram........................................................................................................................4 Use Case Diagram........................................................................................................................5 Entity Relationship Diagram........................................................................................................7 Activity Diagram..........................................................................................................................8 Conclusion......................................................................................................................................9 References.....................................................................................................................................10 1|P a g e
Introduction When designing software solutions, different styles are used in presenting the solution in the best way possible. In this case, an application that can be used for movie reviews is to be designed. It is done in terms of how people have rated the movie out of ten after watching it. The application will also provide reviews to movies that have not yet been watched by the user making it easy for them to decide on what to watch during their free time. For the designs to be made the following things will be put into consideration, they make the designer come up with a detailed architectural design. Microservices Microservice is an emerging technique used for developing software that is said to be standalone1. This means that services are grouped as modules and are linked to one another via the REST APIs. Microservices can be categorized as follows before looking at the whole application: a)Module functionality and flexibility – this is concerned with the rate in which information is passed from one part of the system to another. b)API mechanism – which enables the client and server-side to be merged in such a way that information is not lost while being passed through the system. c)Data Traffic – this applies where the system has distributed servers which will make it necessary for information to be transferred from one part to another. d)Offloading data – this makes the application to have special operating systems that will ensure information gotten from other sources is stored as required on the hard drive. This is done to prevent malfunctioning of the system. e)Instance Monitoring – this will ensure that the system does not crash due to the number of files being handled. Architecture Principles The figure below shows the architecture used in modeling microservices, which shows both the client browser and mobile app. 1Nicola, Dragoni, GiallorenzoS ,averio, Alberto Lluch Lafuente, Manuel Mazzara, Fabrizio Montesi, Ruslan Mustafin, and Larisa Safina. "Microservices: yesterday, today, and tomorrow." InPresent and ulterior software engineering, pp. 195-216. Springer, Cham, 2017. 2|P a g e
Figure :architecture principles2 The design used is the solution architecture which shows how various parts have been used in the process. Justification and explanation Principle is shownDescription of the principle ConsistencyMaintains consistency during transaction handling Elastic searchHelpfully while searching data in a large data set. And it also autoscale making it perform faster while searching. Service monitoringThis enables easy identification of errors that may arise from the client-side or from the server. 2Johannes,Thönes, "Microservices."IEEE software32, no. 1 (2015): 116-116. 3|P a g e
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Architectural designs and their justification Architectural designs are simply models that are used in showing various representations of the application before it has not been fully implemented3. The designs will always illustrate functions that will help developers when making the application and also not to forget other functions during the process. Some of these architectural designs include: a)Sequence diagram b)Use case diagram c)Entity Relationship diagram d)Activity Diagram Movie scenario Sequence diagram The sequence diagram is used to show a step by step procedure of how any activity is conducted when an application is being used in performing a certain task. This diagram can be used to troubleshoot errors faster in case they occur when the application is running. In our case, we are going to look at what happens when the user wants to log in to the application. 3Georgios Plataniotis, Kinderen Sybren, Dirk van der Linden, Danny Greefhorst, and Henderik A. Proper. "An empirical evaluation of design decision concepts in enterprise architecture." InIFIP Working Conference on The Practice of Enterprise Modeling, pp. 24-38. Springer, Berlin, Heidelberg, 2013. 4|P a g e
The above diagram shows the procedures being taken by users to authenticate themselves when they want to use the application. It shows the event is being conducted step by step where logs in to the main page and enters login details. When the details are validated the user can access the interface otherwise he/she enters the forget password details which are to be verified according to what is in the database. If the user has forgotten the password then he/she can simply rest it. Use Case Diagram The diagram is used in showing how the system works when performing functional requirement that is imposed by the actors of the system when certain tasks are being conducted4. In our case, 4Rozilawat,Razali, Parnian Najafi, and Mirisaee Seyed Hadi. "Combining Use Case Diagram and Integrated Definition's IDEFO—A preliminary study." InThe 2nd International Conference on Software 5|P a g e
we have the system users who are acting as actors. From which we can get the relationship that occurswhileconductingspecificscenarios,andatthesametimemaintainingallthe functionalities being shown within a boundary. The Use Case diagram above is used in showing some of the activities being conducted by the user such: The user logging in his/her account. Engineering and Data Mining, pp. 231-236. IEEE, 2010. 6|P a g e
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
The user creating a new movie entry collection. The user deleting movies that he/she has seen. The user giving reviews about movies. User adding movies to watch list. Entity Relationship Diagram The diagram is used in showing the relationship that occurs between objects that result from a specific entity5. It also shows attributes of these entities and how they relate to other attributes with similar entities. Through this, it helps in defining the logical structure of the database The above diagram shows how the main class entity is used in connecting the attributes from different entities to make the application run efficiently. It also shows the relationship that exists 5Nergiz Ercil ,Cagiltay, Tokdemir Gul, Kilic Ozkan, Topalli and Damla. "Performing and analyzing non- formal inspections of entity relationship diagram (ERD)."Journal of Systems and Software86, no. 8 (2013): 2184-2195. 7|P a g e
in different entities be it association or inheritance. It also shows the functions being carried out by each attribute. Activity Diagram Activity diagrams usually perform a similar function as the data flow diagram since it shows how tasks are handled from one stage to another6. It shows the flow of events that normally corresponds to what is found mainly in the Use case diagram, making it easy for people to follow how activities are conducted throughout the application. The above diagram shows the overall activities that may be considered by the users while accessing the application. In this case, the user starts by logging in to the application where he/she must enter the required credentials for verification. In the case where the credentials do 6Geambaşu, Venera Cristina. "BPMN vs UML activity diagram for business process modeling."Accounting and Management Information Systems11, no. 4 (2012): 637-651. 8|P a g e
not much with what is saved in the database then the user is prompt to login again. The user will be able to access the application functions once he/she is logged in. From this, the user will be able to perform various tasks while using the application. When the user is done using the application he/she finally logs out from the system. Conclusion This movie review application will work best when the application is made as a progressive web app. This enables the user to continue with their sessions in case of network problems, which will make it more reliable to its users. The above models are used in giving details required while designing an application that is to be used by the application users. It also makes it easy for non- programmers to identify steps and procedures that normally occur when the application is being used. It assumed that the user will need to know some of the latest movies that have not yet been released. And to make it easier for them to access this information while searching through the internet, the search bar will be integrated in such a way that it will be able to access data from known websites. The microservices in this document acts as a representation of a simple functional requirements that are mostly conducted from the user's side. It also makes it easy for errors to be identified easily before implementing the final project. This helps in reducing the cost of implementing the application again. 9|P a g e
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Bibligraphy Cagiltay, Nergiz Ercil, Gul Tokdemir, Ozkan Kilic, and Damla Topalli. "Performing and analyzing non-formal inspections of entity relationship diagram (ERD)."Journal of Systems and Software86, no. 8 (2013): 2184-2195. Dragoni, Nicola, Saverio Giallorenzo, Alberto Lluch Lafuente, Manuel Mazzara, Fabrizio Montesi, Ruslan Mustafin, and Larisa Safina. "Microservices: yesterday, today, and tomorrow." InPresent and ulterior software engineering, pp. 195-216. Springer, Cham, 2017. Geambaşu, Cristina Venera. "BPMN vs UML activity diagram for business process modeling."Accounting and Management Information Systems11, no. 4 (2012): 637-651. Plataniotis, Georgios, Sybren De Kinderen, Dirk van der Linden, Danny Greefhorst, and Henderik A. Proper. "An empirical evaluation of design decision concepts in enterprise architecture." InIFIP Working Conference on The Practice of Enterprise Modeling, pp. 24-38. Springer, Berlin, Heidelberg, 2013. Razali, Rozilawati, Parnian Najafi, and Seyed Hadi Mirisaee. "Combining Use Case Diagram and Integrated Definition's IDEFO—A preliminary study." InThe 2nd International Conference on Software Engineering and Data Mining, pp. 231-236. IEEE, 2010. Thönes, Johannes. "Microservices."IEEE software32, no. 1 (2015): 116-116. 10|P a g e