DSS Front End Software Review

Slides:



Advertisements
Similar presentations
Testing Relational Database
Advertisements

ASYCUDA Overview … a summary of the objectives of ASYCUDA implementation projects and features of the software for the Customs computer system.
Configuration Management
ICT Class System Life Cycle.  Large systems development projects may involve dozens of people working over several months or even years, so they cannot.
Planning and Estimating
Project Life Cycle Jon Ivins DMU. Introduction n Projects consist of many separate components n Constraints include: time, costs, staff, equipment n Assets.
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
Software Issues Derived from Dr. Fawcett’s Slides Phil Pratt-Szeliga Fall 2009.
Introduction to Software Testing
The Detector Safety System for LHC Experiments Stefan Lüders ― CERN EP/SFT & IT/CO CHEP03 ― UC San Diego ― March 27 th, 2003.
The chapter will address the following questions:
Basic Input Output System
Chapter 7 Software Engineering Objectives Understand the software life cycle. Describe the development process models.. Understand the concept of modularity.
1 Shawlands Academy Higher Computing Software Development Unit.
Chapter 2 The process Process, Methods, and Tools
CSE 303 – Software Design and Architecture
CS540 Software Design Lecture 8 1 Lecture 8: Structured Design Anita S. Malik Adapted from Schach (2004) Chapter 13 and Appendix.
1 The Software Development Process  Systems analysis  Systems design  Implementation  Testing  Documentation  Evaluation  Maintenance.
André Augustinus 10 September 2001 DCS Architecture Issues Food for thoughts and discussion.
Topic 4 – Documentation, Evaluation and Maintenance Unit 2 – Database Implementation and Testing Advanced Higher Information Systems St Kentigern’s Academy.
Expert Group 8 on Assessment of draft UNI standards on DSRC communications- Overview of the work and results Working for DG TREN in support of the.
Control Systems Design Part: FS Slovak University of Technology Faculty of Material Science and Technology in Trnava 2007.
I Power Higher Computing Software Development The Software Development Process.
Systems Life Cycle A2 Module Heathcote Ch.38.
SOFTWARE ENGINEERING MCS-2 LECTURE # 4. PROTOTYPING PROCESS MODEL  A prototype is an early sample, model or release of a product built to test a concept.
The Software Development Process
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
SOFTWARE ENGINEERING. Objectives Have a basic understanding of the origins of Software development, in particular the problems faced in the Software Crisis.
Objectives Understand Corrective, Perfective and Preventive maintenance Discuss the general concepts of software configuration management.
Paul Alexander 2 nd SKADS Workshop October 2007 SKA and SKADS Costing The Future Paul Alexander Andrew Faulkner, Rosie Bolton.
The Software for the CERN Detector Safety System G. Morpurgo, R. B. Flockhart and S. Lüders, CERN IT/CO.
ANALYSIS PHASE OF BUSINESS SYSTEM DEVELOPMENT METHODOLOGY.
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
CMSC 2021 Software Development. CMSC 2022 Software Development Life Cycle Five phases: –Analysis –Design –Implementation –Testing –Maintenance.
André Augustinus 18 March 2002 ALICE Detector Controls Requirements.
Analysis. This involves investigating what is required from the new system and what facilities are available. It would probably include:
Principles of Programming & Software Engineering
Combining safety and conventional interfaces for interlock PLCs
Chapter 4 – Requirements Engineering
Unit - 3 OBJECT ORIENTED DESIGN PROCESS AND AXIOMS
Software Project Configuration Management
Algorithms II Software Development Life-Cycle.
PLM, Document and Workflow Management
Software testing
The COSMO Coding Standards Some Highlights
Software Life Cycle “What happens in the ‘life’ of software”
Chapter 8 – Software Testing
Principles of Programming and Software Engineering
Systems Analysis and Design
Chapter 6: Design of Expert Systems
Object oriented system development life cycle
Software Development CMSC 202.
Software Life Cycle Models
Making ESL Rubrics Part 1
Tools of Software Development
Computer Science Life Cycle Models.
Introduction to Software Testing
Computer-System Architecture
PAVIRO - Introduction Security Systems
Backend System Requirements
CS310 Software Engineering Lecturer Dr.Doaa Sami
Requirement Documentation &
Chapter 11 user support.
DEPLOYING SECURITY CONFIGURATION
Systems Operations and Support
Quality-aware Middleware
Chapter 13: I/O Systems.
UML  UML stands for Unified Modeling Language. It is a standard which is mainly used for creating object- oriented, meaningful documentation models for.
Unit IV – Chapter 2 V-Test Model.
Presentation transcript:

DSS Front End Software Review A ‘quick’ look at the PLC code

Introduction (disclaimer) Nothing like a formal review, but rather a personal ‘look at the code’ The reviewer is not a great PLC programming expert, but has basic knowledge on Step7 and its concepts and some ‘hands on’ experience in the past Will limit to general observations here DSS Advisory Board 1 March 2004

Some facts The review was done Dec 2003/Jan 2004 Reviewed a version of the PLC code as it was 10 December 2003 ‘Paper review’, it did not involve any real life tests Only reviewed the PLC Siemens Step7 project DSS Advisory Board 1 March 2004

How it was done 1 afternoon introductory explanation by Stefan Detailed study of the code 1 afternoon discussion of my questions and findings with Stefan Write-up of the review (soon ) DSS Advisory Board 1 March 2004

General impressions Very good ! Project (code and data blocks) is very well structured Relatively easy to understand the code (structure, comments) Well defined interface with backend (through data in data blocks) DSS Advisory Board 1 March 2004

Observations Extensive self-checking of the whole DSS system (interrupt and timed) Every cycle well structured reading of inputs, calculation of alarm-action matrix and setting of outputs (coherent structure of all sub-routines) Had to make assumptions for complexity of alarm relations (relation between input parameters) Support DSS-team request for ‘most complex examples’ DSS Advisory Board 1 March 2004

Observations Currently implemented: Compare two analog values Two levels of ‘m out of n’ functions to construct complex logical functions Will cater for most common relations Specific functions could relatively easily be implemented, but PLCs are not designed for complicated mathematics DSS design paradigm is ‘simplicity’ DSS Advisory Board 1 March 2004

Observations Internal logging (locally on PLC): Masking All alarms, actions, etc. All DSS errors and status changes 8000 time stamped messages Masking Mechanism implemented at several points (coherency) e.g. input, calculation, output Its use is governed by the backend DSS Advisory Board 1 March 2004

Observations Only limited implementation of ‘consistency checking’. Impossible to implement all possible checks Responsibility delegated to Back-End DSS Advisory Board 1 March 2004

Findings Very minor inconsistencies in numbering of functions and datablocks Error in checking Analog input This part of code has been rewritten (more clearly) since Some ‘copy-paste’ errors DSS Advisory Board 1 March 2004

Findings Found a case where action could be triggered during 1 cycle when alarm disappears (under specific circumstances) Some room for improving performance has been identified But not exploited to preserve coherence and ease understanding of the code DSS Advisory Board 1 March 2004

Documentation Sufficient comments, and self-documenting to understand the project (with some introductory explanation) However, clearly additional documentation is essential Identified some aspects that would be desirable to document DSS Advisory Board 1 March 2004

Documentation Could see two levels of documentation: For users/configurators of DSS system To document what is implemented For developers (maintenance) of DSS system To document how and where it’s implemented Define procedures on how to change the system Hardware (new sensors/modules etc.) Software (configuration, code) DSS Advisory Board 1 March 2004

Conclusions Good overall impression Well structured Flexible enough and room for expansion Identified some minor points that are (or are being) corrected or looked at Code is generic enough to suit needs of the four experiments Some further tuning is possible/needed as more details are defined by the experiments Documentation need to be provided DSS Advisory Board 1 March 2004

Recommendations Urge experiments to provide examples of complex Alarm-Action relations And refine number of I/O’s and AA relations Review interaction FE  BE Produce two levels of documentation For users and for developers Define procedures for all type of modifications Keep original developer at least up to initial commissioning of all systems In any case, allow for ample overlap to transfer expertise DSS Advisory Board 1 March 2004