Review for Final, Fall 2010 Close book, Close notes

Slides:



Advertisements
Similar presentations
DETAILED DESIGN, IMPLEMENTATIONA AND TESTING Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Advertisements

ARCH-05 Application Prophecy UML 101 Peter Varhol Principal Product Manager.
By Philippe Kruchten Rational Software
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Introduction To System Analysis and Design
Liang,Introduction to Java Programming,revised by Dai-kaiyu 1 Chapter 10 Object-Oriented Modeling.
Software Testing and Quality Assurance
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Review 2.
© Copyright Eliyahu Brutman Programming Techniques Course.
Logical Architecture and UML Package Diagrams
Course Instructor: Aisha Azeem
System Design Decomposing the System. Sequence diagram changes UML 2.x specifications tells that Sequence diagrams now support if-conditions, loops and.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
What is Software Architecture?
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse 2.
Chapter 10 Architectural Design
Software Waterfall Life Cycle Requirements Construction Design Testing Delivery and Installation Operations and Maintenance Concept Exploration Prototype.
Requirement Analysis Functional & Non-Functional Requirements Scenarios Use cases: – View Fixtures – Manage Tournament – Register Team – Report Discrepancy.
CMSC 345 Fall 2000 Unit Testing. The testing process.
An Introduction to Software Architecture
CS 160: Software Engineering October 8 Class Meeting
University of Utah SoCCS Lecture 61 Architecture – An Introduction CS Lecture 6 Nathan Dykman.
Addressing design Goals  We decompose the system to address complexity  Assigning each subsystem to team to work on  But we also need to address system.
CS361 Winter 2013 Final Exam Review Software Engineering I Oregon State University.
Testing Basics of Testing Presented by: Vijay.C.G – Glister Tech.
Introduction To System Analysis and Design
SOFTWARE DESIGN (SWD) Instructor: Dr. Hany H. Ammar
1 Software Design Reference: Software Engineering, by Ian Sommerville, Ch. 12 & 13, 5 th edition and Ch. 10, 6 th edition.
Information System Development Courses Figure: ISD Course Structure.
What to remember from Chap 13 (Logical architecture)
CIS 112 Exam Review. Exam Content 100 questions valued at 1 point each 100 questions valued at 1 point each 100 points total 100 points total 10 each.
1 CMPT 275 High Level Design Phase Modularization.
Midterm Study Guide COP 4331 and EEL4884 OO Processes for Software Development © Dr. David A. Workman School of EE and Computer Science University of Central.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Arch-1 9.Architecture. Arch-2 What’s Architecture? Description of sub-system –Components/sub-systems –Their interaction Framework for communication.
Exam 2 Review Software Engineering CS 561. Outline Requirements Development UML Class Diagrams Design Patterns Users, Usability, and User Interfaces Software.
1 Lecture 3 Major Architectural Models View (Cont’d) Architectural Models/Patterns Architecture Case Study Software Architecture & Design Pattern.
Feb. 9, 2004CS WPI1 CS 509 Design of Software Systems Lecture #4 Monday, Feb. 9, 2004.
OOD OO Design. OOD-2 OO Development Requirements Use case analysis OO Analysis –Models from the domain and application OO Design –Mapping of model.
Fall 2007 Week 9: UML Overview MSIS 670: Object-Oriented Software Engineering.
Object Design More Design Patterns Object Constraint Language Object Design Specifying Interfaces Review Exam 2 CEN 4010 Class 18 – 11/03.
Two New UML Diagram Types Component Diagram Deployment Diagram.
CS 8532: Adv. Software Eng. – Spring 2007 Dr. Hisham Haddad Discussion of Course Syllabus Class will start momentarily. Please Stand By … CS 8532: Advanced.
CS 8532: Adv. Software Eng. – Spring 2009 Dr. Hisham Haddad , Monday Class will start momentarily. Please Stand By … CS 8532: Advanced Software.
Final Exam Study Guide COP 4331 and EEL4884 OO Processes for Software Development © Dr. David A. Workman School of EE and Computer Science University of.
Chapter 7: Software Engineering
(Complex) Problem domain Requirements Specification
Chapter 7: Software Engineering
UML Diagrams By Daniel Damaris Novarianto S..
Review for Midterm, Fall 2009
OO Methodology OO Architecture.
UML Diagrams Jung Woo.
Object-Orientated Programming
CMPE419 Mobile Application Development
CS 425/625 Software Engineering Architectural Design
University of Houston-Clear Lake
Software Design CMSC 345, Version 1/11.
Design Model Like a Pyramid Component Level Design i n t e r f a c d s
Starting Design: Logical Architecture and UML Package Diagrams
IMPORTANT NOTICE TO STUDENTS:
Practical Software Engineering
An Introduction to Software Architecture
واسط كاربري هوشمند Intelligent User Interface
Addressing Design Goals
Design Yaodong Bi.
Chapter 8, Design Patterns Introduction
CMPE419 Mobile Application Development
Design.
Software Development Process Using UML Recap
Presentation transcript:

Review for Final, Fall 2010 Close book, Close notes 120 Minutes. Tuesday, Dec. 7, 3:40PM Total 100 pts Scope: chapters 1-11, 15 7 problems – similar style as Quiz1, Quiz2, and midterm exam. Emphasizing on concept understanding and problem analysis Important: write/draw your solutions in a readable way !!

Concepts Modeling and models. Modeling languages such as UML System, software, and model Software engineering development activities requirements elicitation analysis system design object design implementation testing

Concepts (cont.) Project Management Handle project schedule Gantt chart Pert chart

UML Use case diagram Sequence diagram State chart diagram Include Extends generalization Sequence diagram State chart diagram Class diagram Associations generalization/specialization Aggregation composition Deployment diagram Difference and interrelationship between different diagrams. For example: state chart diagram is for single object, sequence diagram is for interactions among multiple objects. How can these two diagrams be related to each other ?

Requirement Analysis and Analysis Object Functions – define main functionalities based upon the problem description Non-functional requirements Based on a description of a system, analyze the main functionalities of the system, and then carry out object analysis Analysis Object Control objects Entity objects Boundary objects

System Decomposition Subsystems and classes Coupling and cohesion Layers and Partitions Architecture styles Repository MVC Client/Server Peer to Peer Three-tier

Address Design Goals Hardware/Software Mapping – deployment diagram Persistent Data Management Database Files Data structure Global Resource Handling and Access Control Access matrix Global Control Flow procedure-driven control event-driven control threads Boundary Conditions Start up and shutdown Exception handling configuration

Delegation and inheritance Object Design Delegation and inheritance Interface inheritance and implementation inheritance Design patterns Adapter Composite Proxy Facade

Class Interface Specification Type Signature Visibility

Testing Test cases Test stubs and drivers Black-box testing – test against specification Equivalence testing Boundary testing White-box testing – test against implementation Path testing – use flow graph to calculate how many independent paths are in the program CC = number of edges – number of nodes +2 Loop testing

Component Testing System testing Testing (cont.) Unit testing Integration testing System testing Function testing Structure Testing Performance testing Acceptance testing Installation testing

Issue-based life cycle model Software Life Cycle Waterfall model V model Spiral model Issue-based life cycle model

The ultimate goal of this class Being able to carry out, or at least understand and appreciate, the different activities involved in a software project development. Work in a group environment Example: Develop a university information management system (like GoSolar). Form teams, develop schedule Talk to the client about the functional requirement, non-functional requirement Which software life cycle to employ Identify the major components and the dynamics of this system Software architecture Database, access control, global control flow, boundary condition Implementation, framework, class library, class specification, design patterns, middleware Debug, testing, system level testing, white box testing, black box testing Installation, Maintenance

Project Presentation Instructor evaluation: 50% Student evaluation (averaged): 50%

Instructor Evaluation of the Project Presentation Content (40%) introduction of the team problem statement requirements (use case model, important sequence/state-chart diagrams, functional and non-functional requirements), design (sub-systems and services, design goals, software architecture, global software control, access control, etc.) Object design and implementation, class diagram design rationale testing etc. Note, the above bullets just provide some ideas. Creativity in both the contents and the format of the presentation are highly encouraged and will benefit your score. Presentation (30%) Talk Slides Dress Demonstration (30%)

Overall Score of Project 7 Project Report (42%) Presentation (20%) Final Report (18%) Peer evaluation (10%) Attendance (10%)