Application of SysML to LLRF system design M.Grecki

Slides:



Advertisements
Similar presentations
OBP Research Oy for simpler creation of embedded systems.
Advertisements

Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Alternate Software Development Methodologies
Estimation of Defects and Effort Requirements Engineering & Project Management Lecture.
Software Effort Estimation based on Use Case Points Chandrika Seenappa 30 th March 2015 Professor: Hossein Saiedian.
Introduction To System Analysis and Design
Software Engineering CSE470: Requirements Analysis 1 Requirements Analysis Defining the WHAT.
1 Lecture 5 Introduction to Software Engineering Overview  What is Software Engineering  Software Engineering Issues  Waterfall Model  Waterfall Model.
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
SDLC. Information Systems Development Terms SDLC - the development method used by most organizations today for large, complex systems Systems Analysts.
Version Enterprise Architect Redefines Modeling in 2006 An Agile and Scalable modeling solution Provides Full Lifecycle.
Quality of Information systems. Quality Quality is the degree on which a product satifies the requirements Quality management requires that : that requirements.
Introduction To System Analysis and design
Use Case Diagrams – Functional Models Chapter 5. Objectives Understand the rules and style guidelines for activity diagrams. Understand the rules and.
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
Introduction To System Analysis and Design
1 UseCase-based effort estimation of software projects TDT 4290 Customer-driven project IDI, NTNU, 14. Sept Bente Anda, Simula Research Lab., Oslo,
XFEL The European X-Ray Laser Project X-Ray Free-Electron Laser Stefan Simrock, DESY LLRF-ATCA Review, Dec. 3, 2007 Requirements for the ATCA based LLRF.
Approaching a Problem Where do we start? How do we proceed?
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
1 What is OO Design? OO Design is a process of invention, where developers create the abstractions necessary to meet the system’s requirements OO Design.
Systems Analysis and Design in a Changing World, Fourth Edition
CIS/SUSL1 Fundamentals of DBMS S.V. Priyan Head/Department of Computing & Information Systems.
Chapter 6 CASE Tools Software Engineering Chapter 6-- CASE TOOLS
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
CISB113 Fundamentals of Information Systems IS Development.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
SOFTWARE ENGINEERING. Objectives Have a basic understanding of the origins of Software development, in particular the problems faced in the Software Crisis.
LECTURE 14: Software Metrics
1 The ILC Control Work Packages. ILC Control System Work Packages GDE Oct Who We Are Collaboration loosely formed at Snowmass which included SLAC,
Slide 1 Use Case Points. Slide 2 Use Case Points* Use Case Points (UCP) is a current technique for measuring functionality of a software system. It can.
© 2005 Prentice Hall, Decision Support Systems and Intelligent Systems, 7th Edition, Turban, Aronson, and Liang 6-1 Chapter 6 Decision Support System Development.
Alternative Software Size Measures for Cost Estimation
Chapter 19: Network Management
Review of last class Software Engineering Modeling Problem Solving
GRASP – Designing Objects with Responsibilities
Chapter 1 The Systems Development Environment
Classifications of Software Requirements
Chapter 1: Introduction to Systems Analysis and Design
Modern Systems Analysis and Design Third Edition
INCOSE Usability Working Group
Computer Aided Software Engineering (CASE)
Modern Systems Analysis and Design Third Edition
Unified Modeling Language
Topic for Presentaion-2
The ILC Control Work Packages
Business System Development
Chapter 1 The Systems Development Environment
Alternative Software Size Measures for Cost Estimation
Tools of Software Development
Introduction to Software Testing
Software Size Measures for Cost Estimation
Introduction To System Analysis and Design PART 2
Modern Systems Analysis and Design Third Edition
Object Oriented Analysis and Design
LECTURE 14: Software Metrics
More on Estimation In general, effort estimation is based on several parameters and the model ( E= a + b*S**c ): Personnel Environment Quality Size or.
Modern Systems Analysis and Design Third Edition
CS101 Introduction to Computing Lecture 20 SW Development Methodology
CHAPTER 10 METHODOLOGIES FOR CUSTOM SOFTWARE DEVELOPMENT
CHAPTER 9 (part a) BASIC INFORMATION SYSTEMS CONCEPTS
Chapter 1: Introduction to Systems Analysis and Design
Database Management Systems
Chapter 1 The Systems Development Environment
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 Tools of Software Development l 2 types of tools used by software engineers:
Chapter 1: Introduction to Systems Analysis and Design
Modern Systems Analysis and Design Third Edition
MBSE for PLM: Part of the Digital Systems Life Cycle
UML Design for an Automated Registration System
Presentation transcript:

Application of SysML to LLRF system design M.Grecki 1st annual RFTech meeting, DESY, Hamburg, 29 March 2010

LLRF system architecture

RF Control Requirements Maintain Phase and Amplitude of the accelerating field within given tolerances to accelerate a charged particle beam (e.g. XFEL: 0.01% for amplitude and 0.01 deg. for phase) Minimize Power needed for control RF system must be reproducible, reliable, operable, and well understood Other performance goals build-in diagnostics for calibration of gradient and phase, cavity detuning, etc. provide exception handling capabilities meet performance goals over wide range of operating parameters

System engineering Understand the whole problem before you try to solve it. Translate the problem into measurable requirements Examine all feasible alternatives before selecting a solution. Make sure you consider the total system life cycle. The birth to death concept extends to maintenance, replacement and decommission. If these are not considered in the other tasks, major life cycle costs can be ignored. Make sure to test the total system before delivering it. Document everything.

Design methodology

SysML - Systems Modeling Language

SysML tools We started from Rhapsody (Telelogic – currently IBM) Tool strongly oriented towards automatic code generation and simulation Very complex (this was impression when we were tried to use it) Advised by SysML expert we switched to Enterprise Architect (Sparx) as a simpler to use It is not 100% SysML compliant, in some cases it allows to use illegal expressions There are other tools (Magic Draw, SysML Toolkit) – we did not try them

System Model System model is a hierarchical structure consisting diagrams, objects definitions and declaractions, objects relationships and their behavior. All objects are grouped and organized by packages. Good hierarchy helps a lot.

LLRF system – context diagram

Requirements packages

Requirements diagram requirements diagram for Low Level Applications

RF station – BDD diagram

RF station – IBD diagram

LLRF system – IBD diagram

IBD diagram – RF signal detecton

LLRF - Use Case Diagram

Use Case diagram – controler (simplified)

Activity diagram - configure board

Sequence diagram - configure board

Project Estimation with Use Case Points The number of steps to complete the use case. The number and complexity of the actors. The technical requirements of the use case such as concurrency, security and performance. Various environmental factors such as the development teams, experience and knowledge.

Use Case Points UCP = TCF * ECF * UUCP * PF Technical Complexity Factor (TCF). Environment Complexity Factor (ECF). Unadjusted Use Case Points (UUCP). Productivity Factor (PF).

Technical Complexity Factors TCF = 0.6 + (0.01*Total Factor) Technical Factor Description Weight T1 Distributed system 2 T2 Performance 1 T3 End User Efficiency T4 Complex internal Processing T5 Reusability T6 Easy to install 0.5 T7 Easy to use T8 Portable T9 Easy to change T11 Concurrent T12 Special security features T13 Provides direct access for third parties T14 Special user training facilities are required

Technical Complexity Factors Technical Factor Description Weight Perceived Complexity Calculated Factor (weight * perceived complexity) T1 Distributed system 2 5 10 T2 Performance 1 4 T3 End User Efficiency T4 Complex internal Processing T5 Reusability T6 Easy to install 0.5 T7 Easy to use T8 Portable T9 Easy to change 3 T11 Concurrent T12 Special security features T13 Provides direct access for third parties T14 Special user training facilities are required 36 TCF = 0.6 + (0.01*36)=0.96

Environmental Complexity Factors ECF = 1.4 + (-0.03*Total Factor) Environmental Factor Description Weight E1 Familiarity with SysML/UML 1.5 E2 Application Experience 0.5 E3 Object Oriented Experience 1 E4 Lead analyst capability E5 Motivation E6 Stable Requirements 2 E7 Part-time workers -1 E8 Difficult Programming language

Environmental Complexity Factors Environmental Factor Description Weight Perceived Impact Calculated Factor (weight*perceived complexity) E1 Familiarity with SysML/UML 1.5 1 E2 Application Experience 0.5 3 E3 Object Oriented Experience E4 Lead analyst capability 4 2 E5 Motivation E6 Stable Requirements 6 E7 Part-time workers -1 -3 E8 Difficult Programming language 12 ECF = 1.4 + (-0.03*Total Factor)=1.04

Unadjusted Use Case Weight Use Case Type Description Weight Simple A simple user interface and touches only a single database entity; its success scenario has 3 steps or less; its implementation involves less than 5 classes. 5 Average More interface design and touches 2 or more database entities; between 4 to 7 steps; its implementation involves between 5 to 10 classes. 10 Complex Involves a complex user interface or processing and touches 3 or more database entities; over seven steps; its implementation involves more than 10 classes. 15 UUCW – is based on the total number of activities (or steps) contained in all the use case Scenarios

Unadjusted Actor Weight Use Case Type Description Weight Simple The Actor represents another system with a defined API. 1 Average The Actor represents another system interacting through a protocol, like TCP/IP. 2 Complex The Actor is a person interacting via an interface. 3 UAW – is based on the combined complexity of all the use cases Actors

Unadjusted Use Case Points Productivity Factor UUCP =  UC*UUCW +  A*UAW Productivity Factor The Productivity Factor (PF) is a ratio of the number of man hours per use case point based on past projects. If no historical data has been collected, a figure between 15 and 30 is suggested by industry experts. A typical value is 20.

Cost estimation UCP = TCP * ECF * UUCP * PF This technique is of value only once you have developed a couple of known projects to use as a baseline. Please DO NOT use the provided 'guesstimates' as a real world measure until you have some real world base lines to measure against.

Tuning parameters for UCP

Conclusion The LLRF control for the European XFEL requires careful and well documented design. Since it must integrate the mutual interactions between subsystems of various nature it must be documented in a way understandable by all involved designers (coming from large international collaboration between research labs, universities and industry). The SysML seems to be adequate language for that. Since the SysML is a new language it is not easy to start. There is a lack of good design examples one can look at and learn. SysML supports software cost estimation through the UCP method.