Software Specification and Design Sirisin Kongsilp & James Brucker.

Slides:



Advertisements
Similar presentations
CS487 Software Engineering Omar Aldawud
Advertisements

Team Software Project - Ebnenasir - Spring CS 3141: Team Software Project - Introduction Ali Ebnenasir Department of Computer Science Michigan Technological.
Chapter 1 Object Oriented Analysis and Design. UML, Patterns, and Object-Oriented Analysis and Design  The essential skills for the creation of well-designed,
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
IS6112 Application Modelling and Design Introduction.
CSE 784 Software Studio Phil Pratt-Szeliga Fall 2010 Slides Derived From: Dr. Fawcett.
IS 421 Information Systems Management James Nowotarski 16 September 2002.
Software Engineering Georges Grinstein Olsen 301E Class materials:
Iterative development and The Unified process
COMP 350: Object Oriented Analysis and Design Lecture 2
NJIT Inception is not the Requirements Phase Chapter 4 Applying UML and Patterns Craig Larman.
CSCD 330 Network Programming Winter 2012 Lecture 1 - Course Details.
Principles of Object Technology Module 1: Principles of Modeling.
COMP 6471 Software Design Methodologies Winter 2006 Dr Greg Butler
Issues in Teaching Software Engineering Virendra C. Bhavsar Professor and Director, Advanced Computational Research Laboratory Faculty of Computer Science.
Discovering 10232A – Designing and Developing Microsoft SharePoint Server 2010 Applications Robert Bogue.
IS0514 Lecture - Week 2 Best Practice Development Methodology.
The Rational Unified Process
Thirteenth Lecture Hour 8:30 – 9:20 am, Sunday, September 16 Software Management Disciplines Process Automation (from Part III, Chapter 12 of Royce’ book)
Software Engineering II (Spring 2008) Instructor: Instructor:Dr. Damla Turgut Office: Office:450 ENGR 1 Bldg Office Phone: Office Phone:(407)
CSE 501N Fall ‘09 00: Introduction 27 August 2009 Nick Leidenfrost.
EECE 310 Software Engineering Lecture 0: Course Orientation.
Object-Oriented Analysis and Design OVERVIEW. Objectives  Describe Information Systems  Explain the role of a systems analyst  Introduce object-oriented.
COMP 523 DIANE POZEFSKY 19 August CHAOS REIGNS.
Chapter 1 Object-Oriented Analysis and Design. Disclaimer Slides come from a variety of sources: –Craig Larman-developed slides; author of this classic.
Moodle: Engaging Students Online Nathalie Rudner, Thornhill Secondary School Anita Drossis, Vaughan Secondary School York Region District School Board.
11 Partnership for Performance How to hear this lecture Click on the icon: to hear the narration for each slide.
Course Guide IS325 Systems Analysis & Design II Ms Fatima Khan Prince Sultan University, College for Women.
CSCD 330 Network Programming Fall/Winter/Spring 2014 Lecture 1 - Course Details.
Week 1 c0209 Software Engineering Course Practice Project Course Overview Software Institute, Nanjing University, Spring 2007 c0209.
Chapter 2 Iterative, Evolutionary, and Agile You should use iterative development only on projects that you want to succeed. - Martin Fowler 1CS
CMSC 345, Fall CMSC 345 Software Design and Development Fall 2003 Section 0101 Ms. Susan Mitchell Leave Your Ego at the Door!
1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.
SE-280 Dr. Mark L. Hornick 1 SE-280 Software Engineering Process Dr. Mark L. Hornick web: myweb.msoe.edu/hornick SE280 info syllabus,
Inception Chapter 4 Applying UML and Patterns -Craig Larman.
1 Computing and Software Engineering Practice Course Overview Software Institute, Nanjing University, Spring
INTRODUCTION TO PROGRAMMING ISMAIL ABUMUHFOUZ | CS 146.
Course Introduction CEN 5016 Software Engineering Dr. David A. Workman School of EE and Computer Science January 9, 2007.
Use Cases CS 6961 – Lecture 4 Nathan Dykman. Neumont UniversityCS Lecture 102 Administration Homework 1 is due –Still reviewing the proposal, but.
CS-112 Object Oriented Concepts Course Syllabus. Outline  Instructor and Prerequisites  What this course is  Learning outcomes  Degree program outcomes.
CS 345 – Software Engineering Nancy Harris ISAT/CS 217
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN Objectives Describe the book goals and scope Define OOA/D (Object-Oriented Analysis and Design) Illustrate.
CSCD 330 Network Programming Winter 2015 Lecture 1 - Course Details.
Week 2. Topics Inception phase Evolutionary requirements Use cases.
® IBM Software Group © 2007 IBM Corporation Module 1: Getting Started with Rational Software Architect Essentials of Modeling with IBM Rational Software.
Rational Unified Process Fundamentals Best Practices of Software Engineering Rational Unified Process Fundamentals Best Practices of Software Engineering.
DE?!GN software. COMP2110 Software Design in 2004 Chris Johnson 1.Software Requirements and Software Design in a framework for Software Engineering 2.The.
The Software Engineering Process Discussion Slides.
RUP RATIONAL UNIFIED PROCESS Behnam Akbari 06 Oct
PROBLEM SOLVING AND PROGRAMMING ISMAIL ABUMUHFOUZ | CS 170.
Course Overview Stephen M. Thebaut, Ph.D. University of Florida Software Engineering.
RATIONAL UNIFIED PROCESS PROCESS FRAMEWORK OVERVIEW.
COMP 523 Diane pozefsky 24 August 2016.
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN
Unified Process Source & Courtesy: Jing Zou.
CS 519: Object-Oriented Analysis & Design IS 516: Selected Topics in Information Technology Instructor: Dr. Tarek Elghazaly Text Book: Craig Larman,
COMP 350: Object Oriented Analysis and Design Lecture 2
Chapter 1 Object-Oriented Analysis and Design. Disclaimer Slides come from a variety of sources: –Craig Larman-developed slides; author of this classic.
Introduction to Programming 2
EECE 310 Software Engineering
CSCD 330 Network Programming Spring
Chapter 2 – Software Processes
CSCD 330 Network Programming Spring
The Software Engineering Process
SOFTWARE LIFE-CYCLES Beyond the Waterfall.
CSCD 330 Network Programming Spring
References: Eddie Burris, Rick Mercer
Topic 1: Introduction to the Module and an Overview of Agile
CSCI 360: Software Architecture and Design
Presentation transcript:

Software Specification and Design Sirisin Kongsilp & James Brucker

Subject of the Course Software Specification & Design

Subject of the Course Software Specification and Design Specification of what? How do you know if your design works? Is it what the customer wants?

New Subject of the Course Software Specification and Design Analysis and and Implementation and Process and Documentation Requirements and and Testing

Content  Topics of study Will follow the textbook (see next slides).  Software Projects Point-of-Sale (POS) system - from textbook Requirements, UI, features differ from textbook  Case Studies From Head First O-O Analysis & Design Design principles & patterns practice  How to do a Project following a Process using Unified Software Development Process (UP)

Topics  Software Processes – just enough “process” for this course – intro to Waterfall and UP processes  Iterative & Evolutionary Approach to Software Emphasis on Analysis, Specification, and Design  Discovering and Documenting Requirements

Topics  Analysis and Modeling Analyze Requirements Domain Modeling Implementation Modeling UML as visual modeling tool

More Topics  Design a solution Principles to guide design decisions Design Patterns  Validation: testing and review  Documentation: project, process, and many others  Technology & Tools issue tracking version control software API & frameworks (JPA, Log4J,...)

This Course & Development Lifecycle The workflows: requirements analysis design implementation testing configuration management project management environment (tools) deployment Emphasis here but we do these, too

Skills to Learn  Analysis & Design using OO Design Principles  Design Patterns - recognize when to apply  Technology for: Authentication and Authorization Data Persistence (JPA) Frameworks Version control Issue tracking Reverse engineering of UML from code Lots of Java  Learn to follow a process as part of a team

Required Level of Study Reading: about 60 pages per week Doing: project work each week Writing: grammatically correct English documents Individual Effort: your grade is based on your effort and performance Time Commitment: 9-12 hours per week outside of class

Learning Read assigned material before class each week. Take notes: summarize important points. Participate in discussions. Avoid distraction: don't play games or chat in class or lab. Anyone who does will be asked to leave.

Main Textbook “ People often ask me which is the best book to introduce them to OO design.... Applying UML and Patterns has been my unreserved choice. ” -- Martin Fowler 700 Baht at KU Books (discount for this course).

Main Textbook If you don't read this book, you will not pass this course.

Other Books For OO Design Principles, we will use this (only some chapters). Amusing case studies make it easy to remember the principles.

Other Books For learning UML. Chapter 2 is good intro to software process.

Using the Textbook  Easy to read, but written for developers Craig Larman Agile UP Inception is not Waterfall Requirements phase... involve Stakeholders... Risk... what ???

Textbook Strengths: Excellent for O-O Analysis and Design Emphasizes iterative development Author conveys real-world experience Weaknesses: Fuzzy about process and how docs fit together. Bias towards Agile methods. Some gaps you have to research for yourself. Redundant

Other Resources Online RUP and OpenUP Process Frameworks  guidance  templates  descriptions

Other Resources Class Web & Wiki  Articles - occasional, famous articles  Templates - for documents you will write  Examples  You can contribute to Wiki Teaching Assistants  TBA  Contact them as much as you like!

No Lecture Slides  Do you want a PowerPoint education? □slides lack depth and detail  Slide material is in Textbooks and Other Resources.

Locations Class Wiki: (links to course on main page) Course Materials: SVN: Downloads and Resources (UP, Books, Tools):