Kvaliteter i software
description
Transcript of Kvaliteter i software
2004-01-19 SummIT05
Kvaliteter i software
• Kvalitet på højt niveau– Lektor Klaus Marius Hansen
ISIS KatrinebjergAarhus Universitet
• CISS-projekter relateret til modeldrevet softwareudvikling– Lektor Arne Skou
CISSAalborg Universitet
2004-01-19 SummIT05
Kvalitet på Højt Niveau
Klaus Marius HansenAarhus Universitet
2004-01-19 SummIT05
Plan
• To budskaber – Software-arkitektur er kritisk for
mange kvalitets-egenskaber– Software-arkitektur kan designes så
mange kvalitets-egenskaber kan opfyldes
• Eksempler fra ISIS-projekter– LIWAS– EPCiR/eu-DOMAIN
2004-01-19 SummIT05
Arkitekturer for kommunikation mellem stationære og mobile
enheder (LIWAS)• Formål
– Udvikle pålidelige systemer til måling og klassifikation af vejforhold: is, våd, tør, …
– Udvikle protokoller og infrastrukturer til kommunikation af resultater
• Ad hoc-netværk mellem biler og til stationære enheder
• Deltagere– LIWAS A/S– Aarhus Universitet– ISIS Katrinebjerg
• Resultater– Proofs-of-concepts
• Måling og klassifikation• Ad hoc-kommunikation• Hybrid infrastruktur
– Prototyper af Ex Hoc-infrastrukturen oven på OSVM-platformen
– Design, modellering og analyse af geocast-baserede protokoller
Vej
Reference
Diffus
Retro
Refleksion
Beamsplitter
2004-01-19 SummIT05
Enabling Pervasive Computing in Reality (EPCiR)
• Formål– Undersøge nuværende
teknologier til pervasive computing
– Prototyper af gateway-baserede løsninger
• Deltagere– TDC Totalløsninger A/S– InJet ApS– Innovation Lab– Aarhus Universitet– Center for It-sikkerhed,
Alexandra Instituttet• Resultater
– Prototyper plus forretnings-, arkitektur- og sikkerhedsevalueringer
– “eu-DOMAIN” EU STREP-projekt integration i ambient intelligence-anvendelser
2004-01-19 SummIT05
Objekt-Orienteret Software Safety (OOSafety)
• Formål– Undersøge snittet mellem objekt-
orientering og software safety– Pilot-projekt omkring udvikling af en
“safe frekvensomformer”• Deltagere
– Danfoss Drives A/S– Systematic Software Engineering A/S – Aarhus Universitet– ISIS Katrinebjerg
• Resultater– Objekt-orienterede versioner af
traditionelle safety-teknikker– Udforskende prototyper af
værktøjsunderstøttelse
2004-01-19 SummIT05
Software-arkitektur• Software-arkitektur
– “structures of the system, which comprise software elements, the externally visible properties of those elements, and the relationships among them”
– “Software Architecture = {Elements, Form, Rationale}”• Arkitektur -> implementation
– En implementation har en arkitektur hvis den opfylder dennes strukturelle designbeslutninger
– Arkitektur dikterer organisatorisk struktur• Arkitektur -> kvaliteter
– Muliggør eller forhindrer ønskede kvaliteter• Fx
– Performance– Modificerbarhed– Sikkerhed– Skalerbarhed
– Strategier for mange kvaliteter er i natur arkitektoniske
2004-01-19 SummIT05
Kvalitet?
• Funktionalitet– Et systems evne til at udføre de opgaver som det var
bestemt til• Kvalitet
– “The totality of characteristics of an entity that bear on its ability to satisfy stated and implied needs” (ISO 9126-1/ISO 8402)
• (Kvalitets)attributter– “A measurable physical or abstract property of an
entity” (ISO 9126-1)
• (Funktionalitet og kvalitetsattributter er ikke-ortogonale…)
2004-01-19 SummIT05
En simplificeret udviklingsproces
• Kvalitetsattributter– Hvordan defineres ønsket kvalitet?– Hvordan designes en softwarearkitektur, så den ønskede kvalitet
opnås?– Hvordan evalueres om en softwarearkitektur har en ønsket
kvalitet?
• (I virkeligheden iterativ, inkrementel, eksperimentel)
FunctionalRequirements
QualityRequirements
SoftwareArchitecture
ArchitecturalRequirements
Implementation
2004-01-19 SummIT05
Eksempler – Systemkvalitetsattributter
• Kvalitet(sattributter) ved et system– Performance, testability, modifiability,
reliability, availability, …– I modsætning til
• forretningsmæssige kvaliteter (time to market, cost/benefit, …)
• arkitektoniske kvaliteter (con)ceptual integrity, buildability, …
• Hvordan beskrives?– Operationelt– Overlappende– Forskellige begreber
2004-01-19 SummIT05
Kvalitetsscenarier
2004-01-19 SummIT05
Eksempel
Scenario Refinement for Scenario PaC.2
Scenario(s): The device is brought home and automatically configures itself without interfering with the rest of the system
Relevant Quality Attributes:
Modifiability, usability, security,
Stimulus: An end-user brings home a new device
Stimulus Source: End-user
Environment: Normal operation
Artefact (If Known): Gateway, eu-DOMAIN installation
Response: The device is associated with the gateway and is registered as a device in the eu-DOMAIN
Response Measure: The physician is notified when the device is readyThe physician can set up a monitoring scheme based on the
device
2004-01-19 SummIT05
LIWAS
• Central kvalitetsattribut– Modificerbarhed
• Arkitektoniske konsekvenser– OSVM-platform– Protokoller til opdatering– Autonome, forbundne enheder
:Mobile Unit
:OSVM
:Communication System
:Sensor System
RS232
WLAN
SMSBackend: Server
Laptop :PC
:OSVM ProgrammingEnvironment
WLAN
:iPAQ
2004-01-19 SummIT05
EPCiR/eu-DOMAIN
• Central kvalitetsattribut– Interoperabilitet
• Arkitektoniske konsekvenser– OSGi-platform– Web services
• Også semantiske– Meta-modeller
• Regel-baseret beregning
Residential Equipment
Pylix:Residential Gateway
:Operating System
:Gateway Operator :Service Provider
WAN
WAN
RS232, USB, X10, EIB,LAN, ...
*
:Framework Services
:Bundles
*
*
*
:Service*:mPower Remote
Manager
:OSGi
WAN
2004-01-19 SummIT05
OOSafety
• Kritisk kvalitetsattribut– Safety– IEC-61508
• Arkitektoniske konsekvenser– Safe kernel– Modellering af
abstraktioner– Høj pålidelighed
PLC
Safe Board
Control BoardPower Board
IGBT
PC
uP1uP2
PWMAOC
?
Motor
digiral signal (reset)
digital signal (saf e f eedback)
Prof ibus
Prof ibus
dual port RAM
digital signal (saf e f eedback)
digital signal (reset)CAN
USB/RS 232
digital signal digital signal
digital signal (f requency ) digital signal (f requency )
sensor input
SourceSafeInverter
Control
SafetyFunctionsDiagnosis
External State
2004-01-19 SummIT05
Opsummering
• Kvalitet <-> software-arkitektur• Tre eksempler
– LIWAS– EPCiR/eu-DOMAIN– OOSafety
2004-01-19 SummIT05
For yderligere information
• http://www.isis.alexandra.dk/software
• http://www.ooss.dk