SlideShare una empresa de Scribd logo
1 de 32
A Statistical Approach to Resolve Conflicting
Requirements in Pervasive Computing Systems
By
Osama Mabrouk Khaled
What is Pervasive Computing?
• 3rd Computing Paradigm
• Distributed Computing,
Mobile Computing,
Embedded Systems,
Autonomic and
Computing HCI shaped it
• Known by
• Sensors
• Actuators
• Mobility
• Context-Awareness
• Adaptability
- By 2020, the number of objects
connected to the Internet will be
about 50 billion
- Cisco expects the economy to
reach $14.4 billion by 2025
- 40% out of 450 surveyed IT and
business leaders expect that
pervasive computing will boost
sales and cut cost within 3 years
- Huge data gathering with accuracy
- Software enabled-devices are
easier to manage
Refs: Cisco, Gartner
Importance of Pervasive Computing
What is Software Engineering?
Requirements
and Analysis
Design
ImplementTest
Deploy Maintain
What is A Reference Architecture?
Reference Architecture
Best Practices
Guidelines
Models
Documentation
Practical
experience
Patterns
Software Engineering + Architecture
Requirements
and Analysis
Architecture Design Implement
TestDeployMaintain
Reference Architecture Software Architect
Approach
High Level
Review Business
Reference Architecture
Architect
Or
Business Analyst
Review Technical
Reference Architecture
Generate a concrete
architecture
We organized the PervCompRA-SE so that
the architect or the business analyst can
use the business reference architecture
then proceed with the normal activities to
generate a concrete architecture. On the
other hand, the architect or the business
analyst may proceed to review the
technical reference architecture then
proceed to generate the concrete
architecture.
Process Re-engineering
In process re-engineering, there are 3 major objectives that the
engineer must do [21] [22]:
1. Maximize the value added tasks that the customer is willing
to pay for.
2. Minimize the non-value added tasks which are essential for
the process but the customer will not be willing to pay for.
3. Eliminate tasks that are considered a clear waste in the
process.
Business Reference Architecture
Requirements Modeling
Minimize: it is a relationship in
which one requirement works on
minimizing a non-desired issue
from another piece of requirement.
Maximize: it is a relationship in
which one requirement works on
maximizing a desired value from
another piece of requirement
Conflict: it shows that two
requirements could have conflicting
values. If this happens, then one of
them must supersede the other in
order to resolve this conflict. The
relation could be uni-directional or
bi-directional.
<<minimize>>
<<maximize>>
<<conflict>>
Requirement 1 Requirement 2
Requirement 1 Requirement 2
Requirement 1 Requirement 2
+Superseding
Related Work – State of the Art
• The reviewed research efforts focus mostly on
the context as the main driver.
• Conflict resolution efforts were mostly directed
towards conflict identification and used simple
resolution strategies where one requirement
would have to be eliminated.
• There are no statistical approaches to resolve
the conflicting requirements with balanced
solutions.
Requirements Engineering and Conflict
Identification and Resolution
Requirements Engineering
Quality Features
Service
Omnipresence
Invisibility Context
Sensitivity
Adaptable
Behavior
Experience
Capture
Heterogeneity
of Devices
Fault
Tolerance
Security
Quality of
Service
Privacy and
Trust
Safety
• Detailed explanation of
the quality feature
• 56 Requirements
• 9 UC
• 6 SM
• Validated/Refined in a
workshop with 4
experts.
Quality Features
Feature Description Type
Adaptable
Behavior
The system must be capable of dynamically responding to changes in the
environment as needed [14].
B
Context
Sensitivity
The system must have the ability to sense and retrieve data from its
environment [14].
B
Experience
Capture
The system must be able to capture and register experiences for later use
[14].
B
Fault Tolerance The system must be able to detect errors and take the appropriate
recovery actions [14].
B
Heterogeneity of
Devices
The system must be able to use different device technologies seamlessly
[14].
B
Invisibility The system must integrate computing resources and guarantee that the
user has the minimum awareness of them [14].
B
Privacy and Trust The system must ensure that personal operations confidentiality is
protected and accessed only by trusted entities [14].
B
Quality of Service The system must set expectation for its services by setting constraints on
the provided services. For example, system response may be considered
invalid if it is received after a certain period of time [14].
B
Safety The system must ensure highest healthiness of its hardware and provide
immunity for its users and interacting devices from harm and damage.
B
Security It is concerned with protecting data from being leaked to unauthorized
individuals, protecting data from corruption and alternation, and ensuring
accessibility to data whenever requested.
B
Service
Omnipresence
The system should give its users the feeling that they carry computer
services wherever they move [14].
B
Requirements Engineering
Context Sensitivity (Example)
Tradeoff Analysis
1. Reviewed all the requirements of the business quality
features and defined maximize, minimize, and conflict
relationships whenever applicable.
2. Generated relationships among the quality features using
maximize, minimize, and conflict relationships.
3. Defined weights for the quality features based on their
complexities ( requirements x relations x features).
4. Validated the results of the complexity weights using a
survey with 17 experts. The results showed very close
ranking.
5. Validated the conclusions of the tradeoff analysis with a
similar exercise by Spinola and Travassos. The comparison
showed almost the same conclusions.
Tradeoff Analysis
Requirements Relationships
Source Name Destination Name Notes Why Superseding
Use a unique user
identifier
(Superseding)
Provide a unique
identifier for every
object
a user may have more
than one device joining
the pervasive system,
which may confuse the
system and lead it to
make multiple
identifications for the
same user.
having a unique user
identifier will ensure
that different rules
associated with it are
cascaded properly for
devices associated
with him/her
Source Name Destination Name Notes
Distribute computing
power
Capture Knowledge
about users
distributed computer power, including sensors,
can capture more information about users
including their habits, movement patterns, and
routine actions within the space of the smart
environment
maximize
conflict
Source Name Destination Name Notes
Provide a unique
identifier for every
object
Disallow anonymous
usage of the system
by using a single identifier for every device, there
will be no anonymous usage of the system
minimize
Tradeoff Analysis
Quality Features Relationships
S vs D FT IN QoS SY ST Total
AB 3 3
CS 2 2
FT 1 1 2
HD 1 1 2
SO 1 1 1 3
Total 4 1 1 4 2 12
minimize
S vs D EC HD PT QoS SY ST SO Total
AB 1 2 3
CS 1 1 1 3
EC 2 2
HD 1 1 1 3
IN 1 1
ST 2 1 3
SO 1 1 2 1 5
Total 4 1 5 2 5 2 1 20
maximize
S vs D AB FT HD PT QoS SY ST Total
CS 1 1
EC 1 1
HD 1 2 1 4
IN 1 1
ST 3 3
SO 1 1 2
Total 1 1 1 3 3 2 1 12
Conflict
Tradeoff Analysis
Complexity Weight
Feature # Requirements # Relations # Features score weight
SY 10 11 4 440 0.209524
ST 8 11 5 440 0.209524
SO 5 11 6 330 0.157143
ST 6 7 5 210 0.1
HD 3 11 4 132 0.062857
PT 4 8 4 128 0.060952
CS 5 6 4 120 0.057143
QoS 4 6 4 96 0.045714
AB 4 7 3 84 0.04
EC 3 7 4 84 0.04
IN 4 3 3 36 0.017143
Grand Total 56 88 46 2100 1
Tradeoff Analysis
Survey Order vs Complexity Order
Survey: The standard deviation (SD) of the difference of
ranking between the survey order and the complexity order,
as shown in Table 30, is 2.3741 which is relatively small. If we
divide the number of features by the SD, the result is 4.8,
which indicates that we can segment the ranking of the
features into 5 segments.
Feature Survey Order
(SUO)
Complexity order
(CXO)
Difference
CXO - SUO
FT 1 4 3
PT 2 6 4
ST 3 2 -1
SY 4 1 -3
SO 5 3 -2
QoS 6 8 2
CS 7 7 0
AB 8 9 1
HD 9 5 -4
IN 10 11 1
EC 11 10 -1
Tradeoff Analysis
Statistical Findings vs Subjective Findings
Key Comparison Our Research work Spínola and Travassos’s
research work
Service
omnipresence
Service omnipresent is ranked as one
of the top priority features
Service Omnipresence is a key
characteristic that is found in all
ubiquitous projects.
Classification of
the Business
Quality Features
We classified quality features as
enablers and constraint
Classified quality features as
functional and restrictive.
Enabler vs.
Functional
Categories
Enabler features are Adaptable
Behavior, Context Sensitivity,
Heterogeneity of Devices, and
Service Omnipresence
Functional characteristics are
context sensitivity, adaptable
behavior, service omnipresence,
heterogeneity of devices, and
experience capture.
Constraint vs.
Restrictive
Categories
Constraint features are Privacy and
Trust, Quality of Service, Safety,
Security, Fault Tolerance, and
Experience Capture
Restrictive characteristics are
privacy and trust, fault tolerance,
quality of service, and universal
usability.
Invisibility Quality
Feature
Invisibility cannot be classified as
enabler or constraint feature and it is
ranked as the lowest in priority
Invisibility was ranked the lowest
with respect to pertinence level.
Problem
There are 12 conflicts, which means that
6 requirements may be eliminated from
the scope of the business reference
architecture.
Conflict Resolution … Resolution Approach
Identify possible
conflicts
between pairs of
conflicts
Decide on which
requirement to
supersede
Propose
balanced
solutions
Revise Solution
vs
Requirement
Merge conflict
solutions if
possible
Group per
quality features
split by relations
Devise a
solution score
equation
Apply normality
test
Make subjective
evaluation with
experts
Conflict Resolution … Resolution Approach
Requirement
A
Requirement
B<<Conflict>>
+Superseding
<<Problem>>
Solution1 Solution2 Solutionn
Requirement
A
Requirement
B<<Conflict>>
+Superseding
<<Problem>>
Solution1 Solution2 Solutionn
Requirement
A
Requirement
B<<Conflict>>
+Superseding
<<Problem>>
RequirementA
supersedes
trace
(a)Selectoneofmany (b)Mergesolutions (c)Resolveforthesuperseding
requirement
Conflict Resolution (Example)bdd [Package] QF v s QF conflict #08 [QF v s QF conflict #8]
Ensure secure data
transmission
Derived
Security
(from Quality Features)
Minimize av erage
processing time
Derived
Quality of Service
(from Quality Features)
«solution»
Merged solution - conflict #8
+ Score = 1.2667
«solution»
architecture
Transfer non-securely if possible
+ Score = 0.4219
«solution»
architecture
Use light-w eight encryption algorithm
+ Score = 0.8200
«problem»
It is required to provide data protection during transmission which adds extra load on system
processing power. The extra load can drain batteries, slow down performance, and may impact system
overall availability. In other words, the average processing capabilities for the services may be negatively
impacted.
It is a controversial conflict, which can be resolved only during runtime based on the system priority,
data sensitivity, and user context.
However, as a general rule, lenient security rules may cause further deteriorations and the system may
be completely compromised
+Superseding
«conflict»
Solution vs Requirements (Example)
Use light-weight encryption algorithm
Relation Requirement
ID
Requirement
Name
Feature Notes
mi BR0047 Minimize the
probability of an
object to be offline
FT The light-weight encryption
algorithms have moderate impact
on processing power, which
minimizes a little bit the probability
of the object to be offline.
mx BR0059 Declare
service/quality
feature boundaries
QoS If impact of the light-weight
encryption is known to the system,
and accordingly it can declare the
expected response time
boundaries.
mi BR0060 Minimize average
processing time
QoS
mx BR0070 Provide maximum
protection for the
environment
SY This is a kind of protection for the
environment
mx BR0075 Ensure secure data
transmission
ST
mi BR0077 Prevent data
leakage
ST Encryption prevents data leakage
if network is compromised.
Conflict Resolution (Example)
Solution SO-017 (non securely) SO-018 (lightweight) SO-027 (merged)
Feature mi mx cf Total mi mx cf Total mi mx cf Total
SY 1 1 1 1 1 1
ST 1 1 1 3 1 1 2 2 1 3
SO 1 1 1 1
FT 1 1 1 1 1 1
HD
PT
CS
QoS 1 1 2 1 1 2 1 1 2
AB 2 2 2 2
EC
IN
Total 3 4 3 10 3 3 6 4 6 10
Score 0.4219 0.8200 1.2667
Conflict Resolution
𝑆𝑐𝑜𝑟𝑒 = 𝑅+ ∗ 𝐹𝑅 𝑤𝑒𝑖𝑔ℎ𝑡
+
− 𝑅− ∗ 𝐹𝑅 𝑤𝑒𝑖𝑔ℎ𝑡
− The formula estimates the positive impact of the
solution given the negative impact and as
expressed in formula (1).
R+ is the percentage of the minimize ( 𝑚𝑖𝑓
) and
maximize ( 𝑚𝑥𝑓
) relationships from all the
relationships of the solution with the other
requirements. R- is the percentage of the
conflict relationships ( 𝑐𝑓𝑓
) of the solution with the
other requirements.
𝐹𝑅 𝑤𝑒𝑖𝑔ℎ𝑡
+
=
𝑓=1
11
𝑚𝑥 𝑓 + 𝑚𝑖 𝑓 ∗ 𝑤𝑒𝑖𝑔ℎ𝑡 𝑓
𝐹𝑅 𝑤𝑒𝑖𝑔ℎ𝑡
−
=
𝑓=1
11
𝑐𝑓𝑓 ∗ 𝑤𝑒𝑖𝑔ℎ𝑡 𝑓
𝐹𝑅 𝑤𝑒𝑖𝑔ℎ𝑡
+
is the weighted average, an average
multiplied by its probability (Moore, et al., 2009),
of the minimize and maximize relationships of
the solution with the requirements belonging to a
single feature multiplied by the weight of this
feature (𝑤𝑒𝑖𝑔ℎ𝑡 𝑓) in Table 3. 𝐹𝑅 𝑤𝑒𝑖𝑔ℎ𝑡
−
is the
weighted average of the number of conflict
relationships of the solution with the
requirements belonging to a single feature
multiplied by the weight of the feature (𝑤𝑒𝑖𝑔ℎ𝑡 𝑓)
Solutions List
Sol ID Solution Sol ID Solution
SO-001 Associate device with user SO-002 Authenticate every time
SO-003 Delete unnecessary sensor data SO-004 Disable sensors if not needed
SO-005 Increase shared resources SO-006 Mediate access through a middleware
SO-007 Authorize access upon information request SO-008 Classify personal information as a setting
SO-009 Define information access explicitly SO-010
Teach the system (add to its knowledge
base)
SO-011
Declare security rules for the devices willing to
join the system SO-012 Scan devices before joining the system
SO-013
Apply less strict security rules on the private
smart environment SO-014
Apply less strict security rules on trusted
objects
SO-015 Log all changes for later access SO-016 Notify for important changes only
SO-017 Transfer non-securely if possible SO-018 Use a light-weight encryption algorithm
SO-019 Use compatible technologies SO-020 A positive merge of solutions (7, 8, 9)
SO-021 A positive merge of solutions (10, 19) SO-022 A positive merge of solutions (11, 12)
SO-023 A positive merge of solutions (13, 14) SO-024 A positive merge of solutions (15, 16)
SO-025 A positive merge of solutions (17, 18)
Conflict Resolution
Sol 𝐹𝑅 𝑤𝑒𝑖𝑔ℎ𝑡
+
𝐹𝑅 𝑤𝑒𝑖𝑔ℎ𝑡
−
R + R - 𝑆𝑐𝑜𝑟𝑒
SO-001 1.123 0 1 0 1.123
SO-002 1.058 0.280 0.545 0.455 0.450
SO-003 0.563 0.330 0.636 0.364 0.238
SO-004 0.178 0.347 0.429 0.571 -0.122
SO-005 0.730 0 1 0 0.730
SO-006 0.742 0 1 0 0.742
SO-007 1.415 0.146 0.833 0.167 1.155
SO-008 0.674 0.310 0.818 0.182 0.495
SO-009 0.830 0.034 0.778 0.222 0.638
SO-010 0.936 0 1 0 0.936
SO-011 0.949 0 1 0 0.949
SO-012 1.210 0.046 0.875 0.125 1.054
SO-013 0.355 0.419 0.600 0.400 0.046
SO-014 0.355 0.210 0.750 0.250 0.214
SO-015 0.204 0 1 0 0.204
SO-016 0.118 0.210 0.750 0.250 0.036
SO-017 0.802 0.465 0.700 0.300 0.422
SO-018 0.820 0 1 0 0.820
SO-019 0.582 0.157 0.800 0.200 0.434
SO-020 1.753 0.017 0.944 0.056 1.655
SO-021 0.936 0 1 0 0.936
SO-022 1.577 0.046 0.900 0.100 1.415
SO-023 0.355 0.419 0.600 0.400 0.046
SO-024 0.265 0.210 0.857 0.143 0.197
SO-025 1.267 0 1 0 1.267
1.Our main contribution is the PervCompRA-SE
which captures all the essential business and
architectural knowledge in the PervComp
domain as diagrammatic models and
associated guidelines.
2.A new requirements engineering approach
that uses process re-engineering concepts.
3.An innovative statistical analysis methodology
to prioritize groups of requirements,
represented as quality features, and to
resolve conflicts among the requirements.
Conclusion
Contributions
1. Design challenges in PervComp are very high
2. There are common and cooperating requirements
3. Trade-off analysis proved to be very useful
1. Requirements Relationships are indicative of their priority
2. Priority is not static
3. The Constraint Feature is just as important as the Enabler
Feature
4. Statistical Analysis can reduce the frequent engagement
of stakeholders
4. The invisibility quality feature is demolished
Conclusion
Findings
1.Produce a product line architecture based
on the PervCompRA-SE
2.Evolve the study of requirements-conflict
resolution
3.Investigate the value of linking the
requirements with system performance at
runtime
Conclusion
Future Work
THANKS!
Any questions?
You can find me at
• okhaled@aucegypt.edu

Más contenido relacionado

La actualidad más candente

6 article azojete vol 9 51 67
6 article azojete vol 9 51 676 article azojete vol 9 51 67
6 article azojete vol 9 51 67Oyeniyi Samuel
 
Unit 6- Development Evolution model
Unit 6- Development Evolution model Unit 6- Development Evolution model
Unit 6- Development Evolution model arvind pandey
 
Strayer cis 333 week 11 final exam set 3 new
Strayer cis 333 week 11 final exam set 3 newStrayer cis 333 week 11 final exam set 3 new
Strayer cis 333 week 11 final exam set 3 newaagnaa
 
Unit 2-software development process notes
Unit 2-software development process notes Unit 2-software development process notes
Unit 2-software development process notes arvind pandey
 
Strayer cis 333 week 11 final exam set 3 new
Strayer cis 333 week 11 final exam set 3 newStrayer cis 333 week 11 final exam set 3 new
Strayer cis 333 week 11 final exam set 3 newolivergeorg
 

La actualidad más candente (9)

6 article azojete vol 9 51 67
6 article azojete vol 9 51 676 article azojete vol 9 51 67
6 article azojete vol 9 51 67
 
Unit 6- Development Evolution model
Unit 6- Development Evolution model Unit 6- Development Evolution model
Unit 6- Development Evolution model
 
Unit1
Unit1Unit1
Unit1
 
Strayer cis 333 week 11 final exam set 3 new
Strayer cis 333 week 11 final exam set 3 newStrayer cis 333 week 11 final exam set 3 new
Strayer cis 333 week 11 final exam set 3 new
 
Unit 2-software development process notes
Unit 2-software development process notes Unit 2-software development process notes
Unit 2-software development process notes
 
Strayer cis 333 week 11 final exam set 3 new
Strayer cis 333 week 11 final exam set 3 newStrayer cis 333 week 11 final exam set 3 new
Strayer cis 333 week 11 final exam set 3 new
 
Feasible
FeasibleFeasible
Feasible
 
Pravin_CV_4+years
Pravin_CV_4+yearsPravin_CV_4+years
Pravin_CV_4+years
 
7. requirement-engineering
7. requirement-engineering7. requirement-engineering
7. requirement-engineering
 

Similar a A Statistical Approach to Resolve Conflicting Requirements in Pervasive Computing Systems

Cisco Analytics: Accelerate Network Optimization with Virtualization
Cisco Analytics: Accelerate Network Optimization with VirtualizationCisco Analytics: Accelerate Network Optimization with Virtualization
Cisco Analytics: Accelerate Network Optimization with VirtualizationCisco Canada
 
CISQ and Software Quality Measurement - Software Assurance Forum (March 2010)
CISQ and Software Quality Measurement - Software Assurance Forum (March 2010)CISQ and Software Quality Measurement - Software Assurance Forum (March 2010)
CISQ and Software Quality Measurement - Software Assurance Forum (March 2010)CISQ - Consortium for IT Software Quality
 
Apq Qms Project Plan
Apq Qms Project PlanApq Qms Project Plan
Apq Qms Project PlanEng-Mohammad
 
A Fascinating Behind the Scenes Look at Wireless Design Services - Techwave.pdf
A Fascinating Behind the Scenes Look at Wireless Design Services - Techwave.pdfA Fascinating Behind the Scenes Look at Wireless Design Services - Techwave.pdf
A Fascinating Behind the Scenes Look at Wireless Design Services - Techwave.pdfAnil
 
Getting Started with ThousandEyes Proof of Concepts
Getting Started with ThousandEyes Proof of ConceptsGetting Started with ThousandEyes Proof of Concepts
Getting Started with ThousandEyes Proof of ConceptsThousandEyes
 
Software - Role in Systems and Architectures
Software - Role in Systems and ArchitecturesSoftware - Role in Systems and Architectures
Software - Role in Systems and ArchitecturesAbhilash Gopalakrishnan
 
IRJET- Software Architecture and Software Design
IRJET- Software Architecture and Software DesignIRJET- Software Architecture and Software Design
IRJET- Software Architecture and Software DesignIRJET Journal
 
Requirment anlaysis
Requirment anlaysisRequirment anlaysis
Requirment anlaysiscsk selva
 
1 SDEV 460 – Homework 4 Input Validation and Busine
1  SDEV 460 – Homework 4 Input Validation and Busine1  SDEV 460 – Homework 4 Input Validation and Busine
1 SDEV 460 – Homework 4 Input Validation and BusineVannaJoy20
 
requirment anlaysis , user requirements
requirment anlaysis , user requirementsrequirment anlaysis , user requirements
requirment anlaysis , user requirementscsk selva
 
An Oversight or a New Customer Phenomenon, Getting the Most of your Contact C...
An Oversight or a New Customer Phenomenon, Getting the Most of your Contact C...An Oversight or a New Customer Phenomenon, Getting the Most of your Contact C...
An Oversight or a New Customer Phenomenon, Getting the Most of your Contact C...Cisco Canada
 
IRJET- Implementation of Dynamic Internetworking in the Real World it Domain
IRJET-  	  Implementation of Dynamic Internetworking in the Real World it DomainIRJET-  	  Implementation of Dynamic Internetworking in the Real World it Domain
IRJET- Implementation of Dynamic Internetworking in the Real World it DomainIRJET Journal
 
SDN Federation White Paper
SDN Federation White PaperSDN Federation White Paper
SDN Federation White PaperBrian Hedstrom
 
CMGT410 v19Business Requirements TemplateCMGT410 v19Page 2.docx
CMGT410 v19Business Requirements TemplateCMGT410 v19Page 2.docxCMGT410 v19Business Requirements TemplateCMGT410 v19Page 2.docx
CMGT410 v19Business Requirements TemplateCMGT410 v19Page 2.docxmary772
 
2010 SDLC Lifeline Mater Deck for knowledge sharing
2010 SDLC Lifeline Mater Deck for knowledge sharing2010 SDLC Lifeline Mater Deck for knowledge sharing
2010 SDLC Lifeline Mater Deck for knowledge sharinggangcheng19721
 
Benchmarking Techniques for Performance Analysis of Operating Systems and Pro...
Benchmarking Techniques for Performance Analysis of Operating Systems and Pro...Benchmarking Techniques for Performance Analysis of Operating Systems and Pro...
Benchmarking Techniques for Performance Analysis of Operating Systems and Pro...IRJET Journal
 
Ch 9 traceability and verification
Ch 9 traceability and verificationCh 9 traceability and verification
Ch 9 traceability and verificationKittitouch Suteeca
 

Similar a A Statistical Approach to Resolve Conflicting Requirements in Pervasive Computing Systems (20)

Jon shende fbcs citp q&a
Jon shende fbcs citp q&aJon shende fbcs citp q&a
Jon shende fbcs citp q&a
 
Cisco Analytics: Accelerate Network Optimization with Virtualization
Cisco Analytics: Accelerate Network Optimization with VirtualizationCisco Analytics: Accelerate Network Optimization with Virtualization
Cisco Analytics: Accelerate Network Optimization with Virtualization
 
CISQ and Software Quality Measurement - Software Assurance Forum (March 2010)
CISQ and Software Quality Measurement - Software Assurance Forum (March 2010)CISQ and Software Quality Measurement - Software Assurance Forum (March 2010)
CISQ and Software Quality Measurement - Software Assurance Forum (March 2010)
 
Apq Qms Project Plan
Apq Qms Project PlanApq Qms Project Plan
Apq Qms Project Plan
 
Review_2013
Review_2013Review_2013
Review_2013
 
A Fascinating Behind the Scenes Look at Wireless Design Services - Techwave.pdf
A Fascinating Behind the Scenes Look at Wireless Design Services - Techwave.pdfA Fascinating Behind the Scenes Look at Wireless Design Services - Techwave.pdf
A Fascinating Behind the Scenes Look at Wireless Design Services - Techwave.pdf
 
Getting Started with ThousandEyes Proof of Concepts
Getting Started with ThousandEyes Proof of ConceptsGetting Started with ThousandEyes Proof of Concepts
Getting Started with ThousandEyes Proof of Concepts
 
Software - Role in Systems and Architectures
Software - Role in Systems and ArchitecturesSoftware - Role in Systems and Architectures
Software - Role in Systems and Architectures
 
IRJET- Software Architecture and Software Design
IRJET- Software Architecture and Software DesignIRJET- Software Architecture and Software Design
IRJET- Software Architecture and Software Design
 
Yongsan presentation 3
Yongsan presentation 3Yongsan presentation 3
Yongsan presentation 3
 
Requirment anlaysis
Requirment anlaysisRequirment anlaysis
Requirment anlaysis
 
1 SDEV 460 – Homework 4 Input Validation and Busine
1  SDEV 460 – Homework 4 Input Validation and Busine1  SDEV 460 – Homework 4 Input Validation and Busine
1 SDEV 460 – Homework 4 Input Validation and Busine
 
requirment anlaysis , user requirements
requirment anlaysis , user requirementsrequirment anlaysis , user requirements
requirment anlaysis , user requirements
 
An Oversight or a New Customer Phenomenon, Getting the Most of your Contact C...
An Oversight or a New Customer Phenomenon, Getting the Most of your Contact C...An Oversight or a New Customer Phenomenon, Getting the Most of your Contact C...
An Oversight or a New Customer Phenomenon, Getting the Most of your Contact C...
 
IRJET- Implementation of Dynamic Internetworking in the Real World it Domain
IRJET-  	  Implementation of Dynamic Internetworking in the Real World it DomainIRJET-  	  Implementation of Dynamic Internetworking in the Real World it Domain
IRJET- Implementation of Dynamic Internetworking in the Real World it Domain
 
SDN Federation White Paper
SDN Federation White PaperSDN Federation White Paper
SDN Federation White Paper
 
CMGT410 v19Business Requirements TemplateCMGT410 v19Page 2.docx
CMGT410 v19Business Requirements TemplateCMGT410 v19Page 2.docxCMGT410 v19Business Requirements TemplateCMGT410 v19Page 2.docx
CMGT410 v19Business Requirements TemplateCMGT410 v19Page 2.docx
 
2010 SDLC Lifeline Mater Deck for knowledge sharing
2010 SDLC Lifeline Mater Deck for knowledge sharing2010 SDLC Lifeline Mater Deck for knowledge sharing
2010 SDLC Lifeline Mater Deck for knowledge sharing
 
Benchmarking Techniques for Performance Analysis of Operating Systems and Pro...
Benchmarking Techniques for Performance Analysis of Operating Systems and Pro...Benchmarking Techniques for Performance Analysis of Operating Systems and Pro...
Benchmarking Techniques for Performance Analysis of Operating Systems and Pro...
 
Ch 9 traceability and verification
Ch 9 traceability and verificationCh 9 traceability and verification
Ch 9 traceability and verification
 

Más de Osama M. Khaled

A SIMULATION APPROACH TO PREDICATE THE RELIABILITY OF A PERVASIVE SOFTWARE SY...
A SIMULATION APPROACH TO PREDICATE THE RELIABILITY OF A PERVASIVE SOFTWARE SY...A SIMULATION APPROACH TO PREDICATE THE RELIABILITY OF A PERVASIVE SOFTWARE SY...
A SIMULATION APPROACH TO PREDICATE THE RELIABILITY OF A PERVASIVE SOFTWARE SY...Osama M. Khaled
 
Static Enabler: A Response Enhancer for Dynamic Web Applications
Static Enabler: A Response Enhancer for Dynamic Web ApplicationsStatic Enabler: A Response Enhancer for Dynamic Web Applications
Static Enabler: A Response Enhancer for Dynamic Web ApplicationsOsama M. Khaled
 
A Survey of Building Robust Business Models in Pervasive Computing
A Survey of Building Robust Business Models in Pervasive ComputingA Survey of Building Robust Business Models in Pervasive Computing
A Survey of Building Robust Business Models in Pervasive ComputingOsama M. Khaled
 
Improving our Approach Towards Capturing Value in Requirements
Improving our Approach Towards Capturing Value in RequirementsImproving our Approach Towards Capturing Value in Requirements
Improving our Approach Towards Capturing Value in RequirementsOsama M. Khaled
 
Internet of Things (IoT) from a business Perspective
Internet of Things (IoT) from a business PerspectiveInternet of Things (IoT) from a business Perspective
Internet of Things (IoT) from a business PerspectiveOsama M. Khaled
 

Más de Osama M. Khaled (7)

A SIMULATION APPROACH TO PREDICATE THE RELIABILITY OF A PERVASIVE SOFTWARE SY...
A SIMULATION APPROACH TO PREDICATE THE RELIABILITY OF A PERVASIVE SOFTWARE SY...A SIMULATION APPROACH TO PREDICATE THE RELIABILITY OF A PERVASIVE SOFTWARE SY...
A SIMULATION APPROACH TO PREDICATE THE RELIABILITY OF A PERVASIVE SOFTWARE SY...
 
Digital Cash Overview
Digital Cash OverviewDigital Cash Overview
Digital Cash Overview
 
Static Enabler: A Response Enhancer for Dynamic Web Applications
Static Enabler: A Response Enhancer for Dynamic Web ApplicationsStatic Enabler: A Response Enhancer for Dynamic Web Applications
Static Enabler: A Response Enhancer for Dynamic Web Applications
 
A Survey of Building Robust Business Models in Pervasive Computing
A Survey of Building Robust Business Models in Pervasive ComputingA Survey of Building Robust Business Models in Pervasive Computing
A Survey of Building Robust Business Models in Pervasive Computing
 
SQL Statement Template
SQL Statement TemplateSQL Statement Template
SQL Statement Template
 
Improving our Approach Towards Capturing Value in Requirements
Improving our Approach Towards Capturing Value in RequirementsImproving our Approach Towards Capturing Value in Requirements
Improving our Approach Towards Capturing Value in Requirements
 
Internet of Things (IoT) from a business Perspective
Internet of Things (IoT) from a business PerspectiveInternet of Things (IoT) from a business Perspective
Internet of Things (IoT) from a business Perspective
 

Último

WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationJuha-Pekka Tolvanen
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in sowetomasabamasaba
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024VictoriaMetrics
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareJim McKeeth
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxAnnaArtyushina1
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park masabamasaba
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...masabamasaba
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benonimasabamasaba
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...masabamasaba
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...chiefasafspells
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Bert Jan Schrijver
 

Último (20)

WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 

A Statistical Approach to Resolve Conflicting Requirements in Pervasive Computing Systems

  • 1. A Statistical Approach to Resolve Conflicting Requirements in Pervasive Computing Systems By Osama Mabrouk Khaled
  • 2. What is Pervasive Computing? • 3rd Computing Paradigm • Distributed Computing, Mobile Computing, Embedded Systems, Autonomic and Computing HCI shaped it • Known by • Sensors • Actuators • Mobility • Context-Awareness • Adaptability
  • 3. - By 2020, the number of objects connected to the Internet will be about 50 billion - Cisco expects the economy to reach $14.4 billion by 2025 - 40% out of 450 surveyed IT and business leaders expect that pervasive computing will boost sales and cut cost within 3 years - Huge data gathering with accuracy - Software enabled-devices are easier to manage Refs: Cisco, Gartner Importance of Pervasive Computing
  • 4. What is Software Engineering? Requirements and Analysis Design ImplementTest Deploy Maintain
  • 5. What is A Reference Architecture? Reference Architecture Best Practices Guidelines Models Documentation Practical experience Patterns
  • 6. Software Engineering + Architecture Requirements and Analysis Architecture Design Implement TestDeployMaintain Reference Architecture Software Architect
  • 7. Approach High Level Review Business Reference Architecture Architect Or Business Analyst Review Technical Reference Architecture Generate a concrete architecture We organized the PervCompRA-SE so that the architect or the business analyst can use the business reference architecture then proceed with the normal activities to generate a concrete architecture. On the other hand, the architect or the business analyst may proceed to review the technical reference architecture then proceed to generate the concrete architecture.
  • 8. Process Re-engineering In process re-engineering, there are 3 major objectives that the engineer must do [21] [22]: 1. Maximize the value added tasks that the customer is willing to pay for. 2. Minimize the non-value added tasks which are essential for the process but the customer will not be willing to pay for. 3. Eliminate tasks that are considered a clear waste in the process.
  • 9. Business Reference Architecture Requirements Modeling Minimize: it is a relationship in which one requirement works on minimizing a non-desired issue from another piece of requirement. Maximize: it is a relationship in which one requirement works on maximizing a desired value from another piece of requirement Conflict: it shows that two requirements could have conflicting values. If this happens, then one of them must supersede the other in order to resolve this conflict. The relation could be uni-directional or bi-directional. <<minimize>> <<maximize>> <<conflict>> Requirement 1 Requirement 2 Requirement 1 Requirement 2 Requirement 1 Requirement 2 +Superseding
  • 10. Related Work – State of the Art • The reviewed research efforts focus mostly on the context as the main driver. • Conflict resolution efforts were mostly directed towards conflict identification and used simple resolution strategies where one requirement would have to be eliminated. • There are no statistical approaches to resolve the conflicting requirements with balanced solutions. Requirements Engineering and Conflict Identification and Resolution
  • 11. Requirements Engineering Quality Features Service Omnipresence Invisibility Context Sensitivity Adaptable Behavior Experience Capture Heterogeneity of Devices Fault Tolerance Security Quality of Service Privacy and Trust Safety • Detailed explanation of the quality feature • 56 Requirements • 9 UC • 6 SM • Validated/Refined in a workshop with 4 experts.
  • 12. Quality Features Feature Description Type Adaptable Behavior The system must be capable of dynamically responding to changes in the environment as needed [14]. B Context Sensitivity The system must have the ability to sense and retrieve data from its environment [14]. B Experience Capture The system must be able to capture and register experiences for later use [14]. B Fault Tolerance The system must be able to detect errors and take the appropriate recovery actions [14]. B Heterogeneity of Devices The system must be able to use different device technologies seamlessly [14]. B Invisibility The system must integrate computing resources and guarantee that the user has the minimum awareness of them [14]. B Privacy and Trust The system must ensure that personal operations confidentiality is protected and accessed only by trusted entities [14]. B Quality of Service The system must set expectation for its services by setting constraints on the provided services. For example, system response may be considered invalid if it is received after a certain period of time [14]. B Safety The system must ensure highest healthiness of its hardware and provide immunity for its users and interacting devices from harm and damage. B Security It is concerned with protecting data from being leaked to unauthorized individuals, protecting data from corruption and alternation, and ensuring accessibility to data whenever requested. B Service Omnipresence The system should give its users the feeling that they carry computer services wherever they move [14]. B
  • 14. Tradeoff Analysis 1. Reviewed all the requirements of the business quality features and defined maximize, minimize, and conflict relationships whenever applicable. 2. Generated relationships among the quality features using maximize, minimize, and conflict relationships. 3. Defined weights for the quality features based on their complexities ( requirements x relations x features). 4. Validated the results of the complexity weights using a survey with 17 experts. The results showed very close ranking. 5. Validated the conclusions of the tradeoff analysis with a similar exercise by Spinola and Travassos. The comparison showed almost the same conclusions.
  • 15. Tradeoff Analysis Requirements Relationships Source Name Destination Name Notes Why Superseding Use a unique user identifier (Superseding) Provide a unique identifier for every object a user may have more than one device joining the pervasive system, which may confuse the system and lead it to make multiple identifications for the same user. having a unique user identifier will ensure that different rules associated with it are cascaded properly for devices associated with him/her Source Name Destination Name Notes Distribute computing power Capture Knowledge about users distributed computer power, including sensors, can capture more information about users including their habits, movement patterns, and routine actions within the space of the smart environment maximize conflict Source Name Destination Name Notes Provide a unique identifier for every object Disallow anonymous usage of the system by using a single identifier for every device, there will be no anonymous usage of the system minimize
  • 16. Tradeoff Analysis Quality Features Relationships S vs D FT IN QoS SY ST Total AB 3 3 CS 2 2 FT 1 1 2 HD 1 1 2 SO 1 1 1 3 Total 4 1 1 4 2 12 minimize S vs D EC HD PT QoS SY ST SO Total AB 1 2 3 CS 1 1 1 3 EC 2 2 HD 1 1 1 3 IN 1 1 ST 2 1 3 SO 1 1 2 1 5 Total 4 1 5 2 5 2 1 20 maximize S vs D AB FT HD PT QoS SY ST Total CS 1 1 EC 1 1 HD 1 2 1 4 IN 1 1 ST 3 3 SO 1 1 2 Total 1 1 1 3 3 2 1 12 Conflict
  • 17. Tradeoff Analysis Complexity Weight Feature # Requirements # Relations # Features score weight SY 10 11 4 440 0.209524 ST 8 11 5 440 0.209524 SO 5 11 6 330 0.157143 ST 6 7 5 210 0.1 HD 3 11 4 132 0.062857 PT 4 8 4 128 0.060952 CS 5 6 4 120 0.057143 QoS 4 6 4 96 0.045714 AB 4 7 3 84 0.04 EC 3 7 4 84 0.04 IN 4 3 3 36 0.017143 Grand Total 56 88 46 2100 1
  • 18. Tradeoff Analysis Survey Order vs Complexity Order Survey: The standard deviation (SD) of the difference of ranking between the survey order and the complexity order, as shown in Table 30, is 2.3741 which is relatively small. If we divide the number of features by the SD, the result is 4.8, which indicates that we can segment the ranking of the features into 5 segments. Feature Survey Order (SUO) Complexity order (CXO) Difference CXO - SUO FT 1 4 3 PT 2 6 4 ST 3 2 -1 SY 4 1 -3 SO 5 3 -2 QoS 6 8 2 CS 7 7 0 AB 8 9 1 HD 9 5 -4 IN 10 11 1 EC 11 10 -1
  • 19. Tradeoff Analysis Statistical Findings vs Subjective Findings Key Comparison Our Research work Spínola and Travassos’s research work Service omnipresence Service omnipresent is ranked as one of the top priority features Service Omnipresence is a key characteristic that is found in all ubiquitous projects. Classification of the Business Quality Features We classified quality features as enablers and constraint Classified quality features as functional and restrictive. Enabler vs. Functional Categories Enabler features are Adaptable Behavior, Context Sensitivity, Heterogeneity of Devices, and Service Omnipresence Functional characteristics are context sensitivity, adaptable behavior, service omnipresence, heterogeneity of devices, and experience capture. Constraint vs. Restrictive Categories Constraint features are Privacy and Trust, Quality of Service, Safety, Security, Fault Tolerance, and Experience Capture Restrictive characteristics are privacy and trust, fault tolerance, quality of service, and universal usability. Invisibility Quality Feature Invisibility cannot be classified as enabler or constraint feature and it is ranked as the lowest in priority Invisibility was ranked the lowest with respect to pertinence level.
  • 20. Problem There are 12 conflicts, which means that 6 requirements may be eliminated from the scope of the business reference architecture.
  • 21. Conflict Resolution … Resolution Approach Identify possible conflicts between pairs of conflicts Decide on which requirement to supersede Propose balanced solutions Revise Solution vs Requirement Merge conflict solutions if possible Group per quality features split by relations Devise a solution score equation Apply normality test Make subjective evaluation with experts
  • 22. Conflict Resolution … Resolution Approach Requirement A Requirement B<<Conflict>> +Superseding <<Problem>> Solution1 Solution2 Solutionn Requirement A Requirement B<<Conflict>> +Superseding <<Problem>> Solution1 Solution2 Solutionn Requirement A Requirement B<<Conflict>> +Superseding <<Problem>> RequirementA supersedes trace (a)Selectoneofmany (b)Mergesolutions (c)Resolveforthesuperseding requirement
  • 23. Conflict Resolution (Example)bdd [Package] QF v s QF conflict #08 [QF v s QF conflict #8] Ensure secure data transmission Derived Security (from Quality Features) Minimize av erage processing time Derived Quality of Service (from Quality Features) «solution» Merged solution - conflict #8 + Score = 1.2667 «solution» architecture Transfer non-securely if possible + Score = 0.4219 «solution» architecture Use light-w eight encryption algorithm + Score = 0.8200 «problem» It is required to provide data protection during transmission which adds extra load on system processing power. The extra load can drain batteries, slow down performance, and may impact system overall availability. In other words, the average processing capabilities for the services may be negatively impacted. It is a controversial conflict, which can be resolved only during runtime based on the system priority, data sensitivity, and user context. However, as a general rule, lenient security rules may cause further deteriorations and the system may be completely compromised +Superseding «conflict»
  • 24. Solution vs Requirements (Example) Use light-weight encryption algorithm Relation Requirement ID Requirement Name Feature Notes mi BR0047 Minimize the probability of an object to be offline FT The light-weight encryption algorithms have moderate impact on processing power, which minimizes a little bit the probability of the object to be offline. mx BR0059 Declare service/quality feature boundaries QoS If impact of the light-weight encryption is known to the system, and accordingly it can declare the expected response time boundaries. mi BR0060 Minimize average processing time QoS mx BR0070 Provide maximum protection for the environment SY This is a kind of protection for the environment mx BR0075 Ensure secure data transmission ST mi BR0077 Prevent data leakage ST Encryption prevents data leakage if network is compromised.
  • 25. Conflict Resolution (Example) Solution SO-017 (non securely) SO-018 (lightweight) SO-027 (merged) Feature mi mx cf Total mi mx cf Total mi mx cf Total SY 1 1 1 1 1 1 ST 1 1 1 3 1 1 2 2 1 3 SO 1 1 1 1 FT 1 1 1 1 1 1 HD PT CS QoS 1 1 2 1 1 2 1 1 2 AB 2 2 2 2 EC IN Total 3 4 3 10 3 3 6 4 6 10 Score 0.4219 0.8200 1.2667
  • 26. Conflict Resolution 𝑆𝑐𝑜𝑟𝑒 = 𝑅+ ∗ 𝐹𝑅 𝑤𝑒𝑖𝑔ℎ𝑡 + − 𝑅− ∗ 𝐹𝑅 𝑤𝑒𝑖𝑔ℎ𝑡 − The formula estimates the positive impact of the solution given the negative impact and as expressed in formula (1). R+ is the percentage of the minimize ( 𝑚𝑖𝑓 ) and maximize ( 𝑚𝑥𝑓 ) relationships from all the relationships of the solution with the other requirements. R- is the percentage of the conflict relationships ( 𝑐𝑓𝑓 ) of the solution with the other requirements. 𝐹𝑅 𝑤𝑒𝑖𝑔ℎ𝑡 + = 𝑓=1 11 𝑚𝑥 𝑓 + 𝑚𝑖 𝑓 ∗ 𝑤𝑒𝑖𝑔ℎ𝑡 𝑓 𝐹𝑅 𝑤𝑒𝑖𝑔ℎ𝑡 − = 𝑓=1 11 𝑐𝑓𝑓 ∗ 𝑤𝑒𝑖𝑔ℎ𝑡 𝑓 𝐹𝑅 𝑤𝑒𝑖𝑔ℎ𝑡 + is the weighted average, an average multiplied by its probability (Moore, et al., 2009), of the minimize and maximize relationships of the solution with the requirements belonging to a single feature multiplied by the weight of this feature (𝑤𝑒𝑖𝑔ℎ𝑡 𝑓) in Table 3. 𝐹𝑅 𝑤𝑒𝑖𝑔ℎ𝑡 − is the weighted average of the number of conflict relationships of the solution with the requirements belonging to a single feature multiplied by the weight of the feature (𝑤𝑒𝑖𝑔ℎ𝑡 𝑓)
  • 27. Solutions List Sol ID Solution Sol ID Solution SO-001 Associate device with user SO-002 Authenticate every time SO-003 Delete unnecessary sensor data SO-004 Disable sensors if not needed SO-005 Increase shared resources SO-006 Mediate access through a middleware SO-007 Authorize access upon information request SO-008 Classify personal information as a setting SO-009 Define information access explicitly SO-010 Teach the system (add to its knowledge base) SO-011 Declare security rules for the devices willing to join the system SO-012 Scan devices before joining the system SO-013 Apply less strict security rules on the private smart environment SO-014 Apply less strict security rules on trusted objects SO-015 Log all changes for later access SO-016 Notify for important changes only SO-017 Transfer non-securely if possible SO-018 Use a light-weight encryption algorithm SO-019 Use compatible technologies SO-020 A positive merge of solutions (7, 8, 9) SO-021 A positive merge of solutions (10, 19) SO-022 A positive merge of solutions (11, 12) SO-023 A positive merge of solutions (13, 14) SO-024 A positive merge of solutions (15, 16) SO-025 A positive merge of solutions (17, 18)
  • 28. Conflict Resolution Sol 𝐹𝑅 𝑤𝑒𝑖𝑔ℎ𝑡 + 𝐹𝑅 𝑤𝑒𝑖𝑔ℎ𝑡 − R + R - 𝑆𝑐𝑜𝑟𝑒 SO-001 1.123 0 1 0 1.123 SO-002 1.058 0.280 0.545 0.455 0.450 SO-003 0.563 0.330 0.636 0.364 0.238 SO-004 0.178 0.347 0.429 0.571 -0.122 SO-005 0.730 0 1 0 0.730 SO-006 0.742 0 1 0 0.742 SO-007 1.415 0.146 0.833 0.167 1.155 SO-008 0.674 0.310 0.818 0.182 0.495 SO-009 0.830 0.034 0.778 0.222 0.638 SO-010 0.936 0 1 0 0.936 SO-011 0.949 0 1 0 0.949 SO-012 1.210 0.046 0.875 0.125 1.054 SO-013 0.355 0.419 0.600 0.400 0.046 SO-014 0.355 0.210 0.750 0.250 0.214 SO-015 0.204 0 1 0 0.204 SO-016 0.118 0.210 0.750 0.250 0.036 SO-017 0.802 0.465 0.700 0.300 0.422 SO-018 0.820 0 1 0 0.820 SO-019 0.582 0.157 0.800 0.200 0.434 SO-020 1.753 0.017 0.944 0.056 1.655 SO-021 0.936 0 1 0 0.936 SO-022 1.577 0.046 0.900 0.100 1.415 SO-023 0.355 0.419 0.600 0.400 0.046 SO-024 0.265 0.210 0.857 0.143 0.197 SO-025 1.267 0 1 0 1.267
  • 29. 1.Our main contribution is the PervCompRA-SE which captures all the essential business and architectural knowledge in the PervComp domain as diagrammatic models and associated guidelines. 2.A new requirements engineering approach that uses process re-engineering concepts. 3.An innovative statistical analysis methodology to prioritize groups of requirements, represented as quality features, and to resolve conflicts among the requirements. Conclusion Contributions
  • 30. 1. Design challenges in PervComp are very high 2. There are common and cooperating requirements 3. Trade-off analysis proved to be very useful 1. Requirements Relationships are indicative of their priority 2. Priority is not static 3. The Constraint Feature is just as important as the Enabler Feature 4. Statistical Analysis can reduce the frequent engagement of stakeholders 4. The invisibility quality feature is demolished Conclusion Findings
  • 31. 1.Produce a product line architecture based on the PervCompRA-SE 2.Evolve the study of requirements-conflict resolution 3.Investigate the value of linking the requirements with system performance at runtime Conclusion Future Work
  • 32. THANKS! Any questions? You can find me at • okhaled@aucegypt.edu

Notas del editor

  1. Narration: I would like to welcome all of you to the thesis defense titled “Pervasive Computing Reference Architecture from a Software Engineering Perspective”. My name is Osama Khaled, a PhD candidate student, and this research work was supervised by Dr Hoda Hosny and Dr Mohamed Shalan
  2. The term “pervasive computing” implies the meaning that computers are distributed everywhere. I was introduced as explained before to envision the world of computers where it will be everywhere, small in size, invisible to humans, cooperating with each others, and interacting with the environment by detecting the changes and responding to them. It inherits its features from the distributed systems, embedded system, autonomic computing and Human Computer Interaction. It is characterized by the utilization of sensors (devices that gather data from the environment like cameras and temperature sensors). actuators (devices that take actions (like a car opens the door when its driver approaches it). Mobility: where the users are in constant move and appear and disappear in ad-hoc scenarios. Content-Awareness: it understands the context in which it operates including the profiles of the users. Adaptability: The system responds to the changes in the environment to cope with the changes and learns from them to evolve its behavior
  3. Capturing the Essence of Existing Architectures: The RA has to capture the commonalities among existing architectures. It should ignore those variable characteristics that are very specific to customer needs and do not provide the required usability. Having an architectural baseline: there has to be a starting point for the architect where by the architect can find basic components that he/she can use to build his/her architecture. Providing Guidance: the RA must provide guidance to architects through best practices and design patterns, and architectural patterns, if possible. Considering Business Needs: the RA has to be linked with actual business needs and requirements; otherwise, it will be providing a solution for an unspecified problem. Considering Business Context: variations according to business context are important in RAs given that such variations are not context specific. Providing a Common Dictionary: the RA has to provide proper definition for the terminologies used during the architecture process in order to minimize confusion. Capturing and Sharing Architectural Patterns: the RA should be easily transformed into architecture patterns in order to improve reusability. Having the Architectural Vision: this vision is based on future business needs. Having a Prototype: a case study is implemented as a proof for the validity of the RA.