SlideShare a Scribd company logo
1 of 6
Download to read offline
Software Engineering for Adaptive
And Self Managing System
Muhammad Akram Abbasi, Prof.Naeem Janjua
Student of MS SE, Szabist Karachi
90 Clifton
asslam_alikum2002@yahoo.com
nujanjua@yahoo.com
Computer Science department Szabist Karachi 90 Clifton, Pakistan
ABSTRACT. Software engineering has
established innovative skills on behalf of
managing the ever growing density of assembling
recent day software structures, it becomes
deceptive that there is an equally persistent need
for mechanisms that systematize and simplify the
adaptation and modification of software Systems.
The purpose of this Research is to obtain
concentration in the area of software engineering
of the people on self configuring, self managing,
self optimizing, self healing, self adaptive and
autonomic in requirement elicitation techniques.
Keywords: Self-Adaptive, Self-Managing, Self-
Healing, Requirement Elicitation
1- Introduction
Main branch is software engineering which deals
with sub branches although there are many
branches but I will solely target to software
requirement engineering and requirement
engineering of problems and constraints and
what are self adaptive and self managing
systems how those can be embedded with
requirement engineering of branch for
requirement elicitation purpose either to achieve
target or can be beneficial for software industries.
When any vendor going to make the software
applications it needs certain human interaction
along with human resources, those which can
detect and manage all of the context of
significant information during first step of
elicitation process, that can be internal or
external of stockholders, such significant
interaction leads to more resources, budget,
supervision, contiguous innovative approaches
for best consequences, time taking and achieving
the desired or expected regulation during
gathering requirements and certain times it gets
preliminary problem or causing to fail the actual
requirements due to lack of knowledge of
requirement engineer(s), fail to remember
problem of humanity and mining the actual need
of customer.
Accordingly there is high need to require a
System/Framework that can troubleshoot,
reconfigure, detect significant complexity
reduction, robustness, can manage autonomic,
self-optimize, self-heal, self-adaptive and should
have ability to change itself at run time and keep
complexity hidden form the end user desire
quality requirement which can document
requirement that can record the actual gather
grained, imperative, cohesive and intensive data
and also audio/video chat discussion should be
recorded for future traceability of the meetings,
so all these properties how can we achieve and
that is big question that there can have some
idea for self adapting, managing automations
monitoring itself context, detect changes and
properties of stockholder need.
This paper will cover, Survey of requirements
problem regarding historical survey, requirements
concerns how will cope adaption, context
changing behavior will show option list, mapping
to Architecture with totally new requirements,
language concerns regarding multi lingual
support, security concerns to obtain verification
and validation.
2- Survey of requirements problem
An inspection/survey more than 800 projects,
under taken by 350 US business companies and
related that 1/3 (one third) projects, never
completed, major cost overrun and significant
delays, When most cause of problem and failure
asked, answers were “poor requirement” along
with following statistics [9].
Description percent
Involvement of user in
sufficient
13%
Requirement incomplete 12%
Requirement(s)
Changing(s)
11%
Unrealistic Expectations 6%
Objectives Unclear 5%
2.1 Requirement Elicitation
Requirement Elicitation is first and most critical
step during a project management most of the
errors come during first step of gathering data
from user stockholders such typical errors most
of those are including omission, use of incorrect
facts, misunderstanding, inconsistency and
ambiguity, overlapping, conflicting requirements,
Un-realistic, missing data, unclear data.
2.2 Requirements concerns
Classically used methods are for gathering data
through interview, meetings, domain documents
and both parties using natural languages to
classify requirements, despite that adaptive
system will ask such queries, Why user wants
this? Why in this way? What the system should
do? How well it should do? Where and, When it
need to be accomplished? And system has to
now solely define functional and non-functional
along with monitoring specification and will take
variability in operational context evolution criteria
will be take on at the run time, by the system and
auto will motivate with explanations along with
the list of options for different plans to
stockholders.
One of the big challenge is considering yet by
researchers, if new design or prototype which is
not exist yet, how self adaptive system will
possess because system can’t assume the
unknown requirements in advance accordingly
system will cope with entire possible set of
environment to their perspective of adaption for
specification.
2.3 Context Changing Behavior
Traditional Requirement Engineering:
- “This system shall do this….”
Adaptive level Requirement Engineering:
- “The system might do this……”
- “But it may do this …… as long as it
does this….”
- “The system ought to do this……..but if
it can’t, it shall eventually do this…” [4].
Therefore ought and might or assumed priority of
stockholder requirement like if customer accepts
“may” it will prioritize as “low” scale, if customer
uses “ought” that will be consider as “average”
task scale and same as if it is used “might” that
will be considered as “High” priority level of task
2.4 Mapping to Architecture
If any technology requirement is used explicitly of
language system will handles uncertainty.
Requirement with similar domain for reusable will
be provided for adoption and Variety of technical
terminology will be exist for adapting context but
certain invariants will not be changed, it will be
dependent upon degree of flexibility from custom
need.
2.5 Language concerns
Current systems are not suitable for dealing with
suited for natural languages so system should
have multilingual capability to make out easily to
stockholders and also for verification and
validation to test and confirmation of context will
be automatically detect and suggest promptly
during adaptation mechanism.
2.6 Security concerns
Regarding non-functional requirement, this
system considers application level security rather
than hardware-level, distributed network-level or
operating system security level mechanisms
because of system cannot assume cyber-attacks
which are unknown yet.
Security will be considered authorization level,
authentication and tolerance level.
3- Requirement Engineering
Requirement engineering defines statement of
ideas about the proposed system(s) on which all
stockholders agree upon it and under which
constraints system is required to operate.
It is well to be said a process by which we
determine need of user (stockholders) is called
Requirement Engineering.
Figure 1 - RE Process
3.1 Requirement Engineering Components
Requirement
Development
Requirement
Management
Elicitation Volatility
Analysis Traceability
Specification
Validation
3.2 Requirement prioritization
There are three types of requirement prioritization
such as following.
High prioritization is determined during the
analysis, design and implementation of the
schedule of time.
High priority based task and it is also same time
can be difficult for product management to
determine which task is need to be high priority
based that priority need to be implemented first
from the schedule.
Medium prioritization is determined during the
analysis, design the schedule of time.
Low prioritization is determined during the
analysis schedule of time.
Functional & non functional requirements
prioritization
Functional deals with specific or functional
behavior like implementing the design of the
system if we broadly refer functional requirement
is for “what the system is to do”
Non-functional is such type of requirement which
deals the operation of systems like as detailed
architected of the system and defines how
systems supposed to be and also divides in to
two categories.
• Execution: like as usability, security
observed at running time of the system.
Evolution: as such, scalability
extensibility, manageability, testability of
embodied systems.
3.2.1 Requirement prioritization Qualitative
Methods
General Types
- Observations
- Interviews
- Focus Group
- Non – statistical (Method vary)
Specific types
- Observation Documentation
- Ethnography
- Use cases
- Analysis existing system
During the gathering of Requirement existing
methods are also familiar in software community
such as
Requirement Prototyping
o Throw Away prototyping
o Evolutionary prototyping
4- Self-Adaptive
Having an ability to change to suit different
conditions.
Having an ability to change into different
environment either condition or in having to direct
control as such adaptive based systems
consistently monitor the changing but it is clearly
said to be adaptive based cannot monitor over all
the things of changing in system like as if any
environmental catastrophic come at run time then
adaption can’t be able to build the system healthy
again.
4.1 Self-Managing
One of most applied ways is to human
administration to describe and add policies for
optimization problems most system uses like as
cloud computing, autonomic computing, web
services, communication network and distributed
system but rather than that,
Managing to direct or control the use of or
handle, such systems which configure and
reconfigure to it selves and optimize itself recover
and protect against over all catastrophic failure
and changing environment as B.HC cheng
showing control loop. Such as
Figure 2 Control Loop on changing
environment [4]
4.2 Self-Healing
It is the process of making or becoming sound or
healthy/well again and monitoring automatically,
one of the e.g.
Traffic monitoring camera(s) it is the efficient
transportation multi-agent system for monitor the
traffic in each node of agent is comprise the
single camera by which software system to
communicate to each other and the camera
agent is monitoring and detects traffic James on
roads and to avoid bottlenecks of central system.
4.3 Autonomic Systems
Autonomic computing a vision of by IBM in 2001
became most central area of practitioner and
researcher over last decades
Autonomic system manage several things like as
operating system OS X mange certain thing
themselves as such blood pressure and heart
rate etc.
5- Results
Requirement Engineering has set of group
activates and initial step is to gathering
requirements to overcome on failure of projects
requirement elicitation faces mostly vendors
common problems poor requirement along with
limited time and limited budget these constraints
keep in mind and purpose plan for elicitation
through system which will mitigate the all
classical behavior like through interviews,
checklists, scenario, story board ,ethnography
which will be covered by system self-adaptive
based rather than outside.
In area of adaptive systems there are many
suggestions from researcher and practitioner
along with requirement specification problems,
alternative methodologies constraints,
preferences and assumptions are, but there is
need to evaluate such system who can elicit
requirements by the adaptive although I got
literature survey there were certain
methodologies and alternative to cope with that
and modeling techniques but were very limited. In
this paper I investigate variability of modeling
techniques, representation and variants of
system behavior those which can monitor, adapt
alternate regarding context and ontologism are
variable among a domain on the literature or
internet, furthermore it required to work to
consolidate specially to mitigate the risk and cope
actual need of stockholders.
5.1 Proposed plan of requirement elicitation
When vendors are going to elicit of requirement
through adaptive system, thus keep in mind the
constraints of time and budget before plan for
elicitation.
6- Conclusion & Future work
Despite unstructured interviews get structured
interview to mitigate ambiguous, incomplete,
inadequate requirement for getting right and
accurate requirements for inklings data. The
critical process of elicitation of data in
requirement engineering have to high quality of
goal based and is to centralize elicited
requirements, for draft statement of
requirements, requirements analysis,
requirement problems with negotiation and
exploration elaboration of alternative of
boundaries and reuse through automated self-
managing, self-adapting and self-promising and
capturing accurately requirements.
I know it does not comply the rigorous full
adaptive approaches like as missing requirement
prototyping I plan to improve in future also.
For self adaptive and self managing based
system regarding Requirement Engineering
area still there are big challenges how to ?
Modeling and analysis for adaptive system e.g.,
- Runtime models
- Cost benefits
- Reuse support for self adaptive systems
e.g.,( patterns, designs, code)
- Design Architectural support
- Multi programming support for self
adaption.
References
[1] B. Cheng, R. de Lemos, H. Giese, M.Litoiu, J.
Magee,
D.Garlan ,H.A.Muller and R. Traylore. Software
Engineering for Adaptive and self-Managing
Systems.
In Vancouver, BC, Canada, 2009.
[2] N. A.Quereshi and A. Perini.Engieering
Adaptive
Requirements In Vancouver, Canada,2009
[3] B. Cheng, R. de Lemos, S. Fickas, D. Garlan,
M. Litoiu,
J. Magee, H.M¨uller, and R. Taylor. Proc. 2nd
ACM/IEEE Int.
Workshop on Software Eng. for Adaptive and
Self-Managing
Systems (SEAMS 2007). Minneapolis, MN, USA,
May 2007.
[4] B.H.C. Cheng, R. Lemos, H. Giese, P.
Inverardi and
J.M.Proc. Software Engineering for Self-Adaptive
Systems
A Research Roadmap, Springer-Verlag Berlin
Heidelberg 2009.
[5] M.SALEHIE and L.TAHVILDARI Self-Adaptive
Software Landscape and Research Challenges
University of Waterloo, Canada; 2009.
[6] J.Andersson, R.Lemos,S.Malek,D.Weyns
Reflecting on Self-Adaptive Software Systems
Vancouver, Canada; 2009.
[7] T.Patikirikorala, A.Colman, and J.Han
A Systematic Survey on the Design of Self-
Adaptive
Software Systems Using Control Engineering
Approaches
Zürich, Switzerland, 2012.
[8] Betty H.C. Cheng and Joanne M. Atlee
Research Directions in Requirements
Engineering
Minneapolis, MN, USA, 2007.
[9] Axel van Lamsweerde Requirements
Engineering
in the Year 00: A Research Perspective
Limerick, Ireland, 2000.
[10] A.Sajid,A.Nayyar,A.Mohsin
MODERN TRENDS TOWARDS REQUIREMENT
ELICTIATION
Rawalpindi, Pakistan, 2010.
[11] D.Carrizo,O.Dieste,M.López Identifying
Moderator Variables
Through Requirements Elicitation Experiments
Limitations
TORRE CANNE (BR), Italy, 2011.
[12] A.Elkhodary,J.Whittle A Survey of
Approaches
to Adaptive Application Security
Minneapolis, MN, USA, 2007.
[13] C.C.Herrera,C.Duan,J.C.Huang,B.Mobasher
A Recommender System for Requirements
Elicitation
in Large-Scale Software Projects
Honolulu, Hawaii, U.S.A, 2009
Appendices
[1] J. Linger, R. Kazman, Schmidt, D.R.
Sullivan, K. Longstaff, T. R.P. Wallnau, K.
Goodenough, Feiler, P., Gabriel, Northrop,
L.,Klein, M Ultra-large-scale systems:
The software challenge of the future.
Technical report,
Software Engineering Institute (2006), B.H.C.
Cheng et al.
[2] Andersson, J., de Lemos, R., Malek, S.,
Weyns, D.: Towards a classification of
selfadaptive
software system. In: D.Lemos,Cheng, B.,
Inverardi, P.,R.,Giese, H.,
Magee, J. (eds.) Software Engineering for Self-
Adaptive Systems. LNCS, vol. 5525.
Springer, Heidelberg (2009)
[3] Blasch, E.P., G., Lakhotia, A.,
Seetharaman,: Unmanned Vehicles Come of
Age:
The DARPA Grand Challenge. Computer (2006)
[4] ETH Zurich, Chair of Software Engineering
©
JOT, 2009 Software Engineering Institute, U.S.A
[5] S.B, Characterizing Problems for Realizing
Policies in
Self-Adaptive and Self-Managing Systems,
Madurai Kamaraj University, 2001

More Related Content

What's hot

System Quality Attributes for Software Architecture
System Quality Attributes for Software ArchitectureSystem Quality Attributes for Software Architecture
System Quality Attributes for Software ArchitectureAdnan Masood
 
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
 
Ch 4 software engineering
Ch 4 software engineeringCh 4 software engineering
Ch 4 software engineeringMohammed Romi
 
System requirements engineering
System requirements engineeringSystem requirements engineering
System requirements engineeringAnimesh Chaturvedi
 
System quality attributes
System quality attributes System quality attributes
System quality attributes Adil Mehmoood
 
Non-functional requirements
Non-functional requirements Non-functional requirements
Non-functional requirements Rohela Raouf
 
Non functional performance requirements v2.2
Non functional performance requirements v2.2Non functional performance requirements v2.2
Non functional performance requirements v2.2Ian McDonald
 
Software Quality Attributes
Software Quality AttributesSoftware Quality Attributes
Software Quality AttributesHayim Makabee
 
Software Requirements in Software Engineering SE5
Software Requirements in Software Engineering SE5Software Requirements in Software Engineering SE5
Software Requirements in Software Engineering SE5koolkampus
 
Quality Attributes Workshop
Quality Attributes WorkshopQuality Attributes Workshop
Quality Attributes WorkshopCS, NcState
 
Ch15-Software Engineering 9
Ch15-Software Engineering 9Ch15-Software Engineering 9
Ch15-Software Engineering 9Ian Sommerville
 
Quality attribute scenarios
Quality attribute scenariosQuality attribute scenarios
Quality attribute scenariosahsan riaz
 
Ch14-Software Engineering 9
Ch14-Software Engineering 9Ch14-Software Engineering 9
Ch14-Software Engineering 9Ian Sommerville
 
Ian Sommerville, Software Engineering, 9th Edition Ch 4
Ian Sommerville,  Software Engineering, 9th Edition Ch 4Ian Sommerville,  Software Engineering, 9th Edition Ch 4
Ian Sommerville, Software Engineering, 9th Edition Ch 4Mohammed Romi
 
Functional vs Non-functional Requirements - Which comes first?
Functional vs Non-functional Requirements - Which comes first?Functional vs Non-functional Requirements - Which comes first?
Functional vs Non-functional Requirements - Which comes first?Evgeniy Labunskiy
 
Quality attributes sadhana
Quality attributes sadhanaQuality attributes sadhana
Quality attributes sadhanaSadhana28
 
Unit 6- Development Evolution model
Unit 6- Development Evolution model Unit 6- Development Evolution model
Unit 6- Development Evolution model arvind pandey
 
SharePoint Server and Windows 2008 And SQL 2008 with Joel Oleson and Todd Klindt
SharePoint Server and Windows 2008 And SQL 2008 with Joel Oleson and Todd KlindtSharePoint Server and Windows 2008 And SQL 2008 with Joel Oleson and Todd Klindt
SharePoint Server and Windows 2008 And SQL 2008 with Joel Oleson and Todd KlindtJoel Oleson
 

What's hot (20)

Chap1 RE Introduction
Chap1 RE IntroductionChap1 RE Introduction
Chap1 RE Introduction
 
System Quality Attributes for Software Architecture
System Quality Attributes for Software ArchitectureSystem Quality Attributes for Software Architecture
System Quality Attributes for Software Architecture
 
Unit 2-software development process notes
Unit 2-software development process notes Unit 2-software development process notes
Unit 2-software development process notes
 
Ch 4 software engineering
Ch 4 software engineeringCh 4 software engineering
Ch 4 software engineering
 
System requirements engineering
System requirements engineeringSystem requirements engineering
System requirements engineering
 
System quality attributes
System quality attributes System quality attributes
System quality attributes
 
Non-functional requirements
Non-functional requirements Non-functional requirements
Non-functional requirements
 
Non functional performance requirements v2.2
Non functional performance requirements v2.2Non functional performance requirements v2.2
Non functional performance requirements v2.2
 
Software Quality Attributes
Software Quality AttributesSoftware Quality Attributes
Software Quality Attributes
 
Software Requirements in Software Engineering SE5
Software Requirements in Software Engineering SE5Software Requirements in Software Engineering SE5
Software Requirements in Software Engineering SE5
 
Quality Attributes Workshop
Quality Attributes WorkshopQuality Attributes Workshop
Quality Attributes Workshop
 
Ch15-Software Engineering 9
Ch15-Software Engineering 9Ch15-Software Engineering 9
Ch15-Software Engineering 9
 
Quality attribute scenarios
Quality attribute scenariosQuality attribute scenarios
Quality attribute scenarios
 
Ch14-Software Engineering 9
Ch14-Software Engineering 9Ch14-Software Engineering 9
Ch14-Software Engineering 9
 
Ian Sommerville, Software Engineering, 9th Edition Ch 4
Ian Sommerville,  Software Engineering, 9th Edition Ch 4Ian Sommerville,  Software Engineering, 9th Edition Ch 4
Ian Sommerville, Software Engineering, 9th Edition Ch 4
 
Functional vs Non-functional Requirements - Which comes first?
Functional vs Non-functional Requirements - Which comes first?Functional vs Non-functional Requirements - Which comes first?
Functional vs Non-functional Requirements - Which comes first?
 
Quality attributes sadhana
Quality attributes sadhanaQuality attributes sadhana
Quality attributes sadhana
 
Unit 6- Development Evolution model
Unit 6- Development Evolution model Unit 6- Development Evolution model
Unit 6- Development Evolution model
 
SharePoint Server and Windows 2008 And SQL 2008 with Joel Oleson and Todd Klindt
SharePoint Server and Windows 2008 And SQL 2008 with Joel Oleson and Todd KlindtSharePoint Server and Windows 2008 And SQL 2008 with Joel Oleson and Todd Klindt
SharePoint Server and Windows 2008 And SQL 2008 with Joel Oleson and Todd Klindt
 
Chap3 RE elicitation
Chap3 RE elicitationChap3 RE elicitation
Chap3 RE elicitation
 

Similar to Software Engineering for Self-Adaptive and Self-Managing Systems

Softwarearchitecture in practice unit1 2
Softwarearchitecture in practice unit1 2Softwarearchitecture in practice unit1 2
Softwarearchitecture in practice unit1 2sush-sushma
 
Online hostel management_system
Online hostel management_systemOnline hostel management_system
Online hostel management_systemmd faruk
 
86One of the fi rst activities of an analyst is to determi.docx
86One of the fi rst activities of an analyst is to determi.docx86One of the fi rst activities of an analyst is to determi.docx
86One of the fi rst activities of an analyst is to determi.docxransayo
 
Softweare Engieering
Softweare Engieering Softweare Engieering
Softweare Engieering Huda Alameen
 
Autonomic Computing and Self Healing Systems
Autonomic Computing and Self Healing SystemsAutonomic Computing and Self Healing Systems
Autonomic Computing and Self Healing SystemsWilliam Chipman
 
AN INVESTIGATION OF THE MONITORING ACTIVITY IN SELF ADAPTIVE SYSTEMS
AN INVESTIGATION OF THE MONITORING ACTIVITY IN SELF ADAPTIVE SYSTEMSAN INVESTIGATION OF THE MONITORING ACTIVITY IN SELF ADAPTIVE SYSTEMS
AN INVESTIGATION OF THE MONITORING ACTIVITY IN SELF ADAPTIVE SYSTEMSijseajournal
 
Hostel managements system
Hostel managements systemHostel managements system
Hostel managements systemFahad Chishti
 
Online auction system srs riport
Online auction system srs  riportOnline auction system srs  riport
Online auction system srs riportDilip Prajapati
 
System analysis and_design.docx
System analysis and_design.docxSystem analysis and_design.docx
System analysis and_design.docxAlaJebnoun
 
A Project to Automate Inventory Management in a Fast Food, Cas.docx
A Project to Automate Inventory Management in a Fast Food, Cas.docxA Project to Automate Inventory Management in a Fast Food, Cas.docx
A Project to Automate Inventory Management in a Fast Food, Cas.docxransayo
 
lake city institute of technology
lake city institute of technology lake city institute of technology
lake city institute of technology RaviKalola786
 
Online auction system srs riport
Online auction system srs  riportOnline auction system srs  riport
Online auction system srs riportDilip Prajapati
 
Elementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptxElementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptxethiouniverse
 
Software Engineering Important Short Question for Exams
Software Engineering Important Short Question for ExamsSoftware Engineering Important Short Question for Exams
Software Engineering Important Short Question for ExamsMuhammadTalha436
 
Document defect tracking for improving product quality and productivity
Document   defect tracking for improving product quality and productivityDocument   defect tracking for improving product quality and productivity
Document defect tracking for improving product quality and productivitych_tabitha7
 

Similar to Software Engineering for Self-Adaptive and Self-Managing Systems (20)

Softwarearchitecture in practice unit1 2
Softwarearchitecture in practice unit1 2Softwarearchitecture in practice unit1 2
Softwarearchitecture in practice unit1 2
 
Chapter 2.pptx
Chapter 2.pptxChapter 2.pptx
Chapter 2.pptx
 
Online hostel management_system
Online hostel management_systemOnline hostel management_system
Online hostel management_system
 
86One of the fi rst activities of an analyst is to determi.docx
86One of the fi rst activities of an analyst is to determi.docx86One of the fi rst activities of an analyst is to determi.docx
86One of the fi rst activities of an analyst is to determi.docx
 
Softweare Engieering
Softweare Engieering Softweare Engieering
Softweare Engieering
 
Se lec 3
Se lec 3Se lec 3
Se lec 3
 
Autonomic Computing and Self Healing Systems
Autonomic Computing and Self Healing SystemsAutonomic Computing and Self Healing Systems
Autonomic Computing and Self Healing Systems
 
AN INVESTIGATION OF THE MONITORING ACTIVITY IN SELF ADAPTIVE SYSTEMS
AN INVESTIGATION OF THE MONITORING ACTIVITY IN SELF ADAPTIVE SYSTEMSAN INVESTIGATION OF THE MONITORING ACTIVITY IN SELF ADAPTIVE SYSTEMS
AN INVESTIGATION OF THE MONITORING ACTIVITY IN SELF ADAPTIVE SYSTEMS
 
Hostel managements system
Hostel managements systemHostel managements system
Hostel managements system
 
Online auction system srs riport
Online auction system srs  riportOnline auction system srs  riport
Online auction system srs riport
 
System analysis and_design.docx
System analysis and_design.docxSystem analysis and_design.docx
System analysis and_design.docx
 
software engineering
software engineering software engineering
software engineering
 
Sdpl1
Sdpl1Sdpl1
Sdpl1
 
A Project to Automate Inventory Management in a Fast Food, Cas.docx
A Project to Automate Inventory Management in a Fast Food, Cas.docxA Project to Automate Inventory Management in a Fast Food, Cas.docx
A Project to Automate Inventory Management in a Fast Food, Cas.docx
 
lake city institute of technology
lake city institute of technology lake city institute of technology
lake city institute of technology
 
Online auction system srs riport
Online auction system srs  riportOnline auction system srs  riport
Online auction system srs riport
 
Elementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptxElementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptx
 
Software Engineering Important Short Question for Exams
Software Engineering Important Short Question for ExamsSoftware Engineering Important Short Question for Exams
Software Engineering Important Short Question for Exams
 
Slcm sharbani bhattacharya
Slcm sharbani bhattacharyaSlcm sharbani bhattacharya
Slcm sharbani bhattacharya
 
Document defect tracking for improving product quality and productivity
Document   defect tracking for improving product quality and productivityDocument   defect tracking for improving product quality and productivity
Document defect tracking for improving product quality and productivity
 

Software Engineering for Self-Adaptive and Self-Managing Systems

  • 1. Software Engineering for Adaptive And Self Managing System Muhammad Akram Abbasi, Prof.Naeem Janjua Student of MS SE, Szabist Karachi 90 Clifton asslam_alikum2002@yahoo.com nujanjua@yahoo.com Computer Science department Szabist Karachi 90 Clifton, Pakistan ABSTRACT. Software engineering has established innovative skills on behalf of managing the ever growing density of assembling recent day software structures, it becomes deceptive that there is an equally persistent need for mechanisms that systematize and simplify the adaptation and modification of software Systems. The purpose of this Research is to obtain concentration in the area of software engineering of the people on self configuring, self managing, self optimizing, self healing, self adaptive and autonomic in requirement elicitation techniques. Keywords: Self-Adaptive, Self-Managing, Self- Healing, Requirement Elicitation 1- Introduction Main branch is software engineering which deals with sub branches although there are many branches but I will solely target to software requirement engineering and requirement engineering of problems and constraints and what are self adaptive and self managing systems how those can be embedded with requirement engineering of branch for requirement elicitation purpose either to achieve target or can be beneficial for software industries. When any vendor going to make the software applications it needs certain human interaction along with human resources, those which can detect and manage all of the context of significant information during first step of elicitation process, that can be internal or external of stockholders, such significant interaction leads to more resources, budget, supervision, contiguous innovative approaches for best consequences, time taking and achieving the desired or expected regulation during gathering requirements and certain times it gets preliminary problem or causing to fail the actual requirements due to lack of knowledge of requirement engineer(s), fail to remember problem of humanity and mining the actual need of customer. Accordingly there is high need to require a System/Framework that can troubleshoot, reconfigure, detect significant complexity reduction, robustness, can manage autonomic, self-optimize, self-heal, self-adaptive and should have ability to change itself at run time and keep complexity hidden form the end user desire quality requirement which can document requirement that can record the actual gather grained, imperative, cohesive and intensive data and also audio/video chat discussion should be recorded for future traceability of the meetings, so all these properties how can we achieve and that is big question that there can have some idea for self adapting, managing automations
  • 2. monitoring itself context, detect changes and properties of stockholder need. This paper will cover, Survey of requirements problem regarding historical survey, requirements concerns how will cope adaption, context changing behavior will show option list, mapping to Architecture with totally new requirements, language concerns regarding multi lingual support, security concerns to obtain verification and validation. 2- Survey of requirements problem An inspection/survey more than 800 projects, under taken by 350 US business companies and related that 1/3 (one third) projects, never completed, major cost overrun and significant delays, When most cause of problem and failure asked, answers were “poor requirement” along with following statistics [9]. Description percent Involvement of user in sufficient 13% Requirement incomplete 12% Requirement(s) Changing(s) 11% Unrealistic Expectations 6% Objectives Unclear 5% 2.1 Requirement Elicitation Requirement Elicitation is first and most critical step during a project management most of the errors come during first step of gathering data from user stockholders such typical errors most of those are including omission, use of incorrect facts, misunderstanding, inconsistency and ambiguity, overlapping, conflicting requirements, Un-realistic, missing data, unclear data. 2.2 Requirements concerns Classically used methods are for gathering data through interview, meetings, domain documents and both parties using natural languages to classify requirements, despite that adaptive system will ask such queries, Why user wants this? Why in this way? What the system should do? How well it should do? Where and, When it need to be accomplished? And system has to now solely define functional and non-functional along with monitoring specification and will take variability in operational context evolution criteria will be take on at the run time, by the system and auto will motivate with explanations along with the list of options for different plans to stockholders. One of the big challenge is considering yet by researchers, if new design or prototype which is not exist yet, how self adaptive system will possess because system can’t assume the unknown requirements in advance accordingly system will cope with entire possible set of environment to their perspective of adaption for specification. 2.3 Context Changing Behavior Traditional Requirement Engineering: - “This system shall do this….” Adaptive level Requirement Engineering: - “The system might do this……” - “But it may do this …… as long as it does this….” - “The system ought to do this……..but if it can’t, it shall eventually do this…” [4]. Therefore ought and might or assumed priority of stockholder requirement like if customer accepts “may” it will prioritize as “low” scale, if customer uses “ought” that will be consider as “average” task scale and same as if it is used “might” that will be considered as “High” priority level of task
  • 3. 2.4 Mapping to Architecture If any technology requirement is used explicitly of language system will handles uncertainty. Requirement with similar domain for reusable will be provided for adoption and Variety of technical terminology will be exist for adapting context but certain invariants will not be changed, it will be dependent upon degree of flexibility from custom need. 2.5 Language concerns Current systems are not suitable for dealing with suited for natural languages so system should have multilingual capability to make out easily to stockholders and also for verification and validation to test and confirmation of context will be automatically detect and suggest promptly during adaptation mechanism. 2.6 Security concerns Regarding non-functional requirement, this system considers application level security rather than hardware-level, distributed network-level or operating system security level mechanisms because of system cannot assume cyber-attacks which are unknown yet. Security will be considered authorization level, authentication and tolerance level. 3- Requirement Engineering Requirement engineering defines statement of ideas about the proposed system(s) on which all stockholders agree upon it and under which constraints system is required to operate. It is well to be said a process by which we determine need of user (stockholders) is called Requirement Engineering. Figure 1 - RE Process 3.1 Requirement Engineering Components Requirement Development Requirement Management Elicitation Volatility Analysis Traceability Specification Validation 3.2 Requirement prioritization There are three types of requirement prioritization such as following. High prioritization is determined during the analysis, design and implementation of the schedule of time. High priority based task and it is also same time can be difficult for product management to determine which task is need to be high priority based that priority need to be implemented first from the schedule. Medium prioritization is determined during the analysis, design the schedule of time. Low prioritization is determined during the analysis schedule of time.
  • 4. Functional & non functional requirements prioritization Functional deals with specific or functional behavior like implementing the design of the system if we broadly refer functional requirement is for “what the system is to do” Non-functional is such type of requirement which deals the operation of systems like as detailed architected of the system and defines how systems supposed to be and also divides in to two categories. • Execution: like as usability, security observed at running time of the system. Evolution: as such, scalability extensibility, manageability, testability of embodied systems. 3.2.1 Requirement prioritization Qualitative Methods General Types - Observations - Interviews - Focus Group - Non – statistical (Method vary) Specific types - Observation Documentation - Ethnography - Use cases - Analysis existing system During the gathering of Requirement existing methods are also familiar in software community such as Requirement Prototyping o Throw Away prototyping o Evolutionary prototyping 4- Self-Adaptive Having an ability to change to suit different conditions. Having an ability to change into different environment either condition or in having to direct control as such adaptive based systems consistently monitor the changing but it is clearly said to be adaptive based cannot monitor over all the things of changing in system like as if any environmental catastrophic come at run time then adaption can’t be able to build the system healthy again. 4.1 Self-Managing One of most applied ways is to human administration to describe and add policies for optimization problems most system uses like as cloud computing, autonomic computing, web services, communication network and distributed system but rather than that, Managing to direct or control the use of or handle, such systems which configure and reconfigure to it selves and optimize itself recover and protect against over all catastrophic failure and changing environment as B.HC cheng showing control loop. Such as Figure 2 Control Loop on changing environment [4] 4.2 Self-Healing It is the process of making or becoming sound or healthy/well again and monitoring automatically, one of the e.g.
  • 5. Traffic monitoring camera(s) it is the efficient transportation multi-agent system for monitor the traffic in each node of agent is comprise the single camera by which software system to communicate to each other and the camera agent is monitoring and detects traffic James on roads and to avoid bottlenecks of central system. 4.3 Autonomic Systems Autonomic computing a vision of by IBM in 2001 became most central area of practitioner and researcher over last decades Autonomic system manage several things like as operating system OS X mange certain thing themselves as such blood pressure and heart rate etc. 5- Results Requirement Engineering has set of group activates and initial step is to gathering requirements to overcome on failure of projects requirement elicitation faces mostly vendors common problems poor requirement along with limited time and limited budget these constraints keep in mind and purpose plan for elicitation through system which will mitigate the all classical behavior like through interviews, checklists, scenario, story board ,ethnography which will be covered by system self-adaptive based rather than outside. In area of adaptive systems there are many suggestions from researcher and practitioner along with requirement specification problems, alternative methodologies constraints, preferences and assumptions are, but there is need to evaluate such system who can elicit requirements by the adaptive although I got literature survey there were certain methodologies and alternative to cope with that and modeling techniques but were very limited. In this paper I investigate variability of modeling techniques, representation and variants of system behavior those which can monitor, adapt alternate regarding context and ontologism are variable among a domain on the literature or internet, furthermore it required to work to consolidate specially to mitigate the risk and cope actual need of stockholders. 5.1 Proposed plan of requirement elicitation When vendors are going to elicit of requirement through adaptive system, thus keep in mind the constraints of time and budget before plan for elicitation. 6- Conclusion & Future work Despite unstructured interviews get structured interview to mitigate ambiguous, incomplete, inadequate requirement for getting right and accurate requirements for inklings data. The critical process of elicitation of data in requirement engineering have to high quality of goal based and is to centralize elicited requirements, for draft statement of requirements, requirements analysis, requirement problems with negotiation and exploration elaboration of alternative of boundaries and reuse through automated self- managing, self-adapting and self-promising and capturing accurately requirements. I know it does not comply the rigorous full adaptive approaches like as missing requirement prototyping I plan to improve in future also. For self adaptive and self managing based system regarding Requirement Engineering area still there are big challenges how to ? Modeling and analysis for adaptive system e.g., - Runtime models - Cost benefits - Reuse support for self adaptive systems e.g.,( patterns, designs, code) - Design Architectural support
  • 6. - Multi programming support for self adaption. References [1] B. Cheng, R. de Lemos, H. Giese, M.Litoiu, J. Magee, D.Garlan ,H.A.Muller and R. Traylore. Software Engineering for Adaptive and self-Managing Systems. In Vancouver, BC, Canada, 2009. [2] N. A.Quereshi and A. Perini.Engieering Adaptive Requirements In Vancouver, Canada,2009 [3] B. Cheng, R. de Lemos, S. Fickas, D. Garlan, M. Litoiu, J. Magee, H.M¨uller, and R. Taylor. Proc. 2nd ACM/IEEE Int. Workshop on Software Eng. for Adaptive and Self-Managing Systems (SEAMS 2007). Minneapolis, MN, USA, May 2007. [4] B.H.C. Cheng, R. Lemos, H. Giese, P. Inverardi and J.M.Proc. Software Engineering for Self-Adaptive Systems A Research Roadmap, Springer-Verlag Berlin Heidelberg 2009. [5] M.SALEHIE and L.TAHVILDARI Self-Adaptive Software Landscape and Research Challenges University of Waterloo, Canada; 2009. [6] J.Andersson, R.Lemos,S.Malek,D.Weyns Reflecting on Self-Adaptive Software Systems Vancouver, Canada; 2009. [7] T.Patikirikorala, A.Colman, and J.Han A Systematic Survey on the Design of Self- Adaptive Software Systems Using Control Engineering Approaches Zürich, Switzerland, 2012. [8] Betty H.C. Cheng and Joanne M. Atlee Research Directions in Requirements Engineering Minneapolis, MN, USA, 2007. [9] Axel van Lamsweerde Requirements Engineering in the Year 00: A Research Perspective Limerick, Ireland, 2000. [10] A.Sajid,A.Nayyar,A.Mohsin MODERN TRENDS TOWARDS REQUIREMENT ELICTIATION Rawalpindi, Pakistan, 2010. [11] D.Carrizo,O.Dieste,M.López Identifying Moderator Variables Through Requirements Elicitation Experiments Limitations TORRE CANNE (BR), Italy, 2011. [12] A.Elkhodary,J.Whittle A Survey of Approaches to Adaptive Application Security Minneapolis, MN, USA, 2007. [13] C.C.Herrera,C.Duan,J.C.Huang,B.Mobasher A Recommender System for Requirements Elicitation in Large-Scale Software Projects Honolulu, Hawaii, U.S.A, 2009 Appendices [1] J. Linger, R. Kazman, Schmidt, D.R. Sullivan, K. Longstaff, T. R.P. Wallnau, K. Goodenough, Feiler, P., Gabriel, Northrop, L.,Klein, M Ultra-large-scale systems: The software challenge of the future. Technical report, Software Engineering Institute (2006), B.H.C. Cheng et al. [2] Andersson, J., de Lemos, R., Malek, S., Weyns, D.: Towards a classification of selfadaptive software system. In: D.Lemos,Cheng, B., Inverardi, P.,R.,Giese, H., Magee, J. (eds.) Software Engineering for Self- Adaptive Systems. LNCS, vol. 5525. Springer, Heidelberg (2009) [3] Blasch, E.P., G., Lakhotia, A., Seetharaman,: Unmanned Vehicles Come of Age: The DARPA Grand Challenge. Computer (2006) [4] ETH Zurich, Chair of Software Engineering © JOT, 2009 Software Engineering Institute, U.S.A [5] S.B, Characterizing Problems for Realizing Policies in Self-Adaptive and Self-Managing Systems, Madurai Kamaraj University, 2001