Non-Functional Requirements Description Language


Published on

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Non-Functional Requirements Description Language

  1. 1. Non-Functional Requirements Description Language
  2. 2. Software Architecture <ul><li>Views and Viewpoints of Architecture Blueprint </li></ul><ul><ul><li>Functional/logic view </li></ul></ul><ul><ul><li>Code/module view </li></ul></ul><ul><ul><li>Development/structural view </li></ul></ul><ul><ul><li>Concurrency/process/thread view </li></ul></ul><ul><ul><li>Physical/deployment view </li></ul></ul><ul><ul><li>User action/feedback view </li></ul></ul><ul><ul><li>Data view </li></ul></ul>
  3. 3. Self-aware Challenges of SOA based Software Systems <ul><li>Self-Adapting to Requirements changes </li></ul><ul><li>Self-Governance to Requirements, Models, Services, Processes, Components. </li></ul><ul><li>Self-Configuring of running system through system components </li></ul><ul><li>Self-Configuring to processes (hot swapping of services) </li></ul><ul><li>Self-Healing after system faults </li></ul><ul><li>Self-Discovery and Self-fixing of bugs </li></ul>
  4. 4. Approach To Challenges <ul><li>Models & Description Languages describing System interaction for : </li></ul><ul><ul><li>Capturing Requirements from intentions vocabularies </li></ul></ul><ul><ul><li>Modeling Requirements </li></ul></ul><ul><ul><li>Compositing system components </li></ul></ul><ul><ul><li>Monitoring, Diagnosing system functions </li></ul></ul><ul><ul><li>Discovering system bugs, vulnerability from </li></ul></ul><ul><ul><li>Reasoning and knowledge of running system </li></ul></ul>
  5. 5. Ontology Approach <ul><li>Ontological Annotation of Process Flow </li></ul><ul><ul><li>This will help logic composition of processes </li></ul></ul><ul><li>OWL-S and WSMO give an ontological formation of the axioms in software architecture (processes and web services), </li></ul><ul><li>An interface layer can be designed to map between Neptune components and WSMO </li></ul>
  6. 6. Biomimicry Approach <ul><li>Agent Based modeling, interaction and intelligence of System would help to give life representation to system artifacts </li></ul><ul><ul><li>health check agents, risk control agents, quality assurance agents,..etc </li></ul></ul>
  7. 7. Exposed Quality & Performance Properties of the Ecosystem <ul><li>Business Level </li></ul><ul><ul><li>Organizational Goals, Objectives </li></ul></ul><ul><ul><ul><li>Strategy, KPI’s </li></ul></ul></ul><ul><li>Intention Level (Human Level/Process owner level) </li></ul><ul><ul><li>User goals </li></ul></ul><ul><ul><li>User inputs and outputs </li></ul></ul><ul><li>Process Level (Business Level) </li></ul><ul><ul><li>KPI’s </li></ul></ul><ul><ul><li>Performance </li></ul></ul><ul><li>Service Level (Service Provider) </li></ul><ul><ul><li>Reliability – MTBF </li></ul></ul><ul><ul><li>Availability (up-time), time-to-deliver, response-time </li></ul></ul><ul><ul><li>Serviceability: MTTR </li></ul></ul><ul><ul><li>Capacity: throughput </li></ul></ul>
  8. 8. NFR’s Example <ul><li>The system shall accommodate 400 users during the peak usage time window of 8:00am to 10:00am local time, with an estimated average session duration of 8 minutes . </li></ul><ul><li>All Web pages generated by the system shall be fully downloadable in no more than 10 seconds over a 40KBps modem connection. </li></ul><ul><li>Responses to queries shall take no longer than 7 seconds to load onto the screen after the user submits the query. </li></ul><ul><li>The system shall display confirmation messages to users within 4 seconds after the user submits information to the system. </li></ul>Metrics
  9. 9. Non-Functional Requirements Description Language <ul><li>Motivations </li></ul><ul><ul><li>To get a mutual understanding of customer NFR’s in one assembly that highlight the objects: </li></ul></ul><ul><ul><ul><li>Category of NFR </li></ul></ul></ul><ul><ul><ul><li>Metrics of NFR on Activity Level inside a Process that will match SLO’s from Service Provider </li></ul></ul></ul><ul><ul><li>Supports MDA/MDD agility </li></ul></ul><ul><ul><li>Matching criteria between NFR’s and SLO’s through Metrics Semantically </li></ul></ul><ul><ul><li>Monitoring and diagnosing NFR’s at deployment </li></ul></ul><ul><ul><li>Evaluating NFR’s on service level </li></ul></ul>
  10. 10. Non-Functional Requirements Description Language <ul><li>Design Goals </li></ul><ul><ul><li>NFR’s should embed SMART (Specific, Measurable, Attainable, Realistic, Time bound) properties </li></ul></ul><ul><ul><li>Simple and quantitative metric design for each NFR </li></ul></ul><ul><ul><li>Simple business rule annotation </li></ul></ul><ul><ul><li>NFR contain an object, property, metric and constraint </li></ul></ul><ul><ul><ul><li>Metric contain measurement, function and criteria </li></ul></ul></ul><ul><ul><li>Design should expose interfaces for viewpoints for other emerging services like diagnostic services </li></ul></ul>
  11. 11. Self-Governance System Axioms Sign SLA Deploy Process Deploy on BPEL Engine SLA’s NFRDL Analyzing Error Classification Construct SLA’s Classification Optimize Formal Agreement Monitoring
  12. 12. SLO’s Aggregation <ul><li>1- B2B Agreements contain an aggregate of SLO’s to business goals through KPI’s and Metrics </li></ul>
  13. 13. KPI Construction <ul><li>5- Sign formal process intention level agreement with partners (including BPEL host provider, infrastructure resource provider); this agreement links pertained SLO’s to intention Goal in high-level KPI’s </li></ul>
  14. 14. Monitoring KPI’s <ul><li>Start Logging and Analyzing raw data </li></ul><ul><li>3- If any breaches arise (violation of SLO) then; </li></ul>