© Devon M.Simmonds, 2007 CSC 550 Graduate Course in Software Engineering ______________________ Devon M. Simmonds Computer Science Department University.

Slides:



Advertisements
Similar presentations
Configuration management
Advertisements

Configuration management
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
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)
SBSE Course 3. EA applications to SE Analysis Design Implementation Testing Reference: Evolutionary Computing in Search-Based Software Engineering Leo.
SE curriculum in CC2001 made by IEEE and ACM: Overview and Ideas for Our Work Katerina Zdravkova Institute of Informatics
R R R CSE870: Advanced Software Engineering (Cheng): Intro to Software Engineering1 Advanced Software Engineering Dr. Cheng Overview of Software Engineering.
CSE 784 Software Studio Phil Pratt-Szeliga Fall 2010 Slides Derived From: Dr. Fawcett.
Software Engineering About the Course Software Engineering Qutaibah Malluhi Computer Science and Engineering Department Qatar University.
IS 421 Information Systems Management James Nowotarski 16 September 2002.
MSIS 110: Introduction to Computers; Instructor: S. Mathiyalakan1 Systems Design, Implementation, Maintenance, and Review Chapter 13.
1 Info 1409 Systems Analysis & Design Module Lecture 5 - Feasibility HND Year /9 De Montfort University.
CS351 - Software Engineering (AY2005)1 What is software engineering? Software engineering is an engineering discipline which is concerned with all aspects.
1 ISE 313 Computer Integrated Manufacturing and Automation I Dr. Arslan M. ÖRNEK Industrial Systems Engineering.
Introduction to Systems Analysis and Design
Introduction to Software Testing
Capstone Design Project (CDP) Civil Engineering Department First Semester 1431/1432 H 10/14/20091 King Saud University, Civil Engineering Department.
1 College of Engineering and Computer Science Computer Science Department CSC 131 Computer Software Engineering Fall 2006 Lecture # 2 Chapter 6 & 7 System.
Acquiring Information Systems and Applications
Introduction to Computer Technology
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 System and Software Engineering.
INFORMATION SYSTEM APPLICATIONS System Development Life Cycle.
Devon M. Simmonds 1 Dr. Devon M. Simmonds Computer Science Department University of North Carolina, Wilmington Presentation to ISIS.
ISE 324 Fundamentals of Modern Manufacturing Systems
CSC450 Software Engineering
Information Systems Development. Outline  Information System  Systems Development Project  Systems Development Life Cycle.
1 An Introduction to Software Engineering. 2 Objectives l To introduce software engineering and to explain its importance l To set out the answers to.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
Chapter 3: Software Maintenance Process Omar Meqdadi SE 3860 Lecture 3 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
ACCOUNTING INFORMATION SYSTEMS
Course Introduction Software Engineering
Software Requirements Engineering CSE 305 Lecture-2.
Principles of Information Systems, Sixth Edition Systems Design, Implementation, Maintenance, and Review Chapter 13.
Configuration Management (CM)
Teaching an Object-Oriented Software Development Lifecycle in Undergraduate Software Engineering Education February 27, 2002 Professor Brian Blake Georgetown.
Software Engineering Management Lecture 1 The Software Process.
Software Engineering EKT 420 MOHAMED ELSHAIKH KKF 8A – room 4.
An Introduction to Software Engineering. What is Software?
Software Requirements: Overview and Motivation Gruia-Catalin Roman and Christopher Gill CSE 436 January 2007 Department of Computer Science and Engineering.
Principles of Information Systems, Sixth Edition Systems Design, Implementation, Maintenance, and Review Chapter 13.
Information Systems Engineering. Lecture Outline Information Systems Architecture Information System Architecture components Information Engineering Phases.
Course Overview Stephen M. Thebaut, Ph.D. University of Florida Software Engineering Foundations.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
Systems Analysis and Design in a Changing World, Fourth Edition
Devon M. Simmonds Computer Science Department, CSC592 1 Devon M. Simmonds Computer Science Department University of North Carolina, Wilmington
Object-Oriented Software Engineering using Java, Patterns &UML. Presented by: E.S. Mbokane Department of System Development Faculty of ICT Tshwane University.
An Introduction to Software Engineering Support Lecture.
CEN First Lecture CEN 4010 Introduction to Software Engineering Instructor: Masoud Sadjadi
Computing & Information Sciences Kansas State University Paper Review Guidelines KDD Lab Course Supplement William H. Hsu Kansas State University Department.
Slide 1 CSC450 Review & Summary Slides adapted from various sources.
Workshop #1: Introduction to Graduation Project Wednesday September 2 nd at 10 am Capstone Committee Department of Computer Science.
Overview: Software and Software Engineering n Software is used by virtually everyone in society. n Software engineers have a moral obligation to build.
Principles of Information Systems, Sixth Edition 1 Systems Design, Implementation, Maintenance, and Review Chapter 13.
Software Engineering Introduction.
Lecture 1: Introduction – Graduation Projects Topics to Discuss in Lectures 1. Project Deliverables 2. Course grading 3. Project Concept Writing.
Oman College of Management and Technology Course – MM Topic 7 Production and Distribution of Multimedia Titles CS/MIS Department.
The Planning Phase Recognize the problem MIS steering committee 7. ManagerSystems analyst Define the problem Set system objectives Identify system constraints.
Information Systems Development. Outline  Information System  Systems Development Project  Systems Development Life Cycle.
Advanced Software Engineering Dr. Cheng
Software Engineering Management
System Design, Implementation and Review
Chapter 11: Software Configuration Management
ISE 313 Computer Integrated Manufacturing and Automation
FORMAL SYSTEM DEVELOPMENT METHODOLOGIES
Chapter 1 (pages 4-9); Overview of SDLC
CLINICAL INFORMATION SYSTEM
Overview: Software and Software Engineering
Chapter 11: Software Configuration Management
System Analysis and Design:
Introduction to Computers
Presentation transcript:

© Devon M.Simmonds, 2007 CSC 550 Graduate Course in Software Engineering ______________________ Devon M. Simmonds Computer Science Department University of North Carolina Wilmington _____________________________________________________________

2 2 COURSE INTRODUCTION Outline Getting to know you Motivation for Graduate software engineering course Course overview

3 3 Getting to Know  You The Man without a Face, oil on panel, 11x14, 2005 – Dae-Woong Nam Name Background Where from Previous school Research interests Development experience Project status

4 © Devon M.Simmonds, 2007 Computer science/Information Systems - solving problems with the aid of a computer Artificial intelligence Database management systems Distributed systems Computer graphics Operating systems Software engineering Motivation

5 © Devon M.Simmonds, 2007 What is Software Engineering (SE)? Software Engineering is concerned with development of complex systems that are built by teams of developers. SE techniques are not intended for small problems (e.g., writing a program for sorting a list of numbers). On the other hand, SE builds upon programming techniques; a good software engineer must also be a good programmer. SE research focuses on developing mechanisms and methods that help developers manage system complexity.

6 © Devon M.Simmonds, 2007 A Definition of SE The establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines. Bauer/Pressman

7 © Devon M.Simmonds, 2007 The Software Lifecycle The process/activities of developing and evolving software Systems Engineering Requirements Analysis Software Design Implementation Testing Deployment Evolution

8 © Devon M.Simmonds, 2007 The Software Lifecycle Systems Engineering Identify needs/problems Allocation of roles Hardware Procedures Software Feasibility studies Systems Engineering Requirements Analysis Software Design Implementation Testing Deployment Evolution

9 © Devon M.Simmonds, 2007 The Software Lifecycle Requirements Analysis Define goals, objectives, features of target software Requirements Analysis Software Design Implementation Testing Deployment Evolution Systems Engineering Identify needs, problems and allocate roles

10 © Devon M.Simmonds, 2007 The Software Lifecycle Software design Creating a blueprint for building the software Architectural design Subsystem design Detailed design Procedural Design User Interface Design Database Design Data Structures Design Test case design Requirements Analysis Software Design Implementation Testing Deployment Evolution Systems Engineering Identify needs, problems and allocate roles Define software features “Up to 70% of all faults detected in large-scale software projects are introduced in requirements and design. Detecting the causes of those faults early may reduce their resulting costs by a factor of 100 or more.”

11 © Devon M.Simmonds, 2007 The Software Lifecycle Implementation Creating the finished product – the program Coding Writing code for the classes and operations Generate object code Create Test cases Create user manuals Requirements Analysis Software Design Implementation Testing Deployment Evolution Systems Engineering Identify needs, problems and allocate roles Define software features Create blueprint

12 © Devon M.Simmonds, 2007 The Software Lifecycle Testing Determining if the software has errors/fulfils its requirements Test planning Unit testing Subsystem testing Integration testing Regression testing Test case design Requirements Analysis Software Design Implementation Testing Deployment Evolution Systems Engineering Identify needs, problems and allocate roles Define software features Create blueprint Create code

13 © Devon M.Simmonds, 2007 The Software Lifecycle Deployment Making the software available for use Deployment/installation planning Develop documentation Hardware configuration Installation Software distribution Training Requirements Analysis Software Design Implementation Testing Deployment Evolution Systems Engineering Identify needs, problems and allocate roles Define software features Create blueprint Create code Uncovering errors

14 © Devon M.Simmonds, 2007 The Software Lifecycle Evolution Managing the software Configuration management Controlling change as software evolves Technical support Software lifecycle activities Requirements Analysis Software Design Implementation Testing Deployment Evolution Systems Engineering Identify needs, problems and allocate roles Define software features Create blueprint Create code Uncover errors Make software available for use

15 The Software Lifecycle: The Unified Process 15

16 © Devon M.Simmonds, 2007 Important Topics In SE Lifecycle phases Analysis, design, etc Research methods in SE Literature review and analysis Model driven software development (MDD) Aspect-oriented design & analysis Component-based software engineering Design patterns in SE Measurement Software processes Software testing Etc.

17 © Devon M.Simmonds, 2007 Difficult areas for new SE Graduate Students Scoping research Experimental design Writing!!! Broad understanding of SE Literature review and analysis Model driven software development (MDD) Aspect-oriented design & analysis Software Testing Other topics as time permits A practical case-driven approach What is this Course about?

18 © Devon M.Simmonds, 2007 Course Structure Lectures Seminars (1 per student) - One seminar per student on 1 or more research papers Research paper critiques and summaries Written paper and presentation

19 © Devon M.Simmonds, 2007 CSC550 Grading COURSE ITEMGRADE PERCENT Research Project30% Midterm Exam20% Homeworks20% Literature reviews10% Final Examination (or Project presentation/Demo) 10% Project proposals & Class Participation10% Grading system 93% or aboveA 80% - 92%B 65% - 79%C 50% - 64%D below 50%F

20 © Devon M.Simmonds, 2007 The Research Papers LINK The Research Projects LINK

21 Excellence from 550 …… 21

22 Excellence from 550 …… Submitted to IJCIS ….. 22

23 Excellence from 550 …… In preparation 23

24 Research Excellence: Rules to Guide the Supervision Process Always seek feedback from your supervisor before any important decision. Asking persons to serve on your committee. Requesting feedback about your project from the committee (informal feedback is of course allowed). Requesting feedback on your project … a survey instrument, software to be evaluated, etc. © Devon M.Simmonds, 2007

25 TheEnd CSC550, Devon M. Simmonds, Computer Science Department, University of North Carolina Wilmington ??????????????? CSC Q u e s t i o n s ?