Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant...
-
Upload
joleen-adams -
Category
Documents
-
view
218 -
download
5
Transcript of Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant...
![Page 1: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/1.jpg)
Lecture 13
Enterprise
Systems
Development( CSC447)
COMSATS Islamabad
Muhammad Usman, Assistant Professor
![Page 2: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/2.jpg)
2
Types of Scenarios
![Page 3: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/3.jpg)
3
Usage of scenarios
![Page 4: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/4.jpg)
4
Availability General Scenario
![Page 5: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/5.jpg)
5
Sample Availability Scenario
Artifact:Process
Source:External to
System
Environment:
Normal Operation
Response Measure:
No Downtime
Stimulus:Unanticipated message
Response:Inform
Operator to Continue
![Page 6: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/6.jpg)
6
Example: Modifiabilty
Artifact:Code
Source:Developer Environme
nt:At Design
Time
Response Measure:In three hours
Stimulus:Wishes to change UI
Response:Modificatio
n made with no side
effects
![Page 7: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/7.jpg)
7
Specifying Requirements
![Page 8: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/8.jpg)
8
Availability
• Fault = Something went wrong or was unexpected• Failure = System is unavailable• Note: Can talk about degraded modes of operation ~
degrees of availability• In considering availability must consider mean time to
failure plus recovery time
![Page 9: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/9.jpg)
9
General Scenarios for Availability• Source – Internal or External?• Stimulus – omission, crash, timing, response• Artifact – what should be available?• Environment – State/Mode of system• Response – What is the desired response? (logging,
restart)• Response Measure – Time intervals or repair time
![Page 10: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/10.jpg)
10
Modifiability
• Chief concerns– What can change?– Who makes the change? What is the change mechanism
and binding time?» Ex: Change the code vs change configuration file
![Page 11: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/11.jpg)
11
General Scenarios for Modifiability• Source – User, developer, sys admin…• Stimulus – Wishes to add/delete/mod
functionality/quality attribute/capacity• Artifact – UI, Platform, environment,…• Environment – run, compile, build, design• Response – Locates section of architecture, makes
modification,…• Response Measure – Cost, effort, time, ripple
![Page 12: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/12.jpg)
12
Performance
• Timing– Events, interrupts, messages, requests…– Measuring time between arrival and response
• Complicated by– Large # of possible sequences and combos
![Page 13: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/13.jpg)
13
General Scenarios for Performance• Source – where does event come from?• Stimulus – characterize arrival (sporadic, simultaneous,
periodic)• Artifact – System• Environment – System mode• Response – process event; change mode• Response Measure – Latency, deadline, throughput,
miss rate, data loss
![Page 14: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/14.jpg)
14
Security
• Ability of the system to prevent unauthorized use while allowing authorized use
• Properties– Confidentiality of data from unauthorized access– Integrity (delivered as intended)– Assurance of identity– Availability for authorized use– Auditing
![Page 15: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/15.jpg)
15
Security General Scenarios
• Source – human or another system; anticipated/actual sources important
• Stimulus – The attack• Artifact – Services of system or data• Environment – Mode, firewall status• Response – Granting/withdrawing access• Response Measure – Difficulty of attacks, recovery from
attacks
![Page 16: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/16.jpg)
16
Testability
• How can we find faults in the system?• Is a test harness available?• Can pieces of the system be tested independently and
at different levels of integration?
![Page 17: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/17.jpg)
17
General Scenarios for Testability
• Source – Who performs test• Stimulus – What triggers testing?• Artifact – design, code, part/whole system• Environment – Time at which test occurs• Response – provides access to state, provides results,
etc.• Response Measure – Coverage, effectiveness (prob of
finding error), effort/time to test
![Page 18: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/18.jpg)
18
Usability
• How easy is it for the user to accomplish a desired task?– Learning system features– Using system effectively– Minimizing impact of errors– Adapting to user needs– Increasing confidence & satisfaction
![Page 19: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/19.jpg)
19
General Scenarios for Usability
• Source – User• Stimulus – What the user wants to do• Artifact – System• Environment – Runtime or config time• Response – What the system does• Response Measure – time, tries, number of errors or
solutions, learning curve
![Page 20: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/20.jpg)
Tactics
![Page 21: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/21.jpg)
21
Tactics & Strategies
• Tactic – Fundamental design decisions that impart desired quality attributes to a design
• Architectural Strategy – A collection of tactics
![Page 22: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/22.jpg)
22
Example
![Page 23: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/23.jpg)
23
Where to Tactics Fit in?
Idea about System
Important Qualities
Focus with Quality
ScenariosTactics form 1st
broad brush strokes
![Page 24: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/24.jpg)
24
Organizing Tactics
![Page 25: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/25.jpg)
25
Availability Tactics
![Page 26: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/26.jpg)
26
Availability Tactics
• Goal: Stop a Fault from becoming a Failure
• Fault Detection– How to tell when a fault has occurred?
• Fault Recovery– How to deal with a fault when it occurs?– Preparation and Repair– Recovery and reintroduction
• Fault Prevention– How to stop faults from occurring?
![Page 27: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/27.jpg)
27
Availability: Fault Detection
• Ping/Echo• Heartbeat/Watchdog• Exceptions
![Page 28: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/28.jpg)
28
Availability: Fault Recovery
• Prevention and Repair– Voting– Active Redundancy (Two parallel systems)– Passive Redundancy (Master & backup components)– Spare
• Reintroduction– Checkpoint/Rollback
![Page 29: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/29.jpg)
29
Availability: Fault Prevention
• Removal from service to prevent failures• Transactions• Monitor processes for faults and create replacement
processes
![Page 30: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/30.jpg)
30
Availability Tactics
![Page 31: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/31.jpg)
31
Modifiability Tactics
![Page 32: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/32.jpg)
32
Modifiability Tactics
• Localize modifications– Minimize the # modules that must change
• Prevent ripple effects– Limit necessary modifications to localized modules (those
directly affected)• Control deployment time & cost
– Defer binding time
![Page 33: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/33.jpg)
33
Modifiability: Localize Modifications• Maintain semantic coherence
– Coupling and cohesion• Anticipate expected changes• Generalize
![Page 34: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/34.jpg)
34
Modifiability: Prevent Ripple
• Hide information• Maintain existing interfaces• Restrict communication paths• Use an intermediary
![Page 35: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/35.jpg)
35
Modifiability: Defer Binding Time
• Runtime registration• Configuration files• Polymorphism• Component replacement• Define protocols
![Page 36: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/36.jpg)
36
Modifiability Tactics
![Page 37: Lecture 13 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.](https://reader034.fdocuments.in/reader034/viewer/2022050714/56649cfb5503460f949cceaf/html5/thumbnails/37.jpg)
37
References
• Bass, L., Clements, P. and Kazman, R., Software Architecture in Practice, Second Edition (2006), Addison-Wesley.
• Clements, P., Bachmann, F., Bass, L., Garlan, D., Ivers, j., Little, R., Nord, R. and Stafford, J., Documenting Software Architectures: Views and Beyond, 2002, Addison-Wesley. Documenting Software Architectures