Plan of the talk Basic Specification blocks

Slides:



Advertisements
Similar presentations
Relating Problem & Solution Structures
Advertisements

Snejina Lazarova Senior QA Engineer, Team Lead CRMTeam Dimo Mitev Senior QA Engineer, Team Lead SystemIntegrationTeam Telerik QA Academy SOAP-based Web.
The Z Specification Language
1 Canonical Processes 101 Each process –short description –illustrated with use cases –input(s), actor(s) & output(s) Formalization of processes in UML.
Knowledge and Systems Research Group, University of Huddersfield B vs OCL: Comparing Specification Languages for Planning Domains Diane Kitchin, Lee McCluskey,
Paper Title Your Name CMSC 838 Presentation. CMSC 838T – Presentation Motivation u Problem paper is trying to solve  Characteristics of problem  … u.
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
Ch3: Software Engineering Principles 1 What is a principle?  Definition:  Goals of accounting principles:  Goals of software engineering principles?
Reza Gorgan Mohammadi AmirKabir University of Technology, Department of Computer Engineering & Information Technology, Intelligent.
Software Requirements
Integration of Applications MIS3502: Application Integration and Evaluation Paul Weinberg Adapted from material by Arnold Kurtz, David.
7M822 Software Requirements A Use Case Approach 14 September 2010.
Lecture 9: SHELL PROGRAMMING (continued) Creating shell scripts!
Simulation Waiting Line. 2 Introduction Definition (informal) A model is a simplified description of an entity (an object, a system of objects) such that.
Grep, comm, and uniq. The grep Command The grep command allows a user to search for specific text inside a file. The grep command will find all occurrences.
Mapping Physical Formats to Logical Models to Extract Data and Metadata Tara Talbott IPAW ‘06.
Sharif University of Technology Session # 7.  Contents  Systems Analysis and Design  Planning the approach  Asking questions and collecting data 
Course Instructor: Aisha Azeem
Damian Gordon.  Summary and Relevance of topic paper  Definition of Usability Testing ◦ Formal vs. Informal methods of testing  Testing Basics ◦ Five.
BIS310: Week 7 BIS310: Structured Analysis and Design Data Modeling and Database Design.
The SAM-Grid Fabric Services Gabriele Garzoglio (for the SAM-Grid team) Computing Division Fermilab.
Multimedia. Definition What is Multimedia? Multimedia can have a many definitions these include: Multimedia means that computer information can be represented.
Modeling & Simulation: An Introduction Some slides in this presentation have been copyrighted to Dr. Amr Elmougy.
Python File Handling. In all the programs you have made so far when program is closed all the data is lost, but what if you want to keep the data to use.
Problem Analysis and Structure Models and Frames.
Making a great Project 2 OCR 1994/2360. Analysis This is the key to getting it right. Too many candidates skip through this section. It’s worth 20% of.
Functional Modeling – Requirement Patterns (Problem Frames)
University of Toronto Department of Computer Science © Steve Easterbrook. This presentation is available free for non-commercial use with attribution.
Section 4.2 AQA Computing A2 © Nelson Thornes 2009 Types of Operating System Unit 3 Section 4.1.
© Steve Easterbrook. This presentation is available free for non-commercial use with attribution under a creative commons license. 1 Lecture 2:Requirements.
A Context Model based on Ontological Languages: a Proposal for Information Visualization School of Informatics Castilla-La Mancha University Ramón Hervás.
Dr.Basem Alkazemi
CS221 Algorithm Basics. What is an algorithm? An algorithm is a list of instructions that transform input information into a desired output. Each instruction.
What's The Plan? Algorithmic Thinking Step-by-step directions for whatever someone, or the computer, needs to do © 2004 Lawrence Snyder.
Kansas Early Learning Standards and Cognitive Domain Chapter 11.
WORK AND SIMPLE MACHINES. WORK Work is said to be done when a force acting on a body moves the body a certain distance in the direction of the force when.
SOAP-based Web Services Telerik Software Academy Software Quality Assurance.
Problems and Frames III Recap and More Concepts. Definition “A problem frame is a kind of pattern. It define an intuitively identifiable problem in terms.
Elevator Example.
5 February 2016M253 Team working in distributed environments 1.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Object and Class Structuring Chapter 9 Part of Analysis Modeling Designing Concurrent, Distributed, and Real-Time Applications with UML Hassan Gomaa (2001)
Problems and Frames IV Heuristics. Heuristics? Serving or helping to find out or discover; Guidelines; But connotations of trial and error.
Von Neumann Machines. 3 The Von Neumann Architecture Model for designing and building computers, based on the following three characteristics: 1)The.
1 Ivan Marsic Rutgers University LECTURE 13: Problem Frames Part II: Modeling & Recombination.
Human Computer Interaction Lecture 21 User Support
The Distributed Application Debugger (DAD)
Systems and Systems Thinking 3a
Applied Operating System Concepts
Cmpe 589 Spring 2006.
A Scalable Approach to Architectural-Level Reliability Prediction
Alternatives to Mobile Agents
Database System Concepts and Architecture
THE OSI MODEL By: Omari Dasent.
Architecture Concept Documents
Avraham Leff James T. Rayfield IBM T.J. Watson Research Center
Software Design and Architecture
William Stallings Computer Organization and Architecture
Part 3 Design What does design mean in different fields?
product design challenge
Systems Analysis and Design in a Changing World, 6th Edition
Ministry of Higher Education
Security concerns of web applications with database access
Lecture Software Process Definition and Management Chapter 3: Descriptive Process Models Dr. Jürgen Münch Fall
Software Architecture
Operating Systems.
A Formally Grounded Development Method
ECE 4450:427/527 - Computer Networks Spring 2017
 Is a machine that is able to take information (input), do some work on (process), and to make new information (output) COMPUTER.
Chapter 1: Creating a Program.
Presentation transcript:

Plan of the talk Basic Specification blocks Specification of Data Structures Specification of Simple Systems Specification of Structured Systems Development methods for main “Problem Frames” using

Problem Frames (M. Jackson, Addison-Wesley 2001) “It is important to focus directly on a problem, not just going straight to the design of a solution. The computer and its software are the solution; the problem is in the world outside the computer.” “A problem frame defines the shape of a problem by capturing the characteristics and interconnections of the parts of the world it is concerned with, and the concerns and difficulties that are likely to arise.” “But most realistic problems are too big and complex to handle in two levels like this. Another level is needed: structuring the problem as a collection of interacting subproblems.”

Solving Problem Frames with our Formally-Grounded Specifications Basic problem frames Transformation Frame Control System Frame Information System Frame (see paper) Work-pieces (still to be done) Structured problems (still to be done) To show that we can tackle real problems derive specialized methods to handle more effectively the various problems Future New/modern problem frames (e.g., web applications, business support) as basic or structured problems

Schema of a problem frame Design Requiremnts Machine Domain What your Machine has to do The result of your creative act Existing It is not your responsibility Discovered interacting with the client

Transformation frame Domain Requirements Design

Transformation frame: GREP Input Output IO relation Machine Text File Regular Expression ……... ……... Occurrence list

Transformation frame: Specification DATA STRUCTURE SPECIFICATION Requirements Design Domain

Domain Specification Data Structure Specification Data Structure Input Output IO relation Machine Data Structure Specification Data Structure Specification

Requirements Specification Specification of a data structure having Input and Output as parts, and a predicate IO: input X output Input Machine IO relation Output

Design Specification Specification of a data structure having Input and Output as parts, and a partial operation Tran: input -> output Input IO relation Machine Output

Control System Frame Domain Design Requirements

Control System Frame: Lift Controlled Domain Controller Main Part Desired Behaviour Domain Reports User Orders User Sensors Orders requests Reports Cabin position Motor status Door status Lift Plant Open/close door Move up/down/stop If a person asks to go to floor f, then eventually the cabin will be at floor f with the door open. …………. Enter/leaving Go to floor f Lift controller Persons to be transported

Control System Frame: Specification STRUCTURED SYSTEM SPECIFICATION Domain Design Main Part Sensors Controller Orders Requirements Domain Reports User Orders Controller Desired Behaviour User Requests User Controller Reports Controlled Domain ADDITIONAL PROPERTIES on

Domain Specification Dynamic System Specifications Elementary Sensors Dynamic System Specifications Main Part Controller Orders Elementary Interactions Domain Reports User Orders Special form of their properties User Requests User Controller Reports

Requirement: Specification Controlled Domain Controller Main Part Domain Reports User Orders User Sensors Orders Requests Reports PROPERTIES on of a special form Post-conditions for User Requests Pre-conditions and vitality for Controller Reports Properties on State Observers of Main Part

The End