©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 1 Introduction to Java in the Context of Software Engineering.

Slides:



Advertisements
Similar presentations
Systems Development Environment
Advertisements

Ch 3 System Development Environment
Chapter 1 Object Oriented Analysis and Design. UML, Patterns, and Object-Oriented Analysis and Design  The essential skills for the creation of well-designed,
Sixth Hour Lecture 10:30 – 11:20 am, September 9 Framework for a Software Management Process – Artifacts of the Process (Part II, Chapter 6 of Royce’ book)
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 5 Architecture-Driven Component Development.
Object-Oriented Analysis and Design
IS6112 Application Modelling and Design Introduction.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
Chapter Extension 19 Alternative Development Techniques © 2008 Pearson Prentice Hall, Experiencing MIS, David Kroenke.
1 SOFTWARE LIFE-CYCLES Beyond the Waterfall. 2 Requirements System Design Detailed Design Implementation Installation & Testing Maintenance The WATERFALL.
Object Oriented System Development with VB .NET
R R R CSE870: Advanced Software Engineering (Cheng): Intro to Software Engineering1 Advanced Software Engineering Dr. Cheng Overview of Software Engineering.
APPLICATION DEVELOPMENT BY SYED ADNAN ALI.
© Copyright Eliyahu Brutman Programming Techniques Course.
Software Architecture in Practice
Effort in hours Duration Over Weeks Or Months Inception Launch Web Lifecycle Methodology Maintenance Phases Copyright Wonderlane Studios.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
Chapter 1 The Systems Development Environment
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Software Development Concepts ITEC Software Development Software Development refers to all that is involved between the conception of the desired.
The Software Development Life Cycle: An Overview
Software Engineering Muhammad Fahad Khan
CIS 321—IS Analysis & Design
Chapter 2: Approaches to System Development
UML - Development Process 1 Software Development Process Using UML (2)
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 3 The Structure and Syntax of Java.
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 1: Best Practices of Software Engineering.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 12 Software Integration and Deployment.
Chapter 1 The Systems Development Environment
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
Introduction to UML 1 Quick Tour Why do we model? What is the UML? Foundation elements Unifying concepts Language architecture Relation to other OMG technologies.
Chapter 1: Introduction to Systems Analysis and Design
Business Systems Development SDLC and introduction to the Microsoft Solutions Framework Team and Process Models.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 4 Design and Development of Java Applications.
Agile Methodologies: Comparative Study and Future Direction 林佳蓁 資工 4B.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 6 Introduction to Distributed Computing Concepts.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 8 Implementing Java Programs.
1 5.1 Software Engineering Practice  Provide value to the user  KIS—keep it simple!  Maintain the product and project “vision”  What you produce,
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 10 Information Management in Java.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 13 Java on Various Computer Platforms.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 4, Requirements Elicitation.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
Content The system development life cycle
Information Systems Engineering. Lecture Outline Information Systems Architecture Information System Architecture components Information Engineering Phases.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
Object-Oriented Software Engineering using Java, Patterns &UML. Presented by: E.S. Mbokane Department of System Development Faculty of ICT Tshwane University.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
J. Scott Hawker p. 1Some material © Rational Corp. Rational Unified Process Overview See and use the RUP Browser on lab machines.
Chapter 2 Object-Oriented Paradigm Overview. Getting Acquainted with the Class Project Read the requirements specification carefully Make note of any.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 15 The Unified Modeling Language: a Primer.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 9 Software Quality Assurance.
Rational Unified Process Fundamentals Best Practices of Software Engineering Rational Unified Process Fundamentals Best Practices of Software Engineering.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
RUP RATIONAL UNIFIED PROCESS Behnam Akbari 06 Oct
RATIONAL UNIFIED PROCESS PROCESS FRAMEWORK OVERVIEW.
CS646: Software Design and Architectures Introduction and Overview †  Definitions.  The general design process.  A context for design: the waterfall.
Methodologies and Algorithms
Object-Oriented Software Engineering Using UML, Patterns, and Java,
Chapter 2 – Software Processes
SOFTWARE LIFE-CYCLES Beyond the Waterfall.
Chapter 1: Introduction to Systems Analysis and Design
Chapter 1: Introduction to Systems Analysis and Design
Presentation transcript:

©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 1 Introduction to Java in the Context of Software Engineering

©2007 · Georges Merx and Ronald J. NormanSlide 2 Agenda Introduction to Java –Object-Oriented Member of the C-Language Family Introduction to Software Engineering –Extended Unified Process Methodology

©2007 · Georges Merx and Ronald J. NormanSlide 3 Introduction The fundamentals of Java programming in the context of –Object-oriented software engineering –Unified-Process-based software development methodology Delivering projects…

©2007 · Georges Merx and Ronald J. NormanSlide 4 Unified Modeling Language Standard modeling language for software application design –Object Management Group (OMG) standard and Use of UML to emphasize the concept of visual modeling –Activity diagrams to visualize the “learning layout” of each chapter

©2007 · Georges Merx and Ronald J. NormanSlide 5 Learning Objectives UML Activity Diagrams illustrate the elements of learning in each chapter

©2007 · Georges Merx and Ronald J. NormanSlide 6 Software Engineering Skills Learning connections visual in each chapter to point out diverse, interdisciplinary skills development –Technical, organizational, communication, and leadership skills –Understanding of process- related issues

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

©2007 · Georges Merx and Ronald J. NormanSlide 8 Learning Modules Object-orientation Extended Unified Process Methodology Iterations

©2007 · Georges Merx and Ronald J. NormanSlide 9 Welcome to Java High-level English-like syntax –Statements –Keywords –Structural elements –Program logic (semantics) Example Java statement: String response = JOptionPane.showInputDialog (“Enter an integer value”);

©2007 · Georges Merx and Ronald J. NormanSlide 10 Java Expressions An expression is a variable, a method call, or a combination of subexpressins joined by operators x Math.sin(x) x + Math.sin(x) x++ x == y && (z >0 || w > 0)

©2007 · Georges Merx and Ronald J. NormanSlide 11 Java Statements A statement is one of the following: Expression ending with “;” Branch (if, switch) and loop (while, for, do) and nonlinear control flow: break and continue Return statement Throw statement Block Try block

©2007 · Georges Merx and Ronald J. NormanSlide 12 Software Engineering Life-cycle methodology –Formal: unified –Agile: extreme programming, Scrum –References www-306.ibm.com/software/awdtools/rup Object-orientation Process-centric –Use cases –Functional and supporting disciplines –Architecture-driven

©2007 · Georges Merx and Ronald J. NormanSlide 13 Life-Cycle Perspective

©2007 · Georges Merx and Ronald J. NormanSlide 14 The Java Programming Language Developed by Sun Microsystems (JCP) –Ref. Member of the C-family of programming languages Highly portable –Available on many platforms –Available for client, server, mobile systems Object-oriented –5 data types (primitives, array, class, interface, null) –Includes eight primitive types Supports modern technology features –Multi-threading –Security –Multimedia –Networking Based on design patterns –Separation of concerns –Low-coupling; high-cohesion

©2007 · Georges Merx and Ronald J. NormanSlide 15 Methodology Preview Book focused on formal methodology –Agile choices should be made on the basis of knowing the formal approach (UP) (Rational) Unified Process –Formal methodology –Focus on process, documentation, iterative approach, end-to-end approach Agile variations –Stakeholder involvement –Lighter-weight processes –Focus on adaptability –Small, experienced teams

©2007 · Georges Merx and Ronald J. NormanSlide 17 Functional Disciplines Concept: initial concept development and business justification Analysis: formal requirements analysis Design: component design, class hierarchy, and creation of a system architecture Implementation: component development and unit test Integration: component integration and integration test Testing: all aspects of testing the developed components Certification: acceptance testing and release certification Deployment: roll-out to customers Support and Maintenance: incident tracking and management; new releases (updates, upgrades) – planning for follow-on product(s)

©2007 · Georges Merx and Ronald J. NormanSlide 18 Support Disciplines Project management: deliverable, deadline, and resource management Inspections and validation: software quality assurance practices Configuration management: management of all intellectual property Documentation: all user and programmer documents Technical marketing plan: product marketability, e.g. competitive position; unique selling propositions; pricing; etc.

©2007 · Georges Merx and Ronald J. NormanSlide 19 Iterations Breaking the project into logically complete sub- projects –Specified duration Iterative adjustments

©2007 · Georges Merx and Ronald J. NormanSlide 20 Position in Process The Concept phase addresses the business planning activities of a project Key deliverable: Business Plan –Initial time and resource planning –Project scope and focus –Justification and budget –Approval to proceed

©2007 · Georges Merx and Ronald J. NormanSlide 21 Domain Model From use case model to design model

©2007 · Georges Merx and Ronald J. NormanSlide 22 Project Examples The VotingProgram –Develop a simple voting program –Develop a Java solution for an interior design company