Purpose

This page provides examples that show the use of SysML in software system modeling with the <<refine>> relationship.


Login Function for a Web System

The concept of a login function is fairly simple. It logs in a user after verifying the user id and password by referring to a table in a database that contains the valid pairs of user ids and passwords. However, in practice, a designer has to consider support functions such as allowing the user to change passwords, managing the expiration of a password, and setting rules regarding the syntax of the password.
The requirements of the case study are summarized as follow.
(1) Data items requirement: User id, password, and project id should be entered.
(2) Password management requirement: For security purposes, a password should be robust in the combination of characters, and the user should periodically change his or her password. This requirement is further decomposed into a password setting policy, a password expiration policy, and a password change policy.
(3) Login failure requirement: In the case of login failure, a notification must be displayed.
The SysML requirements diagram for these requirements is shown in Figure 1.


Figure 1

Large View: Click Here


Screen Transition Model

Screen transitions can be represented by a SysML state machine diagram where the screens correspond to the states.
By analyzing the requirements of the login function, 5 screens are recognized. These are #Login_screen, #Login_failure_screen, #Warning_screen, #Passwors_ change_screen, #AP_start_screen. Figure 5 shows the overall screen transitions depicting the screens, events, and the relationships with the stereotype <<refine>>.

Figure 2

Large View: Click Here


Process Model

Figure 3 shows the login process that is launched when the button on the login screen is clicked. The main part of the process is described in the central lane, while the login screen and next screen are described in the left and right lanes.

Figure 3

Large View: Click Here