# Structuring Software Projects Sample

version 9.0.0

- Groovy DSL

- Kotlin DSL

| You can open this sample in an IDE that supports Gradle.

This sample shows how to structure a software product that consists of multiple components as a set of connected Gradle builds. As such, it shows how Gradle is used to model a project’s architecture and reflect that in the physical structure of the files that make up the software.

The product that is built in this sample is an application that displays Gradle Build Tool releases.

There are different ways to work with the sample:

- You may build or import the umbrella build in the root. There you can, for example, run the Spring Boot web application via `./gradlew :server-application:app:bootRun` or install the Android app using `./gradlew :android-app:app:installDebug`.

- You may only build or import one of the application builds directly. For example, `cd server-application` and run the app using `../gradlew :app:bootRun`.

- You may only build or import a selected component (and its dependencies). For example, only import the `user-feature` build in the IDE.