11_UML_Component_Diagrams
11_UML_Component_Diagrams
A.Y 2020/2021
Problem
● Design a software that:
● reads chromosomes from a dataset and creates corresponding objects,
e.g. Chromosome, SNP, etc.
● computes population statistics, e.g. we have a number of classes that
analyses chromosomes, SNPs with respect to certain criteria associated
with the average population
● presents the results of the computation either in a Web browser or in a
mobile application
Component diagrams
Component diagrams are integral to building your software system.
Drawn out with UML diagramming software, they help your team understand the
structure of existing systems and then build new ones.
What is a UML component diagram?
The purpose of a component diagram is to show the relationship between different
components in a system.
Understanding the exact service behaviour that each piece of your software
provides will make you a better developer.
Component diagrams can describe software systems that are implemented in any
programming language or style.
What component diagrams are
UML is a set of conventions for object-oriented diagrams that has a wide variety of
applications.
Required interfaces: A straight line from the component box with an attached half circle
(also represented as a dashed arrow with an open arrow). These symbols represent the
interfaces where a component requires information in order to perform its proper function.
Example
Questions
Exercise
Extend the exercise on SNPs [1] in order to add a user interface.
The user interface is meant to present the results of the computation on a Web page.
The extension should also allow to separate clearly the part of the software meant
for reading the dataset from the other parts (i.e. Chromosome and SNP classes).
Before coding design your software by means of UML Component as well as class
diagrams.
1. https://github.com/anuzzolese/genomics-unibo/tree/master/2020-2021/exercises/
snps