Download presentation
Presentation is loading. Please wait.
1
CS 577b: Software Engineering II
CS 577b Software Engineering II -- Introduction 18 September 2018 CS 577b: Software Engineering II Class Introduction (C) USC-CSSE 1 1/11/2010 © USC Center for Software Engineering
2
CS 577b Software Engineering II -- Introduction
18 September 2018 CS 577b Course Objective Learn how to go From a successful RDCR package To a successfully "delivered" software system Main elements Coping with “devils in the details” Doing cost-effective quality management Understanding how stakeholders will operate & maintain system Using IICM-Sw Architected-Agile project guidelines (C) USC-CSSE 2 1/11/2010 © USC Center for Software Engineering
3
CS 577b Course Goals I teach you somethings you didn't know You learn
Don't be afraid to ask questions Do actively participate You learn By listening in class, reading, … By doing (and making mistakes) You get satisficed WE learn for future semesters' CS577 WE have a satisficed client (C) USC-CSSE 1/11/2010
4
Software Engineering Project Course (CS 577)
What we told Clients last Fall: Software Engineering Project Course (CS 577) Fall: Develop Life Cycle Architecture Packages Ops. Concept, Requirements, Prototype, Architecture, Plan Feasibility Rationale, including business case Results chain linking project results to desired outcomes 20 projects; 100 students; about 20 clients Spring: Develop Initial Operational Capability 6-10 projects; students; 6-10 clients Software, personnel, and facilities preparation 2-week transition period then the student teams disappear Tools and techniques: WikiWinWin; Benefit Chain; Rational Software Modeler; Subversion; USC COCOMO II; MS Project; USC Incremental Commitment model method Reworked annually based on student & client feedback (C) USC-CSSE 1/11/2010 4
5
Stakeholder Win-Win Approach
What we told Clients last Fall: Stakeholder Win-Win Approach Stakeholders Win Conditions Full range of SW Engr. skills Real-client project experience Non-outsourceable skills Advanced SW tech. experience Students, Employers Useful applications Advanced SW tech. understanding Moderate time requirements Project clients Educate future SW Engr. leaders Better SW Engr. technology Applied on real-client projects Faculty, Profession (C) USC-CSSE 1/11/2010 5
6
Timelines: Spring 2010 What we told Clients last Fall:
Jan. 11- Feb. 12: Work with teams: Rebaseline prototype, prioritize requirements Plan for CS 577b specifics, including transition strategy, key risk items Participate in ARB review Feb 15 – May 7: Scheduled Weekly Meetings with Teams to: Discuss status and plans Provide access to key transition people for strategy and readiness discussions Mar 8 – 26: Core Capability Drivethrough Apr 15 - Apr 16: Project Transition Readiness ARB Reviews Apr 20: Installation and Transition Install Product Execute Transition Plan May 4-5: Operational Commitment Review for Initial Operational Capability May 7: Client Evaluations (C) USC-CSSE 1/11/2010 6
7
What we told YOU last Fall:
“Software Engineering”: The disciplines which distinguish the coding of a computer program from the development of a software product Stages Requirements, Design, Implement, Architecture Code Maintain Issues Computer Science User Applications Economics People CS Focus Accommodate new tools and techniques Web services, GUI prototypers, WinWin, Spiral processes Integrate all these considerations - Via Incremental Commitment Model (C) USC-CSSE 1/11/2010 7
8
Instructional Incremental Commitment Model – Software Engineering
What we told YOU last Fall: Instructional Incremental Commitment Model – Software Engineering (C) USC-CSSE 1/11/2010 8
9
CS 577b Software Engineering II -- Introduction
18 September 2018 Course Etiquette Observe normal rules of classroom etiquette Be on time! If you are late, don’t slam the door (Tells your friends) If you are late, CS577b students may be penalized ONE conversation at a time ONE topic at a time Direct all comments to the instructor Encourage (rather than criticize) other students & browsing at breaks or after class only Turn off/silent cell phones & pagers (C) USC-CSSE 10 1/11/2010 © USC Center for Software Engineering
10
Course Etiquette (cont.)
CS 577b Software Engineering II -- Introduction 18 September 2018 Course Etiquette (cont.) Respect others & yourself Cheat Don’t! I am a stickler! Be ready to learn…. (C) USC-CSSE 11 1/11/2010 © USC Center for Software Engineering
11
CS 577b Software Engineering II -- Introduction
18 September 2018 Outline Course Challenges Staff & Grading Course & Project Schedule Project & Team Risk Management Project Planning Other Course Preparation Academic Integrity Reminder Forms & Logistics Comment Learning (C) USC-CSSE 12 1/11/2010 © USC Center for Software Engineering
12
Challenge: IOC vs. RDCR Client Evaluations
TBS (C) USC-CSSE 1/11/2010
13
Software Engineering Education Stakeholders & Win Conditions
CS 577b Software Engineering II -- Introduction 18 September 2018 Software Engineering Education Stakeholders & Win Conditions Stakeholder Student Industry Win Conditions Life-long value Knowledge Skills Incl. learning & evaluation Marketable near-term skills Technical Tools, languages, techniques Managerial skills People, economics Experience using Fair workload Fair (Good) Grade Rewarding experience Intellectual Social Lots of graduates with Including full-spectrum coverage of life-cycle Domain Relevant near-term skills Distance learning opportunities (C) USC-CSSE 14 1/11/2010 © USC Center for Software Engineering
14
Software Engineering Education Stakeholders & Win Conditions (cont.)
CS 577b Software Engineering II -- Introduction 18 September 2018 Software Engineering Education Stakeholders & Win Conditions (cont.) Stakeholder Class-project Clients Software Engineering Community Win Conditions Well-engineered products Easy to transition & use Efficient use of client time Minimum operational disruption Client knowledge & skills developed in information technology Experience-based improvements in software engineering Technical Tools, languages, techniques Management People, economics (C) USC-CSSE 15 1/11/2010 © USC Center for Software Engineering
15
Software Engineering Education Stakeholders & Win Conditions (cont.)
CS 577b Software Engineering II -- Introduction 18 September 2018 Software Engineering Education Stakeholders & Win Conditions (cont.) Stakeholder Instructors Teaching Assistants Win Conditions Create & sustain stakeholder win-win enterprise Confront & resolve win-lose risks Contribute to software & system engineering & education State-of-art State-of-practice Manageable workload Rewarding experience Intellectual Incl. see students understand concepts Social See Students Experience teaching Ph.D. (often) (C) USC-CSSE 16 1/11/2010 © USC Center for Software Engineering
16
CS 577b Software Engineering II -- Introduction
18 September 2018 Outline Course Challenges Staff & Grading Course & Project Schedule Project & Team Risk Management Project Planning Other Course Preparation Academic Integrity Reminder Forms & Logistics Comment Learning (C) USC-CSSE 17 1/11/2010 © USC Center for Software Engineering
17
CS 577b Software Engineering II -- Introduction
18 September 2018 Staff Lead instructor A Winsor Brown TA’s: Pongtip Aroonvatanaporn Qi Li Guest lectures Dr. Barry Boehm Jim Land Warren Reid Others? (C) USC-CSSE 18 1/11/2010 © USC Center for Software Engineering
18
CS 577b Software Engineering II -- Introduction
18 September 2018 Grading – “On Campus” Individual Homework & Quizzes: ~15%? Project: ~50% (functionality & documentation)? Individual Critique: ~20%? CSSE “Process Improvement” Presentation: ~5%? Individual Contribution: ~5%? Client Evaluation: ~5%? (C) USC-CSSE 19 1/11/2010 © USC Center for Software Engineering
19
CS 577b Software Engineering II -- Introduction
18 September 2018 Grading –DEN About the same? Special considerations? (C) USC-CSSE 20 1/11/2010 © USC Center for Software Engineering
20
CS 577b Software Engineering II -- Introduction
18 September 2018 Grading Philosophy Hard I like a large distribution Better feedback for you Adjusted when assigning final grades (C) USC-CSSE 21 1/11/2010 © USC Center for Software Engineering
21
CS 577b Software Engineering II -- Introduction
18 September 2018 Outline Course Challenges Staff & Grading Course & Project Schedule Project & Team Risk Management Project Planning Other Course Preparation Academic Integrity Reminder Forms & Logistics Comment Learning (C) USC-CSSE 22 1/11/2010 © USC Center for Software Engineering
22
CS 577b Software Engineering II -- Introduction
18 September 2018 Course Schedule See Some Friday classes Student Presentations Staff will propose topics/guidelines By late Feb Students must select topic and get approval By early March Each student most cover a different aspect of a topic (C) USC-CSSE 23 1/11/2010 © USC Center for Software Engineering
23
CS 577b Software Engineering II -- Introduction
18 September 2018 Project Schedule Milestone Date Re-form teams* Jan 22 - Jan 29 Draft Re-baselined LCA on Web Feb 12 ARB for Re-baselined LCA Feb 15-16 Core-Capability Drive-Through Mar 8-26** Draft Transition Package on Web Apr 13 Transition-Readiness Reviews Apr 14-15 Product Deliveries April 19 Individual Critiques, Client Evaluations May 7 * “Mixer” at end of Wednesday’s class ** Subject to client & 577 staff availability (C) USC-CSSE 24 1/11/2010 © USC Center for Software Engineering
24
Main Challenge for Clients
CS 577b Software Engineering II -- Introduction 18 September 2018 Main Challenge for Clients Products are delivered on or before April 19th Finals: May 7-14 Students disappeared by May 14, or earlier (C) USC-CSSE 25 1/11/2010 © USC Center for Software Engineering
25
CS 577b Software Engineering II -- Introduction
18 September 2018 Selected Projects 577a projects selected for continuation should be finalized Wednesday! Students not on selected project need to join one! “New” students and DR/Interns need to fill out a “Student General Information Questionnaire”, and all other forms at the “Forms” page: “New” means not having taken CS577a in Fall 2006! (C) USC-CSSE 26 1/11/2010 © USC Center for Software Engineering
26
CS 577b Software Engineering II -- Introduction
18 September 2018 Office Hours Winsor 2:00 to 3:00 on MW Or by appointment Dr. Boehm By appointment Pongtip M, W 5:00 - 6:00 PM Qi Li TBD (C) USC-CSSE 27 1/11/2010 © USC Center for Software Engineering
27
CS 577b Software Engineering II -- Introduction
18 September 2018 Outline Course Challenges Staff & Grading Course & Project Schedule Project & Team Risk Management Project Planning Other Course Preparation Academic Integrity Reminder Forms & Logistics Comment Learning (C) USC-CSSE 28 1/11/2010 © USC Center for Software Engineering
28
CS 577b Software Engineering II -- Introduction
18 September 2018 Top 10 Risk Items: 1989 & 1995 1989 1. Personnel shortfalls 2. Schedules & budgets 3. Wrong software functions 4. Wrong user interface 5. Gold plating 6. Requirements changes 7. Externally-furnished components 8. Externally-performed tasks 9. Real-time performance 10. Straining computer science 1995 1. Personnel shortfalls 2. Schedules, budgets, process 3. COTS, external components 4. Requirements mismatch 5. User interface mismatch 6. Architecture, performance, quality 7. Requirements changes 8. Legacy software 9. Externally-performed tasks 10. Straining computer science (C) USC-CSSE 29 1/11/2010 © USC Center for Software Engineering
29
Top 10 System Risk Items: 1995 and 2007
1. Personnel shortfalls 2. Schedules, budgets, process 3. COTS, external components 4. Requirements mismatch 5. User interface mismatch 6. Architecture, performance, quality 7. Requirements changes 8. Legacy software 9. Externally-performed tasks 10. Straining computer science 2007 1 Architecture complexity; quality tradeoffs 2 Requirements volatility; rapid change 3 Acquisition and contracting process mismatches 4 Customer-developer-user team cohesion 5 Budget and schedule constraints 6 Requirements mismatch 7 Personnel shortfalls 8 COTS and other independently evolving systems 9 Migration complexity 10 User interface mismatch (C) USC-CSSE 1/11/2010
30
CS 577b Software Engineering II -- Introduction
18 September 2018 Primary CS577b Risk Items Personnel Commitment Compatibility Ease of communication Skills (management, web/java, Perl, CGI, data compression, …) Schedule Project scope IOC content Critical-path items (COTS, platforms, reviews, …) COTS See next chart Multiple COTS (C) USC-CSSE 31 1/11/2010 © USC Center for Software Engineering
31
Primary CS577b Risk Items (cont.)
CS 577b Software Engineering II -- Introduction 18 September 2018 Primary CS577b Risk Items (cont.) Requirements & UI Not matching client user needs Performance Memory, Disk Space usage (#Bits) Bus, Network, CPU utilization & bandwidth (#Bits/sec) Overhead sources Reliability of deliver Safe Secure External tasks Client/operator preparation Commitment for transition (C) USC-CSSE 32 1/11/2010 © USC Center for Software Engineering
32
COTS & External Component Risks
CS 577b Software Engineering II -- Introduction 18 September 2018 COTS & External Component Risks COTS risks Immaturity Inexperience Incompatibility with Application Platform Other COTS Controllability (C) USC-CSSE 33 1/11/2010 © USC Center for Software Engineering
33
COTS & External Component Risks (cont.)
CS 577b Software Engineering II -- Introduction 18 September 2018 COTS & External Component Risks (cont.) Non-commercial off-the shelf components Sources Reuse libraries Government (GOTS) Universities (ROTS) Issues Qualification testing Benchmarking Inspections Reference checking Compatibility analysis Both Safety Dependability Security (C) USC-CSSE 34 1/11/2010 © USC Center for Software Engineering
34
CS 577b Software Engineering II -- Introduction
18 September 2018 Outline Course Challenges Staff & Grading Course & Project Schedule Project & Team Risk Management Project Planning Other Course Preparation Academic Integrity Reminder Forms & Logistics Comment Learning (C) USC-CSSE 35 1/11/2010 © USC Center for Software Engineering
35
Heads-Up: CS 577b Planning Common LCP Problems @ RDCR
CS 577b Software Engineering II -- Introduction 18 September 2018 Heads-Up: CS 577b Planning Common LCP RDCR RDCR operational prototype, business-case iterations: What have you done since last semester? Too many internal-increment deliverables Lack of core-capability specifics End-to-end demonstrable capability Lack of specific team member responsibilities By artifact & increment; but flexible Transition preparation Transition-leader’s success plan (teammates, clients) (C) USC-CSSE 36 1/11/2010 © USC Center for Software Engineering
36
CS 577b Software Engineering II -- Introduction
18 September 2018 Test Preparation Test-leader’s success plan Test data, drivers, tools, increments Problem tracking & closeout Bugzilla tool Testing as requirements evaluation e.g. testing full portability, 24x7, ease of use OK to iterate requirements Acceptance test cases developed “independently” Verification cross-reference index Which requirements verified by test, analysis, “inspection” (C) USC-CSSE 37 1/11/2010 © USC Center for Software Engineering
37
CS 577b Software Engineering II -- Introduction
18 September 2018 Critical Success Factors for Adoption - I (C) USC-CSSE 38 1/11/2010 © USC Center for Software Engineering
38
Critical Success Factors for Adoption - II
CS 577b Software Engineering II -- Introduction 18 September 2018 Critical Success Factors for Adoption - II (C) USC-CSSE 39 1/11/2010 © USC Center for Software Engineering
39
CS 577b Software Engineering II -- Introduction
18 September 2018 Outline Course Challenges Staff & Grading Course & Project Schedule Project & Team Risk Management Project Planning Other Course Preparation Academic Integrity Reminder Forms & Logistics Comment Learning (C) USC-CSSE 40 1/11/2010 © USC Center for Software Engineering
40
CS577 Academic Integrity Guidelines
CS 577b Software Engineering II -- Introduction 18 September 2018 CS577 Academic Integrity Guidelines Individual Assignments OK to discuss Not OK to copy each others’ solution elements Not OK to copy external sources without attribution Within “Fair Use Guidelines” Team Assignments OK to use other teams’ patterns e.g. MS Project tasks Must give credit!!! Not OK to copy other teams’ complete/partial solutions e.g. MS course & project schedules (C) USC-CSSE 41 1/11/2010 © USC Center for Software Engineering
41
CS 577b Software Engineering II -- Introduction
18 September 2018 Outline Course Challenges Staff & Grading Course & Project Schedule Project & Team Risk Management Project Planning Other Course Preparation Academic Integrity Reminder Forms & Logistics Comment Learning (C) USC-CSSE 42 1/11/2010 © USC Center for Software Engineering
42
CS 577b Software Engineering II -- Introduction
18 September 2018 Learning We each have a role Lou Holtz said “Your talent determines what you can do. "Your motivation determines how much you are willing to do. "Your attitude determines how well you do it.” Plutarch said “A mind is not a vessel to fill; but a fire to light.” (C) USC-CSSE 43 1/11/2010 © USC Center for Software Engineering
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.