Sequence Diagram Generation & Validation MSE First Presentation Samer Saleh Advisor: Bill Hankley.

Slides:



Advertisements
Similar presentations
By Rohen Shah – rxs07u.  Introduction  Different methodologies used  Different types of testing tools  Most commonly used testing tools  Summary.
Advertisements

Presentation by Prabhjot Singh
Copyright 2000, Stephan Kelley1 Estimating User Interface Effort Using A Formal Method By Stephan Kelley 16 November 2000.
Automated creation of verification models for C-programs Yury Yusupov Saint-Petersburg State Polytechnic University The Second Spring Young Researchers.
Introduction To System Analysis and Design
Computer Engineering 203 R Smith Requirements Management 6/ Requirements IEEE Standard Glossary A condition or capability needed by a user to solve.
Micro Manager Performance Tracking System Rashed Hossain Sponsor: Nizam Ahmed Director of Finance and Administration Market One Enterprises.
1 SWE Introduction to Software Engineering Lecture 5.
Software Engineering CSE470: Requirements Analysis 1 Requirements Analysis Defining the WHAT.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Soft. Eng. II, Spr. 2002Dr Driss Kettani, from I. Sommerville1 CSC-3325: Chapter 1 (cont ’d) Title : Client requirements (Review) Mandatory reading: I.
1 Lecture 5 Introduction to Software Engineering Overview  What is Software Engineering  Software Engineering Issues  Waterfall Model  Waterfall Model.
McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 2 Introduction to Database Development.
Introduction to Database Development. 2-2 Outline  Context for database development  Goals of database development  Phases of database development.
1 Case Study: Starting the Student Registration System Chapter 3.
Southern Connecticut State University Exit Survey Eduardo Robalino Sponsor Klaus Peters.
1 SWE Introduction to Software Engineering Lecture 11 - Requirements Engineering Processes.
Chapter 4 Introduction to Database Development. McGraw-Hill/Irwin © 2004 The McGraw-Hill Companies, Inc. All rights reserved. Outline Context for database.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Copyright © 2002, Systems and Computer Engineering, Carleton University Intro.ppt * Object-Oriented Software Development Unit 1 Course.
Database Design, Application Development, and Administration, 5 th Edition Copyright © 2011 by Michael V. Mannino All rights reserved. Chapter 2 Introduction.
Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion.
Sequence Diagram Generator Presentation II MSE Project / Fall, 2005 Samer AliSaleh Major Advisor: Bill Hankley.
Software Engineering 2003 Jyrki Nummenmaa 1 CASE Tools CASE = Computer-Aided Software Engineering A set of tools to (optimally) assist in each.
Multi-agent Research Tool (MART) A proposal for MSE project Madhukar Kumar.
Introduction to Software Engineering
[ §3 : 1 ] 2. Life-Cycle Perspective Overview 2.1 Motivation 2.2 Waterfall Model 2.3 Requirements in Context.
Requirements Engineering Requirements Elicitation Process Lecture-8.
More on “The Huddersfield Method” A lightweight, pattern-driven method based on SSM, Domain Driven Design and Naked Objects.
Some Sub-Activities within Requirements Engineering 1.Prototyping 2.Requirements Documentation 3.Requirements Validation 4.Requirements Measurements 5.Requirements.
1 Presentation and tool by Jason Kealey University of Ottawa CSI5180 Automatic conversion of Use Cases to Use Case Maps.
Chapter 4 Introduction to Database Development. Outline Context for database development Goals of database development Phases of database development.
Approaching a Problem Where do we start? How do we proceed?
T. E. Potok - University of Tennessee CS 594 Software Engineering Lecture 3 Dr. Thomas E. Potok
Student Curriculum Planning System MSE Project Presentation I Kevin Sung.
Generic API Test tool By Moshe Sapir Almog Masika.
Coverage Criteria for Testing of Object Interactions in Sequence Diagrams Atanas (Nasko) Rountev Scott Kagan Jason Sawin Ohio State University.
Cost Estimation What is estimated? –resources (humans, components, tools) –cost (person-months) –schedule (months) Why? –Personnel allocation –Contract.
MSE Presentation 1 By Padmaja Havaldar- Graduate Student Under the guidance of Dr. Daniel Andresen – Major Advisor Dr. Scott Deloach-Committee Member Dr.
CS Data Structures I Chapter 2 Principles of Programming & Software Engineering.
Ad Hoc Graphical Reports Ad Hoc Graphical Reports Copyright © Team #4 CSCI 6838 Spring CSCI Research Project and Seminar Team# 4 (
Sequence Diagrams Opening Discussion zYou will be presenting on the 24th. That gives you 2 more weeks to try to get a prototype implementation.
Database Java Bean Feng Chen. Outline Tools and approaches Project overview Major contribution Project plan Cost estimate References Acknowledgment.
Graphical User Interface and Job Distribution Optimizer for a Virtual Pipeline Simulation Testbed Walamitien Oyenan October 8, 2003 MSE Presentation 1.
Chapter 1 Introduction. Chapter 1 - Introduction 2 The Goal of Chapter 1 Introduce different forms of language translators Give a high level overview.
Cmpe 589 Spring 2006 Lecture 2. Software Engineering Definition –A strategy for producing high quality software.
IT Directors Group 13 & 14 October 2008 Item of the Agenda Seasonal Adjustment software Cristina Calizzani - Unit B5.
Software Project Estimation IMRAN ASHRAF
1 Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Process: A Generic View Software Engineering: A Practitioner’s Approach, 7/e Chapter 2.
Function Points Synthetic measure of program size used to estimate size early in the project Easier (than lines of code) to calculate from requirements.
程建群 博士 (Dr. Jason Cheng) 年 03 月 Software Engineering Part 08.
MSE Presentation 1 Lakshmikanth Ganti
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
System Test Planning SYSTTPLAN 1 Location of Test Planning Responsibilities for Test Planning Results of Test Planning Structure of a Test Plan Test Definitions.
Winter 2011SEG Chapter 11 Chapter 1 (Part 1) Review from previous courses Subject 1: The Software Development Process.
Communication Model for Cooperative Robotics Simulator MSE Presentation 1 Acharaporn Pattaravanichanon.
Software Development Introduction
"proper words in proper places“ translating for the localisation industry LRC Summer School Limerick 16 June 2005.
1 Unified Modeling Language Michael K. Wildes University of California, Riverside – Extension Program Presentation 2.
© NALO Solutions Limited NALO Solutions, presents the – Revenue Collector App Using Mobile Phones to gather Revenue SOFTWARE ENGINEERING.
Dillon: CSE470: ANALYSIS1 Requirements l Specify functionality »model objects and resources »model behavior l Specify data interfaces »type, quantity,
1 The Software Engineering Education at CSULA Jiang Guo Jose M. Macias June 4, 2010.
Computer Aided Software Engineering (CASE)
CSC480 Software Engineering
Introduction to Software Engineering
Systems Analysis Overview.
COCOMO Models.
Software Metrics SAD ::: Fall 2015 Sabbir Muhammad Saleh.
Introduction Time is something we waist as a society
COCOMO MODEL.
Presentation transcript:

Sequence Diagram Generation & Validation MSE First Presentation Samer Saleh Advisor: Bill Hankley

Introduction Software modeling & modern software engineering. Software modeling & modern software engineering. Software modeling is not about drawing models only. Software modeling is not about drawing models only. M. Validation M. Quality S. Quality M. Validation M. Quality S. Quality Model Validation: Model Validation:

Introduction - Continue UML class diagram and sequence diagram are one of the essential models for starting the modeling process. UML class diagram and sequence diagram are one of the essential models for starting the modeling process. Class and sequence models are heavily correlated. Class and sequence models are heavily correlated. Usually this correlation. Usually this correlation.

Introduction- Continue Example1: Example1:

Example2:

Examples Conclusion Inconsistency between class and sequence diagrams are very common. Inconsistency between class and sequence diagrams are very common. Tools are needed to validate & suggest solutions if there are any. Tools are needed to validate & suggest solutions if there are any.

What is done so far…. A lot of research has been done to validate model. Yet not much implementation. A lot of research has been done to validate model. Yet not much implementation. Formalism of the UML diagrams. Formalism of the UML diagrams. Problem: Hard to understand. Difficult to implement by novice software engineers. Problem: Hard to understand. Difficult to implement by novice software engineers. Problem: Current tools doesn’t check for a lot of validation. Problem: Current tools doesn’t check for a lot of validation.

Project idea…. Create/Reload Class Model Create Sequence Model [Valid] Generate Sequence Model Validate [Not Valid] Generate Error Message. View

Project Goals 1. Create a user friendly tool to assist user to generate sequence diagram. 2. Insure reliable and consistent generated sequence diagram. 3. Satisfies the software process and life cycle. 4. Meeting IEEE standards for software documentation

Risks…. Difficulty of using the Java Swings and other java graphical libraries. Difficulty of using the Java Swings and other java graphical libraries. Difficulty of embedding the validation rules, generating meaningful error messages & suggesting solutions Difficulty of embedding the validation rules, generating meaningful error messages & suggesting solutions Time concern. Time concern.

Validation Rules Focused on messages Focused on messages Only Semantics or Structural. Only Semantics or Structural. No Syntax (Implicit). No Syntax (Implicit).

Rule #1: Direct/Indirect Association Message corresponds to direct or indirect ( transitive ) association. Message corresponds to direct or indirect ( transitive ) association. Example: Example:

Rule#2: Dependency Existence  For indirect association; at least one path that covers all dependant classes. ?

Rule#3: Reference Existence For Indirect Association: For Indirect Association: 1. For all predecessor messages out of the sender object, there is at least one message where the return type is the receiver object. 2. For all predecessor messages in the sender object, there is at least one message where the parameter passed is type of the receiver object.

Rule#3: Example

GUI Prototype- Main Interface Class Model View Tool Panel Pseudo Code View

UI- Creating Class Model

UI – Class Information

UI- Creating Association

UI- Association Information

UI- Creating Sequence Model

UI- Creating Sequence

UI- Viewing the sequence

UI- Analyzer

Schedule Documentation Coding. Design. Testing. Presentation First Presentation April 15th 2nd Presentation June 20th

Schedule- Continue Documentation Coding. Design. Testing. Presentation Last Presentation July 21st

Cost Estimation Using COCOMO. Using COCOMO. SLOC = * 38 = SLOC = * 38 = Person Productivity (PM) = 11.4 person-month. Person Productivity (PM) = 11.4 person-month. Development Time (TDEV)= 6.3 months. Development Time (TDEV)= 6.3 months. Average Staffing = 11.4/6.3 = 1.8 people Average Staffing = 11.4/6.3 = 1.8 people

For more information….