Ontwerp van SoftwareSystemen. 1 Introduction. Roel Wuyts OSS
|
|
- Georgia Richard
- 2 years ago
- Views:
Transcription
1 Ontwerp van SoftwareSystemen 1 Introduction Roel Wuyts OSS
2 People Roel Wuyts URL: Dries Vanoverberghe Mario Henrique Cruz Torres 2
3 Doelstellingen In deze cursus komt het ontwerpen van software systemen aan bod. De nadruk ligt op objectgerichte methodes. Een belangrijke doelstelling is het leren nemen van ontwerpbeslissingen op een gefundeerde manier, met het afwegen van voor- en nadelen van verschillende oplossingen met betrekking tot de analyse en vereisten, het ontwerp, de implementatie, en de organisatie. Dit alles wordt toegepast in een groepsproject dat uitbreidingen maakt op een niettriviale, en voor de studenten nieuwe, applicatie. 3
4 Begintermen Grondige kennis van een objectgerichte programmeertaal en objectgeoriënteerde concepten. Praktische vaardigheden bij het ontwikkelen van programma's, i.c. het gebruik van een IDE (integrated development environment) zoals Eclipse en versiebeheer software zoals svn. 4
5 Inhoud Hoorcollege Overzicht van software ontwikkelingsprocessen. Objectgerichte analyse en ontwerp gebruikmakend van de modeleertaal UML. Studie, evaluatie en gebruik van GRASP patronen en van ontwerp patronen. Technieken voor het realiseren van kwalitatieve objectgerichte ontwerpen en implementaties. Technieken voor het inschatten van de kwaliteit van het ontwerp en de implementatie van software systemen. 5
6 Course Material Slides and links on the website of the course Material Applying UML and Patterns (3rd ed.), Craig Larman. Design Patterns: Elements of Reusable Object-Oriented Software, E. Gamma, R. Helm, R. Johnson, J. Vlissides. Refactoring: Improving the Design of Existing Code, M. Fowler, K. Beck, J. Brant, W. Opdyke, D. Roberts. "No Silver Bullet: Essence and Accident in Software Engineering ", F.P. Brooks. 6
7 Project: applying the theory in practice Group Project Number of persons in a group not yet known! Three iterations: 1. Investigate and evaluate an existing implementation Analysis of an existing system 2. Extend it (Trade-offs!) Decide what to modify to realize the extension 3. Refactor it Clean up and realize a smaller extension 7
8 Project Effort Effort of 90 hours / student. It is possible that you spend more or less! notify me in time of possible discrepancies 8
9 Escalation Policy Groups do not always function smoothly But dealing with this is part of your education In case of problems: discuss within group. if it cannot be resolved: mail to your assistant (with me in cc) to describe the problem. assistant may decide to involve me if necessary. In case of problems with assistant: contact me. In case of problems with me: contact MA1 responsible. 9
10 Course grading: First session Project defense after iterations (grades P1,P2,P3) Individual defense after final iteration (grade I) Grading Algorithm: If Pi <= 5, 1<=i<=3 : final grade = min(p1, P2, P3) elif I <= 8: final grade = I else final grade = ( avg (P1, P2, P3) + I) / 2 If we find large work discrepancies within a group, specific grades for that group/person can be given 0 is possible when not collaborating! 10
11 Course grading: Second session Second session Continuing project individually Grade on project (P4) and project defense (I ) Grading algorithm from first session: lowest score replaced by P4 I replaced with I 11
12 Project Defense 5 minutes demonstration Each of you gets questions and answers. Then other group members can provide more information. Questions originate from your report, design and implementation. You get two kinds of feedback: during the defense:our questions and comments right after the defense: ok take care not ok 12
13 Grades 1st session: Final grade 10 : done! Final grade < 10 : redo in second session 2nd session: Final grade 10 : done! Final grade < 10 : credit not obtained 13
14 Questions? 14
15 About You Let s do an interactive quiz there is no right or wrong for most of the questions here; goal is for me to learn your reflexes when faced with questions related to programming language, design, or implementation. 15
16 Is the following correct: A message sent to super is sent to the parent of the object 16
17 What is the result of the following expression? } class A { public void m(a a) { System.out.println("1"); } class B extends A { public void m(b b) { System.out.println("2"); } public void m(a a) { System.out.println("3"); } } B b = new B(); A a = b; a.m(b); 17
18 What do you think of the following implementation? // Return null to signify end of file protected IToken fetchtoken() throws EndOfFileException { ++count; while (bufferstackpos >= 0) { // Tokens don't span buffers, stick to our current one char[] buffer = bufferstack[bufferstackpos]; int limit = bufferlimit[bufferstackpos]; int pos = bufferpos[bufferstackpos]; switch (buffer[pos]) { case '_': t = scanidentifier(); if (t instanceof MacroExpansionToken) continue; return t; case '#': if (pos + 1 < limit && buffer[pos + 1] == '#') { ++bufferpos[bufferstackpos]; return newtoken(itoken.tpoundpound); } // Should really check to make sure this is the first // non whitespace character on the line handleppdirective(pos); continue; (390 lines of code in total) 18
19 Reuse versus hack Suppose you are responsible to add a new feature to an existing piece of software. The design of the existing software makes this hard. How do you decide whether to rewrite the existing software or whether to hack in the new feature? 19
20 Object-Oriented Software Design Question A restaurant menu consists of dishes, e.g. Flemish stew, Blood sausage with apples and Chicken Royale with Champaign. Each dish consists of a number of ingredients and is either a starter, a main course or a dessert. The menu shows for each dish an authenticity score (1, 2 or 3), a calory score, as well as the price. Menus need to be printed in a variety of languages (dutch, french, english, japanese, arabic; some left-to-right and some rightto-left) and needs to be available on an interactive website (where a picture is shown of the dish). The menus change frequently with the seasons. 20
21 Why Software Engineering? Problem Specification Final Program But... Where did the specification come from? How do you know the specification corresponds to the user s needs? How did you decide how to structure your program? How do you know the program actually meets the specification? How do you know your program will always work correctly? What do you do if the users needs change? How do you divide tasks up if you have more than a oneperson team? 21
22 What is Software Engineering? (I) Some Definitions and Issues state of the art of developing quality software on time and within budget Trade-off between perfection and physical constraints Software engineering deals with real-world issues State of the art! Community decides on best practice + life-long education 22
23 What is Software Engineering? (II) multi-person construction of multi-version software Team-work Scale issue ( program well is not enough) + Communication Issue Parnas Successful software systems must evolve or perish Change is the norm, not the exception 23
24 Communication and Modeling Team-effort requires communication Results have to be communicated externally 24
25 UML Unified Modeling Language De-facto standard that I expect everybody to know and follow working knowledge of at least the use case, class, sequence and communication diagrams use throughout course (theory, practice, project) Self-study I give a short overview You do the study There will be a practice session 25
26 General Goals of UML Model systems using OO concepts Establish an explicit coupling to conceptual as well as executable artifacts To create a modeling language usable by both humans and machines Models different types of systems (information systems, technical systems, embedded systems, real-time systems, distributed systems, system software, business systems, UML itself,...) 26
27 11 diagrams in UML 2 Class diagram Internal Structure Diagram Collaboration diagram Component diagram Use case diagram State machine diagram Activity Diagram Sequence diagram Communication Diagram Deployment diagram Package diagram Structural Dynamic Physical Model Management 27
28 Requirements Engineering and Use Cases Requirements: documented need for what a system or project should do 37% of problems with software projects have to do with requirements 25% of the requirements change during the project (and 35-50% in large projects) Therefore: embrace change! 28
29 Types of Requirements: FURPS+ categorization Functional features, capabilities Use Cases Usability human factors, help, documentation Reliability frequency of failure, recoverability Performance Response times, throughput, accuracy, resource usage Supportability Adaptability, maintainability, configurability + implementation, interface, operations, packaging, legal Non-functional 29
30 Use Cases Stories that describe usage of the system describe sequence of actions with an observable result for a specific actor used by all kinds of stakeholders It does not describe the internal working of the system What, not How Responsibilities of the system are described 30
31 Use Case Diagram actor Cash register use case Process Sale Cashier association Refund Purchased Items system border 31
32 Fully Dressed Use Case Description Use case: Process Sale Primary Actor: Cashier Cashier: wants accurate, fast entry, and no payment errors, as cash drawers shortages are deduced from his/her salary Stakeholders and interests: Customer: wants purchase and fast service with minimal effort. Wants easily visible display of entered items and prices. Wants proof of purchase to support returns. Manager, Government, Payment Company,... Precondition: Success Guarantee (postcondition) Sale is saved. Tax is correctly calculated. Receipt is generated. Accounting and inventory are updated. Payment info is recorded. 32
33 Domain Modeling A domain model describes meaningful concepts in the problem domain again about the what, not the how does not model design artifacts (how), but models conceptual artifacts, real-world things 33
34 Domain model for the Cash Register example Records-sale-of concept attribute 1 Payment amount 0..1 Sales LineItem quantity Contained-in 1.. * Paid-by date time Sale 1 1 * * Captured-on 1 1 * Initiated-by 1 Customer 1 Logscompleted 6 Described-by Product Catalog 1 Store address name Register 1 Used-by * Houses 1.. * Contains 1.. * Stocks * Started-by Records-sales-on 1 Cashier 1 Product description price UPC Item Manager Describes * 1..* association 34
35 Class Diagrams Domain model is the analysis class diagram Don t show methods Domain Model conceptual perspective... Register 1 Captures 1 Sale time iscomplete : Boolean /total Register Sale Design Model DCD; software perspective... endsale() enteritem(...) makepayment(...) 1 currentsale time iscomplete : Boolean /total makelineitem(...) Avoid showing no-argument constructors & getters/setters Design model class diagrams shows methods and visibility (arrowhead on association) Register has reference to Sale; Sale does not have reference to Register 35
36 Class Diagrams 36
37 Interaction diagrams UML Interaction diagrams model message-exchange between objects 2 kinds: Communication Diagrams focus on interactions Sequence Diagrams focus on time 1: message2() message1() a:classa 2: message3() b:classb
38 Interaction diagramma s UML Interaction diagrams model message-exchange between objects 2 kinds: Communication Diagrams focus on interactions Sequence Diagrams focus on time a:classa b:classb message1() message2() message3()
39 Communication Diagram Example start message parameter direction makepayment(cashtendered) :Register 1: makepayment(cashtendered) :Sale 1.1: create(cashtendered) :Payment instance association follow-up message 39
40 Sequence Diagram Example time instance : User : Register : Sale msg1() msg2() activation msg3() msg4() msg5() lifeline assocation 40
41 Conclusion This course is about (OO) software design Understand quality design and implementation Make reasoned design decisions Make trade-offs that balance quality, effort, design, and implementation Be able to communicate your decision 41
42 Sample Questions Individual Oral Examination Waarom heb je een visitor patroon nodig als je een taal hebt die open classes/class extensies ondersteunt? Wanneer heeft het zin om het Iterator en het Composite patroon samen te gebruiken? Kan je kort zeggen wat de Decorator en Strategy Patronen zijn, en aangeven wanneer je welke zou gebruiken? Wat is een software development methodologie, en geef 2 voorbeelden. Wanneer zou je welke aanpak gebruiken? Wat is refactoring? Geef een voorbeeld van een refactoring. Wanneer refactor je in een XP project? Wat is de bedoeling van de Overview Pyramid? Hoe kan je weten of de controller in de GRASP Controller Pattern goed ontworpen is? Wat is overriding en overlading? Pas ze beiden toe op een visitor design patroon en weeg de voor- en nadelen af. Welke design patronen kunnen nuttig zijn in een Unit Testing Framework ontwerp? Bespreek de Law of Demeter. Wanneer is een verzameling unit tests goed te noemen? Wat is double dispatch. Geef een voorbeeld. Bespreek een design patroon waar double dispatch gebruikt wordt. 42
4. Applying UML. Case Study: POST
4. Applying UML Subject/Topic/Focus: Case Study of a Point of Sale Summary: Use Cases Class Diagrams Interaction Diagrams Literature: Craig Larman; Applying UML and Patterns, Prentice Hall, 997 4. Case
Examen Software Engineering 2010-2011 05/09/2011
Belangrijk: Schrijf je antwoorden kort en bondig in de daartoe voorziene velden. Elke theorie-vraag staat op 2 punten (totaal op 24). De oefening staan in totaal op 16 punten. Het geheel staat op 40 punten.
Software Development Process
Software Development Process 台 北 科 技 大 學 資 訊 工 程 系 鄭 有 進 教 授 2005 copyright Y C Cheng Software development process Software development process addresses requirements, expectations and realities simultaneously
Software Requirement Specification
Software Requirement Specification Software Engineering 1 Requirements Analysis 1 As Marketing requested it. Software Engineering 2 Requirements Analysis 2 As Sales ordered it. Software Engineering 3 Requirements
Requirement engineering Exercise the POS System solution
Requirement engineering Exercise the POS System solution Problem Description A POS (Point-Of-Sale) system is a computer system typically used to manage the sales in retail stores. It includes hardware
IT-waardeketen management op basis van eeuwenoude supply chain kennis
IT-waardeketen management op basis van eeuwenoude supply chain kennis Hans van Aken / November 28, 2012 Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject
Principles of Software Construction: Objects, Design, and Concurrency. Domain Modeling and Specifying System Behavior. toad
Principles of Software Construction: Objects, Design, and Concurrency Domain Modeling and Specifying System Behavior toad Fall 2014 Jonathan Aldrich Charlie Garrod School of Computer Science Administrivia:
Use Cases. Reference: Craig Larman, Applying UML and Patterns, Ch. 6
Use Cases Reference: Craig Larman, Applying UML and Patterns, Ch. 6 Use Case What it is: Text story Widely used to discover and record (mostly functional) requirements What is it about: Some actor(s) using
Case Study: Inception Phase. L. ch. 3-5
Case Study: Inception Phase L. ch. 3-5 An Example System Let s consider a familiar example: a POS system A learning strategy: Learn ideas and concepts on the POS system UML itself is among those ideas/concepts
Uw partner in system management oplossingen
Uw partner in system management oplossingen User Centric IT Bring your Own - Corporate Owned Onderzoek Forrester Welke applicatie gebruik je het meest op mobiele devices? Email 76% SMS 67% IM / Chat 48%
Citrix Access Gateway: Implementing Enterprise Edition Feature 9.0
coursemonstercom/uk Citrix Access Gateway: Implementing Enterprise Edition Feature 90 View training dates» Overview Nederlands Deze cursus behandelt informatie die beheerders en andere IT-professionals
Domain Modeling. Domain Modeling
Domain Modeling A representation of the conceptual classes in problem domain UML (conceptual) class diagrams What s a conceptual class? What are its attributes? What are description classes? What are inter-class
Relationele Databases 2002/2003
1 Relationele Databases 2002/2003 Hoorcollege 5 22 mei 2003 Jaap Kamps & Maarten de Rijke April Juli 2003 Plan voor Vandaag Praktische dingen 3.8, 3.9, 3.10, 4.1, 4.4 en 4.5 SQL Aantekeningen 3 Meer Queries.
Chapter 3 Chapter 3 Service-Oriented Computing and SOA Lecture Note
Chapter 3 Chapter 3 Service-Oriented Computing and SOA Lecture Note Text book of CPET 545 Service-Oriented Architecture and Enterprise Application: SOA Principles of Service Design, by Thomas Erl, ISBN
Domain Model I. Case requirements. Incremental Development. Lecture 4
Domain Model I Lecture 4 Case requirements The requirements for the first iteration of the NextGen POS: Implement a basic, key scenario of the Process use case Implement a Start Up use case as necessary
How to Make a Domain Model. Tutorial
How to Make a Domain Model Tutorial What is a Domain Model? Illustrates meaningful conceptual classes in problem domain Represents real-world concepts, not software components Software-oriented class diagrams
Announcements. HW due today, 2 to grade this week Welcome back from Spring Break!
Announcements HW due today, 2 to grade this week Welcome back from Spring Break! Analysis (Domain) Modeling: Introduction Reading: Arlow and Neustadt chaps. 8, 9 (& 7) Also see Larman Chapter 10 (2 nd
Verticale tuin maken van een pallet
Daar krijg je dan je groendakmaterialen geleverd op een pallet. Waar moet je naar toe met zo'n pallet. Retour brengen? Gebruiken in de open haard? Maar je kunt creatiever zijn met pallets. Zo kun je er
International Classroom Project. Een integrale benadering vanuit een instellingsvisie op internationalisering
1 International Classroom Project Een integrale benadering vanuit een instellingsvisie op internationalisering 4 3/12/2014 8 Martini tower at night 9 International Classroom Project Aantallen en ambities
Object-Oriented Design Guidelines
Adaptive Software Engineering G22.3033-007 Session 8 Sub-Topic 3 Presentation Object-Oriented Design Guidelines Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute
Xtreme RUP. Ne t BJECTIVES. Lightening Up the Rational Unified Process. 2/9/2001 Copyright 2001 Net Objectives 1. Agenda
Xtreme RUP by Ne t BJECTIVES Lightening Up the Rational Unified Process 2/9/2001 Copyright 2001 Net Objectives 1 RUP Overview Agenda Typical RUP Challenges Xtreme Programming Paradigm Document driven or
Payment. amount. Payment. amount: Money. getbalance(): Money
Dpto. de Computación y T.I. Taller de Ingeniería de Software Clase 5 Agenda 1.Exposición por equipos: Diagrama de Clases de Análisis 2. Diagrama de Clases 3.Traducción clases a Esquema Relacional 3. 4.Asignación
Corporate Universities Aanjagers van de lerende organisatie
CORPORATE UNIVERSITY EVENT Corporate Universities Aanjagers van de lerende organisatie Rotterdam School of Management Erasmus University Rotterdam 5 juni 2012 Dagvoorzitter Josette de Goede RSM Oogst Open
EEN HUIS BESTUREN ALS EEN FABRIEK,
EEN HUIS BESTUREN ALS EEN FABRIEK, HOE DOE JE DAT? Henk Akkermans World Class Maintenance & Tilburg University Lezing HomeLab 2050, KIVI, 6 oktober, 2015 The opportunity: an industrial revolution is happening
Welkom in de wereld van EDI en de zakelijke kansen op langer termijn
Welkom in de wereld van EDI en de zakelijke kansen op langer termijn Sectorsessie mode 23 maart 2016 ISRID VAN GEUNS IS WORKS IS BOUTIQUES Let s get connected! Triumph Without EDI Triumph Let s get connected
DORI in de praktijk Paul van Dooren Sales District Manager
Paul van Dooren Sales District Manager 1 ST/SEB-SBD 01-06-2015 Robert Bosch GmbH 2015. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in
Composing Concerns with a Framework Approach
Composing Concerns with a Framework Approach Constantinos A. Constantinides 1,2 and Tzilla Elrad 2 1 Mathematical and Computer Sciences Department Loyola University Chicago cac@cs.luc.edu 2 Concurrent
Virtualisatie. voor desktop en beginners. Gert Schepens Slides & Notities op gertschepens.be
Virtualisatie voor desktop en beginners Gert Schepens Slides & Notities op gertschepens.be Op deze teksten is de Creative Commons Naamsvermelding- Niet-commercieel-Gelijk delen 2.0 van toepassing. Wat
CMMI version 1.3. How agile is CMMI?
CMMI version 1.3 How agile is CMMI? A small poll Who uses CMMI without Agile? Who uses Agile without CMMI? Who combines both? Who is interested in SCAMPI? 2 Agenda Big Picture of CMMI changes Details for
Agile Modeling: A Brief Overview
Agile Modeling: A Brief Overview Scott W. Ambler President, Ronin International scott.ambler@ronin-intl.com Abstract: Agile Modeling (AM) is a practice-based methodology for effective modeling of software-based
Met wie moet je als erasmusstudent het eerst contact opnemen als je aankomt?
Erasmusbestemming: University of Edinburgh, Edinburgh, UK Academiejaar: 2011-2012 Één/twee semester(s) Universiteit Waar is de universiteit ergens gelegen (in het centrum/ ver uit het centrum)? For law
~ We are all goddesses, the only problem is that we forget that when we grow up ~
~ We are all goddesses, the only problem is that we forget that when we grow up ~ This brochure is Deze brochure is in in English and Dutch het Engels en Nederlands Come and re-discover your divine self
Vergaderen in de toekomst Wilfried Post, Anita Cremers en Wessel Kraaij
Vergaderen in de toekomst Wilfried Post, Anita Cremers en Wessel Kraaij Probleemstelling We vergaderen veel Iedere dag wel een keer Soms tot 50% van onze tijd En dat gaat toenemen Binnen en buiten de organisatie,
Sample test Secretaries/administrative. Secretarial Staff Administrative Staff
English Language Assessment Paper 3: Writing Time: 1¼ hour Secretarial Staff Administrative Staff Questions 1 17 Text 1 (questions 1 8) Assessment Paper 3 Writing Part 1 For questions 1-8, read the text
Research Report. Ingelien Poutsma Marnienke van der Maal Sabina Idler
Research Report Ingelien Poutsma Marnienke van der Maal Sabina Idler Research report ABSTRACT This research investigates what the ideal bank for adolescents (10 16 years) looks like. The research was initiated
Use Cases. Massimo Felici. Massimo Felici Use Cases c 2004 2011
Use Cases Massimo Felici Use Cases 1 Support requirements engineering activities and the requirement process Capture what a system is supposed to do, i.e., systems functional requirements Describe sequences
Inhoudsopgave. Vak: Web Analysis 1 Vak: Web Information 1 Vak: Web Science 2 Vak: Web Society 3 Vak: Web Technology 4
Minor Web Science I Inhoudsopgave Vak: Web Analysis 1 Vak: Web Information 1 Vak: Web Science 2 Vak: Web Society 3 Vak: Web Technology 4 II Web Analysis Vakcode X_401065 () dr. Z. Szlavik Docent(en) dr.
Scenario-based Requirements Engineering and User-Interface Design
Scenario-based Requirements Engineering and User-Interface Institut für Computertechnik ICT Institute of Computer Technology Hermann Kaindl Vienna University of Technology, ICT Austria kaindl@ict.tuwien.ac.at
CS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed.
CS 389 Software Engineering Lecture 2 Chapter 2 Software Processes Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed. Topics covered Software process models Process activities Coping
Design Document. Developing a Recruitment campaign for IKEA. Solve-
Design Document Developing a Recruitment campaign for IKEA. Solve- 02 00 Chapter Index 01. INTRODUCTION 02. GENERAL INFORMATION Informational architecture Sitemap Use case Why use or not use Flash Flowchart
Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements
Questions? Assignment Why is proper project management important? What is goal of domain analysis? What is the difference between functional and non- functional requirements? Why is it important for requirements
Experiences with ALM tools in Software Engineering course
Faculty of Mathematics, University of Belgrade 1/35 Vladimir Filipović Experiences with ALM tools in Software Engineering course Outline 2/35 Software Engineering course entitled Software development 2
101 Inspirerende Quotes - Eelco de boer - winst.nl/ebooks/ Inleiding
Inleiding Elke keer dat ik een uitspraak of een inspirerende quote hoor of zie dan noteer ik deze (iets wat ik iedereen aanraad om te doen). Ik ben hier even doorheen gegaan en het leek me een leuk idee
6 USE CASES. Introduction. Chapter 6. Objectives. The indispensable first step to getting the things you want out of life: decide what you want.
UML and Patterns.book Page 61 Thursday, September 16, 2004 9:48 PM Chapter 6 6 USE CASES The indispensable first step to getting the things you want out of life: decide what you want. Ben Stein Objectives
COOLS COOLS. Cools is nominated for the Brains Award! www.brainseindhoven.nl/nl/top_10/&id=507. www.cools-tools.nl. Coen Danckmer Voordouw
Name Nationality Department Email Address Website Coen Danckmer Voordouw Dutch / Nederlands Man and Activity info@danckmer.nl www.danckmer.nl Project: Image: Photographer: Other images: COOLS CoenDVoordouw
HR Transformation and Future of HR Brussel, 25 april 2013 Material part 1/2
HR Transformation and Future of HR Brussel, 25 april 2013 Material part 1/2 Doelstellingen Ideeën uitwisselen over hoe een HR transformatie te starten Ervaringen delen over hoe HR toegevoegde waarde kan
QAFE. Oracle Gebruikersclub Holland Rokesh Jankie Qualogy. Friday, April 16, 2010
QAFE Oracle Gebruikersclub Holland Rokesh Jankie Qualogy 1 Agenda 2 2 Agenda Aanleiding Productivity Boosters Vereisten Oracle Forms Oplossing Roadmap Resultaat Samenvatting 2 2 Waarom QAFE? 3 3 Waarom
The state of DIY. Mix Express DIY event Maarssen 14 mei 2014
The state of DIY!! Mix Express DIY event Maarssen 14 mei 2014 Inleiding Mix press DIY sessie Maarssen 14 mei 2014 Deze presentatie is gemaakt voor het Mix DIY congres en gebaseerd op onze analyse van de
A methodology for secure software design
A methodology for secure software design Eduardo B. Fernandez Dept. of Computer Science and Eng. Florida Atlantic University Boca Raton, FL 33431 ed@cse.fau.edu 1. Introduction A good percentage of the
Applying 4+1 View Architecture with UML 2. White Paper
Applying 4+1 View Architecture with UML 2 White Paper Copyright 2007 FCGSS, all rights reserved. www.fcgss.com Introduction Unified Modeling Language (UML) has been available since 1997, and UML 2 was
ATM Case Study OBJECTIVES. 2005 Pearson Education, Inc. All rights reserved. 2005 Pearson Education, Inc. All rights reserved.
1 ATM Case Study 2 OBJECTIVES.. 3 2 Requirements 2.9 (Optional) Software Engineering Case Study: Examining the Requirements Document 4 Object-oriented design (OOD) process using UML Chapters 3 to 8, 10
Organization. Introduction to Software Engineering
Dr. Michael Eichberg Software Technology Group Department of Computer Science Technische Universität Darmstadt Introduction to Software Engineering Organization Teaser Background Information 3 As long
Non-Functional Requirements
IBM Software Group Non-Functional Requirements Peter Eeles peter.eeles@uk.ibm.com Agenda IBM Software Group Rational software Definitions Types of requirement Classifying requirements Capturing NFRs Summary
Requirements engineering and quality attributes
Open Learning Universiteit Unit 2 Learning Unit 2 Requirements engineering and quality attributes Contents Introduction............................................... 21 2.1 Important concepts........................................
A Meeting Room Scheduling Problem
A Scheduling Problem Objective Engineering, Inc. 699 Windsong Trail Austin, Texas 78746 512-328-9658 FAX: 512-328-9661 ooinfo@oeng.com http://www.oeng.com Objective Engineering, Inc., 1999-2007. Photocopying,
RUP. Development Process. Iterative Process (spiral) Waterfall Development Process. Agile Development Process. Well-known development processes
Well-known development processes Development Process RUP (Rational Unified Process) (Capability Maturity Model Integration) Agile / XP (extreme Programming) Waterfall Development Process Iterative Process
IP-NBM. Copyright Capgemini 2012. All Rights Reserved
IP-NBM 1 De bescheidenheid van een schaker 2 Maar wat betekent dat nu 3 De drie elementen richting onsterfelijkheid Genomics Artifical Intelligence (nano)robotics 4 De impact van automatisering en robotisering
employager 1.0 design challenge
employager 1.0 design challenge a voyage to employ(ment) EMPLOYAGER 1.0 On the initiative of the City of Eindhoven, the Red Bluejay Foundation organizes a new design challenge around people with a distance
270015 - IES - Introduction to Software Engineering
Coordinating unit: 270 - FIB - Barcelona School of Informatics Teaching unit: 747 - ESSI - Department of Service and Information System Engineering Academic year: Degree: 2015 BACHELOR'S DEGREE IN INFORMATICS
How to deliver Self Service IT Automation
How to deliver Self IT Automation Roeland Verhoeven, Manager Cloud Supply Chain Simac ICT Rien du Pre, HP Cloud Solution Architect Datum: 17-06-2014 Hoe te komen tot een Self Customer Centric Portal Er
Using Use Cases for requirements capture. Pete McBreen. 1998 McBreen.Consulting
Using Use Cases for requirements capture Pete McBreen 1998 McBreen.Consulting petemcbreen@acm.org All rights reserved. You have permission to copy and distribute the document as long as you make no changes
OutSystems on Oracle
OutSystems on Oracle Spreker(s) : Datum : E-mail : Marieke Gijsberts, Martijn Habraken, Martin Westra 12-05-2015 info@transfer-solutions.com WWW.TRANSFER-SOLUTIONS.COM OUTSYSTEMS ON ORACLE Agenda Intro
Introduction to Software Engineering (ESE : Einführung in SE)
Introduction to Software Engineering (ESE : Einführung in SE) Prof. O. Nierstrasz Selected material courtesy of Prof. Serge Demeyer, U. Antwerp ESE Introduction Lecturers Assistants Lectures Exercises
CTIS 359 Principles of Software Engineering System Models
CTIS 359 Principles of Software Engineering System Models Today s objectives To explain DFDs for requirements capturing and modeling. To explain Use-Cases for requirements capturing and modeling. Data
UvA college Governance and Portfolio Management
UvA college Han Verniers Principal Consultant Han.Verniers@LogicaCMG.com Programma Governance IT Governance, wat is dat? Governance: structuren, processen, instrumenten Portfolio Management Portfolio Management,
Load Balancing Lync 2013. Jaap Wesselius
Load Balancing Lync 2013 Jaap Wesselius Agenda Introductie Interne Load Balancing Externe Load Balancing Reverse Proxy Samenvatting & Best Practices Introductie Load Balancing Lync 2013 Waarom Load Balancing?
THE MOVEMENT SOLUTION - BELGIUM februari / 9-13 juni / 29 september- 3 oktober 2016
THE MOVEMENT SOLUTION - BELGIUM 18-22 februari / 9-13 juni / 29 september- 3 oktober 2016 Tutor: Koen Schoolmeesters Hedendaags wetenschappelijk onderzoek toont duidelijk aan dat personen met pijn een
Information technology specialist (systems integration) Informatietechnologie specialist (systeemintegratie) Professional activities/tasks
Information technology specialist (systems integration) Informatietechnologie specialist (systeemintegratie) Professional activities/tasks Design and produce complex ICT systems by integrating hardware
Requirements engineering
Learning Unit 2 Requirements engineering Contents Introduction............................................... 21 2.1 Important concepts........................................ 21 2.1.1 Stakeholders and
user checks! improve your design significantly"
user checks! improve your design significantly" Workshop by Userneeds - Anouschka Scholten Assisted by ArjanneAnouk Interact Arjanne de Wolf AmsterdamUX Meet up - June 3, 2015 Make people s lives better.
Lecture Overview. Object-Oriented Software Engineering: Using UML, Patterns, Java, and Software Development Processes. Prof. Dr.
COM 401 Software Engineering Lecture Overview Object-Oriented Software Engineering: Using UML, Patterns, Java, and Software Development Processes Prof. Dr. Halûk Gümüşkaya haluk.gumuskaya@gediz.edu.tr
Rational Unified Process Process Description and Workflows
Rational Unified Process Process Description and Workflows Mike Fourman Describing Processes The RUP uses four elements to describe processes: Workers describe a role, some people have many roles. Activities
User experience storyboards: Building better UIs with RUP, UML, and use cases
Copyright Rational Software 2003 http://www.therationaledge.com/content/nov_03/f_usability_jh.jsp User experience storyboards: Building better UIs with RUP, UML, and use cases by Jim Heumann Requirements
Software product management. Inge van de Weerd
Software product management Inge van de Weerd Hoe ben je naar dit college gekomen? A. Lopend B. Met de fiets C. Met het openbaar vervoer D. Met de auto E. Anders Agenda Software Product Management Requirements
SAPM Overview Semester Summary
SAPM Overview Semester Summary Dr. James A. Bednar jbednar@inf.ed.ac.uk http://homepages.inf.ed.ac.uk/jbednar In this lecture we review the topics we have covered this semester, focusing on what I consider
Laboratório de Desenvolvimento de Software
Laboratório de Desenvolvimento de Software FEUP/MIEIC, 2015/16 Ademar Aguiar Nuno Flores Rui Maranhão Hugo Ferreira Luís Teixeira url: moodle http://www.facebook.com/notes/facebook-engineering/visualizing-friendships/469716398919
1.1 The Nature of Software... Object-Oriented Software Engineering Practical Software Development using UML and Java. The Nature of Software...
1.1 The Nature of Software... Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering Software is intangible Hard to understand
How to manage Business Apps - Case for a Mobile Access Strategy -
How to manage Business Apps - Case for a Mobile Access Strategy - Hans Heising, Product Manager Gábor Vida, Manager Software Development RAM Mobile Data 2011 Content Introduction 2 Bring your own device
Name of pattern types 1 Process control patterns 2 Logic architectural patterns 3 Organizational patterns 4 Analytic patterns 5 Design patterns 6
The Researches on Unified Pattern of Information System Deng Zhonghua,Guo Liang,Xia Yanping School of Information Management, Wuhan University Wuhan, Hubei, China 430072 Abstract: This paper discusses
Private Equity Survey 2011
Private Equity Survey 2011 Success of portfolio companies through quality of management and organization. Herman D. Koning Ron Jansen February 9, 2011 1 This afternoon 14.30 Reception 15.00 Welcome by
THE EMOTIONAL VALUE OF PAID FOR MAGAZINES. Intomart GfK 2013 Emotionele Waarde Betaald vs. Gratis Tijdschrift April 2013 1
THE EMOTIONAL VALUE OF PAID FOR MAGAZINES Intomart GfK 2013 Emotionele Waarde Betaald vs. Gratis Tijdschrift April 2013 1 CONTENT 1. CONCLUSIONS 2. RESULTS Reading behaviour Appreciation Engagement Advertising
Memorandum. Zie bijlage. Behavioural and Societal Sciences Kampweg 5 3769 DE Soesterberg Postbus 23 3769 ZG Soesterberg. Van Dr. J.B.F.
Memorandum Van Dr. J.B.F. van Erp Onderwerp epartner architecture workshops 'The Results' Behavioural and Societal Sciences Kampweg 5 3769 DE Soesterberg Postbus 23 3769 ZG Soesterberg www.tno.nl T +31
Concept Design. Gert Landheer Mark van den Brink Koen van Boerdonk
Concept Design Gert Landheer Mark van den Brink Koen van Boerdonk Content Richness of Data Concept Design Fast creation of rich data which eventually can be used to create a final model Creo Product Family
SYSTEM REQUIREMENTS SPECIFICATIONS FOR THE PROJECT INVENTORY CONTROL SYSTEM FOR CALCULATION AND ORDERING OF AVAILABLE AND PROCESSED RESOURCES
SYSTEM REQUIREMENTS SPECIFICATIONS FOR THE PROJECT INVENTORY CONTROL SYSTEM FOR CALCULATION AND ORDERING OF AVAILABLE AND PROCESSED RESOURCES GROUP 9 SIMANT PUROHIT BARTLOMIEJ MICZEK AKSHAY THIRKATEH ROBERT
Oversight Management: een zinvolle aanvulling!
Oversight Management: een zinvolle aanvulling! Houfhoff Pension Fund Academy Christiaan Tromp info@fiduciaryservices.eu April 2012 1 Agenda The Fiduciary Management promise The evolution of Pension Fund
The information in this report is confidential. So keep this report in a safe place!
Bram Voorbeeld About this Bridge 360 report 2 CONTENT About this Bridge 360 report... 2 Introduction to the Bridge 360... 3 About the Bridge 360 Profile...4 Bridge Behaviour Profile-Directing...6 Bridge
High-level Design. What is software architecture?
High-level Design Software Architecture What is it? Examples of common architectures Parnas KWIK index example of information hiding Model view controller in high level layered design 1 What is software
Computer Programming I
Computer Programming I COP 2210 Syllabus Spring Semester 2012 Instructor: Greg Shaw Office: ECS 313 (Engineering and Computer Science Bldg) Office Hours: Tuesday: 2:50 4:50, 7:45 8:30 Thursday: 2:50 4:50,
COMP1008 Developing Classes
COMP1008 Developing Classes Agenda For the next block of lectures we will be looking at designing and writing an OO program requiring a small number of classes. Along the way we will: Get an overview of
Assuring the Cloud. Hans Bootsma Deloitte Risk Services hbootsma@deloitte.nl +31 (0)6 1098 0182
Assuring the Cloud Hans Bootsma Deloitte Risk Services hbootsma@deloitte.nl +31 (0)6 1098 0182 Need for Assurance in Cloud Computing Demand Fast go to market Support innovation Lower costs Access everywhere
GMP-Z Annex 15: Kwalificatie en validatie
-Z Annex 15: Kwalificatie en validatie item Gewijzigd richtsnoer -Z Toelichting Principle 1. This Annex describes the principles of qualification and validation which are applicable to the manufacture
De toekomstige rol van de L&D Leader
De toekomstige rol van de L&D Leader Prof. dr. Nick H.M van Dam Global Chief Learning Officer, McKinsey Chair Corporate Learning & Development, Nyenrode Business Universiteit April 2016 Everything we hear
MASTERCLASS INNOVATIEVE BENADERINGEN VAN LEERPROCESSEN EN LEERPRAKTIJKEN
MASTERCLASS INNOVATIEVE BENADERINGEN VAN LEERPROCESSEN EN LEERPRAKTIJKEN PROF. DR. MARCUS SPECHT WELTEN INSTITUTE RESEARCH CENTRE FOR LEARNING, TEACHING AND TECHNOLOGY OPEN UNIVERSITEIT NEDERLAND MARCUS.SPECHT@OU.NL
Modeling Dynamic Behavior
Dr. Michael Eichberg Software Engineering Department of Computer Science Technische Universität Darmstadt Introduction to Software Engineering Modeling Dynamic Behavior The following slides use material
Using Use Cases on Agile Projects
Using Use Cases on Agile Projects Ivar Jacobson with Ian Spence Agenda What are agile teams looking for? Cards, conversations, and confirmations Knowing what to do and when it s done Being agile with use
Software VOC netwerkbijeenkomst De kansen van OEM. Hans Schut OEM Partner Manager Nederland 9 juli 2014
Software VOC netwerkbijeenkomst De kansen van OEM Hans Schut OEM Partner Manager Nederland 9 juli 2014 Wat is OEM? Het principe Wanneer een bedrijf zijn producten verkoopt aan andere bedrijven, en dat
UML TUTORIALS THE USE CASE MODEL
UML TUTORIALS THE USE CASE MODEL www.sparxsystems.com.au Sparx Systems 2004 Page 1/5 describes the proposed functionality of the new system. A Use Case represents a discrete unit of interaction between
Practical Agile Requirements Engineering
Defense, Space & Security Lean-Agile Software Practical Agile Requirements Engineering Presented to the 13 th Annual Systems Engineering Conference 10/25/2010 10/28/2010 Hyatt Regency Mission Bay, San
* Over de uitslag kan niet worden gecorrespondeerd, prijzen zijn voorbeelden All results are final, prices are examples
* Over de uitslag kan niet worden gecorrespondeerd, prijzen zijn voorbeelden All results are final, prices are examples Laat ons weten wat u vindt van deze sessie! Vul de evaluatie in via www.techdaysapp.nl
SUBJECT LINES DONE RIGHT (ENGELSTALIG)
SUBJECT LINES DONE RIGHT (ENGELSTALIG) Pagina 1 van 6 An email s subject line is like a first impression. It is one of the first things a recipiënt sees when they glance at their inbox and a determining