Software Engineering Emphasis for Engineering Computing Courses William Hankley Computing & Information Sciences Kansas State University.

Slides:



Advertisements
Similar presentations
Chapter 4 - Object-Oriented Analysis and Design in a Nutshell1 Chapter 4 Object-Oriented Analysis and Design in a Nutshell.
Advertisements

Gerhard Dueck -- CS3013Capturing Requirements as Use Cases 1 Capturing the Requirements as use Cases  Requirements Description  We need to describe –The.
Unified Modeling Language
Introduction To System Analysis and Design
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
The Unified Software Development Process - Workflows Ivar Jacobson, Grady Booch, James Rumbaugh Addison Wesley, 1999.
1 UML – an overview What is UML? UML stands for Unified Modelling Language. ”The Unified Modelling Language is a visual language for specifying, constructing.
Basic OOP Concepts and Terms
Unified Modeling Language (UML) Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Kari R. Schougaard, PhD Stud. Værktøjer og Teknikker, 2006 UNIVERSITY OF AARHUS Department of Computer Science Unified Modeling Language Visual language.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Lesson 1 Week01.
Issues in Teaching Software Engineering Virendra C. Bhavsar Professor and Director, Advanced Computational Research Laboratory Faculty of Computer Science.
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
CS361 Winter 2013 Final Exam Review Software Engineering I Oregon State University.
Assessing the Suitability of UML for Modeling Software Architectures Nenad Medvidovic Computer Science Department University of Southern California Los.
1 SYS366 Lecture Visual Modeling and Business Use Case Diagrams.
Eng. Mohammed Timraz Electronics & Communication Engineer University of Palestine Faculty of Engineering and Urban planning Software Engineering Department.
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
Introduction To System Analysis and Design
Object-Oriented Analysis and Design An Introduction.
UML Diagrams: Class Diagrams The Static Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
11 Partnership for Performance How to hear this lecture Click on the icon: to hear the narration for each slide.
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical.
Object-Oriented Analysis and Design Fall 2009.
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.
Fall 2010 CS4310 Requirements Engineering A Brief Review of UML & OO Dr. Guoqiang Hu Department of Computer Science UTEP 1.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
Basic OOP Concepts and Terms. In this class, we will cover: Objects and examples of different object types Classes and how they relate to objects Object.
The Unified Modeling Language Part II Omar Meqdadi SE 2730 Lecture 9 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:
Course Instructor: Kashif Ihsan 1. Chapter # 3 2.
Teaching Systems Analysis and Design in a Practical Way: A Collaborative Effort Between Computer Science and Business School by Ken Surendran-CS Chellappa.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
CS251 – Software Engineering Lecture 9: Software Design Slides by Mohammad El-Ramly, PhD
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
Lab 5 CPIT 250 System Analysis and Design.
Connecting with Computer Science2 Objectives Learn how software engineering is used to create applications Learn some of the different software engineering.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Slide 1 Object-Oriented Analysis and Design Attempts to balance emphasis on data and process Uses Unified Modeling Language (UML) for diagramming Use-case.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
Prof. Hany H. Ammar, CSEE, WVU, and
Software Development Introduction
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Object-Oriented Systems. Goals Object-Oriented Methodologies – The Rumbaugh et al. OMT – The Booch methodology – Jacobson's methodologies.
CSIS 4850: CS Senior Project – Spring 2009 CSIS 4850: Senior Project Spring 2009 Object-Oriented Design.
Design and implementation Chapter 7 – Lecture 1. Design and implementation Software design and implementation is the stage in the software engineering.
Fall 2007 Week 9: UML Overview MSIS 670: Object-Oriented Software Engineering.
Introduction to UML and Rational Rose UML - Unified Modeling Language Rational Rose 98 - a GUI tool to systematically develop software through the following.
Object Oriented Analysis & Design By Rashid Mahmood.
Lecturer: Eng. Mohamed Adam Isak PH.D Researcher in CS M.Sc. and B.Sc. of Information Technology Engineering, Lecturer in University of Somalia and Mogadishu.
UML Diagrams: Class Diagrams The Static Analysis Model
What is UML? What is UP? [Arlow and Neustadt, 2005] October 5, 2017
Introduction to UML Tutorial 1.
Online Shopping APP.
CS & CS Capstone Project & Software Development Project
Model-View-Controller
Introduction To System Analysis and Design PART 2
Unified Modeling Language
Introduction to UML.
Software Design Lecture : 15.
Basic OOP Concepts and Terms
Presentation transcript:

Software Engineering Emphasis for Engineering Computing Courses William Hankley Computing & Information Sciences Kansas State University

:a message to engineering educators William Hankley Computing & Information Sciences Kansas State University

Software Engineering Emphasis Typically, engineering students take one programming course. But, programming =/= software engineering like learning to solder vs concepts of electrical circuits

Software Engineering Emphasis Aspects of SE for non-CS majors: requirements definition UI design software architecture design; components, patterns, frameworks software tools (IDE’s)

Software Engineering Emphasis There is an aspect of design for software ! Engineers outside of SE seem not to recognize this. E.G. this paper was moved from “design in the curriculum” to “computers in education”.

Software Engineering Emphasis Software architecture design: the notation for software models is UML ( Unified Modeling Language, see paper for details ) a reviewer comment: “this paper is mostly UML”

Software Engineering Emphasis some component diagrams of UML+:  Use-case(s)... view of one aspect of user interaction  State model(s)... of either whole system or single class  Class model... static structure of classes & methods  Sequence(s)...view of trace of execution  GUI prototype... visual model + state model

Software Engineering Emphasis Why focus on UML design?  almost all software defects are manifest in design  code is not suited for managerial review  design is the contract for group project work

Software Engineering Emphasis Design is not just “software design”; it can be “systems design” for any system  with user controls or data inputs  with dynamic state behavior  with programmable components

Software Engineering Emphasis The problems: (a) most first programming courses do not cover design and UML (b) most engineering programs allow only one programming course (c) design is more instructor intensive than just programming.

Software Engineering Emphasis KSU approach: (1) introduce UML in first CS course (but with no design focus) (2) second course on Software Architecture (for CS, IS, EE, CompE majors ) Described in ASEE 2003 Proceedings.

Software Engineering Emphasis The message to engineering educators : Consider a second course on software architecture ! Details in the paper. The end.

Software Engineering Emphasis