Ingegneria del Software II, a.a. 2004/05. V.Cortellessa, University of L Aquila
|
|
- Wilfrid Tyrone McBride
- 5 years ago
- Views:
Transcription
1 1
2 2
3 3
4 4
5 5
6 6
7 Non-functional validation of software systems Vittorio Cortellessa Ingegneria del Software II (a.a ) 7
8 Programma della seconda parte del corso Introduction Non-functional validation today Extending UML Reliability Performance Risk New trends in software modeling: Metamodeling, MOF/QVT, UML 2 8
9 NON-FUNCTIONAL VALIDATION TODAY 9
10 Software requirements Functional (FR): statements of services the software system should provide, how it should react to particular inputs and behave in particular situations Non-functional (NFR): constraints on the services offered by the software system affecting the software quality Examples : functional : a password is required to be input after the user logs in non-functional: the operation f must end, on average, 2 seconds after user input 10
11 Early Software Validation Evaluating in the upper lifecycle phases whether the software model does has the ability of doing what the customer wants what the customer wants is (more or less completely and correctly) specified in the software requirement specification 11
12 Software Validation of NFR A crucial issue It is a more common practice to validate a software model vs FR rather than vs NFR Why?! 12
13 Motivations from market laws Different (and often not available) skills required for NFR modeling and validation Short time to deliver, i.e. quickly available low-quality software products seem to be very attractive nowadays! 13
14 Motivations from notation Software developers vocabulary is intrinsically distant from non-functional analysts one architecture implementation specification design requirement response time workload throughput error propagation operational profile failure probability Software development Non-functional analysis 14
15 Motivations from notation Stochastic Process Algebra Bayesian Model Stochastic Petri Net Simulation Markovian Model Queuing Network How can we help a software designer to fill the gap between the worlds? 15
16 Additional intrinsic motivation in case of early software models: Missing information related to NFRs early in the lifecycle because non-functional-related decisions are taken later req. specs possible instance of the final software product modeling decision 16
17 then why pursuing early validation of NFRs? In the early phases of the lifecycle a validation of NFRs may prevent late inconsistencies hard to fix NFRs are ever more critical in modern (possibly distributed and mobile) component-based software systems 17
18 Filling the gap between software development and NFR validation Amount and type of additional info to be embedded into a basic software model in order to perform NFR validation Algorithms to automate the step: basic software model + additional info ready-to-validation model Upon generated a ready-to-validation model has to be evaluated 18
19 What type of additional info? An example : the operational profile How to assign values to the operational profile How this info may affect the NFR validation 19
20 What type of validation? Software performance Software reliability Software risk 20
21 A general scheme Basic Software Model (original notation) Validation of Functional Requirements Additional Information: software annotations Ready-to-validation Model (possibly new notation) Validation of Non-Functional Requirements 21
22 an example MSCs and Statecharts Validation of Functional Requirements Queueing Network Operational profile + Platform features Performance Validation 22
23 an yet another example UML model Validation of Functional Requirements Bayesian model Operational profile + Failure probabilities Reliability Validation 23
24 Suitable attributes of approaches to NFR validation TRANSPARENCY: minimal influence on the adopted software notation and production process (annotations play an important role!) EFFECTIVENESS: (possibly automated) methodologies to transform the software model into a model ready to be validated From art to routine : need of systematic approaches 24
25 EXTENDING UML 25
26 Success of UML as original notation It is suitable to represent the software model in different phases of the lifecycle Different views of the software product provide more than one angle to catch (possibly hidden) non-functional features As a graphical notation, it is open to annotations Annotations may be structured to build profiles (UML extensions) 26
27 27
28 28
29 Need of extending UML In some domains a specialization or extension of UML basic concepts would be extremely useful to refine the rendering of domain-specific concepts and techniques 29
30 A predefined set of : UML profile Stereotypes Tagged Values Constraints that collectively specialize and tailor the UML for a specific domain (e.g., security, WEB applications) by extending either UML metamodel classes or other profile classes Examples of stereotypes, tags and constraints in various domains : navigational class in WEB, detailed host in Performance, etc. 30
31 31
32 32
33 33
34 Programma della seconda parte del corso Introduction Reliability Performance Risk Software reliability A methodology Notations Quality of Service New trends in software modeling: Metamodeling, MOF/QVT, UML 2 34
35 Software system S Ф(C1) C1 Non-functional validation of component-based systems Ф(C2) C2 Somehow interacting Ф : non functional attribute (e.g., reliability) Ф(Cn) Cn COMPOSITION OF NON- FUNCTIONAL ATTRIBUTES Modeling a non-functional attribute of each component and build a model of the non-functional attribute at system level Ε Ф(S) = [Ф(C1) Ф(C2) Ф(Cn)] f(c1,c2, Cn) 35
36 SOFTWARE RELIABILITY VALIDATION 36
37 Reliability informal definition: The probability that a software product (or model) does not fail within a certain interval of time! 37
38 Some useful concepts Fault feature that precludes the software from operating according to its specifications Error the value of the software state differs from the expected one Failure the actual software output (for some input) differs from the expected one 38
39 and an example program modthreeofsquare begin read(s); s := 2*s; s := s mod 3; write(s); end s=2 : no Error s=3 : Error! Fault! s=3,s=2 : no Failure s=4 : Failure! Specification: a function that computes the remainder by 3 of the square of the input value y = (s 2 mod 3) 39
40 Reliability of component-based software Most software reliability techniques treat a program as a monolith. Component-based software is expected to have high reliability as a result of deploying trusted components (think about COTS!). The claims of high reliability need further investigation. 40
41 FROM UML MODELS TO RELIABILITY MODELS: A METHODOLOGY 41
42 An approach based on UML: motivations Studying the sensitivity of the system reliability to changes in reliabilities of single components allows the system architect to select components with suitable reliability characteristics in cases where alternative reusable assets are available (tradeoff cost/reliability) 42
43 An approach based on UML: ideal set of parameters Reliabilities of components Operational profile Reliabilities of hardware devices Error propagation 43
44 Methodological steps 1. Provide annotations for application s UML diagram(s). 2. Use annotations as inputs to reliability calculations. 3. Design level analysis (prediction): 1. The algorithm predicts expected system reliability from provided (assumed, hoped for) component reliabilities. 2. Algorithm supports system-wide sensitivity analysis (what if I provide a more reliable component?). 44
45 UML annotations Annotated Use Case Diagram Annotated Sequence Diagram Actors, or external entities, or user types P ( x ) = q * m i = 1 P(executing use case x) i P ix (interaction of components within a use case) Annotated Deployment Diagram 45
46 Failure probability of component i within scenario j Failure probability of connector k between components l and i within scenario j ψ System failure probability Θ = 1 j= 1 UML annotations Θ i : failure probability of component i (one invocation) Ψ k : failure probability of link k (one message) S K p j θ ij = 1 (1 θi ) = 1 (1 lij ψ k ( N i= 1 (1 θ i ) bp ij bp ij ) Interact( l, i, j) k ( l, i, j) (1 ψ k ) Interact( l, i, j) ) 46
47 Assumptions no error propagation Component failure rates available. Failure Independence. A component s failure probability does not depend on the failure probabilities of the other components. Regularity. A component s failure probability is the same across all the busy periods of a component. Pessimism (fail-and-stop). Component failure results in a system failure. Can be corrected in a corroboration phase. 47
48 An Example A WEB-based transaction processing system (WBTPS) 48
49 Use Cases Local Operations : 1 scenario. Remote Read : 2 scenarios. Remote Write : 1 scenario. 49
50 Sequence Diagram 50
51 Deployment Diagram 51
52 From Annotations to Reliability 52
53 Connector usage table 53
54 Component Reliabilities Component Failure Probabilities as PDFs (Beta Distributions) 54
55 System Reliability Prediction 95% confidence interval of system failure probability is (0.13, 0.17). Reliability range (0.83, 0.87) Plot of Prior Probability Density Function of the System Failure Probability Θ S fitted to the normalized histogram from simulation observations 55
56 Sensitivity Analysis Increase / decrease reliabilities of individual components and observe the impact on overall system reliability. Improve Web servers C 5 : C 6 : Θ S :0.13 Θ S : 0.11 Worse remote servers C 11 : C 12 : Θ S : about 2% worse 56
57 Ф(C1) C1 about the error propagation Ф(C2) Somehow interacting Ф(Cn) Cn Reliability of each component may not suffice C2 component fail-and-stop A new parameter : error permeability 57
58 NOTATIONS FOR SOFTWARE RELIABILITY: An UML profile 58
59 The reliability domain model REuser REhost * * 1...* REservice * REcomponent * 1...* REconnector 1 1 No class has been introduced from scratch All the concepts relevant for the domain are expressed as attributes of these classes 59
60 The reliability domain model Inheritance relationships between concepts introduced in the UML profile for SPT and our classes Usage Demand (from Resource Usage Model) Active Resource (from Resource Types) REuser REcomponent Passive Resource (from Resource Types) Resource Instance (from Core Resource Model) REhost REconnector REservice 60
61 UML new stereotypes and tags Stereotype Base Class Tags Stereotype Base Class Tags «REuser» Classifier ClassifierRole Interactor Instance REaccessprob REserviceprob «REcomponent» Classifier ClassifierRole Component Instance REcompfailprob REbp Stereotype Base Class Tags «REhost» Node Classifier ClassifierRole REindexHost Stereotype Base Class Tags «REservice» Classifier REprob Stereotype Base Class Tags «REconnector» Message Stimulus AssociationRole REconnfailprob REnummsg CONSTRAINTS In case of nested components, REcompfailprob of outer components is a function (that depends on the type of nesting) of REcompfailprob of inner components 61
62 UML new stereotypes and tags Stereotype Base Class Tags Stereotype Base Class Tags «REuser» Classifier ClassifierRole Interactor Instance REaccessprob REserviceprob «REcomponent» Classifier ClassifierRole Component Instance REcompfailprob REbp Stereotype Base Class Tags «REhost» Node Classifier ClassifierRole REindexHost Stereotype Base Class Tags «REservice» Classifier REprob Stereotype Base Class Tags «REconnector» Message Stimulus AssociationRole REconnfailprob REnummsg CONSTRAINTS For each pair of components (or hosts), once fixed a direction, REconnfailprob assumes the same value over all the services 62
63 UML new stereotypes and tags Stereotype Base Class Tags Stereotype Base Class Tags «REuser» Classifier ClassifierRole Interactor Instance REaccessprob REserviceprob «REcomponent» Classifier ClassifierRole Component Instance REcompfailprob REbp Stereotype Base Class Tags «REhost» Node Classifier ClassifierRole REindexHost Stereotype Base Class Tags «REservice» Classifier REprob Stereotype «REconnector» Base Class Message Stimulus AssociationRole Tags REconnfailprob REnummsg CONSTRAINTS (Optionally but suitably) due to the low reliability of remote connections, REconnfailprob assumes a larger value over remote interactions (i.e., interactions among components on different hosts) than over local interactions 63
64 UML new stereotypes and tags Stereotype Base Class Tags Stereotype Base Class Tags «REuser» Classifier ClassifierRole Interactor Instance REaccessprob REserviceprob «REcomponent» Classifier ClassifierRole Component Instance REcompfailprob REbp Stereotype Base Class Tags «REhost» Node Classifier ClassifierRole REindexHost Stereotype Base Class Tags «REservice» Classifier REprob Stereotype Base Class Tags «REconnector» Message Stimulus AssociationRole REconnfailprob REnummsg CONSTRAINTS REaccessprob values overall the types of users sum up to 1 64
65 UML new stereotypes and tags Stereotype Base Class Tags Stereotype Base Class Tags «REuser» Classifier ClassifierRole Interactor Instance REaccessprob REserviceprob «REcomponent» Classifier ClassifierRole Component Instance REcompfailprob REbp Stereotype Base Class Tags «REhost» Node Classifier ClassifierRole REindexHost Stereotype Base Class Tags «REservice» Classifier REprob Stereotype Base Class Tags «REconnector» Message Stimulus AssociationRole REconnfailprob REnummsg CONSTRAINTS REserviceprob values overall the services sum up to 1 65
66 UML new stereotypes and tags Stereotype Base Class Tags Stereotype Base Class Tags «REuser» Classifier ClassifierRole Interactor Instance REaccessprob REserviceprob «REcomponent» Classifier ClassifierRole Component Instance REcompfailprob REbp Stereotype Base Class Tags «REhost» Node Classifier ClassifierRole REindexHost Stereotype Base Class Tags «REservice» Classifier REprob Stereotype Base Class Tags «REconnector» Message Stimulus AssociationRole REconnfailprob REnummsg CONSTRAINTS (Optionally but suitably) for each REservice, REprob is obtained as the sum (over all REuser) of the products between REaccessprob and REserviceprob 66
67 Using new stereotypes in UML diagrams: a case study ELEVATOR CONTROL SYSTEM schedule elevators to respond to requests from users at various floors control the motion of the elevators between floors «REservice» Select Destination {REprob = 0.24} ««Include» «Include» «REservice» Stop Elevator at Floor {REprob = 0.4} «REuser» Elevator User {REaccessprob = 0.6, REserviceprob = (0.4, sd), (0.6, re)} «REservice» Request Elevator {REprob = 0.36} ««Include» «REuser» Dispatch Arrival Sensor «Include» {REaccessprob = 0.4, Elevator REserviceprob = (1, sef)} USE CASE DIAGRAM 67
68 Using new stereotypes in UML diagrams: a case study : Elevator User << REuser >> {REaccessprob = 0.6, REserviceprob = (0.4,sd) (0.6,re)} : Elevator Button Interface << REcomponent >> {REcompfailprob = 0.009, REbp = 1} : Elevator Manager << REcomponent >> {REcompfailprob = 0.001, REbp = 2} : Elevator Status & Plan << REcomponent >> {REcompfailprob = 0.001, REbp = 2} : Scheduler << REcomponent >> {REcompfailprob = 0.002, REbp = 1} : Elevator Control << REcomponent >> {REcompfailprob = 0.001, REbp = 1} Elevator Button Request Elevator Request Update Acknowledge << REconnector >> {REconnfailprob = 0.0, REnummsg = 1} Elevator Commitment [is idle] Up or Down << REconnector >> {REconnfailprob = 0.0, REnummsg = 1} D1: Up (or Down) Request << REconnector >> {REconnfailprob = 0.003, REnummsg = 1} << REconnector >> {REconnfailprob = 0.0, REnummsg = 3} Collaboration Diagram: Stop Elevator at Floor Use Case A2: Approaching Floor ( Floor # ) SEQUENCE DIAGRAM OF SELECT DESTINATION USE CASE 68
69 Using new stereotypes in UML diagrams: a case study «REconnector» {REconnfailprob = 0.003, REnummsg = 1} «REconnector» {REconnfailprob = 0, REnummsg = 1} : Elevator User «REuser» {REaccessprob= 0.6, REserviceprob = ((0.4,sd) (0.6,re)} E1: Elevator Button Request : Elevator Button Interface «REcomponent» {REcompfailprob = 0.009, REbp = 1} E2: Elevator Request : Elevator Manager «REcomponent» {REcompfailprob = 0.001, REbp = 2} E3: Update E5: Elevator Commitment : Scheduler «REcomponent» {REcompfailprob = 0.002, REbp = 1} «REconnector» {REconnfailprob = 0, REnummsg = 3} E5a: Up or Down E4: Acknowledge «REconnector» {REconnfailprob = 0, REnummsg = 1} : Elevator Status & Plan «REcomponent» {REcompfailprob = 0.001, REbp = 1} E6: Up or Down : Elevator Control «REcomponent» {REcompfailprob = 0.001, REbp = 1} COLLABORATION DIAGRAM OF SELECT DESTINATION USE CASE 69
70 Using new stereotypes in UML diagrams: a case study Motor Server Manager Server C16 «REcomponent» {REcompfailprob = 0.001} C18 «REcomponent» {REcompfailprob = 0.002} C17 «REcomponent» {REcompfailprob = 0.001} C19 «REcomponent» {REcompfailprob = 0.001} «REconnector» {REconnfailprob = 0.002} C11 C12 «REcomponent» «REcomponent» {REcompfailprob = 0.002} {REcompfailprob = 0.003} C13 «REcomponent» {REcompfailprob = 0.003} C14 «REcomponent» {REcompfailprob = 0.004} C15 «REcomponent» {REcompfailprob = 0.003} «REconnector» {REconnfailprob = 0.005} «REconnector» {REconnfailprob = 0.003} C5 C6 «REcomponent» «REcomponent» {REcompfailprob = 0.009} {REcompfailprob = 0.009} C7 «REcomponent» {REcompfailprob = 0.008} C8 «REcomponent» {REcompfailprob = 0.009} C1 C2 «REcomponent» «REcomponent» {REcompfailprob = 0.009} {REcompfailprob = 0.008} C9 C10 «REcomponent» «REcomponent» {REcompfailprob = 0.008} {REcompfailprob = 0.008} C3 «REcomponent» {REcompfailprob = 0.003} C4 «REcomponent» {REcompfailprob = 0.007} Lamp Server DEPLOYMENT DIAGRAM Sensor Server 70
71 Automated construction of a reliability model from annotated UML diagrams This type of model Ф(S) = Ф(C1) Ф(C2) Ф(Cn) can become as follows for reliability modeling FP(S) = 1 - Σ j=1 K p(j) ( Π i=1 N (1-compfp(i)) bp(i,j) Π ("(l,i)) (1-connfp(l,i)) nms(l,i,j) ) REservice(j).REprob REcomponent(i).REcompfailprob REcomponent(i).REbp(j) REconnector(l,i).REnummsg(j) REconnector(l,i).REconnfailprob 71
72 Automated construction of a reliability model from annotated UML diagrams FP(elev_contr_sys) = 1 ( p(select_destination) ( (1-compfp(But_Int)) (1-compfp(Manager)) 2 (1-compfp(Stat&Plan)) 2 (1-compfp(Scheduler)) (1-compfp(Control)) (1-connfp(But_Int, Manager)) (1-connfp(Manager, Stat&Plan)) 3 (1-connfp(Manager, Scheduler)) (1-connfp(Stat&Plan, Control)) ) + p(request_elevator) REL RE + p(stop_elevator_at_floor) REL SEF ) Reliability of the Stop Elevator at Floor use case Reliability of the Select Destination use case Reliability of the Request Elevator use case 72
73 Automated construction of a reliability model from annotated UML diagrams and the numerical result upon taking values of tags from UML diagrams: FP(elev_contr_sys) = 1 ( 0.24 ( ( ) ( ) 2 ( ) 2 ( ) ( ) ( ) (1-0.0) 3 (1-0.0) (1-0.0) ) REL RE REL SEF ) = = 1 ( REL RE REL SEF ) 73
74 A WIDER CONCEPT: Quality of Service 74
75 Quality of Service and Fault Tolerance QoS deals with the non-functional aspects of a system that determine the satisfaction level of its users QoS may be intended as a multi-attribute resulting from the combination of basic non-functional attributes such as performance and usability Fault Tolerance is a very strictly related attribute that assesses the capability of a system to deliver continuous and failure-free service 75
76 Quality of Service and Fault Tolerance Multimedia applications Heterogeneous hardware platforms Distributed software systems Joint modeling and analysis of QoS and FT issues in order to develop QoS- and FT-aware software UML profile for modelling Quality of Service and Fault Tolerance characteristics and mechanisms OMG Adopted Specification, ptc/ , June
77 Relationships among UML profiles in the field of non-functional validation Meta-meta-model MOF P R O F I L E S Meta-model Model Other QoS and FT Component-based Reliability UML Other... Schedulability, Performance and Time Other... 77
Presenting an Excusable Model of Enterprise Architecture for Evaluation of Reliability using Colored Petri Nets
Volume 3 Issue 1, 56-62, 2014, ISSN: 2319 8656 Presenting an Excusable Model of Enterprise Architecture for Evaluation of Reliability using Colored Petri Nets Mohammad Azizi Department of Computer, Science
More informationPerformability Modeling & Analysis in UML
Performability Modeling & Analysis in UML March 2-3, 2010: PaCo second mid-term meeting (L'Aquila, Italy) Luca Berardinelli luca.berardinelli@univaq.it Dipartimento di Informatica Università dell Aquila
More informationCourse: Advanced Software Engineering. academic year: Lecture 14: Software Dependability
Course: Advanced Software Engineering academic year: 2011-2012 Lecture 14: Software Dependability Lecturer: Vittorio Cortellessa Computer Science Department University of L'Aquila - Italy vittorio.cortellessa@di.univaq.it
More informationModelling in Enterprise Architecture. MSc Business Information Systems
Modelling in Enterprise Architecture MSc Business Information Systems Models and Modelling Modelling Describing and Representing all relevant aspects of a domain in a defined language. Result of modelling
More informationSOFTWARE ARCHITECTURE & DESIGN INTRODUCTION
SOFTWARE ARCHITECTURE & DESIGN INTRODUCTION http://www.tutorialspoint.com/software_architecture_design/introduction.htm Copyright tutorialspoint.com The architecture of a system describes its major components,
More informationIngegneria del Software Corso di Laurea in Informatica per il Management. Introduction to UML
Ingegneria del Software Corso di Laurea in Informatica per il Management Introduction to UML Davide Rossi Dipartimento di Informatica Università di Bologna Modeling A model is an (abstract) representation
More informationObject-Oriented Analysis and Design Using UML (OO-226)
Object-Oriented Analysis and Design Using UML (OO-226) The Object-Oriented Analysis and Design Using UML course effectively combines instruction on the software development processes, objectoriented technologies,
More informationSUMMARY: MODEL DRIVEN SECURITY
SUMMARY: MODEL DRIVEN SECURITY JAN-FILIP ZAGALAK, JZAGALAK@STUDENT.ETHZ.CH Model Driven Security: From UML Models to Access Control Infrastructres David Basin, Juergen Doser, ETH Zuerich Torsten lodderstedt,
More informationHistory of object-oriented approaches
Prof. Dr. Nizamettin AYDIN naydin@yildiz.edu.tr http://www.yildiz.edu.tr/~naydin Object-Oriented Oriented Systems Analysis and Design with the UML Objectives: Understand the basic characteristics of object-oriented
More informationUML 2.0 State Machines
UML 2.0 State Machines Frederic.Mallet@unice.fr Université Nice Sophia Antipolis M1 Formalisms for the functional and temporal analysis With R. de Simone Objectives UML, OMG and MDA Main diagrams in UML
More informationUNIT I. 3. Write a short notes on process view of 4+1 architecture. 4. Why is object-oriented approach superior to procedural approach?
Department: Information Technology Questions Bank Class: B.E. (I.T) Prof. Bhujbal Dnyaneshwar K. Subject: Object Oriented Modeling & Design dnyanesh.bhujbal11@gmail.com ------------------------------------------------------------------------------------------------------------
More informationTTool Training. I. Introduction to UML
TTool Training I. Introduction to UML Ludovic Apvrille ludovic.apvrille@telecom-paris.fr Eurecom, Office 223 Ludovic Apvrille TTool Training - 2004. Slide #1 Outline of the Training Introduction to UML
More informationOral Questions. Unit-1 Concepts. Oral Question/Assignment/Gate Question with Answer
Unit-1 Concepts Oral Question/Assignment/Gate Question with Answer The Meta-Object Facility (MOF) is an Object Management Group (OMG) standard for model-driven engineering Object Management Group (OMG)
More information3rd Lecture Languages for information modeling
3rd Lecture Languages for information modeling Agenda Languages for information modeling UML UML basic concepts Modeling by UML diagrams CASE tools: concepts, features and objectives CASE toolset architecture
More informationMeta-Modeling and Modeling Languages
member of Meta-Modeling and Modeling Languages Models and Modelling Model A reproduction of the part of reality which contains the essential aspects to be investigated. Modelling Describing and Representing
More informationRich Hilliard 20 February 2011
Metamodels in 42010 Executive summary: The purpose of this note is to investigate the use of metamodels in IEEE 1471 ISO/IEC 42010. In the present draft, metamodels serve two roles: (1) to describe the
More informationLecture 16: (Architecture IV)
Lecture 16: (Architecture IV) Software System Design and Implementation ITCS/ITIS 6112/8112 091 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte Oct.
More informationMetamodeling. Janos Sztipanovits ISIS, Vanderbilt University
Metamodeling Janos ISIS, Vanderbilt University janos.sztipanovits@vanderbilt.edusztipanovits@vanderbilt edu Content Overview of Metamodeling Abstract Syntax Metamodeling Concepts Metamodeling languages
More informationIntroduction to Modeling. Lecture Overview
Lecture Overview What is a Model? Uses of Modeling The Modeling Process Pose the Question Define the Abstractions Create the Model Analyze the Data Model Representations * Queuing Models * Petri Nets *
More informationModel Driven Development Unified Modeling Language (UML)
Model Driven Development Unified Modeling Language (UML) An Overview UML UML is a modeling notation standardized by OMG (proposal 1997, ver.1.1 in 1998, ver. 2.0 in 2004) now in 2.4.1 mature based on notations
More informationTwo Early Performance Analysis Approaches at work on Simplicity System
Two Early Performance Analysis Approaches at work on Simplicity System Antinisca Di Marco 1,2 and Francesco Lo Presti 2 1 Computer Science Department, University College London, Gower Street, London WC1E
More informationBasic Structural Modeling. Copyright Joey Paquet,
Basic Structural Modeling Copyright Joey Paquet, 2000 1 Part I Classes Copyright Joey Paquet, 2000 2 Classes Description of a set of objects sharing the same attributes, operations and semantics Abstraction
More informationJOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at http://www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2004 Vol. 3, No. 7, July-August 2004 UML 2 Activity and Action Models Part 5: Partitions
More informationModeling Issues Modeling Enterprises. Modeling
Modeling Issues Modeling Enterprises SE502: Software Requirements Engineering Modeling Modeling can guide elicitation: It can help you figure out what questions to ask It can help to surface hidden requirements
More informationUnified Modeling Language (UML)
Unified Modeling Language (UML) Troy Mockenhaupt Chi-Hang ( Alex) Lin Pejman ( PJ ) Yedidsion Overview Definition History Behavior Diagrams Interaction Diagrams Structural Diagrams Tools Effect on Software
More informationEVENTS AND SIGNALS. Figure 1: Events. kinds of events Signal Event
EVENTS AND SIGNALS Events An event is the specification of a significant occurrence that has a location in time and space. Any thing that happens is modeled as an event in UML. In the context of state
More informationA simple method for deriving LQN-models from software-models represented as UML diagrams
A simple method for deriving LQN-models from software-models represented as UML diagrams B.Bharathi 1 and G.Kulanthaivel 2 1 Sathyabama University, Chennai-119 2 National Institute of Technical Teacher
More informationxuml, AADL and Beyond
xuml and AADL xuml, AADL and Beyond Chris Raistrick www.kc.com xuml and AADL xuml Overview Chris Raistrick www.kc.com Platform Independent Model A Platform Independent Model (PIM) is a technology agnostic
More informationSoftware Engineering with Objects and Components Open Issues and Course Summary
Software Engineering with Objects and Components Open Issues and Course Summary Massimo Felici Software Engineering with Objects and Components Software development process Lifecycle models and main stages
More informationDRAFT. The Descartes Meta-Model. Samuel Kounev, Fabian Brosig, Nikolaus Huber
escartes The Descartes Meta-Model Samuel Kounev, Fabian Brosig, Nikolaus Huber Descartes Research Group Institute for Program Structures and Data Organization Karlsruhe Institute of Technology (KIT), Germany
More informationDescribing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms?
Describing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms? CIS 8690 Enterprise Architectures Duane Truex, 2013 Cognitive Map of 8090
More informationIntroduction to Software Engineering
Introduction to Software Engineering Gérald Monard Ecole GDR CORREL - April 16, 2013 www.monard.info Bibliography Software Engineering, 9th ed. (I. Sommerville, 2010, Pearson) Conduite de projets informatiques,
More informationSoftware Engineering from a
Software Engineering from a modeling perspective Robert B. France Dept. of Computer Science Colorado State University USA france@cs.colostate.edu Softwaredevelopment problems Little or no prior planning
More informationRequirements and Design Overview
Requirements and Design Overview Robert B. France Colorado State University Robert B. France O-1 Why do we model? Enhance understanding and communication Provide structure for problem solving Furnish abstractions
More informationArchitecture and the UML
Architecture and the UML Models, Views, and A model is a complete description of a system from a particular perspective Use Case Use Case Sequence Use Case Use Case Use Case State State Class State State
More informationModel-based Transition from Requirements to High-level Software Design
Model-based Transition from Requirements to High-level Software Institut für Computertechnik ICT Institute of Computer Technology Hermann Kaindl Vienna University of Technology, ICT Austria System overview
More informationCHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview
CHAPTER 1 Topic: UML Overview After studying this Chapter, students should be able to: Describe the goals of UML. Analyze the History of UML. Evaluate the use of UML in an area of interest. CHAPTER 1:
More informationA Capacity Planning Methodology for Distributed E-Commerce Applications
A Capacity Planning Methodology for Distributed E-Commerce Applications I. Introduction Most of today s e-commerce environments are based on distributed, multi-tiered, component-based architectures. The
More informationcorso Pragmatic Roadmapping with IBM Rational System Architect and ArchiMate White Paper Executive Summary Introduction By Martin Owen, CEO, CORSO
corso White Paper Pragmatic Roadmapping with IBM Rational System Architect and ArchiMate By Martin Owen, CEO, CORSO Executive Summary Roadmapping is a fundamental part of strategic planning and enterprise
More informationContent(2) Contribution of OOT in Software Engineering History of SE Technologies and Contribution of OOT JAIST Koichiro Ochimizu
Content(2) Object-oriented Software Development Methodology Outline of Unified Process and Use-case Driven Approach Elevator Control System: Problem Description and Use-case Model Elevator Control System:
More informationRequirements Elicitation
Requirements Elicitation Introduction into Software Engineering Lecture 4 25. April 2007 Bernd Bruegge Applied Software Engineering Technische Universitaet Muenchen 1 Outline Motivation: Software Lifecycle
More informationSWE 760 Lecture 1: Introduction to Analysis & Design of Real-Time Embedded Systems
SWE 760 Lecture 1: Introduction to Analysis & Design of Real-Time Embedded Systems Hassan Gomaa References: H. Gomaa, Chapters 1, 2, 3 - Real-Time Software Design for Embedded Systems, Cambridge University
More informationMinsoo Ryu. College of Information and Communications Hanyang University.
Software Reuse and Component-Based Software Engineering Minsoo Ryu College of Information and Communications Hanyang University msryu@hanyang.ac.kr Software Reuse Contents Components CBSE (Component-Based
More informationContinuous protection to reduce risk and maintain production availability
Industry Services Continuous protection to reduce risk and maintain production availability Managed Security Service Answers for industry. Managing your industrial cyber security risk requires world-leading
More informationRepresenting System Architecture
Representing System Architecture Logical View Implementation View End-user Functionality Programmers Software management Use Case View System integrators Performance Scalability Throughput Process View
More informationThe three element types, connected by relations, can form sentences of sorts.
Archi Overview ArchiMate ArchiMate is built from three types of elements: elements that act (active elements) elements that represent the behavior of those elements that act (behavioral elements) elements
More informationARTICLE IN PRESS Performance Evaluation ( )
Performance Evaluation ( ) Contents lists available at ScienceDirect Performance Evaluation journal homepage: www.elsevier.com/locate/peva Parametric performance completions for model-driven performance
More informationAUTOMATED BEHAVIOUR REFINEMENT USING INTERACTION PATTERNS
MASTER THESIS AUTOMATED BEHAVIOUR REFINEMENT USING INTERACTION PATTERNS C.J.H. Weeïnk FACULTY OF ELECTRICAL ENGINEERING, MATHEMATICS AND COMPUTER SCIENCE SOFTWARE ENGINEERING EXAMINATION COMMITTEE dr.
More informationCalgary: 10th Floor Bankers Hall, West Tower 888-3rd Street SW, Calgary, AB T2P 5C5 p: f:
Modelling Using Archimate and Sparx EA Course Number: MOD-300 Format: Instructor Led, Classroom or Virtual Standard Duration: 36 hours, can be shortened to 24 hours for experienced audiences This 36 hour
More informationAlignment of Business and IT - ArchiMate. Dr. Barbara Re
Alignment of Business and IT - ArchiMate Dr. Barbara Re What is ArchiMate? ArchiMate is a modelling technique ("language") for describing enterprise architectures. It presents a clear set of concepts within
More informationTop-Down Network Design
Top-Down Network Design Chapter Two Analyzing Technical Goals and Tradeoffs Copyright 2010 Cisco Press & Priscilla Oppenheimer 1 Technical Goals Scalability Availability Performance Security Manageability
More informationThe ATCP Modeling Framework
The ATCP 2+9+1 Modeling Framework Bobbi Underbakke Adaptive Team Collaboration, Inc. 800.837.0677 atcprocess.com Adaptive Team Collaboration, Inc. March 22, 2005 Chris Armstrong Armstrong Process Group,
More informationOMG Specifications for Enterprise Interoperability
OMG Specifications for Enterprise Interoperability Brian Elvesæter* Arne-Jørgen Berre* *SINTEF ICT, P. O. Box 124 Blindern, N-0314 Oslo, Norway brian.elvesater@sintef.no arne.j.berre@sintef.no ABSTRACT:
More informationObject-Oriented Design
Object-Oriented Design Lecturer: Raman Ramsin Lecture 10: Analysis Packages 1 Analysis Workflow: Packages The analysis workflow consists of the following activities: Architectural analysis Analyze a use
More informationDesign of Embedded Systems
Design of Embedded Systems José Costa Software for Embedded Systems Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 2015-01-02 José Costa (DEI/IST) Design of Embedded Systems 1
More informationSemantics-Based Integration of Embedded Systems Models
Semantics-Based Integration of Embedded Systems Models Project András Balogh, OptixWare Research & Development Ltd. n 100021 Outline Embedded systems overview Overview of the GENESYS-INDEXYS approach Current
More informationOO Analysis and Design with UML 2 and UP
OO Analysis and Design with UML 2 and UP Dr. Jim Arlow, Zuhlke Engineering Limited Clear View Training 2008 v2.5 1 UML principles Clear View Training 2008 v2.5 2 1.2 What is UML? Unified Modelling Language
More informationModel-Driven Architecture, the revolution of software engineering
Model-Driven Architecture, the revolution of software engineering Giovanni Piemontese, Guido Diodato {gpe08001, gdo08001}@student.mdh.se Università degli Studi dell'aquila October 30, 2008 Abstract Nowadays,
More informationInvestigation of System Timing Concerns in Embedded Systems: Tool-based Analysis of AADL Models
Investigation of System Timing Concerns in Embedded Systems: Tool-based Analysis of AADL Models Peter Feiler Software Engineering Institute phf@sei.cmu.edu 412-268-7790 2004 by Carnegie Mellon University
More informationSecurity Risk Management Domain Model
Lecture 2: Security Modelling Understanding security goals and secure business activities Dr. Raimundas Matulevičius email: rma@ut.ee 1" Security Risk Management Domain Model "2"" Goals and Questions What
More informationApplying MDA Modeling to Development of Real-Time Software
Applying MDA Modeling to Development of Real-Time Software Using a model-driven architecture approach to developing real-time systems offers developers enhanced communication of the requirements from domain
More informationObject-Oriented and Classical Software Engineering
Slide 16.1 Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach srs@vuse.vanderbilt.edu CHAPTER 16 Slide 16.2 MORE ON UML 1 Chapter Overview Slide
More information06. Analysis Modeling
06. Analysis Modeling Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 Overview of Analysis Modeling 1 Requirement Analysis 2 Analysis Modeling Approaches
More informationQoS-aware model-driven SOA using SoaML
QoS-aware model-driven SOA using SoaML Niels Schot A thesis submitted for the degree of MSc Computer Science University of Twente EEMCS - TRESE: Software Engineering Group Examination committee: Luís Ferreira
More information20489: Developing Microsoft SharePoint Server 2013 Advanced Solutions
20489: Developing Microsoft SharePoint Server 2013 Advanced Solutions Length: 5 days Audience: Developers Level: 300 OVERVIEW This course provides SharePoint developers the information needed to implement
More informationA Goal-Oriented Approach for Optimizing Non-Functional Requirements in Web Applications
A Goal-Oriented Approach for Optimizing Non-Functional Requirements in Web Applications José Alfonso Aguilar, Irene Garrigós, and Jose-Norberto Mazón Lucentia-DLSI University of Alicante, E-03080, San
More informationAutomated Reliability Prediction & Analysis of SwAs
Automated Reliability Prediction & Analysis of SwAs jmfranco [at] dei.uc.pt Postgraduate Colloquium Series 2012 Outline Motivation Main Goal Background Proposed Approach Experiments & Validation Conclusions
More informationSimulation Modeling of UML Software Architectures
Simulation ing of UML Software Architectures Moreno Marzolla Dipartimento di Informatica Università Ca' Foscari di Venezia marzolla@dsi.unive.it Talk Outline Motivations and General Principles Contribution
More informationWELCOME TO ITIL FOUNDATIONS PREP CLASS AUBREY KAIGLER
WELCOME TO ITIL FOUNDATIONS PREP CLASS AUBREY KAIGLER 2 Demand Management Demand management: The process used to make investmentrelated decisions across the enterprise. Pattern Pattern of of Business Activity
More information10.1 Big Objects, Business Objects, and UML Components
II Black-Box Composition Systems 10. Finding Business s in a -Based Development Process Literature J. Cheesman, J. Daniels. UML s. Addison-Wesley. 1. The UML component model 2. Business component model
More informationUnit Wise Questions. Unit-1 Concepts
Unit Wise Questions Unit-1 Concepts Q1. What is UML? Ans. Unified Modelling Language. It is a Industry standard graphical language for modelling and hence visualizing a blue print of all the aspects of
More informationEmpAnADa Project. Christian Lange. June 4 th, Eindhoven University of Technology, The Netherlands.
EmpAnADa Project C.F.J.Lange@tue.nl June 4 th, 2004 Eindhoven University of Technology, The Netherlands Outline EmpAnADa introduction Part I Completeness and consistency in detail Part II Background UML
More informationUML 2.0 UML 2.0. Scott Uk-Jin Lee. Division of Computer Science, College of Computing Hanyang University ERICA Campus
UML 2.0 Division of Computer Science, College of Computing Hanyang University ERICA Campus Introduction to UML 2.0 UML Unified Modeling Language Visual language for specifying, constructing and documenting
More informationADELFE FRAGMENTATION
ADELFE FRAGMENTATION Tom Jorquera Christine Maurel Frédéric Migeon Marie-Pierre Gleizes Carole Bernon Noélie Bonjean IRIT Université Paul Sabatier 118, route de Narbonne 31 062 Toulouse Cedex 9 Rapport
More informationCreating and Analyzing Software Architecture
Creating and Analyzing Software Architecture Dr. Igor Ivkovic iivkovic@uwaterloo.ca [with material from Software Architecture: Foundations, Theory, and Practice, by Taylor, Medvidovic, and Dashofy, published
More informationTowards a PIM for virtual prototyping
Towards a PIM for virtual prototyping Adel SGHAIER, Thierry SORIANO, Skander TURKI Mechatronics department LIISIM SUPMECA Maison des technologies 83000 Toulon FRANCE Abstract: We work on the way of modelling
More informationMei Nagappan. How the programmer wrote it. How the project leader understood it. How the customer explained it. How the project leader understood it
Material and some slide content from: - Software Architecture: Foundations, Theory, and Practice - Elisa Baniassad - Reid Holmes How the customer explained it How the project leader understood it How the
More informationModel Driven Engineering (MDE)
Model Driven Engineering (MDE) Yngve Lamo 1 1 Faculty of Engineering, Bergen University College, Norway 26 April 2011 Ålesund Outline Background Software Engineering History, SE Model Driven Engineering
More informationChapter 4. Capturing the Requirements. 4th Edition. Shari L. Pfleeger Joanne M. Atlee
Chapter 4 Capturing the Requirements Shari L. Pfleeger Joanne M. Atlee 4th Edition It is important to have standard notations for modeling, documenting, and communicating decisions Modeling helps us to
More informationSoftware Architecture in Action. Flavio Oquendo, Jair C Leite, Thais Batista
Software Architecture in Action Flavio Oquendo, Jair C Leite, Thais Batista Motivation 2 n In this book you can learn the main software architecture concepts and practices. n We use an architecture description
More informationComputation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM):
viii Preface The software industry has evolved to tackle new approaches aligned with the Internet, object-orientation, distributed components and new platforms. However, the majority of the large information
More informationOMG Modeling Glossary B
OMG Modeling Glossary B This glossary defines the terms that are used to describe the Unified Modeling Language (UML) and the Meta Object Facility (MOF). In addition to UML and MOF specific terminology,
More informationDEVELOPING MICROSOFT SHAREPOINT SERVER 2013 ADVANCED SOLUTIONS. Course: 20489A; Duration: 5 Days; Instructor-led
CENTER OF KNOWLEDGE, PATH TO SUCCESS Website: DEVELOPING MICROSOFT SHAREPOINT SERVER 2013 ADVANCED SOLUTIONS Course: 20489A; Duration: 5 Days; Instructor-led WHAT YOU WILL LEARN This course provides SharePoint
More informationEuropean Component Oriented Architecture (ECOA ) Collaboration Programme: Architecture Specification Part 2: Definitions
European Component Oriented Architecture (ECOA ) Collaboration Programme: Part 2: Definitions BAE Ref No: IAWG-ECOA-TR-012 Dassault Ref No: DGT 144487-D Issue: 4 Prepared by BAE Systems (Operations) Limited
More informationEnterprise Architect Training Courses
On-site training from as little as 135 per delegate per day! Enterprise Architect Training Courses Tassc trainers are expert practitioners in Enterprise Architect with over 10 years experience in object
More informationFuture-ready IT Systems with Performance Prediction using Analytical Models
Future-ready IT Systems with Performance Prediction using Analytical Models Madhu Tanikella Infosys Abstract Large and complex distributed software systems can impact overall software cost and risk for
More informationThe Unified Modelling Language. Example Diagrams. Notation vs. Methodology. UML and Meta Modelling
UML and Meta ling Topics: UML as an example visual notation The UML meta model and the concept of meta modelling Driven Architecture and model engineering The AndroMDA open source project Applying cognitive
More informationCHAPTER 5 CO:-Sketch component diagram using basic notations 5.1 Component Diagram (4M) Sample Component Diagram 5.2 Deployment Diagram (8M)
CHAPTER 5 CO:-Sketch component diagram using basic notations 5.1 Component Diagram (4M) Sample Component Diagram 5.2 Deployment Diagram (8M) Sample Deployment diagram Component diagrams are different in
More informationIntroduction to ISO/IEC 27001:2005
Introduction to ISO/IEC 27001:2005 For ISACA Melbourne Chapter Technical Session 18 th of July 2006 AD Prepared by Endre P. Bihari JP of Performance Resources What is ISO/IEC 17799? 2/20 Aim: Creating
More informationPisaTel Meeting Roma, 29 novembre 2007
Istituto di Scienza e Tecnologie dell'informazione A. Faedo Software Engineering Laboratory Tool support for model driven development in practice Antonino Sabetta ISTI-CNR, Pisa PisaTel Meeting Roma, 29
More informationINTERNAL ASSESSMENT TEST III Answer Schema
INTERNAL ASSESSMENT TEST III Answer Schema Subject& Code: Object-Oriented Modeling and Design (15CS551) Sem: V ISE (A & B) Q. No. Questions Marks 1. a. Ans Explain the steps or iterations involved in object
More informationMethods for requirements engineering
Methods for requirements engineering Objectives To explain the role of methods and techniques in requirements engineering To introduce data-flow modelling To introduce semantic data modelling To introduce
More informationUse Case Model. Static Structure. Diagram. Collaboration. Collaboration. Diagram. Collaboration. Diagram. Diagram. Activity. Diagram.
!"# $%&' !" #" $%%&&& ! Static Structure Diagram Collaboration Collaboration Diagram Collaboration Diagram Diagram Activity Diagram CRC Card CRC Card UML defines a standard notation for object-oriented
More informationCurriculum Guide. ThingWorx
Curriculum Guide ThingWorx Live Classroom Curriculum Guide Introduction to ThingWorx 8 ThingWorx 8 User Interface Development ThingWorx 8 Platform Administration ThingWorx 7.3 Fundamentals Applying Machine
More informationAdaptability Evaluation at Software Architecture Level
The Open Software Engineering Journal, 2008, 2, 1-30 1 Adaptability Evaluation at Software Architecture Level Open Access Pentti Tarvainen* VTT Technical Research Centre of Finland, Kaitoväylä 1, P.O.
More informationThe Process of Software Architecting
IBM Software Group The Process of Software Architecting Peter Eeles Executive IT Architect IBM UK peter.eeles@uk.ibm.com 2009 IBM Corporation Agenda IBM Software Group Rational software Introduction Architecture,
More informationProduct Quality Engineering. RIT Software Engineering
Product Quality Engineering Q vs q Quality includes many more attributes than just absence of defects Features Performance Availability Safety Security Reusability Extensibility Modifiability Portability
More informationBSIF. A Freeware Framework for. Integrated Business Solutions Modeling. Using. Sparx Systems. Enterprise Architect
33 Chester Rd Tawa 5028 Wellington New Zealand P: (+64) 4 232-2092 m: (+64) 21 322 091 e: info@parkconsulting.co.nz BSIF A Freeware Framework for Integrated Business Solutions Modeling Using Sparx Systems
More informationLecture 2: Software Engineering (a review)
Lecture 2: Software Engineering (a review) Kenneth M. Anderson Object-Oriented Analysis and Design CSCI 6448 - Spring Semester, 2003 Credit where Credit is Due Some material presented in this lecture is
More informationService Vs. System. Why do we need Services and a Services Viewpoint in DM2 and DoDAF? Fatma Dandashi, PhD March 4, 2011
Service Vs. System Why do we need Services and a Services Viewpoint in DM2 and DoDAF? Fatma Dandashi, PhD March 4, 2011 1. Does DoD Need To Model a Service? Bottom Line Up front (BLUF) DoD has a requirement
More information