Contract Wizard II: Developing a GUI
|
|
- Rudolph Martin
- 5 years ago
- Views:
Transcription
1 Contract Wizard II: Developing a GUI PROJECT PLAN Diploma project Project period Student name Petra Marty Status 9 th semester address martypet@student.ethz.ch Supervisor name Karine Arnout
2 1. PROJECT DESCRIPTION Overview When thinking of new software development methods and tools, many people tend to view productivity as the major expected benefit. In object technology and especially in Eiffel, productivity benefits follow not just from the immediate benefits of the approach but from its emphasis on quality. [2] To be sure that our object-oriented software will perform properly, we need a systematic approach to specifying and implementing object-oriented software elements and their relations in a software system. Under the Design by Contract theory, a software system is viewed as a set of communicating components whose interaction is based on precisely defined specifications of the mutual obligations and benefits that are involved in those communications. The specifications are called contracts. [3] Regrettably Design by Contract is still a specificity of the Eiffel programming language. It is not directly supported in most programming languages based on.net. With the Contract Wizard II tool it is possible to add contracts like preconditions, postconditions and invariants to an arbitrary.net assembly, even if it was not written in Eiffel. The contracted assemblies will contribute developing better quality software. Scope of the work Dominik Wotruba developed in his diploma thesis the business logic of the Contract Wizard II tool. [4] The existing work includes among other things: a parser to parse a.net assembly or XML files to produce an abstract syntax tree (ADT) a code generator for generating XML files where the contracts are stored and for generating Eiffel proxy classes with contracts a simple command line user interface for adding contracts The main work of my diploma thesis is to implement a GUI (Graphical User Interface) for the Contract Wizard II. Currently the contracts are added to an assembly through a command line user interface which is not user-friendly. I will also briefly discuss the possibility of adding Design by Contract support into the CLI (Common Language Infrastructure). [6] Intended results The idea is to have a usable product in the end, meaning usable by end-users. It is meant to provide the widest range of people with the power of Design by Contract. Therefore it is important to design a user-friendly and intuitive graphical user interface together with an understandable and helpful documentation. 1
3 The work consists of the following parts: Implementation GUI Test cases A graphical user interface will be implemented, allowing the user to add contracts to an arbitrary.net assembly, providing help where necessary. The GUI will be built with the EiffelVision2 library provided by ISE Eiffel. The functionality of the GUI and the Contract Wizard II in general will be shown with the bank account application, included in [4]. Furthermore the Contract Wizard II will be tested on the.net library 'mscorlib.dll' and if possible on other.net libraries. Documentation Developer manual User manual Thesis report The developer manual documents the software architecture, main classes and limitations of the tool. It describes the difficulties encountered during the implementation and explains how to extend the current version. The user manual describes how to use the Contract Wizard. The thesis report consists of the final developer manual, the final user manual and a theoretical part about adding Design by Contract support into the CLI. 2. BACKGROUND MATERIAL Reading list Chapters in OOSC2 [2] in particular: o Chapter 1: Software quality o Chapter 11: Design by Contract: building reliable software o Chapter 23: Principles of class design o Chapter 26: A sense of style o Chapter 28: The software construction process The.NET Contract Wizard [5] Software Source code of Contract Wizard II [4] 2
4 3. PROJECT MANAGEMENT Objectives and priorities Objective Priority* Software architecture 1 GUI 1 Test cases 2 Optimization 3 Developer manual 2 User manual 2 Thesis report 1 * 1 means highest priority, 3 means lowest priority Criteria for success The goal of the project is a usable GUI, the criteria for success is the quality of the software and the documentation. The result may be a partial implementation of the objectives without implying any penalty on the success of the project. Quality of software: Use of Design by Contract o Routine pre- and post conditions o Class invariants o Loop variants and invariants Careful design o Design patterns o Extendibility o Reusability o Careful abstraction Core principles of OOSC2 [2] o Command / query separation o Simple interfaces o Uniform access o Information hiding o etc. Style guidelines Correct and robust code Readability of source code Ease of use Quality of documentation: Completeness Understandable documentation Usefulness Structure 3
5 Method of work The technologies involved are: ISE EiffelBuild is used for a first construction of the GUI ISE EiffelStudio 5.4 is used for an accurate implementation Programming language: Eiffel [3] Quality management Quality will be ensured by: Weekly progress reports sent to the supervisor, if necessary a meeting with the supervisor will take place. Detailed progress report for each milestone Review of each milestone by the supervisor concluded by a meeting Validation of each milestone after review (see validation steps below) Testing of the software by application of different test cases Documentation (see documentation below) Documentation Progress reports o Short weekly progress reports consisting of the main task completed o Detailed reports for each milestone consisting of: The main tasks Eventual encountered difficulties Implementation, scope of the implementation Developer report: This manual documents the software architecture and its limitations, describes the difficulties encountered during the implementation, explains how the software could be extended and contains a section discussing the test cases. User manual: The user manual describes the usage of the tool Contract Wizard II Thesis report: The thesis report consists of the final developer manual, the final user manual and a theoretical part discussing adding Design by Contract support into the CLI Validation steps The validation of each milestone comprises: Report: Sending a detailed report and the relevant parts of the work to the supervisor for review Meeting: Organizing a meeting with the supervisor for presentation and discussion of the conducted work Revision: Revising parts or all of the work for this milestone, depending on the conclusion of the supervisor 4
6 4. PLAN WITH MILESTONES Project steps Milestone M1 M2 M3 M4 M5 M6 Objective Basic design of the software architecture. Further design will be done incrementally. Implementation of the GUI Test cases on.net assemblies Developer manual User manual Thesis report Deadline Milestone Deadline M1 07-May-2004 M2 09-Jul-2004 M3: 23-Jul-2004 M4 13-Aug-2004 M5 20-Aug-2004 M6 20-Aug
7 Tentative schedule Start End 26-Apr May May May May May Jun Jun Jun Jun Jul Jul Jul Jul Aug Aug Aug Aug Aug Sep-2004 Task Diploma Project Presentation P1: Intermediary presentation P1 P2: Final presentation P2 Design M1: Software architecture M1 Implementation M2: GUI M2 Testing M3: Testing on.net assemblies M3 Optimizations Documentation M4: Developer manual M4 M5: User manual M5 M6: Thesis report M6 After having designed the basic software architecture, it may be possible that the GUI implementation will be divided into sub-milestones. 6
8 REFERENCES [1] Chair of Software Engineering: Semester-/Diplomarbeiten; Online at: consulted in April [2] Bertrand Meyer: Object-Oriented Software Construction, 2nd edition, Prentice Hall, [3] Eiffel Software, consulted in April [4] Dominik Wotruba, Contract Wizard II, consulted in April 2004 [5] Karine Arnout and Raphaël Simon: The.NET Contract Wizard: Adding Design by Contract to languages other than Eiffel, IEEE Computer Society, TOOLS 39, Santa Barbara, USA, July 2001, p [6] N. Tran, C. Mingins and D. Abramson: Design and implementation of assertions for the common language infrastructure, IEE Proc.-Softw.,Vol.150, No.5, October 2003, p
Trusted Components. Reuse, Contracts and Patterns. Prof. Dr. Bertrand Meyer Dr. Karine Arnout
1 Last update: 15 October 2004 Trusted Components Reuse, Contracts and Patterns Prof. Dr. Bertrand Meyer Dr. Karine Arnout 2 Lecture 1: Issues of software quality Agenda for today 3 Introduction Some statistics
More informationEIFFEL TEST STUDIO Locating faults in external code Master Thesis Project Plan
EIFFEL TEST STUDIO Locating faults in external code Master Thesis Project Plan Reto Ghioldi Department of Computer Science ETH Zürich September 6, 2005 Project period 8.September 2005-9.March 2006 Student
More informationReflection Library for Eiffel PROJECT PLAN
Reflection Library for Eiffel PROJECT PLAN Master thesis Project period: Monday, 2004-03-15 Wednesday, 2004-09-15 Student: Beat Fluri (fluribe@student.ethz.ch) Status: 9th semester Supervising Assistant:
More informationAdding Contracts to C#
Adding Contracts to C# Peter Lagace ABSTRACT Design by contract is a software engineering technique used to promote software reliability. In order to use design by contract the selected programming language
More informationAdvanced Topics in Object Technology
1 Advanced Topics in Object Technology Bertrand Meyer Contact 2 : http://se.inf.ethz.ch Course assistant: Karine Arnout http://se.inf.ethz.ch/people/arnout 3 Lecture 1: Introduction, Quality issues, Lifecycle
More informationMaster Thesis Project Plan. Reusable Mathematical Models
Master Thesis Project Plan Reusable Mathematical Models Tobias K. Widmer widmer@id.ethz.ch Supervisors: Prof. Dr. B. Meyer B. Schoeller Chair of Software Engineering Department of Computer Science, ETH
More informationConcurrency Patterns in SCOOP
Concurrency Patterns in SCOOP Master Thesis Project Plan Project period: 10. March to 8. September 2014 Student name: Roman Schmocker, 09-911-215 Status: 4. semester, Msc in Computer Science Email address:
More informationObject Oriented Program Correctness with OOSimL
Kennesaw State University DigitalCommons@Kennesaw State University Faculty Publications 12-2009 Object Oriented Program Correctness with OOSimL José M. Garrido Kennesaw State University, jgarrido@kennesaw.edu
More informationSpell Checker for EiffelStudio
Spell Checker for EiffelStudio Software Engineering Laboratory: Open-Source EiffelStudio Semester project by Benjamin Fischer Student number: 10-916-971 Supervised by Julian Tschannen ETH Computer Science
More informationBuilding Trust in Third-party Components using Component Wrappers in the.net Frameworks
Building Trust in Third-party Components using Component Wrappers in the.net Frameworks Christine A. Mingins, Chee Y. Chan School of Computer Science and Software Engineering Monash University PO Box 197,
More informationLecture 9 / Tutorial 8 Software Contracts
Lecture 9 / Tutorial 8 Software Contracts Design by contracts Programming by contracts Today 1. Sign a contract 2. Design by contract 3. Programming by contract 4. Summary 5. Questions and Answers Having
More informationDesign by Contract in Eiffel
Design by Contract in Eiffel 2002/04/15 ctchen@canthink.com.com.tw.tw Reference & Resource Bertrand Meyer, Object-Oriented Oriented Software Construction 2nd,, 1997, PH. Bertrand Meyer, Eiffel: The Language,,
More informationFull Eiffel on.net. *ETH (Swiss Federal Institute of Technology), Zürich, Switzerland
Full Eiffel on.net + Raphael Simon, + Emmanuel Stapf, + *Bertrand Meyer + Interactive Software Engineering, Santa Barbara, California *ETH (Swiss Federal Institute of Technology), Zürich, Switzerland http://www.eiffel.com/,
More informationWrapping a complex C++ library for Eiffel. FINAL REPORT July 1 st, 2005
Wrapping a complex C++ library for Eiffel FINAL REPORT July 1 st, 2005 Semester project Student: Supervising Assistant: Supervising Professor: Simon Reinhard simonrei@student.ethz.ch Bernd Schoeller Bertrand
More informationTrusted Components. Reuse, Contracts and Patterns. Prof. Dr. Bertrand Meyer Dr. Karine Arnout
1 Last update: 2 November 2004 Trusted Components Reuse, Contracts and Patterns Prof. Dr. Bertrand Meyer Dr. Karine Arnout 2 Lecture 5: Design patterns Agenda for today 3 Overview Benefits of patterns
More informationObject-Oriented Software Construction
1 Object-Oriented Software Construction Bertrand Meyer Contact 2 Chair of Software Engineering: http://se.inf.ethz.ch Course assistant: Joseph N. Ruskiewicz http://se.inf.ethz.ch/people/ruskiewicz 3 Lecture
More informationThe architecture of Eiffel software 3.1 OVERVIEW classes clusters systems
3 Draft 5.02.00-0, 15 August 2005 (Santa Barbara). Extracted from ongoing work on future third edition of Eiffel: The Language. Copyright Bertrand Meyer 1986-2005. Access restricted to purchasers of the
More informationLecture Chapter 2 Software Development
Lecture Chapter 2 Software Development Large Software Projects Software Design o Team of programmers o Cost effective development Organization Communication Problem Solving Analysis of the problem Multiple
More informationTrusted Components. Reuse, Contracts and Patterns. Prof. Dr. Bertrand Meyer Dr. Karine Arnout
1 Last update: 2 November 2004 Trusted Components Reuse, Contracts and Patterns Prof. Dr. Bertrand Meyer Dr. Karine Arnout 2 Lecture 7: Pattern Wizard, project presentation Agenda for today 3 Pattern Wizard
More informationEinführung in die Programmierung Introduction to Programming
Chair of Software Engineering Einführung in die Programmierung Introduction to Programming Prof. Dr. Bertrand Meyer Lecture 4: The Interface of a Class Client, supplier Definitions A client of a software
More informationChapter 1: Programming Principles
Chapter 1: Programming Principles Object Oriented Analysis and Design Abstraction and information hiding Object oriented programming principles Unified Modeling Language Software life-cycle models Key
More informationObject-Oriented Software Construction
1 Object-Oriented Software Construction Bertrand Meyer 2 Lecture 2: EiffelStudio and project presentation Agenda for today 3 EiffelStudio: The ISE Eiffel environment Project presentation Agenda for today
More informationProgramming II. Modularity 2017/18
Programming II Modularity 2017/18 Module? Lecture Outline Evolution and history of programming languages Modularity Example History of Programming Programming Paradigms How and why languages develop? How
More informationLIS 2680: Database Design and Applications
School of Information Sciences - University of Pittsburgh LIS 2680: Database Design and Applications Summer 2012 Instructor: Zhen Yue School of Information Sciences, University of Pittsburgh E-mail: zhy18@pitt.edu
More informationChapter 1: Principles of Programming and Software Engineering
Chapter 1: Principles of Programming and Software Engineering Data Abstraction & Problem Solving with C++ Fifth Edition by Frank M. Carrano Software Engineering and Object-Oriented Design Coding without
More informationSRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR
SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR 603203 DEPARTMENT OF COMPUTER SCIENCE & APPLICATIONS QUESTION BANK (2017-2018) Course / Branch : M.Sc-CST Semester / Year : Even / II Subject Name
More informationUC Santa Barbara. CS189A - Capstone. Christopher Kruegel Department of Computer Science UC Santa Barbara
CS189A - Capstone Christopher Kruegel Department of Computer Science http://www.cs.ucsb.edu/~chris/ Design by Contract Design by Contract and the language that implements the Design by Contract principles
More informationA comparative study of Programming by Contract and Programming with Exceptions
Computer Science Jimmy Byström Leo Wentzel A comparative study of Programming by Contract and Programming with Exceptions Master s Thesis 2003:02 A comparative study of Programming by Contract and Programming
More informationLearning Objectives. C++ For Artists 2003 Rick Miller All Rights Reserved xli
Identify and overcome the difficulties encountered by students when learning how to program List and explain the software development roles played by students List and explain the phases of the tight spiral
More informationTrusted Components. Reuse, Contracts and Patterns. Prof. Dr. Bertrand Meyer Dr. Karine Arnout
1 Last update: 2 November 2004 Trusted Components Reuse, Contracts and Patterns Prof. Dr. Bertrand Meyer Dr. Karine Arnout 2 Lecture 26: Component model: The.NET example Agenda for today 3 What is.net?
More information2559 : Introduction to Visual Basic.NET Programming with Microsoft.NET
2559 : Introduction to Visual Basic.NET Programming with Microsoft.NET Introduction Elements of this syllabus are subject to change. This five-day instructor-led course provides students with the knowledge
More informationEnsuring a Rigorous Curriculum: Practices and Goals
Ensuring a Rigorous Curriculum: Practices and Goals Allen B. Tucker Bowdoin College www.bowdoin.edu/~allen April 12, 2002 1 of 30 Goals of an Undergraduate Program To prepare graduates for the computing
More informationDefense Technical Information Center Compilation Part Notice
UNCLASSIFIED Defense Technical Information Center Compilation Part Notice ADP023865 TITLE: Design by Contract: A Simple Technique for Improving the Quality f Software DISTRIBUTION: Approved for public
More informationSoftware Architecture 4. July 2005
Chair of Software Engineering Bertrand Meyer Software Architecture 4. July 2005 Name, First name:... I confirm with my signature, that I was able to take this exam under regular conditions and that I have
More informationAssertions. Assertions - Example
References: internet notes; Bertrand Meyer, Object-Oriented Software Construction; 11/13/2003 1 Assertions Statements about input to a routine or state of a class Have two primary roles As documentation,
More informationBANGLADESH UNIVERSITY OF PROFESSIONALS ACADEMIC CALENDAR FOR MPhil AND PHD PROGRAM 2014 (4 TH BATCH) PART I (COURSE WORK)
BANGLADESH UNIVERSITY OF PROFESSIONALS ACADEMIC CALENDAR FOR MPhil AND PHD PROGRAM 2014 (4 TH BATCH) DAY Soci-Economic and Political History of Bangladesh PART I (COURSE WORK) 1 ST SEMESTER 2 ND SEMESTER
More informationCPSC 444 Project Milestone III: Prototyping & Experiment Design Feb 6, 2018
CPSC 444 Project Milestone III: Prototyping & Experiment Design Feb 6, 2018 OVERVIEW... 2 SUMMARY OF MILESTONE III DELIVERABLES... 2 1. Blog Update #3 - Low-fidelity Prototyping & Cognitive Walkthrough,
More informationPROCESS DEVELOPMENT METHODOLOGY The development process of an API fits the most fundamental iterative code development
INTRODUCING API DESIGN PRINCIPLES IN CS2 Jaime Niño Computer Science, University of New Orleans New Orleans, LA 70148 504-280-7362 jaime@cs.uno.edu ABSTRACT CS2 provides a great opportunity to teach an
More informationSaving Potential in Technical Documentation
Saving Potential in Technical Documentation Shorter time to market, increasingly complex products, and a growing variety of languages are challenges that enterprises which operate on an international scale
More informationPowerShell 10961: Automating Administration with Windows PowerShell. Upcoming Dates. Course Description. Course Outline
PowerShell 10961: Automating Administration with Windows PowerShell Learn how with Windows PowerShell you can remotely manage single or multiple Windows-based servers and automate day-to-day management
More informationBusiness Requirements Specification for the. Nomination and Matching Procedures. In Gas Transmission Systems (NOM BRS)
27 May 2015 Rev14 1 2 3 4 for the In Gas Transmission Systems (NOM BRS) 5 6 Version 0 Revision 14 2015-05-27 7 8 ENTSOG AISBL; Av. de Cortenbergh 100, 1000-Brussels; Tel: +32 2 894 5100; Fax: +32 2 894
More informationAC System Monitoring Device
AC System Monitoring Device Andrew Jarrett Project Adviser: Professor Gutschlag Department of Electrical and Computer Engineering October 28, 2015 Executive Summary The alternating current (AC) system
More informationObject-Oriented Software Construction (Prentice-Hall International Series In Computer Science) By Bertrand Meyer
Object-Oriented Software Construction (Prentice-Hall International Series In Computer Science) By Bertrand Meyer oriented Software Construction (Prentice Hall International Series In Computing Science)
More informationChapter 1: Key Concepts of Programming and Software Engineering
Chapter 1: Key Concepts of Programming and Software Engineering Software Engineering Coding without a solution design increases debugging time - known fact! A team of programmers for a large software development
More informationThe Eiffel language. Slides partly based on :
The Eiffel language Slides partly based on : http://se.inf.ethz.ch/courses/2015b_fall/eprog/english_index.html Eiffel, in brief Procedural, object-oriented programming language created by Bertrand Meyer
More informationMasters in Software Engineering
Masters in Software Engineering Programme Requirements Taught Element, and PG Diploma in Software Engineering: 120 credits: IS5101 CS5001 CS5030 CS5031 CS5032 or CS5033 up to 30 credits from CS4100 - CS4450,
More informationJava-MOP: A Monitoring Oriented Programming Environment for Java
Java-MOP: A Monitoring Oriented Programming Environment for Java Feng Chen and Grigore Roşu Department of Computer Science, University of Illinois at Urbana - Champaign, USA {fengchen, grosu}@uiuc.edu
More informationArticle. FDT now talks.net. FDT Version 2.0 is on its way
Manufacturers and end-users alike can now benefit from the latest software trends with FDT 2.0 and they can, at the same time, rely on the backward compatibility to the predecessor version. The official
More informationData Structures and Algorithms for Engineers
04-630 Data Structures and Algorithms for Engineers David Vernon Carnegie Mellon University Africa vernon@cmu.edu www.vernon.eu Data Structures and Algorithms for Engineers 1 Carnegie Mellon University
More informatione-sens Nordic & Baltic Area Meeting Stockholm April 23rd 2013
e-sens Nordic & Baltic Area Meeting Stockholm April 23rd 2013 Objectives of the afternoon parallel tracks sessions 2 Meeting objectives High level: Identification of shared interests with emphasis on those
More informationCS 307: Software Engineering. Lecture 10: Software Design and Architecture
CS 307: Software Engineering Lecture 10: Software Design and Architecture Prof. Jeff Turkstra 2017 Dr. Jeffrey A. Turkstra 1 Announcements Discuss your product backlog in person or via email by Today Office
More informationSoftware Architecture
Chair of Software Engineering Software Architecture Prof. Dr. Bertrand Meyer Lecture 7: Patterns, Observer, MVC Patterns in software development Design pattern: A document that describes a general solution
More informationTrusted Components. Reuse, Contracts and Patterns. Prof. Dr. Bertrand Meyer Dr. Karine Arnout
1 Last update: 2 November 2004 Trusted Components Reuse, Contracts and Patterns Prof. Dr. Bertrand Meyer Dr. Karine Arnout 2 Lecture 12: Componentization Agenda for today 3 Componentization Componentizability
More informationObject-Oriented Software Construction
1 Object-Oriented Software Construction Bertrand Meyer Reading assignment 2 OOSC2 Chapter 10: Genericity 3 Lecture 4: Abstract Data Types Abstract Data Types (ADT 4 Why use the objects? The need for data
More informationContract Prover Semester Thesis
Semester Thesis 11th Februar 2005 Student: (kistlerd@student.ethz.ch) Student - No.: 01-917-244 Supervising Assistant: Bernd Schoeller Supervising Professor: Bertrand Meyer Contents 1 Introduction 3 2
More information1. Quality issues (5 points)
ETH Zurich Computer Science Course: Advanced Topics in Object Technology, by Bertrand Meyer Summer semester 2003 Exam (prepared by Karine Arnout) 2 July 2003 10:00 to 12:00 Name:.. Id-Nr:.. No notes, computers,
More informationGrading: Test 1 25% ---- Test 2 25% ---- Best 2 Final Exam 25% ---- Project 25% Assignments/labs 25%
1 MIS 139: E-Business Project Fall 2014 Phone: 946-2627 Office Hours: MWF 11-1, Th 9-10 Jerry Post E-mail: Jerry@JerryPost.com 204B Weber Web: http://jerrypost.com class: MWF 2:00-3:15 Textbook: Web readings
More informationRuntime Checking and Test Case Generation for Python
Runtime Checking and Test Case Generation for Python Anna Durrer Master Thesis Chair of Programming Methodology D-INFK ETH Supervisor: Marco Eilers, Prof. Peter Müller 24. Mai 2017 1 Introduction This
More informationReadability [Skrien 4.0] Programs must be written for people to read, and only incidentally for machines to execute.
Readability [Skrien 4.0] Programs must be written for people to read, and only incidentally for machines to execute. Abelson & Sussman Use a good set of coding conventions, such as the ones given in the
More informationJOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2002 Vol. 1, no. 4, September-October 2002 Eiffel Assertions and the External Structure of
More informationSoftware Architecture Bertrand Meyer. Lecture 3: Language constructs for modularity and information hiding
Software Architecture Bertrand Meyer Last update: 3 April 2007 ETH Zurich, March-July 2007 Lecture 3: Language constructs for modularity and information hiding Ilinca Ciupa Overview Review of modularity
More informationInduction Guide for Casual Employees. Creating a University of Melbourne Account & Themis Account
The following user guide will assist all casual staff in setting up their University email address, the University preferred method of communication and their Themis Financials account to enable casual
More informationPlatform-Independent UI Models: Extraction from UI Prototypes and rendering as W3C Web Components
Platform-Independent UI Models: Extraction from UI Prototypes and rendering as W3C Web Components Marvin Aulenbacher, 19.06.2017, Munich Chair of Software Engineering for Business Information Systems (sebis)
More informationECSE 321 Assignment 2
ECSE 321 Assignment 2 Instructions: This assignment is worth a total of 40 marks. The assignment is due by noon (12pm) on Friday, April 5th 2013. The preferred method of submission is to submit a written
More informationMarkets Gateway Roadmap
Markets Gateway Roadmap As of April 17, 2018 www.pjm.com Background Markets Gateway allows users to submit information and obtain data needed to conduct business in the Day-Ahead, Regulation and Synchronized
More informationQUESTIONS AND CONTACTS
Contact: Jake Losinski, Management Analyst P.O. Box 2315 480 East Avenue North Ketchum, ID 83340 July 27, 2018 Telephone: (208) 727-5081 jlosinski@ketchumidaho.org SUBMITTAL DEADLINE The City of Ketchum,
More informationContract-based Programming in Ada 2012 A Tutorial
Contract-based Programming in Ada 2012 A tutorial on how to use the Ada 2012 features for specifying detailed, checked contracts for types and subprograms 1. Contracts document constraints on how types
More informationThe Contract Pattern. Design by contract
The Contract Pattern Copyright 1997, Michel de Champlain Permission granted to copy for PLoP 97 Conference. All other rights reserved. Michel de Champlain Department of Computer Science University of Canterbury,
More informationAssertions, pre/postconditions
Programming as a contract Assertions, pre/postconditions Assertions: Section 4.2 in Savitch (p. 239) Specifying what each method does q Specify it in a comment before method's header Precondition q What
More informationStandard Glossary of Terms used in Software Testing. Version 3.2. Foundation Extension - Usability Terms
Standard Glossary of Terms used in Software Testing Version 3.2 Foundation Extension - Usability Terms International Software Testing Qualifications Board Copyright Notice This document may be copied in
More informationB.C.A (5 th Semester) Assessment Policy
Theory Parameters B.C.A (5 th Semester) 030010514: DSE6 Fundamentals of Web Application Development Policy Assessm ent Code Type Duration Number of questions Marks of each Weightage in CIE of 40 marks
More informationEuropean Developments
European Developments Place your chosen image here. The four corners must just cover the arrow tips. For covers, the three pictures should be the same size and in a straight line. Transmission Workgroup
More informationECE573 Introduction to Compilers & Translators
ECE573 Introduction to Compilers & Translators Tentative Syllabus Fall 2005 Tu/Th 9:00-10:15 AM, EE 115 Instructor Prof. R. Eigenmann Tel 49-41741 Email eigenman@ecn Office EE334C Office Hours Tu 10:15-11:30
More informationEUROPASS DIPLOMA SUPPLEMENT TO HIGHER TECHNICAL VOCATIONAL TRAINING
EUROPASS DIPLOMA SUPPLEMENT TO HIGHER TECHNICAL VOCATIONAL TRAINING TITLE OF THE DIPLOMA (ES) Técnico Superior en Desarrollo de Aplicaciones Web TRANSLATED TITLE OF THE DIPLOMA (EN) (1) Higher Technician
More informationAutomatic Black-Box Method-Level Test Case Generation Based on Constraint Logic Programming
Automatic Black-Box Method-Level Test Case Generation Based on Constraint Logic Programming i-tin Hu and ai-wei Lin Department of Computer Science and Information Engineering ational Chung Cheng University
More informationCourse Administration
CS 246: Software Abstraction and Specification (Software Engineering Section) Lecture 1 Course Administration http://www.student.cs.uwaterloo.ca/~cs247 Calendar Description CS 247 Software Engineering
More informationDesign. Introduction
Design Introduction a meaningful engineering representation of some software product that is to be built. can be traced to the customer's requirements. can be assessed for quality against predefined criteria.
More informationStakeholder consultation process and online consultation platform
Stakeholder consultation process and online consultation platform Grant agreement no.: 633107 Deliverable No. D6.2 Stakeholder consultation process and online consultation platform Status: Final Dissemination
More informationSelf-checking software insert specifications about the intent of a system
Assertions Reading assignment A. J. Offutt, A Practical System for Mutation Testing: Help for the Common Programmer, Proceedings of the 12th International Conference on Testing Computer Software, Washington,
More informationM Introduction to Visual Basic.NET Programming with Microsoft.NET 5 Day Course
Module 1: Getting Started This module introduces Visual Basic.NET and explains how it fits into the.net platform. It explains how to use the programming tools in Microsoft Visual Studio.NET and provides
More informationDesign by Contract: An Overview
: An Overview CSCI 5828 Michael M. Vitousek University of Colorado at Boulder michael.vitousek@colorado.edu March 21, 2012 1 / 35 Outline 1 Introduction Motivation and Introduction Simple Example Contract
More information375 SMITH STREET 384 SMITH STREET. TEL: 0860 CALL DCC ( ) FAX: (031) AGREEMENT BETWEEN
Durban Computer College (Pty) Ltd trading as DCC CAMPUS DCC FET INSTITUTION DCC MATRIC SCHOOL Registered by the Department of Education for the Qualifications shown on certificate No: 00HC01 (REGISTRATION
More informationUK EPR GDA PROJECT. Name/Initials Date 30/06/2011 Name/Initials Date 30/06/2011. Resolution Plan Revision History
RP unique number: Page GI-UKEPR-RP-01-RP 0 30/06/2011 1 of 5 Approved for EDF by: A. PETIT Approved for AREVA by: C. WOOLDRIDGE Name/Initials Date 30/06/2011 Name/Initials Date 30/06/2011 Resolution Plan
More informationInformatics Spring Semester
Polytechnic Institute of Viseu Higher School of Technology and Management of Viseu International Semesters for Students Informatics Spring Semester Semester title Informatics Semesters Spring Person responsible
More informationDATE OF BIRTH SORTING (DBSORT)
DATE OF BIRTH SORTING (DBSORT) Release 3.1 December 1997 - ii - DBSORT Table of Contents 1 Changes Since Last Release... 1 2 Purpose... 3 3 Limitations... 5 3.1 Command Line Parameters... 5 4 Input...
More informationCompilers for Modern Architectures Course Syllabus, Spring 2015
Compilers for Modern Architectures Course Syllabus, Spring 2015 Instructor: Dr. Rafael Ubal Email: ubal@ece.neu.edu Office: 140 The Fenway, 3rd floor (see detailed directions below) Phone: 617-373-3895
More informationAPNIC Status Report. ARIN VI Public Policy Meeting 2-44 October 2000
APNIC Status Report ARIN VI Public Policy Meeting 2-44 October 2000 Overview News Membership Growth Statistics Activities Priorities Total number of medals won - top 5 USA 97 RUSSIA 88 CHINA 59 AUSTRALIA
More informationBanner 9 Overview and Transition timeline August Edgar Coronel Paddy Wong
Banner 9 Overview and Transition timeline August 2018 Edgar Coronel Paddy Wong v1 Banner Basics Banner 9 Overview Single Sign On Begin Transition! Using Banner 9 Demo Agenda Banner Basics Banner Forms
More informationOCM ACADEMIC SERVICES PROJECT INITIATION DOCUMENT. Project Title: Online Coursework Management
OCM-12-025 ACADEMIC SERVICES PROJECT INITIATION DOCUMENT Project Title: Online Coursework Management Change Record Date Author Version Change Reference March 2012 Sue Milward v1 Initial draft April 2012
More informationLethbridge/Laganière 2005 Chapter 9: Architecting and designing software 6
Trying to deal with something big all at once is normally much harder than dealing with a series of smaller things Separate people can work on each part. An individual software engineer can specialize.
More informationMobile-Friendly Web Browsing. Dr. Jun Kong Department of Computer Science North Dakota State University
Mobile-Friendly Web Browsing Dr. Jun Kong Department of Computer Science North Dakota State University 1 Motivation Not user friendly to browse regular Web pages on mobile devices Keeping two versions
More informationDomain Engineering And Variability In The Reuse-Driven Software Engineering Business.
OBM 7 -draft 09/02/00 1 Domain Engineering And Variability In The Reuse-Driven Software Engineering Business. Martin L. Griss, Laboratory Scientist, Hewlett-Packard Laboratories, Palo Alto, CA. Effective
More informationAutomatic Verification of Computer Programs
Chair of Software Engineering Automatic Verification of Computer Programs these slides contain advanced material and are optional What is verification Check correctness of the implementation given the
More informationEiffel: Analysis, Design and Programming. ETH Zurich, September-December Exception handling
Eiffel: Analysis, Design and Programming ETH Zurich, September-December 2008-6- Exception handling What is an exception? An abnormal event Not a very precise definition Informally: something that you don
More informationGraduate School of Library and Information Science Spring Document Processing (LIS 450 )
Graduate School of Library and Information Science Spring 2000 Document Processing (LIS 450 ) Section DP Wednesday, 8 10:50 AM Room 143, Henry Building David Dubin Office: LIS 222 Office hours: Tuesdays,
More informationExcel Functions & Tables
Excel Functions & Tables SPRING 2016 Spring 2016 CS130 - EXCEL FUNCTIONS & TABLES 1 Review of Functions Quick Mathematics Review As it turns out, some of the most important mathematics for this course
More informationA CLR Back-end for a FLOSS Eiffel
Final Year Project Final Report A thesis submitted in part fulfilment of the degree of BSc. (Hons.) in Computer Science with the supervision of Dr. Joseph Kiniry and moderated by Dr. Michael Walsh. School
More informationWEB APPLICATION MANAGEMENT: IMPLEMENTING A DYNAMIC DATABASE UPGRADE MODEL
WEB APPLICATION MANAGEMENT: IMPLEMENTING A DYNAMIC DATABASE UPGRADE MODEL Richard Wilson 1 & Daniel Lowes 2 1 Dept. of Computer Science and Software Engineering, University of Melbourne (Australia) 2 Dept.
More informationMotivation. ! Stop reinventing the wheel, try to reuse code! ! How do you organize code reuse? History: " Copy & Paste. " Collect useful files
Motivation 08 - Object-Oriented Libraries and Extensions! When you several systems, you notice that much of their code is similar.! Stop reinventing the wheel, try to reuse code!! How do you organize code
More informationFrom Eiffel and Design by Contract to Trusted Components
From Eiffel and Design by Contract to Trusted Components Bertrand Meyer ETH Zürich / Eiffel Software Budapest, December 2003 1 My background Since 1985: Founder (now Chief Architect) of Eiffel Software,
More information