Information Software Systems 18 May 2007 Information Software Systems ISS Modern SW Development Practices: Processes and Technologies 18 May 2007 (c) 2007.

Slides:



Advertisements
Similar presentations
MGD Services, Inc. The IT Quality Assurance Specialists
Advertisements

1 Verification by Model Checking. 2 Part 1 : Motivation.
Copyright Insight Test Services Testing From The Start – Test Driven Development TM Summit Fran OHara, Insight Test Services
Camilo Fitzgerald PhD Student UCL Computer Science
CSE 599F: Formal Verification of Computer Systems.
1 Formal Modeling & Verification of Messaging Framework of Simple Object Access Protocol (SOAP) Manzur Ashraf Faculty,BRAC University.
The Impact of Drug Benefit Caps Geoffrey Joyce, PhD.
Limitations of the relational model 1. 2 Overview application areas for which the relational model is inadequate - reasons drawbacks of relational DBMSs.
Making the System Operational
Rigorous Software Development CSCI-GA Instructor: Thomas Wies Spring 2012 Lecture 1.
Insert image here © SPEC-Soft SAVINGS AND EXPERTISE FOR YOUR PLANT PFS-Suite Life-cycle Tools For Process Automation PFS-Suite TM.
Configuration management
Software change management
Configuration management
Software Testing Strategies
Software testing.
Testing Workflow Purpose
Test Yaodong Bi.
Test process essentials Riitta Viitamäki,
April 30, A New Tool for Designer-Level Verification: From Concept to Reality April 30, 2014 Ziv Nevo IBM Haifa Research Lab.
Page 1 October 31, 2000 An Introduction to Large-Scale Software Development Steve Varnau Core HP-UX Operation October 31, 2000.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 28 Slide 1 Process Improvement 1.
Chapter 10 Software Testing
Requirements Analysis 1. 1 Introduction b501.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis Introduction.
Verification and Validation
14-1 © Prentice Hall, 2004 Chapter 14: OOSAD Implementation and Operation (Adapted) Object-Oriented Systems Analysis and Design Joey F. George, Dinesh.
14-1 © Prentice Hall, 2004 Chapter 14: OOSAD Implementation and Operation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
From Model-based to Model-driven Design of User Interfaces.
Anaïs GUIGNARD LURPA, ENS Cachan Validation of logic controllers from event observation in a closed-loop system Réunion VACSIM - 14 Octobre 2014.
August Moscow meeting1August Moscow meeting1August Moscow meeting11 Deductive tools in insertion modeling verification A.Letichevsky.
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
Automated creation of verification models for C-programs Yury Yusupov Saint-Petersburg State Polytechnic University The Second Spring Young Researchers.
Testing Without Executing the Code Pavlina Koleva Junior QA Engineer WinCore Telerik QA Academy Telerik QA Academy.
1 INTAS Meeting, Moscow Tools for Verification of Specification Given by Basic Protocols Oleksandr Letychevskyi, Ph.D. Glushkov Institute of Cybernetics.
RIT Software Engineering
SE 450 Software Processes & Product Metrics 1 Defect Removal.
School of Computer ScienceG53FSP Formal Specification1 Dr. Rong Qu Introduction to Formal Specification
End-to-End Design of Embedded Real-Time Systems Kang G. Shin Real-Time Computing Laboratory EECS Department The University of Michigan Ann Arbor, MI
Formal verification Marco A. Peña Universitat Politècnica de Catalunya.
MCA –Software Engineering Kantipur City College. Topics include  Formal Methods Concept  Formal Specification Language Test plan creation Test-case.
Software Quality Assurance
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
Introduction to Software Testing
CS527: (Advanced) Topics in Software Engineering Overview of Software Quality Assurance Tao Xie ©D. Marinov, T. Xie.
Extreme Programming Software Development Written by Sanjay Kumar.
© Siemens AG, CT SE 1, Dr. A. Ulrich C O R P O R A T E T E C H N O L O G Y Research at Siemens CT SE Software & Engineering Development Techniques.
Slide 6.1 CHAPTER 6 TESTING. Slide 6.2 Overview l Quality issues l Nonexecution-based testing l Execution-based testing l What should be tested? l Testing.
What is Software Engineering? the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software”
Testing – A Methodology of Science and Art. Agenda To show, A global Test Process which work Like a solution Black Box for an Software Implementation.
14-1 © Prentice Hall, 2004 Chapter 14: OOSAD Implementation and Operation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Verification and Test Automation of UML Projects Nikita Voinov, Vsevolod Kotlyarov (Saint-Petersburg State Polytechnic University) The Third Spring Young.
14-1 © Prentice Hall, 2004 Chapter 14: OOSAD Implementation and Operation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Testing Workflow In the Unified Process and Agile/Scrum processes.
Formal Methods in Software Engineering
Software Debugging, Testing, and Verification Presented by Chris Hundersmarck November 10, 2004 Dr. Bi’s SE516.
Software Engineering Lecture # 1.
Ukrprog Formal requirement language and its applications A.Letichevsky Glushkov Institute of Cybernetics.
1 The Requirements Problem Chapter 1. 2 Standish Group Research Research paper at:  php (1994)
Requirement Analysis SOFTWARE ENGINEERING. What are Requirements? Expression of desired behavior Deals with objects or entities, the states they can be.
Winter 2007SEG2101 Chapter 121 Chapter 12 Verification and Validation.
T EST T OOLS U NIT VI This unit contains the overview of the test tools. Also prerequisites for applying these tools, tools selection and implementation.
Testing Overview Software Reliability Techniques Testing Concepts CEN 4010 Class 24 – 11/17.
© NALO Solutions Limited NALO Solutions, presents the – Revenue Collector App Using Mobile Phones to gather Revenue SOFTWARE ENGINEERING.
Software Engineering (CSI 321)
Testing Process Roman Yagodka ISS Test Leader.
Chapter 18 Maintaining Information Systems
Introduction to Software Testing
Baisc Of Software Testing
Software Design & Production Methodologies
Unit IV – Chapter 2 V-Test Model.
Presentation transcript:

Information Software Systems 18 May 2007 Information Software Systems ISS Modern SW Development Practices: Processes and Technologies 18 May 2007 (c) 2007 Information Software Systems Vlad Volkov Program Manager Model Driven Engineering in modern Software Development Process

Information Software Systems ISS Modern SW Development Practices: Processes and Technologies 18 May 2007 (c) 2007 Information Software Systems 2 Contents Who we are: short overview of model driven engineering projects at ISS Problem and solution Why verification? Verification strategy Subsequent tests generation What is next?: conclusion

Information Software Systems ISS Modern SW Development Practices: Processes and Technologies 18 May 2007 (c) 2007 Information Software Systems 3 Who we are: short overview of model driven engineering projects at ISS : first Motorola project on automated requirements capturing conducted by research group from Glushkov Institute of Cybernetics headed b y Alexander Letichevsky and Julia Kapitonova 2000: ISS begins his operations, Motorola locates a project with a goal to create high-quality software product aimed at automated support of the initial phase of software project - - deriving of consistent and complete specifications from initial requirements 2001: In parallel, ISS is requested by Motorola to define and institutionalize SWD practices of SEI CMM Level 3

Information Software Systems ISS Modern SW Development Practices: Processes and Technologies 18 May 2007 (c) 2007 Information Software Systems 4 Who we are: short overview of model driven engineering projects at ISS (cont.) 2002:first product release of VRS (Verification of Requirements Specifications) tools for checking formal specifications 2003: first successful piloting of VRS tools in industrial projects of Motorola projects 2004: Developed possibilities for automated tests generation with respect to initial MSC specifications : Participation in Motorola projects on automated code C/C++ generation from models written in SDL and UML.

Information Software Systems ISS Modern SW Development Practices: Processes and Technologies 18 May 2007 (c) 2007 Information Software Systems 5 Software Development Catastrophes* CONFIRM travel information system: $160 million Denver Airport baggage handling: $200 million London Stock Exchanges Taurus: £400 million London Ambulance Service dispatching: £9 million Pentium FDIV bug: $500 million (found with formal analysis!) average schedule slips by 50% 25% of all large systems are cancelled 3/4 of all large systems are operating failures *(from Software Engineering Computer Science Tripos Part IA, Part II (General) Lent Term, 1997,Lawrence C Paulson Computer Laboratory University of Cambridge Copyright c 1997 by Lawrence C. Paulson)

Information Software Systems ISS Modern SW Development Practices: Processes and Technologies 18 May 2007 (c) 2007 Information Software Systems 6 Inevitable uncertainties and conflicts in the behavioral requirements for large and very large projects cause enormous delays in releasing high quality products and unwanted increase of Cost-Of-Quality Manual analysis of behavioral/functional requirements in large scale projects becomes a stopper Formalization of behavioral requirements in MSC/SDL/UML and their formal verification for consistency and completeness may help to improve their quality at the initial phases of a software project The problem and the solution

Information Software Systems ISS Modern SW Development Practices: Processes and Technologies 18 May 2007 (c) 2007 Information Software Systems 7 Cost to fix error Requirements/ Design Imple- mentation Testing [B.Boehm] * Barry W.Boehm, "Software Engineering Economics", Prentice-Hall, Inc., 1981, ** Industry post release defects analysis, 2004 Cost of fixing requirements defects increases exponentially with time * Faulty requirements have significant impact ** Requirements Management Requirements Verification Where are the costs incurred? In requirements!

Information Software Systems ISS Modern SW Development Practices: Processes and Technologies 18 May 2007 (c) 2007 Information Software Systems 8 40%-20%-40% Well known estimate of efforts distribution through software development phases (Design – Coding – Testing) : 40%-20%-40% - Maximum effect of efforts reduction shall be achieved on Design and Testing phases. Main investments into code/test automation and generation should be made on these phases. Now Test automation is a widely accepted practice in industry. Verification of Requirements & Specifications only started to be used.

Information Software Systems ISS Modern SW Development Practices: Processes and Technologies 18 May 2007 (c) 2007 Information Software Systems 9 1. Increase of product quality due to more defects found 2. Decrease of Cost-Of- Quality due to earlier finding of defects 1. Shorter time to market due to cycle time reduction Defects Time New Old Gain in σ-quality Gain in COQ & CTR Release date Business gains with VRS Conditions of efforts reduction: - Usage of formal engineering languages on the Design stage - Total efforts reduction in SW projects is achieved by reduction of design and testing manual efforts

Information Software Systems ISS Modern SW Development Practices: Processes and Technologies 18 May 2007 (c) 2007 Information Software Systems 10 Why verification? Program testing can be used to show the presence of bugs, but never to show their absence! (E. W. Dijkstra, 1979)

Information Software Systems ISS Modern SW Development Practices: Processes and Technologies 18 May 2007 (c) 2007 Information Software Systems 11 Formalization and verification is hidden from the user Input captured in engineering notations: MSC, SDL, UML Specification of system behavior Dynamic properties of the system Library of predefined properties Verifier operates fully automatically UKUSARMTR air_in taxi_in taxi_out air_out Informal Reqmts. (DOORS) Requirement Capture Specs in formal logic MSC SDL UML Properties Scenarios violating properties or traces for residual testing Verdict It should never be the case that a phone connects to a phone that is not ringing because of this call. A&~B&(c=>D) F0=>c\/~D Verification strategy

Information Software Systems ISS Modern SW Development Practices: Processes and Technologies 18 May 2007 (c) 2007 Information Software Systems 12 Discrepancy – document problem – wrong reference, absence of information, etc.; typos and obvious slips are not counted! Unreachability – the system will never be in that state – analog of dead code Deadlock – from this system state no further transition is possible, usually some incompleteness in requirements Transition inconsistency – non- deterministic behavior – equivalent pre- conditions, but different actions afterward Safety – violation of a specified safety (liveness) property – the timer is stopped only if it was started; or the lift door shall be always closed while the lift is moving Timing violation – mismatch of specified event ordering with respect to their timing provided in absolute or relative units Defects found in system state space basic protocols annotations documentation timing Classification of defects

Information Software Systems ISS Modern SW Development Practices: Processes and Technologies 18 May 2007 (c) 2007 Information Software Systems 13 Piloting VRS

Information Software Systems ISS Modern SW Development Practices: Processes and Technologies 18 May 2007 (c) 2007 Information Software Systems 14 Benefits of testing based on verified specification Decrease of test efforts by up to 50% 5X decrease in manual efforts for verifying the product quality Organize smooth testing life-cycle based on work with graphical specifications only Increase test suites reuse ratio (more than 50-60%) and support test suites reuse Increase confidence in absence of hard-to-find errors Increase test coverage while reducing testing time. Generated test suite will be minimal in size and maximal in coverage. Generating from correct formal specifications 100% stand-alone tests and test environment for C, C++, Java and various scripting languages and platforms.

Information Software Systems ISS Modern SW Development Practices: Processes and Technologies 18 May 2007 (c) 2007 Information Software Systems 15 Where VRS could be applied? The tool is ready for application in large-scale projects (thousands of functional requirements) from Telematics and Telecommunication domains. Additional adjustment is needed for Automotive and detection of security issues in Inet protocols.