©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 8 Implementing Java Programs.

Slides:



Advertisements
Similar presentations
Design Validation CSCI 5801: Software Engineering.
Advertisements

COM vs. CORBA.
Embedded Streaming Media with GStreamer and BeagleBoard ESC-228 Presented by Santiago Nunez santiago.nunez (at) ridgerun.com.
Chapter 2 Modeling the Process and Life Cycle Shari L. Pfleeger
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 5 Architecture-Driven Component Development.
Copyright 2002 Prentice-Hall, Inc. Chapter 4 Automated Tools for Systems Development 4.1 Modern Systems Analysis and Design Third Edition.
Quicktime Howell Istance School of Computing De Montfort University.
Software Development B.Sc. (Hons) Multimedia ComputingMultimedia Authoring.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Java Programming, 3e Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
J2EE Java 2 Enterprise Edition. Relevant Topics in The Java Tutorial Topic Web Page JDBC orial/jdbc
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
Multimedia Enabling Software. The Human Perceptual System Since the multimedia systems are intended to be used by human, it is a pragmatic approach to.
Process: A Generic View
Chapter 13 Programming Languages and Program Development 1.
Chapter 7 Requirement Modeling : Flow, Behaviour, Patterns And WebApps.
Java Programming, 2E Introductory Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
The Software Development Life Cycle: An Overview
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 11 Reality Check: Java Programming in the Real World.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 3 The Structure and Syntax of Java.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 12 Software Integration and Deployment.
Software Development Stephenson College. Classic Life Cycle.
1 Chapter 2 The Process. 2 Process  What is it?  Who does it?  Why is it important?  What are the steps?  What is the work product?  How to ensure.
An Introduction to Software Architecture
COMP 410 & Sky.NET May 2 nd, What is COMP 410? Forming an independent company The customer The planning Learning teamwork.
Video Conferencing-introduction --- IT Acumens. COM --- IT Acumens. COMIT Acumens. COMIT Acumens. COM.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 1 Introduction to Java in the Context of Software Engineering.
Web Accessiblity Carol Gordon SIU Medical Library.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 6 Introduction to Distributed Computing Concepts.
Chapter 17: Applets, Images, and Sound. Objectives Learn about applets Write an HTML document to host an applet Use the init() method Work with JApplet.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 13 Java on Various Computer Platforms.
Introduce to Java. Outline History of Java History of Java Something about Java Something about Java Brief introduction to Java programming Brief introduction.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
Sound DirectMusic & DirectSound. DirectShow Video Formats DirectShow is an open architecture, it can support any format as long as there are filters to.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Connecting with Computer Science2 Objectives Learn how software engineering is used to create applications Learn some of the different software engineering.
Design Patterns Software Engineering CS 561. Last Time Introduced design patterns Abstraction-Occurrence General Hierarchy Player-Role.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 9 Software Quality Assurance.
Chapter 4 Automated Tools for Systems Development Modern Systems Analysis and Design Third Edition 4.1.
Applets, Images, and Audio Chapter 14 CSCI CSCI 1302 – Applets, Images, and Audio2 Outline Introduction The Applet Class –The init Method –The start.
Source Mastering UML with Rational Rose 2002 Information System Engineering Introduction to UML.
Java Programming: Advanced Topics1 Introduction to Advanced Java Programming Chapter 1.
OOAD UNIT V B RAVINDER REDDY PROFESSOR DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING.
Project Information Abstract Project Objectives The objective of this project is to: Create a visual designer that will allow inexperienced end- users.
CS223: Software Engineering Lecture 18: The XP. Recap Introduction to Agile Methodology Customer centric approach Issues of Agile methodology Where to.
Technician Table Editor Academic advisor : Professor Ehud Gudes Technical advisor : Menny Even Danan Team: Olga Peled Doron Avinoam Ira Zaitsev ADD Presentation.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Java Programming, 3e Concepts and Techniques Chapter 1 Section 56 – An Introduction to Java.
6.0 Objects First with Java A Practical Introduction using BlueJ David J. Barnes Michael Kölling.
Your Interactive Guide to the Digital World Discovering Computers 2012 Chapter 13 Computer Programs and Programming Languages.
Modern Systems Analysis and Design Third Edition
Objects First with Java A Practical Introduction using BlueJ
Introduction to Advanced Java Programming
Coupling and Cohesion 1.
Integrating Quality Activities in the Project Life Cycle
Software Life Cycle “What happens in the ‘life’ of software”
Modern Systems Analysis and Design Third Edition
Chapter 18 MobileApp Design
Week 4 Object-Oriented Programming (1): Inheritance
Video Conferencing-introduction
MSIS 670 Object-Oriented Software Engineering
Modern Systems Analysis and Design Third Edition
COS 260 DAY 2 Tony Gauvin.
Modern Systems Analysis and Design Third Edition
An Introduction to Software Architecture
F II 1. Background Objectives
Windows Forms in Visual Studio 2005: An in-depth look at key features
Modern Systems Analysis and Design Third Edition
Presentation transcript:

©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 8 Implementing Java Programs

©2007 · Georges Merx and Ronald J. NormanSlide 2 Agenda Implementation –Effective team work Certification Multi-tasking –Multiple threads Multimedia support

©2007 · Georges Merx and Ronald J. NormanSlide 3 Implementation Coordination Implementation –Largest team size –Coordination –Project management –Error avoidance

©2007 · Georges Merx and Ronald J. NormanSlide 4 Learning Layout

©2007 · Georges Merx and Ronald J. NormanSlide 5 Learning Connections

©2007 · Georges Merx and Ronald J. NormanSlide 6 Effective Teamwork Develop project a layer at a time –Iterations –Nightly builds

©2007 · Georges Merx and Ronald J. NormanSlide 7 Product Perspectives (1) End user perspective Administrator perspective Process perspective Software engineering perspective Data perspective Logic perspective System perspective

©2007 · Georges Merx and Ronald J. NormanSlide 8 Product Perspectives (2)

©2007 · Georges Merx and Ronald J. NormanSlide 9 Reusable Components The characteristics of a well-structured, reusable component include: –One purpose, one entry and one exit point –Clearly defined, well-protected interfaces (parameters and return values) –Low coupling, high cohesion –The creation of functional value –Flexibility to use in a variety of scenarios (e.g. polymorphism) –Simplicity – proper structure and sequencing of class hierarchy and packages (e.g. abstraction) –Extensibility – flexible ability to create child class extensions (e.g. inheritance) –If for external reuse, adherence to Javabean™ packaging and documentation (e.g. Javadoc™) standards

©2007 · Georges Merx and Ronald J. NormanSlide 10 Multithreading A thread is a part of a program set up to run on its own while the rest of the program does something else A single program can have lots of threads if that is what is needed to get the job done. Threading is also called multitasking

©2007 · Georges Merx and Ronald J. NormanSlide 11 Multimedia (1) The support of multimedia functionality in Java is provided by a collection of classes in different packages, including awt, image, and graphics. The simplest form of multimedia is an animation, or the display in rapid sequence of a related series of frames

©2007 · Georges Merx and Ronald J. NormanSlide 12 Multimedia (2) Java provides basic support for animation and video of visual multimedia data as well as various sound formats –In the standard J2SE SDK, Java 2 supports the following basic sound file formats: WAVE AU AIFF AIFF-C SND More advanced video and audio formats, such as AVI and MP3, are supported via the Java Media Framework (JMF)

©2007 · Georges Merx and Ronald J. NormanSlide 13 Animation Visualization

©2007 · Georges Merx and Ronald J. NormanSlide 14 Java Media Framework The Java Media Framework API (JMF) enables audio, video and other time-based media to be added to applications and applets built on Java technology –Heavy weight components are used in JMF as they permit using native rendering methods for higher frame rate video

©2007 · Georges Merx and Ronald J. NormanSlide 15 Initial Operational Capability The synthesis of the requirements analysis, design, and implementation activities is reviewed from the perspective of Initial Operational Capability (IOC) –IOC is a milestone that encompasses the validation of all the constituent project components as a product solution, in the context of stakeholder (or market) requirements

©2007 · Georges Merx and Ronald J. NormanSlide 16 Certification Certification is a quality assurance process that validates that a product meets all productization requirements. Typically, the following areas are reviewed: –Functionality meets requirements (Requirements and Design Specifications) –Product has no outstanding major errors –Product meets quality requirements (functional and non-functional) –Product is supportable –All documentation is in place

©2007 · Georges Merx and Ronald J. NormanSlide 17 Error Handling In most applications, 20% of the code handles the primary scenario where the function works beginning-to-end without error or interruption, while the remaining 80% handles error and exception handling and recovery

©2007 · Georges Merx and Ronald J. NormanSlide 18 Position in Process In this phase of the development life cycle, the Certification Phase, the code should be complete and validated. Early customers have added their feedback, and all errors of any significance have been corrected and released into the most current version. This phase is strictly under the control of Quality Assurance (QA) A product shall not be released for general distribution unless QA certifies that it meets all agreed-upon requirements within agreed-to quality parameters (functional and non- functional). QA issues a Certification Report at the end of this phase.