Unified Modelling Analysis, Free Paper Sample

Published: 2022-04-28
Unified Modelling Analysis, Free Paper Sample
Type of paper:  Course work
Categories:  Computer science
Pages: 7
Wordcount: 1803 words
16 min read
143 views

The source code that will produce a card with a background and a message "Good luck in your new job!"

Trust banner

Is your time best spent reading someone else’s essay? Get a 100% original essay FROM A CERTIFIED WRITER!

The following source code will display a card with a background and a message:

public class Card {

private String text;

public Card() {

}

public Card(String text) {

this.text = text;

}

public void print() {

System.out.println(text);

}

}

public class image extends Card {

private Card card;

public image(Card card) {

this.card = card;

}

public class BackgroundCard extends Card {

private Card card;

public BackgroundCard(Card card) {

this.card = card;

}

@Override

public void print() {

System.out.println("Good luck in your new job!");

card.print();

}

}

The source code that will produce an image and a fancy border and a background with the message "I saw this and I thought of you!"

public class Card {

private String text;

public Card() {

}

public Card(String text) {

this.text = text;

}

public void print() {

System.out.println(text);

}

}

public class image extends Card {

private Card card;

public image(Card card) {

this.card = card;

}

public class BackgroundCard extends Card {

private Card card;

public BackgroundCard(Card card) {

this.card = card;

}

public class FancyBorder extends Card {

private Card card;

public FancyBorder(Card card) {

this.card = card;

@Override

public void print() {

System.out.println("I saw this, and I thought of you!");

card.print();

}

}

Different adornments

The following are adornments for this case:

The roles: the password and user has been assigned to the owner.

Multiplicity: the two ends such as passwords and user entities, shows how they relate; a user can have multiple passwords.

Note: this will be required to give comments or constraints to the element of the system, and they are necessary for clarifying models which are being created.

Stereotypes: this adornment needs to be added as they create room for vocabulary extension in the UML and use of graphical representation that tells about a specific domain.

How Decorator might be applied to the design.

A decorator will be applicable in instances where the modules of the system need to be elaborated. It is crucial to outline and give a brief description of how components of a system will behave and operate. An abstract decorator class ShapeDecorator is created to implement shape interface and shape object as its instance variable. Another class such as class (Decorator) is designed which will support free wrapper classes.

Possible classes that will be used in the code are; class TextField, Class Decorator, class BorderDecorator and class ScrollDecorator.

The class diagram will appear as below:

Figure 1. Class diagram of the system that produces a card with decoration.

UML component diagram showing how the EJB and client components in the converter example are interconnected.

Figure 2. UML diagram showing how EJB and client components are interconnected.

An alternative way to show the structure of the converter example is as a UML class diagram.

Figure 3. UML diagram to show example of a converter.

Main differences between a monolithic architectural style and a microservices style

In microservices form, an application under development is subdivided into different components. This ensures they are developed as independent modules, packaged and deployed individually in an individual process whereas, the monolithic architecture will be designed as a single package having all the components that are included (Analysis model visualization and graphical analysis attribute specification system, 2015).

Advantages of microservices style and how they relate to Software Quality Factors (SQFs).

Microservices architecture makes the system run as a single unit with subsystems that operate as independent sections. This architecture makes the system function autonomously whereby the failure of one point of the system will not be felt adversely since the remaining parts will run unaffected (Kim & Lee, 2013). The system can also be said to be cost-effective since by using this architecture, the system will be developed, and the subsystems are then updated as single entities. The system will also be of high quality since subsystems are tested modularly, and errors checked, hence making sure that there are minimal faults in the system. The components of a system being developed using this architecture will have the system deployed as independent components without necessarily redeploying the whole system again in case of a change or minor correction.

What Microservices are built around, what it means for development teams and how they relate to an agile perspective.

Microservices are built around independence in development, scalability, and deployment of components of a system as independent entities. These means that the development teams can subdivide the system so that they can develop them as separate units, hence making the development process efficient, faster and attainable regarding deadline and set milestones. The teams are free to create their databases and use their variable in the code since the system will be running as independent components and communicate with other parts of the whole system when required.

Six parts of a usability scenario that could apply to a Logistics Software System.

A Logistic System Software is a necessity for any company that is operating in this field and any other related field. Source of stimulus for such is the customers' need to receive efficient and satisfactory services. A company will require such a system to improve the accountability of its operations. The system will also be needed for the employees to serve their customers to the best levels. There is the need for the company to address such matter in a manner that they can make full use of the system. There should be minimal failures and error rates for the system to be deemed profitable. The environment of the logistics business is becoming competitive, and the company will have to apply such methods so that they can remain competitive and unique (Kim & Lee, 2013). The customers may shift their loyalty if a particular company has poor deliverable of services. The way the system is decorated will impact the employees and any other user. This, therefore, means that the usability of the system should be given close consideration during design and implementation stage.

The system is expected to operate in the most optimum manner possible with minimal failures. In the event of failures, the system is expected to take the least time reasonable to come back to operation. The move to have independent modules within the system will be crucial in ensuring that in the event of a failure of the system, the not all modules will be affected and some parts will remain operational. The stimulus should be responded to by designing a system that is required for the running of the logistics company. The system should be able to cover all the required necessities to satisfy the company requirements and meet its intended purpose. The method may be coded from scratch or be outsourced, then installed and customized to meet the company's needs. The company should be willing to spend on such a system since it improves services delivery for the company. For accountability purpose, the response from the network towards the company operations should be measured and appropriate actions taken CITATION Kim131 \l 1033 (Kim & Lee, 2013). This will help the company in achieving the content checklist in the design and purpose of the software.

Operation is specified as follows:

context: QuotationGenerator::run(distance : Integer, type : Type): BigDecimal

Pre: distance is positive

type is one of next day, next day by 13:00, next day by 10:00.

Post: if type is next day, return distance * 0.20

if type is next day by 13:00, return distance * 0.30

if type is next day by 13:00, return distance * 0.45

The following entities will be used in the test: Number of variables, kinds of ranges the robustness of the system, and forces attention about exception handling. The measures should be how yields will relate to testing cases, and as such, the formula: BVA yields 4n + 1 test cases will apply. For this test cases, the following inputs will be used; distance, Integer, and Types

An executable assertion used to verify the pre-condition of the method.

The code will be used to initiate the task it is required to do. The system can run and give the expected results. The pre-condition coding should be done in a way that there are no errors that are registered in the order. The distance should be indicated positive to avoid causing the code to run to infinity of produce error during execution. There should be an override added to the code so that errors found due to runtime errors, the system should be able to return some output.

Regression testing and the relationship between test-driven development (TDD) and regression testing.

Regression testing can be said to be software testing type which is used to check if the previously developed system still perform as it was intended even after being integrated with other system or in the cases where its interfaces are changed CITATION Zar15 \l 1033 (Zarrad, 2015). This type of testing relates to test-driven development (TDD) in that they are both used in the event of a system. As the system is developed using test-driven development (TDD) method, it is the regression testing that is used to proof and verifies the functionality and behavior of the system after some particular changes have been made (Analysis model visualization and graphical analysis attribute specification system, 2015).

Comments on usefulness of DIT, CBO, and RFAC metrics as a tool for assessing how difficult a class is to understand.

Use of DIT, CBO, and RFAC metrics to calculate the difficulty of a class is somehow impractical. The results found on calculating these metrics always look appealing and convincing, but the way someone has understood a code and a class complexity have no relation with the calculations (Analysis model visualization and graphical analysis attribute specification system, 2015). The way the classes of a system are arranged or how they are inherited will depend on how much someone has perception and understanding with the system. This, however, does not mean that this mechanism is wrong. There are cases where it will be used, especially when determining which method of classing will best suit the developers.

Coupling is the extent to which a change in one part of the system will require changes in other roles, and is an essential factor in how easy it is to modify the software.

The relationship between classes and subclasses should be regarded as a form of coupling since they are both dependent on each other. Tight coupling increases the maintenance cost as it is difficult and changes to one component would affect all other elements that are connected to it. So, code refactoring becomes difficult as one would need to refactor all other components in the connected-chain so that the functionality doesn't break (Zarrad, 2015). This process is cumbersome and takes a lot of tedious effort and time.

One should design classes that contain the less number of instance variables, i.e., the class design is "good" if it includes a small number o...

Cite this page

Unified Modelling Analysis, Free Paper Sample. (2022, Apr 28). Retrieved from https://speedypaper.com/essays/unified-modelling-analysis

Request Removal

If you are the original author of this essay and no longer wish to have it published on the SpeedyPaper website, please click below to request its removal:

Liked this essay sample but need an original one?

Hire a professional with VAST experience!

24/7 online support

NO plagiarism