Full software modeling 1

Source: Internet
Author: User

In all the implementation processes of software engineering, models are used instead of text expressions to describe them. Such an implementation process is called full-process modeling. Full modeling is characterized by the association between models. The model becomes the entity presented at each stage of the software engineering process, rather than the text description as the entity. By modeling the various documents with original pure text and graphic descriptionsCodeCan be unified to achieve changes in requirements directly affect the changes in code.Improve the relationship between the Code and the requirement. At the same time, the document becomes invalid when encoding changes occur frequently in the past.

there are many software modeling methods, so far the most widely used is UML . UML Yes Unified Modeling Language , mainly composed of booch , Rumbaugh and Jacob proposed by three people, the three proposed modeling methods booch and OMT , oose is integrated into UML . booch in the unified modeling language user guide /span> UML is defined as " UML a product in a software-intensive system. ". UML is a language for software modeling. It features graphical modeling. UML has the following features: unified standards, UML has been accepted as a standard modeling language by OMG , more and more developers use Ulm for development; UML is a modeling language that supports object-oriented technology. It has powerful visualization and presentation capabilities and is independent of processes, UML does not rely on specific software development processes. It has clear concepts, concise modeling and representation, clear graphic structures, and is easy to grasp and use.

UMLIt can be used for Object-Oriented Modeling of the system, but no application is specified.UMLIt is just a language, and it is independent of any process. If you want a successful applicationUMLA good process is necessary. A reasonable process can effectively measure the work progress, control and improve work efficiency.RUPIt is a good software process, and its core is to solve operability problems, which can help developers complete the use.UMLFull modeling.RUPAlthough good,RUPIt is very huge and difficult to implement some small projects. Therefore, many people have been exploring agile modeling methods. I have referencedRUPAnd greenun's full-Process Modeling Implementation of Software Engineering and 《UMLThe agile modeling process is formed based on your work experience. I would like to share the agile modeling process with you and hope to help you. I also hope you can give more comments, let me grow. This process is applied in a software project development process that I previously participated in.ASystem. The following content includes:5Section: requirement model, analysis model, design model, physical architecture model, and code export. Because the content is too long, it will be uploaded several times.

1RequirementModel

1.1Case Model

1.Use Case and use case diagram

A use case is a text description of the interaction process when a role uses a function of the system. The essence of use cases is the contract between various persons in the system regarding system behavior, and is the functional requirement of the system. Use Cases describe the information in the system from the perspective of using the system, that is, viewing the functions of the system from outside the system, without considering the specific implementation methods of this function within the system. Use Cases describe some of the user's possible requirements and correspond to a specific user goal. Use Cases can facilitate communication with the user and understand the correct requirements, it can also be used to divide the boundaries between the system and external entities. It is the starting point of object-oriented system design and the source of classes, objects, and operations. The use case diagram is used to describe the relationship between the proposed system and the external environment.The use case diagram mainly includes the relationship between use cases, roles, and use cases. The relationship between use cases is usuallyInclude, normalize, and expand.


How can we implement the use case model? The use case diagram includes roles, system boundaries, use cases, and associations between elements. First, identify the role and then identify the use case based on the role.How to Create a case model

:FindRoleFind the use case, describe the use case, process the relationship between use cases, verify the model, and establish the use case model through such steps.

2.RecognitionRole

 

Roles are not only the users who use the system, but also the hardware and external systems. The role should have an interactive behavior with the system, that is, the role sends messages to the use case or receives the messages reported by the use case. There is an inheritance relationship between roles. Reply to the following6Problem identificationASystemRole:

(1) Who uses the main functions of the system.

Answer: Quality supervision personnel.

(2) Who needs system support to complete daily work.

Answer: Quality supervision personnel.

(3) Who is responsible for maintenance, management, and maintaining the normal operation of the system.

Answer: The Administrator of the quality supervision structure.

(4Which devices are required by the system.

Answer: No.

(5) The external systems that the system needs to interact.

Answer: none.

(6) Who or who is interested in the system running results.

Answer: Quality supervision personnel.

In summary,ASystemThe roles include quality supervision personnel and administrators.

3.Identification Cases

When identifying use cases, the role has been identified. Therefore, we mainly identify use cases based on the role. The human factor for identifying use cases is large, the use cases identified by different people for the same requirement are not necessarily the same, and the use case identification and experience are closely related. Take the role "Administrator" as an example to identify related use cases based on this role.

(1)What functions does a role require the system to provide? What does this role need to do?

A: After the Administrator logs on to the software, the Administrator manages users. In addition, the system's new database and database connection work is mainly done by the Administrator.

(2) Do roles need to read, create, destroy, update, or store certain information in the system?

A: The administrator needs to create, delete, and modify user information for user management.

Analyze the use cases involved in this role to obtain the use cases related to this role: Manage Users, select databases, create databases, and log on. Other Use Cases of the system can be analyzed using similar methods.

4.Use case diagram

Through the above analysis, we can obtain the preliminary use case diagram. We also need to split or merge the use cases. Use Case Diagrams of the software are drawn based on the above analysis results. Use case diagram of software1.


Figure1Use case diagram

 

1.2Case Description

The use case description describes the user's actual needs in a text language,The Use Case uses natural language to describe the actions of both parties when the role and the system interact. There is no uniform standard for case description, but it should generally include the following content: purpose of the case, how the case is started, and how messages between the role and the case are transmitted; in addition to the main path, what are the other paths, the status of the system after the use case ends, and other content to be described. Table1Is an example of case description.

Table1"Select construction project" use case description

Case Name:

Select Construction Project

Summary:

Data of all construction projects is stored in the same database. After a user logs on, he/she needs to select a construction project or create a new construction project.

Prerequisites:

Log on successfully. You are planning to operate on a project.

Post condition:

Go to the main software interface

Basic operation flow:

1,The system provides existing construction projects for users to choose from.

2,Select a construction project from the project list provided by the system.

3,The system identifies the selected construction project and enters the main interface.

Optional operation flow:

Optional streams1:

1The system provides query conditions, including the kilometer level and project name.

2User input query Conditions

3The system provides items that meet the conditions. If the user does not enter the system prompt, the query is not performed.

4,The user selects the construction project.

5,The system identifies the selected construction project and enters the main interface.

Optional streams2:

1,The user selects the construction project interface to provide the new construction project function.

2,The system provides the page for creating a construction project.

3,User input construction project information

3, System navigation to the new construction project Interface

 


1.3Interface Modeling

see http://www.cnblogs.com/hobe/archive/2006/10/08/523861.html

To be continued...

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.