from syst em goals to sof tware architecture
play

From Syst em Goals to Sof tware Architecture Axel van Lamsweerde - PDF document

From System Goals SFM 03, 22/09/03 to Software Architecture From Syst em Goals to Sof tware Architecture Axel van Lamsweerde Univer sit y of Louvain B-1348 Louvain-la-Neuve (Belgium) SFM-03: Sof t war e Ar chit ect ur e Ber t inor o,


  1. From System Goals SFM ’03, 22/09/03 to Software Architecture From Syst em Goals to Sof tware Architecture Axel van Lamsweerde Univer sit y of Louvain B-1348 Louvain-la-Neuve (Belgium) SFM-03: Sof t war e Ar chit ect ur e Ber t inor o, 22/ 09/ 03 Two essent ial act ivit ies in t he SE process ... � Requirement s Engineering (RE) = elicit, specif y, analyze & document ... obj ect ives , f unct ionalit ies , qualit ies , const r aint s ⇒ st ruct ured models of syst em -t o-be � Archit ect ural Design (AD) = organize, specif y, analyze & document ... component s , int eract ions, conf igurat ions, const raint s ⇒ st r uct ur ed model of sof t ware -t o-be Archit ect ure has big impact on achieving NFRs @ Axel van Lamsweerde 1

  2. From System Goals SFM ’03, 22/09/03 to Software Architecture The problem ... � Requirement s Engineering (RE) = elicit, specif y, analyze & document ... obj ect ives , f unct ionalit ies , qualit ies , const r aint s ⇒ st ruct ured models of syst em -t o-be � Archit ect ural Design (AD) = ? organize, specif y, analyze & document ... component s, int eract ions, conf igurat ions, const raint s ⇒ st r uct ur ed model of sof t ware -t o-be Archit ect ure has big impact on achieving NFRs The problem ... (2) � P oor underst anding of ... – relat ionships requirement s ↔ archit ect ure – int ert wining RE ↔ AD � No syst emat ic way t o ... – build/ modif y archit ect ure t o meet f unct ional/ non- f unct ional requirement s – int egrat e archit ect ural const raint s in r equir ement s document ⇒ requirement-archit ect ure mismat ch @ Axel van Lamsweerde 2

  3. From System Goals SFM ’03, 22/09/03 to Software Architecture The mismat ch problem: exacerbat ing f act ors ... � Requirement s volat ilit y vs. archit ect ural st abilit y (e.g. new requirement s f rom using t he sof t ware) � New generat ion sof t ware ... – ubiquit ous, mobile – het er ogeneous – open – mission-crit ical – operat ing in changing, (host ile) environment s – open source (permanent , dist ribut ed evolut ion) Resolving t he mismat ch problem: why not j ust f orget about requirement s ?? � Survey of 350 US companies, 8000 proj ect s – success: 16 % – f ailure: 33 % – so so: 51 % (partial functionalities, excessive costs, big delays) maj or source of f ailure: poor requirement s engineering ≅ 50% responses (St andish Gr oup, 1995) @ Axel van Lamsweerde 3

  4. From System Goals SFM ’03, 22/09/03 to Software Architecture Resolving t he mismat ch problem: why not j ust f orget about requirement s ?? Maj or source of f ailure: poor requirement s engineering ≅ 50% responses: – lack of user involvement 13% – incomplet e requirement s 13% – changing requirement s 9% – unrealist ic expect at ions 10% – unclear goals 5% www.st andishgroup.com/ chaos.ht ml Resolving t he mismat ch problem: why not j ust f orget about requirement s ?? � Survey of 3800 EUR organizat ions, 17 count ries main sof t war e problems are in... – requirement s specif icat ion > 50% responses – requirement s management 50% responses (Eur opean Sof t war e I nst it ut e, 1996) @ Axel van Lamsweerde 4

  5. From System Goals SFM ’03, 22/09/03 to Software Architecture The problem on t he research side ... � Much work on archit ect ural descript ion & analysis – myriads of ADLs: ACME, C2, DARWI N, RAPI DE, WRI GHT, UML2.0 (?) , ... t he ar chit ect ur e has t o be t her e – archit ect ural pat t erns & st yles how do you compose t hem t o meet NFRs ? � Some work on archit ect ural ref inement e.g., [Mor iconi' 96] The problem: on t he research side ... (2) � Lit t le work on archit ect ure derivat ion t o meet f unct ional & non-f unct ional reqs some preliminary ef f ort s on goal-orient ed approaches f or... – it erat ive evaluat ion/ t ransf ormat ion against NFRs [Bosch&Molin ’99] – archit ect ural ref inement [van Lamsweerde' 00] – NFR-based document at ion of design pat t erns f or select ion [Gross&Yu' 01] @ Axel van Lamsweerde 5

  6. From System Goals SFM ’03, 22/09/03 to Software Architecture Obj ect ives � Support requirement s/ archit ect ure co-design/ co- evolut ion � Support archit ect ure derivat ion f rom requirement s models & sof t war e specs � Make der ivat ion pr ocess… – syst emat ic, increment al – leading t o provably/ arguably cor r ect & “good” archit ect ure – highlight ing archit ect ural views (e.g. securit y view) ⇓ goal-based archit ect ural design process Out line � Background: some bit s of RE � From syst em goals t o sof t ware requirement s – Building goal-orient ed requirement s models – I nt ert wining bet ween lat e RE & early AD – Goal-levl reasoning f or higher assurance � From sof t ware requirement s t o sof t ware specs � From sof t ware specs t o sof t ware archit ect ure – Derivat ion of abst ract dat af low archit ect ure t o achieve f unct ional specs – St yle-based ref inement t o meet archit ect ural const r aint s – Pat t er n-based r ef inement t o achieve NFRs @ Axel van Lamsweerde 6

  7. From System Goals SFM ’03, 22/09/03 to Software Architecture Background: what is RE about ? WHY? goals domain knowledge operationalization requirements, WHAT? assumptions Background: what is RE about ? WHY? goals domain knowledge operationalization requirements, WHAT? assumptions responsibility assignment WHO? @ Axel van Lamsweerde 7

  8. From System Goals SFM ’03, 22/09/03 to Software Architecture Background: what is RE about ? � Requirement s elaborat ion is hard ... – requirement s are not t here, you have t o elicit t hem & st ruct ure t hem – ranges f rom high-level, st rat egic obj ect ives t o det ailed, t echnical requirement s – involves sof t war e + envir onment – requires evaluat ion of alt ernat ives, select ion (= ar chit ect ur al decisions ? ) – r aises conf lict ing concer ns – requires ant icipat ion of unexpect ed behaviors (f or r equir ement s complet eness, syst em r obust ness) Background: goal-orient ed RE � Goal: prescript ive st at ement of int ent (cf . David ’s not ion of int ent ion/ t ask) � Domain prop: descript ive st at ement about domain � Agent : act ive component , cont rols behaviors sof t ware-t o-be, exist ing sof t ware, device, human Goal achievement requires agent cooperat ion The more f ine-grained a goal is, t he less agent s are required � Requirement : goal assigned t o sof t ware agent � Expect at ion: goal assigned t o environment agent @ Axel van Lamsweerde 8

  9. From System Goals SFM ’03, 22/09/03 to Software Architecture Background: goal-orient ed RE (2) Dif f erent goal cat egories ... � f unct ional: prescribe expect ed services sat isf act ion, inf ormat ion, ... � non f unct ional, ref ined in applicat ion-specif ic t erms: – qualit y of service: accuracy securit y: conf ident ialit y, availabilit y, int egrit y, ... usabilit y perf ormance, ... – development goals: maint ainabilit y: min coupling, max cohesion, ... reusabilit y, int eroperabilit y, ... – domain-specif ic archit ect ural const raint s Background: goal-orient ed RE (3) � Domain-specif ic archit ect ural const raint s ... – f eat ures of environment agent s & t heir organizat ion – const rain archit ect ural design space e.g. dist ribut ion of human agent s, devices, dat a Meet ing scheduling syst em: dist ribut ion of part icipant s, meet ing init iat or Train syst em: st at ion comput er , on-boar d cont r oller , t racking syst em, ... @ Axel van Lamsweerde 9

  10. From System Goals SFM ’03, 22/09/03 to Software Architecture Background: goal-orient ed RE (4) � Dif f er ent t ypes of goals ... – Sof t Goal achievement cannot be est ablished in clear -cut sense → goal sat isf icing, qualit at ive r easoning (Mylopoulos' 92, Chung' 00) – Achieve/ Maint ain goal achievement can be ver if ied → goal sat isf act ion, f ormal reasoning (Dardenne' 93, Darimont ' 96) Sof t Saf eTr anspor t at ion Maint ain ... BlockSpeedLimit Door sClosedWhileMoving Tr ainsOnSameBlock Avoid Background: goal-orient ed RE (5) � Goal G is AND -ref ined int o subgoals G 1 , ..., G n if f achieving G 1 , ..., G n cont ribut es t o achieving G t he set { G 1 , ..., G n } is called ref inement of G G i is said t o cont ribut e posit ively t o G � The set { G 1 , ..., G n } is a complet e AND -r ef inement of G if f G 1 , ..., G n are suf f icient f or achieving G in view of known domain propert ies { G 1 , ..., G n , Dom} |= G � Goal G is OR -ref ined int o ref inement s R 1 , ..., G m if f achieving t he subgoals of R i is one alt ernat ive t o achieving G (1 ≤ i ≤ m) R i is called alt er nat ive f or G @ Axel van Lamsweerde 10

  11. From System Goals SFM ’03, 22/09/03 to Software Architecture Background: goal-orient ed RE (6) � A goal is realizable by agent if it amount s t o a r elat ion on variables t hat are monit orable & cont rollable by t he agent monit or ed var s cont rolled var s Agent Goal Goals need t o be ref ined unt il assignable t o single agent s Background: goal-orient ed RE (7) � Agent responsibilit y: G is assignable t o Ag if f G is realizable by Ag Train OR-Assignment Controller DoorsClosed Train WhileMoving Driver Passenger @ Axel van Lamsweerde 11

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend