University of Southern California Center for Systems and Software Engineering Rapid Fielding Projects in CSCI 577 Supannika Koolmanojwong Barry Boehm CS.

Slides:



Advertisements
Similar presentations
Incremental Commitment Spiral Model, Expedited Engineering, and Kanban Jo Ann Lane and Alexey Tregubov USC CSSE Rich Turner Stevens University.
Advertisements

Systems Analysis and Design in a Changing World
CS487 Software Engineering Omar Aldawud
Software Reuse SEII-Lecture 28
University of Southern California Center for Systems and Software Engineering Process Decision Frameworks for DoD and e-Services Projects ASRR 2011 Supannika.
University of Southern California Center for Systems and Software Engineering A Look at Software Engineering Risks in a Team Project Course Sue Koolmanojwong.
Network Design and Implementation
Acquiring Information Systems and Applications
Acquiring Information Systems and Applications
Acquiring Information Systems and Applications
University of Southern California Center for Systems and Software Engineering Incremental Commitment Model (ICM) Process Decision Table Barry Boehm and.
CHAPTER 10 & 13 IS within the Organization & Acquiring IS and Applications.
University of Southern California Center for Systems and Software Engineering A Process Decision Table for Integrated Systems and Software Engineering.
University of Southern California Center for Systems and Software Engineering USC CSSE Research Overview Barry Boehm Sue Koolmanojwong Jo Ann Lane Nupul.
University of Southern California Center for Systems and Software Engineering NDI and Services-Based Software Development Process Supannika Koolmanojwong.
Software Factory Assembling Applications with Models, Patterns, Frameworks and Tools Anna Liu Senior Architect Advisor Microsoft Australia.
Unit Five – Transforming Organizations
1 IS371 WEEK 8 Last and Final Assignment Application Development Alternatives to Application Development Instructor Online Evaluations.
Live for today as if it is your last day but plan for tomorrow as if it will last forever!
8 Systems Analysis and Design in a Changing World, Fifth Edition.
USC CSSE Top 10 Risk Items: People’s Choice Awards Barry Boehm, Jesal Bhuta USC Center for Systems & Software Engineering
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
University of Southern California Center for Software Engineering C S E USC Agile and Plan-Driven Methods Barry Boehm, USC USC-CSE Affiliates’ Workshop.
Acquiring Information Systems and Applications
Acquiring Information Systems and Applications
INTRODUCTION TO CLOUD COMPUTING Cs 595 Lecture 5 2/11/2015.
Security Difficulties of E-Learning in Cloud Computing
Project Proposal: Academic Job Market and Application Tracker Website Project designed by: Cengiz Gunay Client: Cengiz Gunay Audience: PhD candidates and.
Effectively Explaining the Cloud to Your Colleagues.
University of Southern California Center for Systems and Software Engineering Rapid-Fielding Software-System Development Supannika Koolmanojwong
TEAM’S STRONG/WEAK POINTS David Wiggins – Remote Student 1.
Operational Concept Description
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
University of Southern California Center for Systems and Software Engineering Rapid Fielding Projects in CSCI 577 Supannika Koolmanojwong 09/03/10.
University of Southern California Center for Systems and Software Engineering Incremental Commitment Spiral Model (ICSM) for CS 577 Barry Boehm, Supannika.
Acquiring Information Systems and Applications
University of Southern California Center for Systems and Software Engineering Project Artifacts in each process model Supannika Koolmanojwong October 09,
Acquiring Information Systems and Applications
University of Southern California Center for Systems and Software Engineering Retrospective Analysis Supannika Koolmanojwong October 21,
University of Southern California Center for Systems and Software Engineering NDI & NCS in CSCI 577 Extended from Jesal Bhuta’s presentation for CSCI577a.
1 10/14/2015ã 2007, Spencer Rugaber The Waterfall Process Software plans and requirements Validation System feasibility Validation Product design Verification.
Acquiring Information Systems and Applications
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
CHAPTER 13 Acquiring Information Systems and Applications.
University of Southern California Center for Systems and Software Engineering Barry Boehm, USC CS 510 Software Planning Guidelines.
University of Southern California Center for Systems and Software Engineering Life Cycle Plan (LCP) Barry Boehm CS577a Fall /20/
University of Southern California Center for Systems and Software Engineering Common mistakes in Core FC Package.
University of Southern California Center for Systems and Software Engineering 577 process CSCI 577a Software Engineering I Supannika Koolmanojwong Mobasser.
University of Southern California Center for Systems and Software Engineering Life Cycle Plan (LCP) Barry Boehm CS577a Fall
Chapter 12 The Network Development Life Cycle
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
University of Southern California Center for Systems and Software Engineering Enablers and Inhibitors for Expediting Systems and Software Engineering &
University of Southern California Center for Systems and Software Engineering Rapid Fielding Projects in CSCI 577 Supannika Koolmanojwong.
Chapter 8: Maintenance and Software Evolution Ronald J. Leach Copyright Ronald J. Leach, 1997, 2009, 2014,
University of Southern California Center for Systems and Software Engineering RDCR ARB CS 577b Software Engineering II Supannika Koolmanojwong.
University of Southern California Center for Systems and Software Engineering Barry Boehm, USC CS 510 Fall 2010 Software Planning Guidelines.
1 Agile COCOMO II: A Tool for Software Cost Estimating by Analogy Cyrus Fakharzadeh Barry Boehm Gunjan Sharman SCEA 2002 Presentation University of Southern.
Systems Analysis and Design in a Changing World, Fifth Edition
Intelligent Systems Development
USC e-Services Software Engineering Projects
Systems Analysis – ITEC 3155 Evaluating Alternatives for Requirements, Environment, and Implementation.
Rapid Fielding Projects in CSCI 577
577 Process Patterns & Quality Management
Using the Incremental Commitment Model (ICM) Process Decision Table
Using the Incremental Commitment Model (ICM) Process Decision Table
OCD Risk Management CS 577a, Fall 2012 ©USC-CSSE.
CS 577b Software Engineering II -- Introduction
Comparison between each special case
MANAGING THE DEVELOPMENT AND PURCHASE OF INFORMATION SYSTEMS
Presentation transcript:

University of Southern California Center for Systems and Software Engineering Rapid Fielding Projects in CSCI 577 Supannika Koolmanojwong Barry Boehm CS 577a, Fall 2015

University of Southern California Center for Systems and Software Engineering Outline Phases and Milestones in ICSM for CSCI577 Tasks and activities in each phase Process patterns in CSCI577 projects –Architected Agile –Use Single Non-Developmental Item (NDI) –NDI-Intensive –Services-Intensive –New Candidate: Resilient Agile Process Decision Drivers Resilient Agile Summary: Doug CSSE2

University of Southern California Center for Systems and Software Engineering ICSM in CSSE3

University of Southern California Center for Systems and Software CSSE4

University of Southern California Center for Systems and Software Engineering Activities in each phase Take a look at details in ICSM-EPG CSSE5

University of Southern California Center for Systems and Software Engineering Outline Phases and Milestones in ICSM for CSCI577 Tasks and activities in each phase Process patterns in CSCI577 projects –Architected Agile –Use Single Non-Developmental Item (NDI) –NDI-Intensive –Services-Intensive –New Candidate: Resilient Agile Process Decision Drivers Resilient Agile Summary: Doug CSSE6

University of Southern California Center for Systems and Software Engineering 4 focused ICSM Common Patterns Process Patterns Use Single Non-Developmental Item (NDI) Agile Architected Agile Formal Methods HW with embedded SW component Indivisible IOC NDI- intensive Hybrid agile/ plan-driven system Multi-owner system of systems Family of systems Brownfield Services- Intensive 7 Market –Driven, Services- Driven, CSSE

University of Southern California Center for Systems and Software Engineering ICSM Process Patterns Process PatternExample 8 Architected AgileBusiness data processing Use Single NDISmall website NDI- intensiveSupply chain management Services- IntensiveCommunity CSSE OR AND/OR+ at most 70% CUSTOM CODE AND/OR + at least 30% at most 70% CUSTOM CODE at least 30%

University of Southern California Center for Systems and Software Engineering Example Architected Agile CSSE9

University of Southern California Center for Systems and Software Engineering Non-Developmental Item (NDI) An item that is previously developed and available to use. It includes commercial-off-the shelf, open source product, reuse library and customer- furnished package. [Smith 2004] [FAR] 10/21/ Non-Developmental Item (NDI) Platform-based NDI Application-based NDI

University of Southern California Center for Systems and Software Engineering Net-Centric Services (NCS) An online service available to be accessed over the Internet. Net Centric Services is known as web service, web application, online application, cloud computing, and software-as-a-service. 10/21/201011

University of Southern California Center for Systems and Software Engineering Definitions of NDI / NCS Non-Developmental Item –an item that is previously developed and available to use. –2 kinds of NDI Application NDI : WordPress, Wiki System NDI: MySQL, Apache –Related terms COTS, GOTS, ROTS, Reuse Code, Reuse library, Customer-furnished package NCS or Net-Centric Services is an online service available to be accessed over the Internet such as Google services, Yahoo services, Google map, Twitter, Ning.com, Gmail, Facebook, Amazon payment, online currency converter and online dictionary. –Net-Centric Services is known as web service, web application, online application, cloud computing, and CSSE12

University of Southern California Center for Systems and Software Engineering Common NDIs in CSCI577 Application-NDI –MS office, WordPerfect –OCR software –Business Works –Coldfusion, Dreamweaver System-NDI –Language: PHP, C++, Java, –Database: MySQL –Server: Apache –Others: Java CSSE13

University of Southern California Center for Systems and Software Engineering Net-Centric Services (NCS) an online service available to be accessed over the internet Net-Centric Services includes –web service, –web application, –online application, and CSSE14

University of Southern California Center for Systems and Software Engineering Common NCSs in CSCI577 Web services –Google Services, Yahoo Services Content Management System –Drupal, Joomla e-learning system –Moodle, ILIAS, KEWL, Sakai, Dokeos Payment Services –Amazon payment, Paypal, Google Checkout Calendar –Google Calendar, liteCalendar, Vcalendar Organization Support: Personnel, Assets, Activities CSSE15

University of Southern California Center for Systems and Software Engineering Why use NDI/NCS? Change in software development practice over the past 20 years Build system with pre-existing software to reduce development and maintenance costs Involve less development time and lower development cost by taking advantage of existing, market proven, vendor supported products. Could develop a better version yourself or outsource but generally incur more expense and take longer to begin to capitalize on its benefits Trade-off Source code is not available to developers Evolution is not under control of developers Incompatibility, high CSSE16

University of Southern California Center for Systems and Software Engineering When is NDI/NCS right for you (1/2) When they lie at the intersection of the three determinants of feasibility, and do so demonstrably better than could original code: – technical, –economic, –strategic CSSE17

University of Southern California Center for Systems and Software Engineering When is NDI/NCS right for you (2/2) Technical constraint –Ability supply the desired functionality at the required level of reliability Economic constraint –Ability to be incorporated and maintained in the new system within the available budget and schedule Strategic constraint –Ability to meet needs of the system operating environment--including technical, political, and legal considerations--now, and as environment is expected to evolve in the CSSE18

University of Southern California Center for Systems and Software Engineering NDI/NCS based system development process In OCD Use Architected Agile Process Emphasize on Application NDIs, not System NDIs In FED Use NDI, or Net-Centric Services Process Use NDI-intensive or Net-Centric Services Processes CSSE

University of Southern California Center for Systems and Software Engineering Outline Phases and Milestones in ICSM for CSCI577 Tasks and activities in each phase Process patterns in CSCI577 projects –Architected Agile –Use Single Non-Developmental Item (NDI) –NDI-Intensive –Services-Intensive –New Candidate: Resilient Agile Process Decision Drivers Resilient Agile Summary: Doug CSSE20

University of Southern California Center for Systems and Software Engineering Questions Importance Architect ed Agile Use Single NDI NDI- Intensive Services- Intensive Alternatives How likely that more than 30% of features are available in NDI/NCS ? 0 – 12 – 33 – 4 How likely that there is a single NDI/NCS that satisfies a complete solution ? 0 – 142 – 3 How unique/ inflexible business process your project is? 2 – 40 – 1 Life Cycle How likely that the system needs control over upgrade / maintenance ? 2 – 40 – 1 How fast do you need your project to be up and running or go to market? 0 – – 3 Architecture How critical on compatibility your project is? 2 – 43 – 41 – 32 – 4 How likely that the system will be processed offline ? 0 – 4 0 How likely that the system will need high level of services / performance ? 0 – 40 – 3 0 – 2 How likely that the system will need high security ? 2 – – 40 – 2 How likely that the system will require asynchronous communication? 0 – 4 0 How likely that the system will be accessed from anywhere ? 0 – 4 4 Resources How critical on mass schedule constraints for your project? 0 – 13 – 42 – 32 – 4 How likely that your organization will be lack of personnel capability ? 0 – 23 – 42 – 42 – 3 How likely that your project requires little upfront costs (hardware /software)? 0 – 22 – 4 3 – 4 How likely that your project requires low total cost of ownership? 0 – 10 – 3 2 – 4 How likely that your system will be operable on n ot-so-powerful local machines ?1 – 41 – 30 – 43 – 4 Note: Development team discusses with stakeholders on important drivers and project status Decision Criteria Rating Scale; 0:Very Low; 1:Low; 2: Medium; 3:High; 4:Very High Importance Rating Scale: 1:Low; 2: Medium; 3:High Process Pattern Decision Driver 2110/21/2010 Online tool is available at

University of Southern California Center for Systems and Software Engineering An Example of a team that follows the Architected Agile Process Pattern : Shields For Family Project – Develop various reports for LA city-based Family Housing Project 10/21/ Questions ImportanceProject Status Alternatives How likely that more than 30% of features are available in NDI/NCS ? How likely that there is a single NDI/NCS that satisfies a complete solution ? How unique/ inflexible business process your project is? Life Cycle How likely that the system needs control over upgrade / maintenance ? How fast do you need your project to be up and running or go to market? Architecture How critical on compatibility your project is? How likely that the system will be processed offline ? How likely that the system will need high level of services / performance ? How likely that the system will need high security ? How likely that the system will require asynchronous communication? How likely that the system will be accessed from anywhere ? Resources How critical on mass schedule constraints for your project? How likely that your organization will be lack of personnel capability ? How likely that your project requires little upfront costs (hardware /software)? How likely that your project requires low total cost of ownership? How likely that your system will be operable on n ot-so-powerful local machines ? Project Status Alternatives Life Cycle 4 1 Architecture Resources Importance Alternatives Life Cycle 3 1 Architecture Resources Note: Development team discusses with stakeholders on important drivers and project status Decision Criteria Rating Scale; 0:Very Low; 1:Low; 2: Medium; 3:High; 4:Very High Importance Rating Scale: 1:Low; 2: Medium; 3:High

University of Southern California Center for Systems and Software Engineering An Example of a team that follows the Architected Agile Process Pattern 10/21/ Architected Agile High importance level Low importance level Use single NDI Project Status NDI-Intensive Services -Intensive Non-conforming point

University of Southern California Center for Systems and Software Engineering Outline Phases and Milestones in ICSM for CSCI577 Tasks and activities in each phase Process patterns in CSCI577 projects –Architected Agile –Use Single Non-Developmental Item (NDI) –NDI-Intensive –Services-Intensive –New Candidate: Resilient Agile Process Decision Drivers Resilient Agile Summary: Doug CSSE24