software engineering lecture 2 aspi8-4 anders p. ravn, feb. 2004

23
Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Post on 19-Dec-2015

215 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Software Engineering

Lecture 2

ASPI8-4

Anders P. Ravn, Feb. 2004

Page 2: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Your Report - 2!1.1. Requirements SpecificationRequirements Specification

1.1 System Definition1.1 System Definition

1.2 Problem Domain Structure1.2 Problem Domain Structure

1.3 Application Domain Structure

1.3.1 Use Cases

1.3.2 Functions

1.3.3 Interfaces

1.4 Acceptance Test Specification

2. Architecture

2.1 Criteria

2.X Module Interfaces

2.T Integration Test Specification

Page 3: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Overview

• Software Requirements• OAD in Application Domain Analysis

Architecture for Embedded Systems

1. Usage

2. Functions

3. Interfaces

Page 4: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Activities: application domain analysis

Usage

Functions

Systemdefinition

and ProblemDomainmodels

Interfaces

ApplicationDomainModel

andSoftware

Requirements

Page 5: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Use Case

name

<<actor>>name

<<actor>>name

<<actor>>name

Page 6: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Activities: use case analysis

Find actors and use cases

Analyse work tasks

System definition Use cases

Evaluatesystematically

Structurethe usecases

Page 7: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Example: Start tool use

start_tracking

<<actor>>TractorOperator

<<actor>>RowWeeder

Each use case is described textually and/or by a behaviour diagram

Page 8: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Actor stereotype

start_tracking<<actor>>

RowWeeder

TractorOperator

Page 9: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Functions

The actions of actors in use cases:• Update – state change in (internal) model• Signal – event in (internal) model• Read – (internal) model state inspection• Compute – (internal) model state summary

Update/Read/

Compute

Signal

<<actor>>System

Page 10: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Interfaces

System

<<Interface>>Alarm

IPanelUpdate/Read/Compute

Signal

Page 11: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Example: User Interface

Page 12: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Example: Camera Interface

The camera delivers JPEG compressed images with a frame rate of up to 10 per second.

The resolution is ...

The hardware interface is a DMA ...

The standard software driver is ...

Page 13: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Summary: Application Domain Analysis

• Use Cases

• Functions

• Interfaces

Page 14: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Your Report - 3!1.1. Requirements SpecificationRequirements Specification

1.1 System Definition1.1 System Definition

1.2 Problem Domain Structure1.2 Problem Domain Structure

1.3 Application Domain Structure

1.3.1 Use Cases

1.3.2 Functions

1.3.3 Interfaces

1.4 Acceptance Test Specification

2. Architecture

2.1 Criteria

2.X Module Interfaces

2.T Integration Test Specification

Page 15: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Design criteria

• Usable• Secure• Efficient• Correct• Reliable• Maintainable• Testable• Flexible• Comprehensible• Reusable• Portable• Interoperable

Page 16: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Architecture

Page 17: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Interface Class and Dependency

IRow

Segmentation PositionUpdate

use

<<interface>>IRow

userealise

Page 18: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Package

related classes

name

Page 19: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Active Class

name

Page 20: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Processes

• Method in passive class - called from main• Method in passive class - linked to an Event• Method run in active class – explicit start

Specified in UML by Statechart Diagram

Page 21: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Signals and Events

• Signals are asynchronous events

• A Signal or Event is a Class

• A method may have a send dependency

on a Signal

• A method that recieves a Signal

has a use dependency

Page 22: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Sensors, Actuators and Control Architecture for Embedded Systems

• Sensors have passive interfaces with event methods

• Actuators have passive interfaces with event methods

• Control is active and uses sensors and actuators

Page 23: Software Engineering Lecture 2 ASPI8-4 Anders P. Ravn, Feb. 2004

Your Report - 4!1.1. Requirements SpecificationRequirements Specification

2. Architecture

2.1 Criteria

2.X Module Interfaces

2.T Integration Test Specification

3. Modules

3.X.1 Module Interface

3.X.2 Module Design

3.X.3 Module Test Specification

4. Implementation

5. Test