An NFR Pattern Approach to Dealing with Non-Functional Requirements

Similar documents
An Approach for Creating Sentence Patterns for Quality Requirements

Nonfunctional Requirements: From Elicitation to Conceptual Models

Making the ELPS-TELPAS Connection Grades K 12 Overview

PowerCampus Self-Service Student Guide. Release 8.4

ECE-492 SENIOR ADVANCED DESIGN PROJECT

Addressing Impersonation Threats in Online Assessment Environment Using Temporal Information and System Interactions

PROCESS USE CASES: USE CASES IDENTIFICATION

Functional requirements, non-functional requirements, and architecture should not be separated A position paper

MASTER OF ARTS IN APPLIED SOCIOLOGY. Thesis Option

Master of Science (MS) in Education with a specialization in. Leadership in Educational Administration

INFED. INFLIBNET Access Management Federation Yatrik Patel

Using Virtual Manipulatives to Support Teaching and Learning Mathematics

USER ADAPTATION IN E-LEARNING ENVIRONMENTS

GUIDE TO EVALUATING DISTANCE EDUCATION AND CORRESPONDENCE EDUCATION

BPS Information and Digital Literacy Goals

Ascension Health LMS. SumTotal 8.2 SP3. SumTotal 8.2 Changes Guide. Ascension

CREATING SHARABLE LEARNING OBJECTS FROM EXISTING DIGITAL COURSE CONTENT

Online Administrator Guide

Shared Mental Models

Course Prerequisite: CE 2407 Adobe Illustrator or equivalent experience

Indiana Collaborative for Project Based Learning. PBL Certification Process

Use of CIM in AEP Enterprise Architecture. Randy Lowe Director, Enterprise Architecture October 24, 2012

ETHICAL STANDARDS FOR EDUCATORS. Instructional Practices in Education and Training

Generating Test Cases From Use Cases

Introduction to Modeling and Simulation. Conceptual Modeling. OSMAN BALCI Professor

Odysseyware Login Macon County

Developing an Assessment Plan to Learn About Student Learning

Data Modeling and Databases II Entity-Relationship (ER) Model. Gustavo Alonso, Ce Zhang Systems Group Department of Computer Science ETH Zürich

Course Syllabus MFG Modern Manufacturing Techniques I Spring 2017

RESEARCH INTEGRITY AND SCHOLARSHIP POLICY

Radius STEM Readiness TM

On-Line Data Analytics

Quick Start Guide 7.0

An OO Framework for building Intelligence and Learning properties in Software Agents

Preferences...3 Basic Calculator...5 Math/Graphing Tools...5 Help...6 Run System Check...6 Sign Out...8

Planning a Dissertation/ Project

Santa Fe Community College Teacher Academy Student Guide 1

1 Use complex features of a word processing application to a given brief. 2 Create a complex document. 3 Collaborate on a complex document.

Conceptual Framework: Presentation

Towards a Collaboration Framework for Selection of ICT Tools

PREPARING FOR THE SITE VISIT IN YOUR FUTURE

GACE Computer Science Assessment Test at a Glance

ASSESSMENT OVERVIEW Student Packets and Teacher Guide. Grades 6, 7, 8

PESIT SOUTH CAMPUS 10CS71-OBJECT-ORIENTED MODELING AND DESIGN. Faculty: Mrs.Sumana Sinha No. Of Hours: 52. Outcomes

Hawai i Pacific University Sees Stellar Response Rates for Course Evaluations

Assessment System for M.S. in Health Professions Education (rev. 4/2011)

K 1 2 K 1 2. Iron Mountain Public Schools Standards (modified METS) Checklist by Grade Level Page 1 of 11

EMPOWER Self-Service Portal Student User Manual

Unit 7 Data analysis and design

Career Checkpoint. What is Career Checkpoint? Make the most of your Marketable Skills

European Cooperation in the field of Scientific and Technical Research - COST - Brussels, 24 May 2013 COST 024/13

Implementing a tool to Support KAOS-Beta Process Model Using EPF

International Series in Operations Research & Management Science

HiSET TESTING ACCOMMODATIONS REQUEST FORM Part I Applicant Information

An Industrial Technologist s Core Knowledge: Web-based Strategy for Defining Our Discipline

Reviewing the student course evaluation request

College of Education Department of Educational Psychology SYLLABUS

The University of British Columbia Board of Governors

SkillPort Quick Start Guide 7.0

Trust and Community: Continued Engagement in Second Life

Senior Parent Meeting What s next?

Multisensor Data Fusion: From Algorithms And Architectural Design To Applications (Devices, Circuits, And Systems)

Utilizing Soft System Methodology to Increase Productivity of Shell Fabrication Sushant Sudheer Takekar 1 Dr. D.N. Raut 2

1. Answer the questions below on the Lesson Planning Response Document.

Academic Freedom Intellectual Property Academic Integrity

School Size and the Quality of Teaching and Learning

Library Reference Services textbook Chapter 7

COMPUTER-ASSISTED INDEPENDENT STUDY IN MULTIVARIATE CALCULUS

Explorelearning Dna Fingerprint Analysis Answers

elearning OVERVIEW GFA Consulting Group GmbH 1

Tun your everyday simulation activity into research

Corpus Linguistics (L615)

A cognitive perspective on pair programming

Essentials of Rapid elearning (REL) Design

Teaching Algorithm Development Skills

Enter the World of Polling, Survey &

Information Event Master Thesis

What is PDE? Research Report. Paul Nichols

USC VITERBI SCHOOL OF ENGINEERING

National Survey of Student Engagement Spring University of Kansas. Executive Summary

The Role of Architecture in a Scaled Agile Organization - A Case Study in the Insurance Industry

Computerized Adaptive Psychological Testing A Personalisation Perspective

Missouri Mathematics Grade-Level Expectations

RETURNING TEACHER REQUIRED TRAINING MODULE YE TRANSCRIPT

Compositional Semantics

Guidelines for Writing an Internship Report

BIOL 2402 Anatomy & Physiology II Course Syllabus:

University of Massachusetts Lowell Graduate School of Education Program Evaluation Spring Online

Software Quality Improvement by using an Experience Factory

Spring 2015 IET4451 Systems Simulation Course Syllabus for Traditional, Hybrid, and Online Classes

Consumer Information Boot Camp

A Domain Ontology Development Environment Using a MRD and Text Corpus

THESIS GUIDE FORMAL INSTRUCTION GUIDE FOR MASTER S THESIS WRITING SCHOOL OF BUSINESS

IBM Software Group. Mastering Requirements Management with Use Cases Module 6: Define the System

Developing True/False Test Sheet Generating System with Diagnosing Basic Cognitive Ability

American Studies Ph.D. Timeline and Requirements

Post-Master s Certificate in. Leadership for Higher Education

National Survey of Student Engagement (NSSE) Temple University 2016 Results

MATERIALS SCIENCE AND ENGINEERING GRADUATE MANUAL

Preliminary Report Initiative for Investigation of Race Matters and Underrepresented Minority Faculty at MIT Revised Version Submitted July 12, 2007

Transcription:

An NFR Pattern Approach to Dealing with Non-Functional Requirements Presenter: Sam Supakkul Outline Motivation The Approach NFR Patterns Pattern Organization Pattern Reuse Tool Support Case Study Conclusion Is it beautiful to you? Authors: Sam Supakkul Tom Hill Lawrence Chung The Univ. of Texas at Dallas Thein Than Tun The Open University, UK Julio CSP Leite PUC-Rio, Brazil

Dealing with NFRs involves many concepts and activities [softgoal] [side-effect] [side-effect] [criticalityl]!!aesthetic ++ ++ -- + Cost ++ - ++! Memorable - ++ [alternatives] [selection] Layered shells Dome Pyramid ++ Make + Help -- Break - Hurt

Some aspects of NFRs are achieved by mitigating known problems!! Security of credit card info - / -- Break-in wireless network Masquerade user login Steal credit card info - / -- Password encryption Biometric authentication 2-factor authentication ++/+/-/--!Trustworthiness ++/+/-/-- Cost ++ Make + Help -- Break - Hurt

Having insufficient knowledge of NFRs can lead to dire consequences (2 nd ) Biggest credit card theft 45.7M credit cards stolen $20M in fraudulent transactions TJX used security measures ID/password authentication Data encryption TJX unable to prevent the hacker 1. Break-in wireless network 2. Masquerade user login 3. Steal credit card info But TJX did not know enough Potential security problems Applicable mitigations Proper tradeoff among NFRs

Having sufficient knowledge of NFRs is difficult because NFR knowledge is Difficult to capture Problems, solutions, domain Complete, correct Conceptual modeling and reasoning Difficult to organize Cataloging knowledge Relating similar knowledge General Specific Class Instance Combining knowledge Difficult to reuse Choosing appropriate knowledge (Re-)creating visual models

This talk presents a pattern-based approach to capturing, organizing, and reusing NFR knowledge generalization aggregation instantiation classification Objective pattern Problem pattern decomposition specialization Organizing Alternatives pattern Selection pattern Capturing 1 234 5 6 7 Reusing Tool support

4 kinds of NFR patterns for capturing different kinds of NFR knowledge Objective pattern Problem pattern Alternatives pattern 1 Selection pattern 234 Capturing 5 6 7

An objective pattern captures a definition of an NFR as a softgoal (and sub-goals) to be achieved An objective pattern Knowledge Name: FISMA Security Objectives Credential Sources: US FISMA Act of 2002 Authors: Sam Supakkul Endorsements: Known uses: US government agencies Applicability (5W2H questions) Domain (Who): Government Topic (What): Information, data Type (Why): Security Phase (When): Requirements Artifact (Where): World Application (How): Automated Implication (How much): Regulation World [per the WRSPM ref. model]

Demo video: applying an objective pattern In the catalog During the requirements engineering of a project Tools used The NFR Pattern Assistant (utdallas.edu/~supakkul/tools/nfrpassist) The RE-Tools (utdallas.edu/~supakkul/tools/re-tools)

A problem pattern captures soft-problems or obstacles to achieving an NFR softgoal A problem pattern

An alternatives pattern captures alternative means or alternative solutions with side-effect effect information An alternative-solutions pattern

A selection pattern captures an application independent selection scheme Weight-based quantitative selection w(!)=0.5! w(+)=0.5 + Trustworthiness [Security] w(++)=1.0 ++ Retina authentication Fingerprint authentication w=0.25+... w=0.5+... Weight-based Selection = Highest cumulative weight weight(fingerprint) = w(!trust.) x w(+) + = 0.25 + Widely used, but subjective alternatives! Trustworthiness [Security] r(+!)=7 r(++!)=6 + ++ Rank-based Selection = Best cumulative ranking rank(fingerprint) = r(+!trust.) + = 7 + 1 234 5 6 7 Retina authentication Fingerprint authentication r=7+... r=6+... Rank-based qualitative selection Less subjective, but need a ranking scale

Demo video: applying a weight-based selection pattern Before W + W + After Tools used The NFR Pattern Assistant (utdallas.edu/~supakkul/tools/nfrpassist) The RE-Tools (utdallas.edu/~supakkul/tools/re-tools)

Patterns may be organized along the generalization, aggregation, and classification dim. generalization aggregation instantiation classification Objective pattern Problem pattern decomposition specialization Organizing Alternatives pattern Selection pattern Capturing 1 234 5 6 7 Reusing Tool support

A specialized pattern captures more specific knowledge than that of the generalized pattern Generalization super-pattern sub-pattern Aggregation P2 R1 P1 Classification R2 R4 R1' R3 R2' R5 [US FISMA Law] [Payment Card Industry] P1 specializes P2

The specialized pattern is more specific super-pattern in breadth or in depth P2 R2 R1 R4 sub-pattern P1 R1' Generalization R3 R2' R5 Aggregation Classification More specific in breadth More specific in depth P2 P1 P2 P1 R2' Payment Card Industry (PCI): Security = Confidentiality US Law: Security = Confidentiality, Integrity, Avail. PCI concerned with Accountability beyond Privacy R5

A composite pattern assembles smaller patterns to capture a larger chunk of related knowledge Generalization P1 Aggregation Classification P4 P3 P2 P1 combines P2,P3,P4 where P2 succeeds P3 and P3 succeeds P4

A pattern can be used as a template to instantiate occurrence patterns Generalization Aggregation Classification B1 is a binding specification O1 is a specialization of M1 or O1 is sub-goal of M1 w.r.t. reference model R1

Dealing with NFR knowledge is defined by 5 operations generalization aggregation instantiation classification Objective pattern Problem pattern decomposition specialization Organizing Alternatives pattern Selection pattern Capturing 1 234 5 6 7 Reusing Tool support

Pattern operations An action-oriented oriented perspective Example Source Model patternize Credentials Authors Sources Endorsements Known Uses Applicability Who What Why When Where How How much Refinement Rules apply Target Model compose

We define 25 refinement rules for tool support 2 for Objective, 8 for Problem, 10 for Alternatives, 5 for Selection generalization aggregation instantiation classification Objective pattern Problem pattern decomposition specialization Organizing Alternatives pattern Selection pattern Capturing 1 234 5 6 7 Reusing Tool support

Refinement rules are extracted by patternize patternize and used for model transformation by apply apply Before After Security Target M Transform Confidentiality Security Integrity Availability Extracted rule graph succeed Before Security Confidentiality succeed After Security Integrity Availability succeed Privacy NFRDecomposition Refinement rule Before After Before After Before After Proprietary Timeliness Authenticity Non-repudiation Reliability Target M Confidentiality Confidentiality Integrity Integrity Availability Availability Privacy Proprietary Authenticity Non-repudiation Timeliness Reliability

The NFR Pattern Assistant for pattern support The RE-Tools for knowledge modeling capturing organizing reusing utdallas.edu/~supakkul/tools/nfrpassist The NFR Pattern Assistant The RE-Tools StarUML extension framework The NFR Framework The i* Framework KAOS Problem Frames UML (TBD) utdallas.edu/~supakkul/tools/re-tools

The approach and the tools have been applied to the TJX case Break-in wireless network Masquerading user login Steal credit card info Build for reuse for reuse knowledge from TJX in a different project Sample results Build with reuse 1 composite, 5 primitive capture reuse

Limitations (future work) Tool/usability related Model elements not captured with the original position Pattern search and selection are currently manual Some knowledge not captured (need 2 more rules) Need to support more FRs and NFRs integrated knowledge Limited concurrently pattern sharing across groups Approach related Costly and time-consuming to learn the notation and the tool Need more case studies Need to support dealing with NFRs during architecture/design

Summary: The difficulty of capturing, organizing, reusing of NFR knowledge can be alleviated by the approach Difficult to capture Problems, solutions, domain Complete, correct Conceptual modeling and reasoning Difficult to organize Cataloging knowledge Relating similar knowledge General Specific Class Instance Combining knowledge Difficult to reuse Choosing appropriate knowledge Re-creating visual models Features in the approach Objective, problem, alternatives, selection patterns Credentials Captured softgoal graphs By name, type, applicability Specialization, composition, instantiation Applicability info Refinement rules, tool support

Thank you Questions & Comments? generalization aggregation instantiation classification Objective pattern Problem pattern decomposition specialization Organizing Alternatives pattern Selection pattern Capturing 1 234 5 6 7 Reusing Tool support