Sonarqube

September 08, 2022

Database installation

  • download docker image of ms sql express
docker pull mcr.microsoft.com/mssql/server:2019-latest
  • run container
docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=izinvfioaeunOI@J#O@Q#)-" -p 1433:1433 -name ssql --hostname mssql -d mcr.microsoft.com/mssql/server:2019-latest
docker run -d --name sonarqube -p 9000:9000 -e SONAR_JDBC_URL=jdbc:sqlserver://DESKTOP-PVLUCAH\SQLEXPRESS;databaseName=sonar;integratedSecurity=true -v sonarqube_data:/opt/sonarqube/data -v sonarqube_extensions:/opt/sonarqube/extensions -v sonarqube_logs:/opt/sonarqube/logs sonarqube

https://learn.microsoft.com/en-us/sql/linux/quickstart-install-connect-docker?view=sql-server-linux-ver15&pivots=cs1-cmd

https://docs.sonarqube.org/latest/setup/install-server/

Single, not spoken, obvious requirement can cross out software design in best case. In worst make product unusable and costly toy. How to not omit anything?

FURPS Model

Formulated by Robert B. Grady and Deborah L. Caswell in Book: Software Metrics: Establishing a Company-Wide Program1 FURPS model of quality requirements collecting

As it claimed

One reason the acronym FURPS is effective is that it is a silly mnemonic which is easy to remember. Using the FURPS model involves two steps: establishing priorities and making quality attributes measurable. Establishing priorities is important because of the tradeoffs involved between quality attributes. For example, adding a new function might improve functionality but decrease performance, usability, and/or reliability. Since each project has different priorities, it is necessary to make an early decision of what kind of quality is most important.

plantuml

How to use it

Following engineers from HP usage of FURPS consists of 2 steps

  • establish priorities to those areas
  • make quality attributes measurable

Giving priorities is important as long as introducing new functionalities can improve some attribues but dectrease others. Having them prioritized provides way to evaluate functionalities.

Second step - assign ways of measurement defined atrtribures is important to define for each stage of software development process

Example is presented following book1

FURPS Table

bootstrap check failure [2] of [2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

sudo sysctl -w vm.max_map_count=262144

https://www.elastic.co/guide/en/elasticsearch/reference/current/setting-system-settings.html#limits.conf

https://www.elastic.co/guide/en/elasticsearch/reference/current/setting-system-settings.html#limits.conf


Profile picture

Written by Lukasz Czarny Developer on a path to Software Architect You should follow them on Twitter

© Software Architecture by Cases 2022