Naprawdę dobre pytanie, które dotyczy sedna problemów UML - to słaba semantyka. Odpowiedź na twoje pytanie brzmi: może mieć rację, może być błędna. UML ustawia reguły notacyjne i definiuje tylko podstawową semantykę elementu (np. "Warunek wstępny musi być spełniony w kolejności ...").
Możemy nawet pójść dalej z warunkami wstępnymi, takimi jak "system operacyjny powinien być poprawnie skonfigurowany" lub jeszcze gorzej - "komputer ma elektryczność" ... Dyskusje te mogą łatwo zmienić filozofię. :)
Z mojego doświadczenia wynika, że istnieje sposób na efektywne wykorzystanie przypadków użycia - zbudowanie kolejnego modelu UML, uzupełniającego, który posłużyłby do sformułowania warunków wstępnych, warunków końcowych, a nawet użycia scenariuszy przypadku (to samo pytanie, które zadałeś dla warunków wstępnych może być również stworzony dla scenariuszy - co jest poprawną abstrakcją scenariusza, czy też "włącz komputer", ważny krok w scenariuszu?).
Aby to osiągnąć, używam zazwyczaj diagramów pojęciowych - modeluję swoją domenę, a następnie wyrażam warunki i scenariusze przed/po, w kategoriach tych elementów (klasy i ich atrybuty) ORAZ WYKORZYSTUJEMY TYLKO TE ELEMENTY. Ma to wiele sensu, szczególnie mając świadomość, że stan systemu zapytań przed/po stanie jest dokładnie odzwierciedlony przez obiekty/wartości.
Powracając do przykładu, jeśli zastanawiasz się nad warunkiem, że "oprogramowanie musi zostać zainstalowane", po prostu zadaj sobie pytanie: "Czy naprawdę potrzebuję klasy" Oprogramowanie "z atrybutem" jest instalowany "?"
Wtedy najprawdopodobniej zdasz sobie sprawę, że prawdopodobnie nie potrzebujesz tego warunku, ponieważ jest po prostu zbyt "niski poziom" i poza zakresem mojej domeny. Teraz musisz tylko zdefiniować swoją domenę. :) Oto prosty przykład podobnej sytuacji, demonstrując ideę (należy pamiętać, że przypadek użycia i klasy modele są narysowane na oddzielnych wykresach):
Metoda ta nie tylko ułatwi określenie wykorzystanie przypadkach, ale także uzupełniają model klasy, który pozwala na specyfikację domen, identyfikację reguł biznesowych i pierwszą abstrakcję projektu systemu.
Życzymy powodzenia i dobrej zabawy!
Za dużo ! To rozwiązuje mój problem! Projekt dla szkoły pisze przypadki użycia, ale dla oprogramowania, które już zostało utworzone. Kinda odwrócił się ... ale to koncepcja, którą musimy zrozumieć. Wybrałem dla programu Ccleaner z Piriform. Zrobiłem już jeden przypadek użycia ... Przypadek, w którym użytkownik podejmuje akcję czyszczenia hdd. Dziękuję za zdjęcia i wyjaśnienia! Fosa – Fosa