# Unified Modeling Language (UML)

## Introduction

Biomedical informatics is inherently related to the development of software tools and solutions designed to be successfully exploited by users (e.g., healthcare practitioners, researchers, patients, citizens). For this reason, it is crucial that such products are seen from the perspective of their life cycle, their level of innovation and, thus, that design and deployment strategies follow engineering principles. [\[1\]](#references)

## Program Development Life Cycle

1. Analyze the problem
2. Design the program
   1. Pseudocode
   2. Flowchart
3. Code the program
4. Debug the program
5. Formalize the solution
6. Document and maintain the program

## UML

The Unified Modeling Language (UML) is the predominant standard language for the design of information systems, such as software and databases, but also for business modeling and non-software systems design. Since the main foundation of UML is grounded in the Object-Oriented (O-O) paradigm, the majority of available documentation refers to applications in software design and software engineering. However, the broad concepts of UML make it also amenable to modeling processes and organizations. [\[1\]](#references)

Refer to the [UML Website](https://www.uml.org/) for more information.

<mark style="color:purple;">Fig. 1:</mark> An example flowchart using UML for a pediatric dosage calculator program

<figure><img src="/files/1ZjJm4KqpeSyLneGgLJD" alt="" width="150"><figcaption></figcaption></figure>

<mark style="color:purple;">Fig. 2:</mark> An example flowchart using UML and LucidChart for a pediatric dosage calculator program

<figure><img src="/files/CXZrPhUtZkjtqGKy2DYx" alt=""><figcaption></figcaption></figure>

## Key Readings

* Chapter 10 (Engineering Principles in Biomedical Informatics) in Sarkar, Indra Neil (Ed). [Methods in Biomedical Informatics. ](https://ebookcentral-proquest-com.revproxy.brown.edu/lib/brown/reader.action?docID=1377720)Academic Press (2014). ISBN: 9780124016781
* Bellazzi R. [Big data and biomedical informatics: a challenging opportunity.](https://pubmed.ncbi.nlm.nih.gov/24853034) Yearb Med Inform. 2014;9(1):8–13. Published 2014 May 22. doi:10.15265/IY-2014-0024.
* Bodenreider O. [The Unified Medical Language System (UMLS): integrating biomedical terminology](https://pubmed.ncbi.nlm.nih.gov/14681409). Nucleic Acids Res. 2004;32(Database issue):D267–D270.
* Ferrante S, Bonacina S, Pinciroli F. [Modeling stroke rehabilitation processes using the Unified Modeling Language (UML).](https://pubmed.ncbi.nlm.nih.gov/24034730) Comput Biol Med. 2013;43(10):1390–1401. doi:10.1016/j.compbiomed.2013.07.012
* LucidChart. [UML Activity Diagram Tutorial.](https://www.lucidchart.com/pages/uml-activity-diagram)

## Resources

* [Unified Modeling Language (UML)](https://www.uml.org/)
* [Lucidchart Learning Campus](https://lucid.co/learning-campus/lucidchart)

## References

\[1] Sarkar, Indra Neil (Ed). [Methods in Biomedical Informatics.](https://ebookcentral-proquest-com.revproxy.brown.edu/lib/brown/reader.action?docID=1377720) Academic Press (2014). ISBN: 9780124016781.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.bcbi.brown.edu/codiac-for-health/computing/unified-modeling-language-uml.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
