• No results found

Implementation Workflow

N/A
N/A
Protected

Academic year: 2021

Share "Implementation Workflow"

Copied!
17
0
0

Loading.... (view fulltext now)

Full text

(1)

Implementation Workflow

Implementation Workflow

(2)

Introduction

Introduction

Implement the design in terms of components

source code, scripts, binaries, executables, etc.Flesh out the architecture

Plan system integrations in each iteration incremental: small, manageable stepsDistribute system: map components to nodes

focus on active classes

Implement design classes and subsystemsUnit test components

Integrate components (compile and link into one or

more executables) for integration and system tests

Focus of construction phase

architecture baseline in elaboration phase; defects

(3)

Implementation Focus

Implementation Focus

Core Workflows Phases

Requirements

Analysis

Design

Implementation

Test

Inception Elaboration Construction Transition

Iterations

(4)

Artifacts

Artifacts

Implementation ModelComponentImplementation SubsystemInterfaceArchitecture Description

Implementation view of architecture Integration Build Plan

Sequence of builds in an iterationFunctionality in each build

Note: keep design model current via round-trip

engineering

Design model provides a visualization of

(5)

Implementation Workflow

Activities and Workers

Implementation Workflow

Activities and Workers

Architect System Integrator Component Engineer Architectural Implementation Integrate System Implement a Class Implement a Subsystem Perform a Unit Test

(6)

Implementation Model

Implementation Model

Describes how elements of design model are

implemented in terms of components such as source code, executables, etc.

Describe how components are organized using the

structuring and modularization mechanisms of the implementation environment and programming

languages

Hierarchy of Implementation (sub)Systems

containing Components and Interfaces

(7)

Component

Component

Physical packaging of model elementsStandard stereotypes

<<executable>> -- a program that may run on a

node

<<file>> -- file containing source code or data<<library>> -- static or dynamic library

<<table>> -- a database table<<document>> -- a document

technology specific (<<ActiveX>>, <<Applet>>,

(8)

Component Characteristics

Component Characteristics

Components trace to the model elements they

implement (hence all the way back to use cases)

A component usually implements several elementsComponents provide the same interfaces as the

model elements they implement

Compilation dependencies denote which

components are required to compile a specific component

Implement component stubs to ease compilation,

(9)

Trace between implementation and design

Trace between implementation and design

AccountTransfers.java <<file>>

Transfers Transfers

AccountTransfers <<trace>>

(10)

Implementation subsystem

Implementation subsystem

Organize implementation model artifacts into more

manageable pieces

Manifested by a “packaging mechanism” in implementation

environment

package in Java

project in VB, VC++directory in C++

CORBA server in CORBA

Component View package in Rational RoseTrace one-to-one with design subsystems

same dependencies to other subsystems, interfacesprovides same interfaces

§ maps one-to-one with which components or other

implementation subsystems within the subsystem provide the interfaces of the subsystem

(11)

Interface

Interface

As in design, interfaces define the operations

implemented by components and implementation subsystems

A component that realizes (and thus provides) an

interface must implement all the operations defined by the interface

A subsystem that realizes (and thus provides) an

interface must also contain components that provide the interface or other subsystems (recursively) that provide the interface

(12)

Architecture description

Architecture description

Architectural view of implementation modelDecomposition of implementation model into

subsystems, their interfaces, and dependencies between them

redundant with architectural view of design

model due to one-to-one mapping

Key components

trace to architecturally significant design

classes

executable components

components that are general, central, or

implement generic design mechanisms that many other components depend on

(13)

4+1 View of Architecture

and the workflows that define the views

4+1 View of Architecture

and the workflows that define the views

Logical View Functionality Implementation View Software management Process View Performance, scalability, throughput Deployment View System topology, delivery, installation, communication

Use Case View

Understandability Usability Requirements Analysis Design Design Implementation

(14)

Integration Build Plan

Integration Build Plan

Incremental build in small, manageable steps

limits scope of integration and test problems“build” is an executable version of system

should put the build under version control so can roll

back on test failure

Build plan for each increment

list of functionality: use cases and/or scenarioslist of implementation subsystems and componentsTest each build, including regression tests

Typically multiple builds per iterationBenefits

early executable system reduces riskstart integration tests early

(15)

Workers

Workers

Architect

Responsible for the integrity of the

implementation model (correct, consistent and readable as a whole)

Component engineer

Defines and maintains source code of several file

components

Maintains integrity of one or more implementation

subsystems

Typically the designer of the corresponding

subsystems

System integrator

Plan build sequence

(16)

Details and Guidelines

Details and Guidelines

Architectural implementation

Identifying architecturally significant components

§ Identifying executable components and deploying

them to nodes

Integrate system

Planning a subsequent buildIntegrating a build

Implement a subsystem

Maintaining the subsystem contentsImplement a class

Outlining file components that will contain source codeGenerating code from a design class and its relationshipsImplementing operations in terms of methods

Making the component provide the right interfacesPerform unit tests

Perform specification testing (black box; external)Perform structure testing (white box; internal)

(17)

Summary

Summary

Implementation Model

Implementation (sub)systems and their

dependencies, interfaces and contents

Components

§ File and executable components § Dependencies

Components unit tested

Architecture view of implementation modelIntegration Build Plan

§ Each build from implementation is

integration tested and system tested in Test Workflow

References

Related documents

In addition to media and market activity there are a range of other factors that can potentially impact the volume of leads generated by MortgageCo and it was important to

Fiscal 2016 Defense Authorization: Navy Shipbuilding Senate Armed Services - Subcommittee on Seapower Subcommittee Hearing. 9:30 a.m., 222

◦   Javascript sandbox which converts code using

Keywords: Asynchronous Learning, Auto-generated Content, Collaborative Learning, Corporate Sector Training, Lifelong Learning, e-Learning Concept, Education Sector

O foco da engenharia simultânea é oferecer a otimização do processo de desenvolvimento e produção do produto, porém a implementação dessa metodologia pode tornar-se

Afbeelding 16 Totaaloverzicht van de geïdentificeerde relaties Marketing Management Operations Management Firm Vuability Product Quality Service Quality Management Accounting

In summary, this study analyses ideal family sizes of migrant women in Italy and how they differ from the prevalent norms in their countries of origin, thereby under- lining the