Presentation is loading. Please wait.

Presentation is loading. Please wait.

Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 1, Introduction to Software Engineering.

Similar presentations


Presentation on theme: "Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 1, Introduction to Software Engineering."— Presentation transcript:

1 Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 1, Introduction to Software Engineering

2 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 2 Software Engineering  Software systems are complex  Impossible to understand by a single person  Many projects are never finished: "vaporware"  The problem is arbitrary complexity  1968 Definition:  Software Engineering means the construction of quality software with a limited budget and a given deadline  Our definition:  Software Engineering means the construction of quality software with a limited budget and a given deadline in the context of constant change  Emphasis is on both, on software and on engineering

3 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 3 Course format  A Single Semester Course  Lectures: Theoretical foundations and background  Project: Learn how to apply them in practice  Lectures and Project work are interleaved  A Single Project Course  Everybody is working on the same project  Cheating Rule for 15-413  You cheat if you do not acknowledge the contribution made by others.

4 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 4 Lecture Overview  Introduction  Objectives of Course  Project  STARS System Problem Statement  Top Level Design  Syllabus  Introduction of People  Administrative Matters

5 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 5 Objectives of this course  Acquire technical knowledge  Understand difference between program and software product  Be able to reconstruct the analysis and design of an existing software system  Be able to design and implement a subsystem that will be part of a larger system  Acquire managerial knowledge  produce a high quality software system within budget & time  while dealing with complexity and change

6 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 6 Emphasis is on team-work  Participate in collaborative design  Work as a member of a project team, assuming various roles  Create and follow a project and test plan  Create the full range of documents associated with a software product  Complete a project on time

7 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 7 How can we accomplish this?  Course Project  STARS: Sticky Technology for Augmented Reality Systems  The 4 R’s:  Real Problem: Increasing cost for producing and accessing technical manuals in F-18 airplanes  Real Client: Lt. Matt Herl, F-18 Program Office, Mark Kramer, Raymond LeBeau from Navy Carderock Lab.  Real Data: Technical manuals, components and databases provided by F-18 Program Office.  Real Deadline: 9 December 1999

8 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 8 Assumptions and Requirements for this Class  Assumption:  You are proficient in a programming language (Java preferred), but have no experience in analysis or design of a system  You have access to a Web Browser  Course Homepage: http://sierra.se.cs.cmu.edu/STARS  Requirements:  You have taken one of the required courses (Compiler Construction, Operating Systems or Artificial Intelligence)  or  You have practical experience with maintaining or developing a large software system

9 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 9 Project Goals  Attempt to reduce the cost of logistics support and maintenance while improving or at least maintaining current aircraft readiness.  Implementation of two major processes:  Developing & managing interactive electronic technical manuals  Performing maintenance with advanced capability IETMs.  Demonstration of a conceptual prototype

10 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 10 Project Management  Coaches:  Bernd Bruegge, Bill Scherlis: Architecture Team  Grace Ritter: Authoring and Work Flow Teams  David Garmire: Modeling Team  Eric Stein: Augmented Reality Team  Zia Syed, Tom Hawley: Inspection Team  Pooja Saksena, Tom Hawley: Repair Team  Communication Infrastructure  Joyce Johnstone (Lotus Notes)  Consultants:  HCI: Jane Siegel, Elaine Hyder, Jack Mofett  Client Liaison: Dick Martin

11 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 11 Problem Statement  Customer Presentation:  Mark Kramer  Raymond LeBeau  Online Version:  http://sierra.se.cs.cmu.edu/STARS/

12 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 12  STARS Problem Statement:  Sticky Technology for Augmented Reality Systems

13 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 13 Authoring Workflow Inspection Notification AirplaneModel Software Bus Repair Augmented Reality Basic Software Architecture for STARS Project

14 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 14 STARS Subsystems  Authoring subsystem: Provides the capability to author and annotate IETMS which can be viewed with a web-based display tool. Interfaces to existing commercial products ACS and AIMSS that provide part of the required functionality.  Work flow subsystem: Provides a review and quality control process for IETM documents submitted by authors. The subsystem also detect changes in IETM documents and notifies the author. The subsystem also notifies mechanics when work orders have been created for them.  Modeling subsystem: Allows authoring of a description of an F18 airplane with a CAD tool, providing different views, such as a wireframe view, that can be overlaid on the real airplane

15 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 15 STARS Subsystems  Augmented reality subsystem: Provides location information of the airplane with respect to the mobile mechanic performing the maintenance.  Inspection subsystem: provides the capability to do an inspection based on IETM documents. The mechanic adds an annotation ("virtual sticky") to the repair location, by pointing to a specific location at the airplane.  Repair subsystem: provides the capability to perform maintenance procedures described in a work order. Locates the stickies associated with a specific airplane, and to perform the maintenance procedure interactively by using voice input and output.  Notification subsystem: provides a publisher/subscriber mechanism for subscribes of documents and work orders.

16 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 16 Subsystems and Teams  STARS will be developed in a team-based approach  Each subsystem in the software architecture will be mapped on a team  You will be member of one or more teams  Development team (Authoring, Workflow, Modeling, Augmented reality, Inspection, Repair)  Crossfunctional team (Architecture)  You can give us your team preferences when your register for the project.  Deadline: Thursday, Aug 26, 6 pm  Team selection is done by project management and will be announced in class, Tuesday August 31.

17 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 17 Project Milestones  See http://sierra.se.cs.cmu.edu/STARS/schedule.html  External Milestones (with client)  Aug 24: Client Presentation  Nov 5: System Design Review  Dec 9: Client Acceptance Test  Internal Milestones (with project management)  Aug 31: Announcement of Teams  Oct 26&28: Analysis Review  Nov 30: Object Design Review  Dec 7: Dry run of Client Acceptance Test

18 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 18 Client Acceptance Milestone  The STARS system must be successfully demonstrated on Dec 9, 1999 ( “15-413 Final”)  The acceptance criteria are established in a dialog with the client during the requirements analysis phase  The STARS system will be delivered with the following artifacts on a CD-ROM  Requirements Analysis Document  System Design Document  Object Design Document  Test Manual  Source Code Depot

19 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 19 Textbooks  Textbook (Required)  Bernd Bruegge and Allen Dutoit, Object-Oriented Software Engineering: Conquering Complex and Changing Systems, Prentice Hall, 1999.  Available from CMU Bookstore on Oct 1.  Optional Readings  Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides: Design Patterns, Addison-Wesley, 1996, ISBN 0-201-63361-2  Ivar Jacobson, M. Christerson, P. Jonsson, G. Övergaard, "Object- Oriented Software Engineering", Addison Wesley, 1992  Grady Booch, "Object-Oriented Design with Applications", Benjamin Cummings, 1991.  James Rumbaugh, M. Blaha, W. Premerlani, F. Eddy, W. Lorensen, Object-Oriented Modeling and Design, Prentice Hall, 1991

20 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 20 Readings  Additional readings in syllabus  Check Readings in Course Syllabus on the course home page  Readings due on day of class  Readings not in the textbooks will be made available a week before the lecture  Reading for Thursday: Chapter 2  Available as hard copy and on the web

21 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 21  Standards  A: 90+  B: 75-89+  C: 56-74 (including at least 20 points from lectures and 40 points from project)  D: 40-55, or 56-74 with wrong proportion of lecture and project points  R: less than 40 Grading  Project  Process and associated deliverables: 35 points  Communication: 10 points  System integration and system delivery: 20 points  Lectures  4 homeworks : 5 points for each of 4 homeworks  Quizzes: 15 points

22 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 22 What do you have to do right now?  Access the STARS homepage  http://sierra.se.cs.cmu.edu/STARS  Read the problem statement:  http://sierra.se.cs.cmu.edu/STARS/docs/STARS_ProblemStatement.html  Register for the project:  http://konablend.se.cs.cmu.edu/STARS/registration.nsf  Change your password  Deadline for registration is August 26, 6pm

23 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 23

24 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 24 Electronic Communication  Web Page: http://sierra.se.cs.cmu.edu/STARS  Course bboards:  Announce: For course announcements  Discuss: For discussion of topics relevant for everyone  Help: 24 hour help desk  Client: Communication with the client  Team Bboards:  Discussion of issues relating to the subsystem developed by the team.  Daily access to these bboards is required.  Access to bboards is restricted to registered students and students on the waiting list:  User Name: Firstname Lastname  Password: First 8 digits of Lastname (if necessary padded with 123…)  Example: Password for “Zia Syed” is “Syed1234”

25 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 25 Login into the STARS intranet  Access to bboards is restricted to registered students and students on the waiting list:  User Name: Firstname Lastname  Password: First 8 digits of Lastname (if necessary padded with 123…)  Example: Password for “Zia Syed” is “Syed1234”  Note: Password is case sensitive

26 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 26 What you want to avoid

27 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 27 If you are successful, you get this

28 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 28 Fill out your registration form

29 Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 29 If you need help  Questions about Passwords, Logging into the Bboards, Accessing the Home page:  Joyce Johnstone (jdarej@cs.cmu.edu), x3803  Before noon: Smith Hall 120  Afternoon: BOM, Building D 154  Questions about the Course  Bernd Bruegge (WeH 4123): August 26 after class  Send mail to bruegge@cs.cmu.edu  Post your question on the Help bboard  Read the Help Bboard as well


Download ppt "Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 1, Introduction to Software Engineering."

Similar presentations


Ads by Google