software design and uml in preevision
TRANSCRIPT
V0.0 | 2019-10-16
PREEvision 9.0
Software Design and UML in PREEvision
RELEASEDIN WORK -NOT
2
u Software Design in PREEvision
Structured Software
Object Oriented Software
Service Oriented Architecture
Common tools
Roadmap
Agenda
3
PREEvision layers
Software Design in PREEvision
4
Common toolsService Oriented Architectures
Support of different software design paradigms
Software Design in PREEvision
Procedural paradigm Object-oriented paradigm
Interfaces
5
Software Design in PREEvision
u Structured Software
Object Oriented Software
Service Oriented Architecture
Common tools
Roadmap
Agenda
6
u Procedural programming: small procedures which can be called by a well-defined interface
u The software is decomposed in procedures and structured in a tree-like way
u The procedures are composed of few control structures
u Sequence: ordered statements
u Selection: statements are executed depending on the state of the program (if…then…else…endif)
u Iteration: statements are executed until the program reaches certain state (while, for, repeat, do…until)
u Recursion: a statement repeatedly calls itself until a termination condition met
u Examples of structured programming languages
u C
u Pascal
u Basic
u COBOL
u Etc
Characteristics of the structured software paradigm
Structured Software
7
u Creation of the hierarchical software structure using compositions and components
u Tree and tabular representation of the software hierarchy
Definition of structured software
Structured Software
Hierarchical software structure Software structure with ports and connectors
8
u Shows components and dependencies between them.
u Definition of Component, Interface, Port, Connector, etc. are available
u Support for documentation, pictures and shapes
u Display of mappings to other artifacts and tables with related content
u Refactorings for changing components
Component diagram
Structured Software
Component diagram Component refactoringsSoftware
Component
Port
Connector
Mappings
Comments
9
u Diagram for the interface design
u Paradigms of communication between components: Client-Server, Sender-Receiver
Interface diagram
Structured Software
Software Component
Sender-Receiver Interface
Client-Server Interface
Interface assignment
10
u Internal behavior is described using Runnable Entities, Events, Variables, Parameters, etc.
u A Runnable Entity represents the smallest code fragment that is provided by a component
Description of the internal behavior
Structured Software
The Internal Behavior artifact contains the internal behavior model of a software component
Runnable Entities are activated by Events. Different classes of Events are available: Init, Timing, Data Received, Data Send Completed, Operation Invoked, Operation Call Result, etc.
The Runnable Entity representing a code fragment
Runnable Entities may access the data produced or consumed by the Software Component
This formalized description of the software component internal behavior allows the generation of code
11
u Modelling nested records in a graphical way allows an easy understanding of the structure
u Based on the class diagram
Complex Data Type Diagram
Structured Software
StructSub-Struct
12
Software Design in PREEvision
Structured Software
u Object Oriented Software
Service Oriented Architecture
Common tools
Roadmap
Agenda
13
u Object oriented programming: is based on the concept of objects, which can contain data (fields, often known as attributes or properties), and code (procedures, often known as methods)
u Objects
u are instances of classes
u can access via methods to other object’s fields and change them
u Examples of object oriented programming languages:
u C++
u Java
u C#
u Phython
u Etc.
Characteristics of the object oriented software paradigm
Object Oriented Software
14
u Shows structure of a system, subsystem or component as related classes and interfaces, with their features, constraints and relationships - associations, generalizations, dependencies, etc.
u Creation of classes with fields and methods and setting of relationships
Class diagram
Object Oriented Software
Concrete Class
Abstract Class
Inheritance
CompositionAssociation
Method
Field
15
u Instance level class diagram
u shows instance specifications of classes and interfaces, value specifications and links (instances of association).
Object diagram
Object Oriented Software
Object
Associationinstance
CompositionInstance
16
Package diagram
Object Oriented Software
u Shows the packages and the relationships between them
u Allows evaluating the software architecture and its dependencies
Package
PackageDependency
Class
17
u Shows discrete behavior of one system through finite state transitions
u Design of Simple States, Composite States, Transitions, Start and End Point, Conditions, etc.
State machine diagram
Object Oriented Software
End node
Start node
Composite state
Simple state
Transition
Junction
Choice
Paralellstate
Deep story
18
Software Design in PREEvision
Structured Software
Object Oriented Software
u Service Oriented Architecture
Common tools
Roadmap
Agenda
19
u Service Oriented Architecture is a way of designing software where the participating components provide and consume services through a defined protocol over a network
u Separates functionality into different units or services
u Promotes combination and reuse
u The functionality is distributed in several ownership domains
u Promotes interoperability through well-defined interfaces
u Example service oriented architecture technology implementations:
u Web Services based on WDSL or SOAP
u REST
u Windows Communication Foundation
u Google Remote Procedure Call
u Etc
Characteristics of service oriented architectures
Service Oriented Architecture
20
Use Case Diagram
Service Oriented Architecture
u Describes a set of actions, called use cases, that some system (subject) can perform in collaboration with one or more external users of the system (actors) to provide some observable and valuable results.
u Design of use cases, use case systems, actors, include and extend relations, extension points, generalizations
Use Case
Actor
Includes
ExtendsExtension point
21
Service Architecture Diagram (service interface based)
Service Oriented Architecture
Service orchestration
u Describes the services and the service orchestration
u Design of Service Architecture, Services, Service Provider, Service Consumer and Dependencies
u Supports the Service Interface based approach of the SOA
Service Architecture
Service
Service Provider
Service Consumer
Dependency
22
u Describes the services and its participants
u Supports the Service Contract based approach of the SOA
u Design of Participants, Ports, Contracts
Service Architecture Diagram (service contract based)
Service Oriented Architecture
Participant
Contract
Port
23
u Using combined diagrams is possible to describe several aspects of the design
Combined diagram
Service Oriented Architecture
Component
Service Interface
Package
ServicePort
Class
24
Software Design in PREEvision
Structured Software
Object Oriented Software
Service Oriented Architecture
u Common tools
Roadmap
Agenda
25
u Software Implementation layer stored the implementation details of software components
u Administration of source code an documentation by the SVN integration
u Access to the repository using common SVN clients
u Full traceability from the modeled Software Component to the source code and documentation
Integrated Implementation and File Management
Common tools
SVNServer
26
u Integrated requirement management
u Description of textual requirements which can be linked to every artifact
u Traceability from requirement to realization artifact
Integrated Requirement Management
Common tools
Requirements
Realization
27
u Integrated test data management
u Design of Test Project, Test Specification, Test Implementation
u Every artifact can be an “object under test”
Integrated Test Data Management
Common tools
Test project
Test specification
Test implementation
Implementation analysis
28
u Integrated ticket and release management
u Handling of Ticket, Ticket type, Ticket category, Ticket set, Gate, Responsible, etc.
u Every artifact can be referenced by a Ticket as affected artifact
Integrated Change Management
Common tools
Tickets Affected artifacts
29
u Based on the model several Import/Export interfaces are available
u AUTOSAR, XML, Excel, CSV, Txt, ReqIf, eea
u Automation possible
u REST API available
Interfaces / Import / Export
Common tools
PREEvision
AUTOSAR
XLS
CSV
ReqIF
TXT
XML
30
Software Design in PREEvision
Structured Software
Object Oriented Software
Service Oriented Architecture
Common tools
u Roadmap
Agenda
31
u PREEvision 10.0 feature candidates
u UML extensions> Message Sequence Diagram
> Activity Diagram
u Other diagrams> Complex Data Type Diagram
u Software Design Explorer
u Franca IDL Import/Export
Roadmap Software Layer
Roadmap
32 © 2018. Vector Informatik GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V0.0 | 2019-10-16
Author:Marcelino VarasVector Germany
For more information about Vectorand our products please visit
www.vector.com