Czym jest spójność w inżynierii oprogramowania?

...

spójność w inżynierii oprogramowania jest wyznacznikiem organizacji programu

Literackie znaczenie słowa „spójność” to spójność i organizacja różnych jednostek. W informatyce i inżynierii oprogramowania spójność odnosi się do poziomu siły i jedności, z jakimi różne elementy programu są ze sobą powiązane. W inżynierii oprogramowania normą jest, że programy tworzone są w inny sposób powiązane ze sobą funkcje (lub moduły), a każdy z tych modułów ma osobne zadania związane z ich. Spójność dowolnego oprogramowania określa siłę jego kodu źródłowego i może być dalej rozumiana poprzez badanie jego zasad asocjacji, typów i metod obliczeniowych.

Podstawy

Pojęcie spójności zostało wprowadzone w celu uchwycenia cech „jakości”, „zwięzłości” i „skuteczności” programu w dziedzinie inżynierii oprogramowania. Koncepcja ta ułatwia określenie, jak ściśle powiązany jest każdy moduł oprogramowania, co wskazuje, jak szybko może wykonywać różne przypisane mu zadania. Zwiększoną spójność programu uzyskuje się poprzez bardzo identyczne operacje wykonywane przez jego różne moduły i jest odwrotnie proporcjonalna do zmniejszonej liczby modułów. Oznacza to, że oprogramowanie zaprojektowane do wykonywania wielu zadań za pośrednictwem wielu modułów ma wyższą prawdopodobieństwo mniejszej spójności, co negatywnie wpływa na jego ogólną wydajność i efektywność obliczeniową maszyny.

Wideo dnia

Zasady asocjacyjne

Asocjacyjne zasady spójności oprogramowania odnoszą się do typów relacji między modułem oprogramowania a odpowiadającymi mu czynnościami (operacjami). Zasady te łącznie stanowią spójność każdego oprogramowania i różnią się w zależności od jego różnych wymagań operacyjnych. Istnieje siedem zasad asocjacyjnych sformalizowanych dla siedmiu typów spójności oprogramowania, które: obejmuje przypadkowe, logiczne, czasowe, proceduralne, komunikacyjne, sekwencyjne i funkcjonalne spoistości. Każdy z tych typów spójności ma powiązaną unikalną zasadę asocjacji, która określa jego właściwości działania dla dowolnego modułu oprogramowania.

Nieruchomości

Istnieją pewne predefiniowane właściwości związane ze spójnością w inżynierii oprogramowania. Na przykład, jeśli jakiekolwiek oprogramowanie składa się z trzech różnych modułów i wszystkie są do siebie podobne pod względem działania, ogólna spójność programu wzrasta. Podobnie spójność spada, jeśli z tymi modułami powiązane są zupełnie inne i unikalne działania. Co więcej, spójność programów zależy również od typów przetwarzanych danych i jest odwrotnie proporcjonalna do zwiększonej liczby typów danych.

Analiza

Spójność programu komputerowego można analizować zarówno metodami ilościowymi, jak i jakościowymi. W procesie pomiaru jakościowego kod tekstowy programu jest analizowany poprzez jego różne próbki i ocenianie ich zgodnie ze standardami kodowania odpowiednich programów język. W przeciwieństwie do niej, ilościowa ocena spójności identyfikuje liczbę modułów utworzonych w ramach programu i ocenia ich działania według wcześniej zdefiniowanych skal.