FIG embodiment, FIG class, sequence diagram with EA-

EA introduced: EA is a CASE software has an excellent support system for software development, he could support the whole process of system development.

FIG Use Case:

Example view of the parts:

  • The operator Actor (for example class diagram of FIG other, it is necessary to set the structure type)
  • Open triangle represents the generalization relationship, triangular object pointed to is the parent class
  • Relationship (solid line with an arrow, with the arrow pointing cases) the include (dotted arrow + << include >> words, with the arrow pointing to the basic embodiment is included with cases), Extend relationship (dashed arrows + << extend >> words, arrows pointing to the expanded use cases (base case), add a new behavior to existing use cases - may not be executed)
  • Include difference and extend: use cases include cases contained with visible foundation, and after removing the embodiment is included with the base case will be incomplete. After a use case basis Extend force expanded use cases are not visible on the basis of the use cases, and remove the expansion remains intact.
    ** Draw Note:
  1. A use case is verb-object phrase, to reflect the system function
  2. Participants are not necessarily people **
  3. Unnecessarily when not in use include, extend

Gantt chart

Also known as a bar graph, a marked according to the schedule of work activities, the chart for project management. Gantt chart with the horizontal axis represents time and the vertical axis represents activity, lines indicate the activities scheduled during planned and completion. By way of illustration show any particular sequence of activities and the duration of the project through the active list and timescale vividly.

Class Diagram

FIG class is a blueprint for the software for each of the related classes in the detailed description of system objects, and static relationships between these classes. Design class is already completed and the specification can be implemented to achieve the degree of class.
Component Class: class name - if need italic abstract class
class properties: Visibility Title: Type [= Default]
+ (public) - (Private) # (protected) ~ (Package)
** relationship between the six types (coupling of low to high) **
dependency use-a, relationship has-a, the relationship between the polymerization, combination relation, generalization is-a, to achieve the relationship (classes and interfaces)

  • Relationship - way association: a known class properties and methods of another class
  • Relationship - two-way association: to know each other
  • Relationship - ary association
  • Association - aggregation: entirety portions, portions may exist separately from the whole. (Library and Book) [hollow diamond, diamond in the whole of that side]
  • Association - composition: comprising integral part, not from the whole part separately exist. (Books and directories) [solid diamond]
  • Association - an association class: based on relationships, both also associated with the class (for example, a method that does not know class when you can put to use) [does not support object-oriented programming can be transformed]
  • Dependencies: dependent objects are changed when will affect the dependent objects
    to distinguish between dependent and association: a class with member variables appear in the form of another class, which is associated with; and if to a local variable appears in the form, it is dependencies. (Coupling is lower than his relationship, corresponds to a related temporary use) is a temporary use of the relationship, not a static relationship, the relationship is [such as] borrow books and a list of unstructured or with reference to the concept of distinction: Property references - relationship; parameter references - dependencies; locally declared reference - dependency; global reference (B object is a global object) - dependencies.
  • Generalization: Inheritance is coupled to the highest degree, the vast majority of language, inheritance is a static relationship (note LSP principle, inherited from abstract class)
    Note: Whenever possible, do not inherit from a specific class. Upward direction acts concentration; downward direction in the data set
  • Relationship to achieve: a class and an interface to connect, is an implementation of the interface class.
  • Multiple relations between classes: 1- one; -0 or more; 1 .. one or more; 0..1 zero or one

Flowchart

It describes the interaction of a set of objects that represents the completion of message transfer time sequence between an object and the behavior of these objects.
Constituent elements: participants object lifeline, focus control, message
by the interaction between the embodiment of FIG objects external to the system (participant) system these two objects, the system class diagram is obtained for all objects involved, abstract description. FIG sequence and system participants interact, the specific interaction between objects within the system implementation. Therefore, the sequence diagram associated with the embodiment of FIG class diagram, can be integrated by using Examples and class diagrams.
[Sequence: Participants - Boundary Class - Control Class - entity classes, control based only one boundary and entity class can have a plurality. ]

  • Boundary classes: system located at the junction with the outside world, forms, reports, and classes that represent communication protocols, like direct interaction with external devices, direct interaction with external systems etc. are all boundary classes.
  • Control categories: control category other type of work. Each use case usually has a class control, controlling the sequence of events in the embodiment, the control may be based on a plurality of shared use between the cases.
  • Entity classes: To save the information into persistent storage, that is, databases, files, and other media can be permanently stored data. Typically, each entity class has a corresponding table in the database, the entity class attribute fields in the database table.

EA operation

  • Use Case Diagram
    Create a .eap file: Open EA- File New Project - do not choose the right template -Module Add - add a new diagram - use case diagram
    drawn in case diagram: Right-new map - Add map - Select UML Behavioral-Use Case
  • FIG class
    - Modeling-class template -core
    - new-class FIGS -structural
    - New Class - Right functional properties
    - correlation - Right multiple values
  • FIG sequence
    - Sequence-New FIG -behavioral
    - correlation - Right Characteristics - Synchronous Asynchronous like provided
  • Figure Exporting
    selected to be exported only Model- right map report -BMP format - run

Example Operation

Title:
Visitors can retrieve food ①, ② shop by entering keywords. ③ After registration, visitors get platform account
login, visitors become official user
formally users except ① outside search, you can also publish the evaluation of food ②, point Like other user evaluation and report violations formal evaluation ③ Favorite Users can also store
user if you want to ④ application store home page, you can submit an application after filling store basic information about
the system administrator is responsible for handling ① Home ② application and report information.


1331259-889e0ab5d5a2edd0.png
FIG review sequence

1331259-18cb0b1b02195fdd.JPG
FIG reviewed by Example

1331259-7cae0dd5ac9484ba.png
FIG class Review

Additional: seven principles of object-oriented design

  • Single Responsibility Principle: a class should only do things and a related duties, not to put too much of a business class is completed.
  • Demeter: between software entities should be done with minimal interaction. Do not talk to strangers. The caller only care about the way he needs to use.
  • Interface segregation principle: the use of specialized interface is better than with a unified interface. To facilitate the division of labor, in the realization of the interface, the method should not see myself without concern.
  • Open Closed Principle: software entities should be open for extension, but closed for modification. Opening and closing principle is the core principle of design principles, other design principles are the principles of opening and closing performance and additions. Way to achieve the principle of opening and closing of the abstract.
  • Synthesis of multiplexing principles: Multi polymerization / compositions to achieve code reuse, less use of inheritance to reuse.
  • Dependency Inversion Principle: abstract-oriented programming, not for specific programming.
  • Richter Substitution Principle: subclass can extend the functionality of the parent class, but can not change the parent class of the original function.
Reference: Software Engineering Fundamentals course materials

Reproduced in: https: //www.jianshu.com/p/58c66e37171a

Guess you like

Origin blog.csdn.net/weixin_34000916/article/details/91325119