Educating Software Engineers to Become Systems Engineers

Size: px
Start display at page:

Download "Educating Software Engineers to Become Systems Engineers"

Transcription

1 Educating Software Engineers to Become Systems Engineers Supannika Koolmanojwong and Barry Boehm Center for Systems and Software Engineering (CSSE) University of Southern California (USC) Los Angeles, CA, , USA {koolmano, Abstract Our two-semester USC core software engineering project course CS577ab devotes its first semester to having students learn and do systems engineering on a real-client project. This requires a good deal of just-in-time lectures, tutorials, and homework to prepare the students, and feedback in terms of mentoring, artifact grading, and live milestone reviews to help them succeed. This paper provides some initial motivation and context; discusses our approach to introduce systems engineering into software engineering relative to that in the GSwE 2009 curriculum guidelines, SEBOK draft 2010, and SWEBOK 2004; describes the course practices during the systems engineering and software engineering semesters; and summarizes the project results and conclusions. 1. Introduction The increasing diversity and interdisciplinarity of software development raises an awareness that software engineers need to deal with more than just software, they need to participate in engineering the system, too. In the past, a software engineer could just sit on the side in an architecture-specification meeting and wait for a hardware engineer or a systems engineer to give them precise specifications to code up. This frequently leads to awkward software constraints, and major risks or disasters in software system development [2]. Recent process guidelines and standards such as the Integrated Capability Maturity Model (CMMI) [5], ISO/IEC for software engineering [11] and ISO/IEC for systems engineering [12] emphasize the need to integrate systems and software engineering processes. Various curriculum guidelines, such as SWEBoK 2004 [18], GSwE 2009 [9], and SEBoK draft 2010 [16], show increasing integration between systems and software engineering. In addition, software engineering and systems engineering have many commonalities such as requirements development, design, integration, verification and validation, testing, and maintenance. Hence, software engineers need to play a stronger role in systems engineering. Thus, it is important to inject the concept of systems engineering into software engineering classes. Our two-semester USC core software engineering project course supports this concept by providing lectures, tutorials, assignments, project activities, tools, and feedback from course staff to equip the software engineering students with systems engineering knowledge and experience. Additionally, we use the Incremental Commitment Spiral Model, which is applicable to both systems and software engineering, as the process model. This paper elaborates on how the systems engineering concepts are embedded and embraced in the software engineering class. Section 2 describes the nature of the software engineering class and the system and software process model. Section 3 reports the similarities between systems engineering concepts and the class materials. Section 4 describes how the course staff helps the students to come up the systems engineering learning curve. Section 5 shows feedback from the students and the clients. Section 6 presents the resulting conclusions.

2 2. Background and Related Work 2.1. The MSCS-SE Core Software Engineering Project Course CSCI577ab [6] is the core software engineering project course within the University of Southern California (USC) s Master of Computer Science with Specialization in Software Engineering (MSCS-SE). The main objective of the course is to prepare students for software leadership careers through the 2040 s. Software Engineering I or CSCI577a in the Fall semester focuses on software-intensive systems engineering, including system operational concept formulation, requirements negotiation and definition, prototyping, COTS and services evaluation and selection, system and software architecture definition, life cycle plans and processes, risk analysis, feasibility analysis, and verification and validation. Software Engineering II or CSCI577b in the Spring semester focuses on software product creation, integration, test, documentation, transition, and maintenance with an emphasis on quality software production. Figure 1. Overview of Software Engineering Project Class Milestones. As shown in Figure 1, before the fall semester starts, the course staff reviews the project proposals submitted by potential clients. If the project will not fit into a 2- semester software engineering class, the proposal will be dropped. This is done by the first milestone, the Exploration Commitment Review (ECR). The second milestone is the Valuation Commitment Review (VCR), which will be conducted after the student teams analyze the clients current business processes and explore alternatives. The third milestone is the Foundations Commitment Review (FCR), which evaluates whether the project is feasible and ready to define various project foundations such as the system and software architecture and the project plans. The Development Commitment Review (DCR) is the fourth milestone which evaluates whether the team has built the right foundations, including the detailed architecture and plans for the Development phase. To accommodate the possible client and team changes over the semester break, the fifth milestone, Rebaselined Development Commitment Review (RDCR) is held to confirm that all the success critical stakeholders are committed to the foundations and that the team is ready to implement the product based on the agreed foundations. A Core Capability Drivethrough (CCD) is held after the first development iteration in order to check the usability and completeness of the core functionalities. The Transition Readiness Review (TRR) evaluates whether the team is ready to perform system and software transition. The Operations Commitment Review (OCR) evaluates whether the clients will be able to successfully operate and maintain the system and software.

3 2.2. The Incremental Commitment Spiral Model The Incremental Commitment Spiral Model (ICSM) [4][14] is a refined version of the original spiral process model [1]. ICSM covers the full system development life cycle consisting of five incrementally-defined life cycle phases (Exploration, Valuation, Foundations, Development, and Operations phases). The ICSM, as shown in Figure 2, is not a single one-size-fits-all model but a risk-driven framework for tailoring a process that best fits a project s situation by using the risk-based decision options at the end of each spiral. The ICSM integrally includes software development, and it is currently used as the process model for system development in our software engineering class. Figure 2. Overview of the Incremental Commitment Spiral Model The four underlying principles of the ICSM are: 1) Stakeholder value-based system definition and evolution The project should be developed based on satisfying the value propositions of all successcritical stakeholders. Otherwise, the stakeholders will frequently not commit to their project roles, which will lead to project rejection or major rework. 2) Incremental commitment and accountability Stakeholders do not commit to a single pre-defined set of requirements and resource contributions, but commit incrementally as the nature of the system is better understood. Otherwise, the project often becomes locked into out-of-date concepts of what the system should provide its stakeholders, leading to project rejection or major rework. 3) Concurrent system and software definition and development Contrary to sequential development, the concurrent development of requirements, solutions, hardware, software, and human factors allows the project to move faster, avoid premature commitments, and be more flexible to yield the best results. 4) Evidence and risk-based decision making Making the evidence of project feasibility a first-class deliverable provides a way to synchronize and stabilize the concurrently-defined system elements. Shortfalls in evidence are uncertainties that identify the level of risk of proceeding without stronger evidence of project feasibility.

4 Table 1. Required skills of a systems engineer Key skills of a systems engineer [9] Identifying the success-critical stakeholders Determining key stakeholders value propositions Helping stakeholders collaborate in negotiating a mutually satisfactory set of specifications Adapting the plans and specification in mutually satisfactory ways to respond to changes Managed Problem Solving Engineering Problem Solving Strategic Problem Solving Characteristics of a successful systems engineer [19] Understanding the system from multiple perspectives Understanding the system from multiple perspectives Understanding a new system/concept during its presentation Understanding the system from multiple perspectives Understanding the implications of proposed changes Understanding systems synergy Understanding limits to growth Understanding the systems without getting stuck on the details Understanding analogies and parallelism between systems Understanding the whole system and seeing the big picture Understanding interconnections; closed-loop thinking Thinking creatively Acquiring systems engineering skills through ICSM Practices Students identify success critical stakeholders such as end users, maintainer, and administrator by using CRACK model (Collaborative, Representative, Authorized, Committed, and Knowledgeable ) WinWin negotiation is the key activity for brainstorming stakeholders win conditions and constraints. Added information is drawn from other client interaction activities such as team meetings, prototyping, business process identification, business case analyses, and acceptance test planning Win conditions are used as a starting point in defining a mutually satisfactory set. Moreover, risk analysis, architecture review board, prototypes, life cycle plan, feasibility evidence development are all key ingredients for software engineering teams to exercise this skill. Weekly project plan updates, change and configuration management, verification and validation, and peer review are examples of activities that allow student teams to plan and re-plan according to the project status This skill can be acquired through various project activities such as risk identification and management, quality management, configuration management, team management, project planning and tracking Student teams are required to apply their engineering knowledge to develop a product that will satisfy the clients requirements. Various activities allow student teams to exercise this skill such as operational concept engineering, requirements engineering, system and software architecting, process engineering, and test engineering To tackle the problems, student teams need to set up a strategy to plan, implement, monitor, and solve problems during their project development. This skill can be achieved through win-win negotiation, analysis of alternatives, business case analysis, life cycle planning, and solution development

5 3. Systems Engineering Coverage in the Software Engineering Class 3.1. Systems Engineering Skills and Problem Solving Approach To prepare students for the systems engineering tasks, students need to learn and acquire various skills through practice. Table 1 provides information about ICSM activities that relate to the required systems engineering skills based on GSwE 2009 [9] and characteristics of a successful systems engineer [19] Systems Engineering Roles By taking roles, students obtain first hand experience in learning and internalizing their systems engineering responsibilities and obligations. Table 2 compares twelve systems engineering roles that are suggested by Sheard [17] to the roles in our software engineering class. Please note that, the twelfth role, a classified ads systems engineer, refers to job description of a systems engineer posted in the classified ads, which could represent any tasks or unrelated tasks that are not in the first eleven roles. Table 2 shows that systems engineering roles and software engineering are fairly compatible. However, there are other roles that are not mentioned in [17] system engineering but appear in software engineering projects, such as COTS or Non-Developmental Item (NDI) evaluator and acquirer. On the other hand, with the limitation of the class schedule, students may play only a partial role in coordinating the transition to client logistics/operations, maintenance, and disposal engineering. Table 2. Systems engineering roles Twelve Systems Engineering Roles [16] Requirements Owner System Designer System Analyst Validation/Verification Engineer Logistics/Operational Engineer Glue Among Subsystems Customer Interface Technical Manager Information Manager Process Engineer Coordinator Classified Ads Systems Engineer ICSM Roles Requirements Engineer / WinWin Negotiation Shaper System Architect / Prototyper / UML modeler Operational Concept Engineer/ Feasibility Analyst Verification and Validation Personnel / Tester Life Cycle Planner/ Transition Coordinator Builder Operational Concept Engineer / Project Manager Feasibility Analyst/ Life Cycle Planner / Project Manager Quality Focal Point Life Cycle Planner/ Feasibility Analyst Project Manager/ Life Cycle Planner COTS-NDI Analyst/Business Case Analyst/Trainer

6 3.3. Systems Engineering Activities, Artifacts and supporting tools As part of the system development, with various supporting tools, students have to produce various artifacts, which will allow them to have hands-on experience in developing core-essential industrial type artifacts. Table 3 shows a complete mapping between system engineering activities [8][9] and the project artifacts produced by the team and the supporting tools provided by the class. Table 3. Project artifacts and tools supporting systems engineering activities Systems Engineering Activities [8] [9] Requirements Analysis System Architecture System Implementation Integration & Verification Transition & Validation Use, Support, Disposal Project management Overall Coordination ICSM Project Artifacts Operational Concept Development System and Software Requirements Description WinWin Negotiation Report Prototype Report System and Software Architecture Description UML diagrams Prototype Functioning system Iteration Plan Iteration Assessment Report NDI-Interoperability Report Agile Review Forms Verification and Validation Report Agile Review Forms Transition Plan Training Materials Release Description User Manual Support Plan Regression Test Package Weekly Project Plan Weekly Progress Report Weekly Risk Identification and Analysis Weekly Effort Report Life Cycle Plan Feasibility Evidence Description Support Information Document Support Information Document Executive Summary ICSM Supporting Tools WikiWinwin Tool Benefit Chain Diagram IBM Rational System Architect irise Subversion Development team s choice Bugzilla istudio Bugzilla Development team s choice Microsoft Project DART Effort Reporting System COCOMO II COCOTS ICSM Electronic Process Guide

7 Class lectures, class activities and project activities also help students to prepare themselves for systems and software engineering roles. Table 4 shows that class and project activities provide full coverage on systems engineering activities. The first column represents system engineering life cycle activities. The second column represents the lectures, readings and assignments that are covered in the software engineering class. The last column represents activities that are conducted in the class. Table 4. Systems engineering topics coverage in software engineering class Systems Engineering Activities [9] Requirements Analysis System Architecture System Implementation Integration & Verification Transition & Validation Use, Support, Disposal Project Management ICSM Topics Coverage Operational Concept Development Stakeholder Benefits and Business Case Analysis Requirement Negotiation and Definition NDI and Legacy System Analysis and Tailoring Object Oriented Analysis and Design Concurrent Increment Development and V&V; Nextincrement Rebaselining Design Patterns Object Oriented Development NDI-Interoperability Traceability Matrix Software Testing Quality Management New-System Cutover, Installation, and Training Design-Code Review User Acceptance Test Quality Management System Transition and Support Evolutionary requirements Regression Test Package Cost Estimation Business Case Analysis Project Management, Team Collaboration Project Contracting ICSM Project Activities Coverage WinWin Negotiation Client/Team Meetings Prototyping Requirements Negotiation Tool Training NDI Evaluation Architecture Tool Training System and Software Architecture Workshop Concurrent Engineering Requirements-Design-Code Peer Reviews, V&V Core Capabilities Drive through Requirements-Design-Code Peer Reviews Integrated Independent Verification and Validation (IIV&V) Core Capabilities Drivethrough Integrated Independent Verification and Validation (IIV&V) Cutover and Training Core Capabilities Drivethrough Transition Coordination Cost Estimation Training Project Planning Training Mentoring sessions Architecture Review Board

8 4. Feedback from course staff Feedback enables the students to learn about their status and to improve their performance. As project progresses, student teams will receive feedback from course staff and other stakeholders in many different ways. Architecture Review Board (ARB) ARB is one of the best practices developed by AT&T, and it is a widely used practice in systems engineering [14]. There are 2 ARBs which mark as a milestone review in each semester. At each ARB, student teams show the project feasibility evidence and project progress in the form of the agreed requirements, operational concepts, prototypes, design and architecture, project plan, business case analyses, test cases, test results, risks and mitigation plan, and strengths, weaknesses of the team. Student teams will present all their work in front of the architecture review board, which are course instructors, clients, teaching assistants, graders, and related stakeholders. The two ARBs in each semester can be compared to mid-term and final examinations. The ARB will check their evidence based on the exit criteria of each milestone and provide feedback to the team for future improvement. Mentorship Mentors are PhD students who took software engineering class and perform research in software engineering. Student teams can ask for additional explanation or suggestions on problems they are facing. With peer-like suggestions, students are eager to ask more questions, hence gain more knowledge and experience in their project development. Workshops Besides lectures, there are special workshops on topics that can be learned better in an interactive session. Students are encouraged to bring in their project artifacts, current problems and concerns. Teaching staff provides feedback or extra support. Focus group Outside the class room, teaching assistants organize special sessions for students to speed up the learning curve for certain roles such as system and software architect, shaper, or feasibility analyst. The discussion in the focus group includes case studies, previous project examples, and exception case discussion. Artifact grading Teaching assistants and graders grade project artifacts and homeworks with detailed explanations. Additionally, the teaching assistants and faculty provide feedback on their core capabilities drivethrough and design-code review results. Verification and Validation Personnel Off-campus students are usually full-time employees and generally have more experience in system and software development. Offcampus students take a project V&V role by evaluating the project artifacts and filing defects and concerns in the defect tracking system, and by virtually participating in ARB reviews. Discussion Board - An online discussion board allows students to post their questions and concerns or discuss class-related topics, and get feedback from course staff, team members and classmates. ICSM EPG The Incremental Commitment Spiral Model Electronic Process Guide [10] is a major source of information for the software development guidelines. The ICSM EPG provides information about each role and responsibilities, tasks, work products, practices, checklist, and artifact templates. Student teams can check their progress or their work based on the guidelines and examples provided in the ICSM EPG. 5. Project Results and Feedback from Students and Clients One way to learn whether the project is successful is to look at the feedback from the stakeholders. Two key stakeholders of the real-client project software engineering class are the students themselves and the clients. Based on the feedback from students in their end-ofsemester reflection-in-action individual critiques, the students are largely very satisfied with

9 the knowledge and experiences they learned from the class, but also helpful in identifying future course improvements. With their role-playing responsibilities and real-life clients, they learn how to determine and handle stakeholders wants and needs from hardware, software and peopleware perspectives and translate them into a successfully operating system. Another most important stakeholder is the clients, who closely participate in the whole development life cycle. They learn to give their win conditions, to compromise to gain mutually satisfactory sets of plans and specifications, and to discover new concepts and knowledge about the system. At the end of semester, we ask the clients about their satisfaction on the team performance in various activities. The results, in Table 5, have shown that the clients are overall very satisfied with the team in all system engineering perspectives. Trends are generally upward, but scores vary from year to year based on course content evolution, client satisfaction thresholds, and student preparedness levels. Table 5. Clients' evaluation ( ) Questions Average (Scale of 5) 1. Operational concepts: How well did the team capture your ideas of what the new system should do? Stakeholders' value propositions: Did the team suggest new idea about your project? Did the team support you in any project complexity? Team responsiveness: Was the team responsive to you and to your requirements? Did the team answer any questions you might have had? How successful was the requirements negotiation between you and your team? Project satisfactory: How satisfied are you with the prototype? How well does the proposed system meet the need identified by your project? Project feasibility: Do you think this project should be carried forward for development in CS577b? Has the team adequately identified and managed the potential risks and complications associated with the project? Do you foresee difficulties in transitioning this project into the development and implementation phase? Team communication: How effective was the team in communicating with you? Do you feel you had enough meetings with them? Did the team make effective use of your time and expertise? What means did you use to communicate? Conclusions A successful software engineer should know not only how to engineer software, but also how to participate in engineering the other system elements. The increasing importance of, and rapid changes in information and software technology make systems-oriented software engineers critical to the success of most future system developments. To design a course for them, it is very important to supply the knowledge, improve their skills, and provide experiences for them to be ready to participate in industry projects on day one. Section 3.1 indicates that students can learn the key skills required for a systems engineer from assorted class activities. Section 3.2 shows the compatible mapping between systems engineering roles and software engineering course roles. Section 3.3 presents the match of

10 key systems engineering activities to project artifacts and tools usage in the software engineering class. Section 3.4 provides evidence that knowledge about systems engineering activities is considerably covered by lectures, presentations, and activities in the software engineering class. Section 4 explains how feedback from teaching staff helps students to acquire system engineering and development skills. Section 5 reports the satisfaction feedback about systems engineering elements from the students and the clients. Generally, our USC software engineering course has integrated the concept of systems engineering, both in the lectures, and in student teams project development activities, artifacts, and supporting tools. However, with the limitation of the class schedule that the semester ends slightly after the students deliver their final product, students usually do not have a chance to fully experience system operation, maintenance and disposal, which are also key activities in systems engineering although clients often hire students to help them evolve the systems that they have developed. 6. References [1] Boehm, B., "A Spiral Model of Software Development and Enhancement," IEEE Computer, Volume 21, Issue 5, May 1988, pp [2] Boehm, B., "Unifying Software Engineering and System Engineering," Computer, Volume 3, Number 3, March 2000, pp [3] Boehm, B., "The Future of Software and Systems Engineering Processes," SSCI Member Forum, 2005 [4] Boehm, B. and J.A. Lane, Using the Incremental Commitment Model to Integrate Systems Acquisition, Systems Engineering, and Software Engineering, Cross Talk, October 2007, pp.4-9 [5] Chrissis, M., B., Konrad, M., Shrum, S.: CMMI. Addison Wesley (2003) [6] CSCI577ab Software Engineering Class Website, [7] Dahmann, J., G. Rebovich Jr., J.A. Lane, "Systems Engineering for Capabilities," CrossTalk Journal, Volume 21, Number 11, pp. 4-9 [8] Dahmann, J., G. Rebovich Jr., J.A. Lane, "System Engineering Artifacts for SoS," IEEE Systems 2010 Conference [9] GSwE 2009 curriculum guidelines [10] Instructional ICSM-Software Electronic Process Guide, [11] ISO (International Standards Organization).: Standard for Information Technology Software Life Cycle Processes. ISO/IEC (1995) [12] ISO (International Standards Organization).: Systems Engineering System Life Cycle Processes. ISO/IEC (2002) [13] Klappholtz, D., J. McDonald, A. Pyster, "The Graduate Software Engineering Reference Curriculum (GSwERC)," cseet, pp , nd Conference on Software Engineering Education and Training, 2009 [14] Maranzano, J., et.al, "Architecture Reviews: Practice and Experience," IEEE Software, vol. 22, no. 2, pp , Mar./Apr [15] Pew, R. W. and A.S. Mavor, Human-System Integration in the System Development Process: A New Look. 2007, National Academy Press. [16] SEBoK 2010, Systems Engineering Body of Knowledge Version [17] Sheard, Sarah A. Twelve Systems Engineering Roles, Proceedings of INCOSE, [18] SWEBoK 2004 Guide to the Software Engineering Body of Knowledge [19] Walden, D., Systems Engineering: Fundamental Skills and Why They are Important, Seventeenth Annual Professional Development Seminar, (St. Paul, MN, USA, March, 2010), The Society of Women Engineers Minnesota (SWE MN), 2010.

A Look at Software Engineering Risks in a Team Project Course

A Look at Software Engineering Risks in a Team Project Course A Look at Software Engineering Risks in a Team Project Course Supannika Koolmanojwong and Barry Boehm Center for Systems and Software Engineering (CSSE) University of Southern California (USC) Los Angeles,

More information

USC's Two Semester Software Engineering Graduate Project Course

USC's Two Semester Software Engineering Graduate Project Course USC's Two Semester Software Engineering Graduate Project Course A. Winsor Brown Computer Science and USC Center for Systems and Software Engineering, University of Southern California Los Angeles, CA 90089-0781,

More information

A Risk-Driven Decision Table for Software Process Selection

A Risk-Driven Decision Table for Software Process Selection A Risk-Driven Decision Table for Software Process Selection Barry Boehm, Jo Ann Lane, Supannika Koolmanojwong University of Southern California ICSP 2010 Keynote Outline No one-size-fits-all software process

More information

Software Engineering Graduate Project Effort Analysis Report

Software Engineering Graduate Project Effort Analysis Report Software Engineering Graduate Project Effort Analysis Report Zhihao Chen Center for Software Engineering, University of Southern California, Los Angeles 90089 California, USA {zhihaoch}@cse.usc.edu Abstract:

More information

The Incremental Commitment Model Process Patterns for Rapid-Fielding Projects

The Incremental Commitment Model Process Patterns for Rapid-Fielding Projects The Incremental Commitment Model Process Patterns for Rapid-Fielding Projects Supannika Koolmanojwong and Barry Boehm Center of Systems and Software Engineering University of Souther California Los Angeles,

More information

Classical Software Life Cycle Models

Classical Software Life Cycle Models Classical Software Life Cycle Models SWEN 301 Trimester 1, 2015 Lecturer: Dr Hui Ma Engineering and Computer Science Lecture slides make use of material provided on the textbook's companion website Motivation

More information

Software Engineering and the Systems Approach: A Conversation with Barry Boehm

Software Engineering and the Systems Approach: A Conversation with Barry Boehm IGI PUBLISHING ITJ4305 701 E. Chocolate Avenue, Suite 200, Hershey PA 17033-1240, USA Int l Journal of Tel: Information 717/533-8845; Technologies Fax 717/533-8661; and the Systems URL-http://www.igi-global.com

More information

A Comparison between Five Models of Software Engineering

A Comparison between Five Models of Software Engineering International Journal of Research in Information Technology (IJRIT) www.ijrit.com ISSN 2001-5569 A Comparison between Five Models of Software Engineering Surbhi Gupta, Vikrant Dewan CSE, Dronacharya College

More information

Software Development Life Cycle (SDLC)

Software Development Life Cycle (SDLC) Software Development Life Cycle (SDLC) Supriyo Bhattacharjee MOF Capability Maturity Model (CMM) A bench-mark for measuring the maturity of an organization s software process CMM defines 5 levels of process

More information

SWEBOK Certification Program. Software Engineering Management

SWEBOK Certification Program. Software Engineering Management SWEBOK Certification Program Software Engineering Management Copyright Statement Copyright 2011. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted

More information

The ROI of Systems Engineering: Some Quantitative Results

The ROI of Systems Engineering: Some Quantitative Results The ROI of Systems Engineering: Some Quantitative Results Barry Boehm Center for Systems and Software Engineering University of Southern California boehm@usc.edu Ricardo Valerdi Lean Aerospace Initiative,

More information

Application of software product quality international standards through software development life cycle

Application of software product quality international standards through software development life cycle Central Page 284 of 296 Application of software product quality international standards through software development life cycle Mladen Hosni, Valentina Kirinić Faculty of Organization and Informatics University

More information

CSE 435 Software Engineering. Sept 16, 2015

CSE 435 Software Engineering. Sept 16, 2015 CSE 435 Software Engineering Sept 16, 2015 2.1 The Meaning of Process A process: a series of steps involving activities, constraints, and resources that produce an intended output of some kind A process

More information

Increasingly rapid IT changes require software development projects to continuously

Increasingly rapid IT changes require software development projects to continuously focus oppor t unis t ic s o f t w ar e s y s t ems development Balancing Opportunities and Risks in Component- Based Software Barry Boehm, University of Southern California Jesal Bhuta, Infosys The Incremental

More information

Introduction to Software Project Management. CITS3220 Software Requirements & Project Management

Introduction to Software Project Management. CITS3220 Software Requirements & Project Management Introduction to Software Project Management CITS3220 Software Requirements & Project Management "A project gets a year late one day at a time." "Anything that can be changed will be changed until there

More information

Modern Tools to Support DoD Software Intensive System of Systems Cost Estimation

Modern Tools to Support DoD Software Intensive System of Systems Cost Estimation Modern Tools to Support DoD Software Intensive System of Systems Cost Estimation Jo Ann Lane and Barry Boehm University of Southern California Center for Systems and Software Engineering Abstract Many

More information

How To Understand The Software Process

How To Understand The Software Process Ingegneria del Software Corso di Laurea in Informatica per il Management Software process model Davide Rossi Dipartimento di Informatica Università di Bologna The task of the software development team

More information

Balancing Plan-Driven and Agile Methods in Software Engineering Project Courses

Balancing Plan-Driven and Agile Methods in Software Engineering Project Courses Computer Science Education 0899-3408/02/1203-187$16.00 2002, Vol. 12, No. 3, pp. 187±195 # Swets & Zeitlinger Balancing Plan-Driven and Agile Methods in Software Engineering Project Courses Barry Boehm,

More information

Recent Results in Software Process Modeling

Recent Results in Software Process Modeling Recent Results in Software Process Modeling Ray Madachy, Ph.D. C-bridge Internet Solutions University of Southern California Center for Software Engineering rmadachy@c-bridge.com, madachy@usc.edu 1 Introduction

More information

System Development Life Cycle Guide

System Development Life Cycle Guide TEXAS DEPARTMENT OF INFORMATION RESOURCES System Development Life Cycle Guide Version 1.1 30 MAY 2008 Version History This and other Framework Extension tools are available on Framework Web site. Release

More information

Lifecycle Models: Waterfall / Spiral / EVO

Lifecycle Models: Waterfall / Spiral / EVO Lifecycle Models: Waterfall / Spiral / EVO Dror Feitelson Basic Seminar on Software Engineering Hebrew University 2011 Lifecycle The sequence of actions that must be performed in order to build a software

More information

Redesigned Framework and Approach for IT Project Management

Redesigned Framework and Approach for IT Project Management Vol. 5 No. 3, July, 2011 Redesigned Framework and Approach for IT Project Management Champa Hewagamage 1, K. P. Hewagamage 2 1 Department of Information Technology, Faculty of Management Studies and Commerce,

More information

Abstract. 1 Introduction

Abstract. 1 Introduction Amir Tomer Amir Tomer is the Director of Systems and Software Engineering Processes at RAFAEL Ltd., Israel,with whom he has been since 1982,holding a variety of systems and software engineering positions,both

More information

Software Development Process Selection Approaches

Software Development Process Selection Approaches The Journal of Applied Science Vol. 11 No. Vol. 2:45-50 11 No. 2 [2012] ISSN 1513-7805 Printed in Thailand Review Article Software Development Process Selection Approaches Phongphan Danphitsanuphan Department

More information

Keywords Software Engineering, Software cost, Universal models. Agile model, feature of software projects.

Keywords Software Engineering, Software cost, Universal models. Agile model, feature of software projects. Volume 4, Issue 6, June 2014 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Comparative Analysis

More information

CS4507 Advanced Software Engineering

CS4507 Advanced Software Engineering CS4507 Advanced Software Engineering Lectures 2 & 3: Software Development Lifecycle Models A O Riordan, 2015 Some diagrams from Sommerville, some notes from Maciaszek/Liong Lifecycle Model Software development

More information

Impact and Contributions of MBASE on Software Engineering Graduate Courses

Impact and Contributions of MBASE on Software Engineering Graduate Courses Impact and Contributions of MBASE on Software Engineering Graduate Courses Ricardo Valerdi Massachusetts Institute of Technology rvalerdi@mit.edu Ray Madachy University of Southern California madachy@usc.edu

More information

Software Process Engineering & Management Models

Software Process Engineering & Management Models Software Process Engineering & Management Models Paul Grünbacher Institute for Systems Engineering & Automation Johannes Kepler University Linz Christian Doppler Laboratory for Automated Software Engineering

More information

An Evidence-Based Systems Engineering (SE) Data Item Description

An Evidence-Based Systems Engineering (SE) Data Item Description Available online at www.sciencedirect.com Procedia Computer Science 16 (2013 ) 898 907 Conference on Syst Eds.: C.J.J. Paredis, C. Bishop, D. Bodner, Georgia Institute of Technology, Atlanta, GA, March

More information

Life Cycle Models. V. Paúl Pauca. CSC 331-631 Fall 2013. Department of Computer Science Wake Forest University. Object Oriented Software Engineering

Life Cycle Models. V. Paúl Pauca. CSC 331-631 Fall 2013. Department of Computer Science Wake Forest University. Object Oriented Software Engineering Life Cycle Models V. Paúl Pauca Department of Computer Science Wake Forest University CSC 331-631 Fall 2013 Software Life Cycle The overall framework in which software is conceived, developed, and maintained.

More information

A Rational Development Process

A Rational Development Process Paper published in: Crosstalk, 9 (7) July 1996, pp.11-16. A Rational Development Process Philippe Kruchten Vancouver, BC pbk@rational.com 1. Introduction This paper gives a high level description of the

More information

Your Software Quality is Our Business. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc.

Your Software Quality is Our Business. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc. February 2013 1 Executive Summary Adnet is pleased to provide this white paper, describing our approach to performing

More information

Value-Based Processes for COTS-Based Applications

Value-Based Processes for COTS-Based Applications focus cots integration Value-Based Processes for -Based Applications Ye Yang, Jesal Bhuta, and Barry Boehm, University of Southern California Daniel N. Port, University of Hawaii -based applications pose

More information

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: 0306211(Computer Programming 2).

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: 0306211(Computer Programming 2). 0305203 0305280 0305301 0305302 Software Engineering/Courses Description Introduction to Software Engineering Prerequisite: 0306211(Computer Programming 2). This course introduces students to the problems

More information

To introduce software process models To describe three generic process models and when they may be used

To introduce software process models To describe three generic process models and when they may be used Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software

More information

JOURNAL OF OBJECT TECHNOLOGY

JOURNAL OF OBJECT TECHNOLOGY JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2006 Vol. 5. No. 8, November-December 2006 Requirements Engineering Tasks Donald Firesmith,

More information

Process Models and Metrics

Process Models and Metrics Process Models and Metrics PROCESS MODELS AND METRICS These models and metrics capture information about the processes being performed We can model and measure the definition of the process process performers

More information

A Software Development Process for Small Projects. Melissa L. Russ and John D. McGregor, Korson-McGregor, A Software Technology Company

A Software Development Process for Small Projects. Melissa L. Russ and John D. McGregor, Korson-McGregor, A Software Technology Company focus SE in the small A Software Development Process for Small Projects The authors development process integrates portions of an iterative, incremental process model with a quality assurance process and

More information

What is a life cycle model?

What is a life cycle model? What is a life cycle model? Framework under which a software product is going to be developed. Defines the phases that the product under development will go through. Identifies activities involved in each

More information

Introduction to OpenUP (Open Unified Process)

Introduction to OpenUP (Open Unified Process) Introduction to OpenUP (Open Unified Process) Different projects have different process needs. Typical factors dictate the needs for a more formal or agile process, such as team size and location, architecture

More information

Lecture Objectives. Software Life Cycle. Software Engineering Layers. Software Process. Common Process Framework. Umbrella Activities

Lecture Objectives. Software Life Cycle. Software Engineering Layers. Software Process. Common Process Framework. Umbrella Activities Software Life Cycle Lecture Objectives What happens in the life of software To look at the life cycle of a software To understand the software process and its related elements To relate to the different

More information

Software Development Process

Software Development Process Software Development Process A software development process, also known as software development lifecycle, is a structure imposed on the development of a software product. Similar terms include software

More information

Selecting a Software Development Methodology based on. Organizational Characteristics. Adrienne Farrell

Selecting a Software Development Methodology based on. Organizational Characteristics. Adrienne Farrell ATHABASCA UNIVERSITY Selecting a Software Development Methodology based on Organizational Characteristics BY Adrienne Farrell An essay submitted in partial fulfillment Of the requirements for the degree

More information

VAIL-Plant Asset Integrity Management System. Software Development Process

VAIL-Plant Asset Integrity Management System. Software Development Process VAIL-Plant Asset Integrity Management System Software Development Process Document Number: VAIL/SDP/2008/008 Engineering For a Safer World P u b l i c Approved by : Ijaz Ul Karim Rao Revision: 0 Page:2-of-15

More information

Software Configuration Management Plan

Software Configuration Management Plan For Database Applications Document ID: Version: 2.0c Planning Installation & Acceptance Integration & Test Requirements Definition Design Development 1 / 22 Copyright 2000-2005 Digital Publications LLC.

More information

Lecture Slides for Managing and Leading Software Projects. Chapter 1: Introduction

Lecture Slides for Managing and Leading Software Projects. Chapter 1: Introduction Lecture Slides for Managing and Leading Software Projects Chapter 1: Introduction developed by Richard E. (Dick) Fairley, Ph.D. to accompany the text Managing and Leading Software Projects published by

More information

The Rap on RUP : An Introduction to the Rational Unified Process

The Rap on RUP : An Introduction to the Rational Unified Process The Rap on RUP : An Introduction to the Rational Unified Process Jeff Jacobs Jeffrey Jacobs & Associates phone: 650.571.7092 email: jeff@jeffreyjacobs.com http://www.jeffreyjacobs.com Survey Does your

More information

Enterprise Test Management Standards

Enterprise Test Management Standards Enterprise Test Management Standards Version 4.0 09/28/2012 Document Number: FSA_TOADG_STDS_TEST.TMS_001 Document Version Control This section summarizes this document revision history. Each entry includes

More information

Using Simulation to teach project management skills. Dr. Alain April, ÉTS Montréal alain.april@etsmtl.ca

Using Simulation to teach project management skills. Dr. Alain April, ÉTS Montréal alain.april@etsmtl.ca Using Simulation to teach project management skills Dr. Alain April, ÉTS Montréal alain.april@etsmtl.ca Agenda of the workshop 1 The software project management theory overview (40 minutes) 2 Why use SDLC

More information

An Assessment between Software Development Life Cycle Models of Software Engineering

An Assessment between Software Development Life Cycle Models of Software Engineering International Journal of Electronics and Computer Science Engineering 700 Available Online at www.ijecse.org ISSN- 2277-1956 An Assessment between Software Development Life Cycle Models of Software Engineering

More information

The most suitable system methodology for the proposed system is drawn out.

The most suitable system methodology for the proposed system is drawn out. 3.0 Methodology 3.1 Introduction In this chapter, five software development life cycle models are compared and discussed briefly. The most suitable system methodology for the proposed system is drawn out.

More information

Some Critical Success Factors for Industrial/Academic Collaboration in Empirical Software Engineering

Some Critical Success Factors for Industrial/Academic Collaboration in Empirical Software Engineering Some Critical Success Factors for Industrial/Academic Collaboration in Empirical Software Engineering Barry Boehm, USC (in collaboration with Vic Basili) EASE Project Workshop November 7, 2003 11/7/03

More information

In this Lecture you will Learn: Systems Development Methodologies. Why Methodology? Why Methodology?

In this Lecture you will Learn: Systems Development Methodologies. Why Methodology? Why Methodology? In this Lecture you will Learn: Systems Development Methodologies What a systems development methodology is Why methodologies are used The need for different methodologies The main features of one methodology

More information

How Silk Central brings flexibility to agile development

How Silk Central brings flexibility to agile development How Silk Central brings flexibility to agile development The name agile development is perhaps slightly misleading as it is by its very nature, a carefully structured environment of rigorous procedures.

More information

Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville

Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville Software Engineering Software Processes Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce software process models To describe three generic process models and when

More information

Information Systems Development Process (Software Development Life Cycle)

Information Systems Development Process (Software Development Life Cycle) Information Systems Development Process (Software Development Life Cycle) Phase 1 Feasibility Study Concerned with analyzing the benefits and solutions for the identified problem area Includes development

More information

A Capability Maturity Model (CMM)

A Capability Maturity Model (CMM) Software Development Life Cycle (SDLC) and Development Methods There are some enterprises in which a careful disorderliness is the true method. Herman Melville Capability Maturity Model (CMM) A Capability

More information

ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN

ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN Mohammad A. Rob, University of Houston-Clear Lake, rob@cl.uh.edu ABSTRACT In recent years, there has been a surge of

More information

Cost Estimation for Secure Software & Systems

Cost Estimation for Secure Software & Systems Background Cost Estimation for Secure Software & Systems Ed Colbert Dr. Barry Boehm Center for Systems & Software Engineering, University of Southern California, 941 W. 37th Pl., Sal 328, Los Angeles,

More information

Program Lifecycle Methodology Version 1.7

Program Lifecycle Methodology Version 1.7 Version 1.7 March 30, 2011 REVISION HISTORY VERSION NO. DATE DESCRIPTION AUTHOR 1.0 Initial Draft Hkelley 1.2 10/22/08 Updated with feedback Hkelley 1.3 1/7/2009 Copy edited Kevans 1.4 4/22/2010 Updated

More information

COMP 354 Introduction to Software Engineering

COMP 354 Introduction to Software Engineering COMP 354 Introduction to Software Engineering Greg Butler Office: EV 3.219 Computer Science and Software Engineering Concordia University, Montreal, Canada Email: gregb@cs.concordia.ca Winter 2015 Course

More information

CS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed.

CS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed. CS 389 Software Engineering Lecture 2 Chapter 2 Software Processes Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed. Topics covered Software process models Process activities Coping

More information

REVIEW ON THE EFFECTIVENESS OF AGILE UNIFIED PROCESS IN SOFTWARE DEVELOPMENT WITH VAGUE SYSTEM REQUIREMENTS

REVIEW ON THE EFFECTIVENESS OF AGILE UNIFIED PROCESS IN SOFTWARE DEVELOPMENT WITH VAGUE SYSTEM REQUIREMENTS REVIEW ON THE EFFECTIVENESS OF AGILE UNIFIED PROCESS IN SOFTWARE DEVELOPMENT WITH VAGUE SYSTEM REQUIREMENTS Lisana Universitas Surabaya (UBAYA), Raya Kalirungkut, Surabaya, Indonesia E-Mail: lisana@ubaya.ac.id

More information

The Role of Information Technology Studies in Software Product Quality Improvement

The Role of Information Technology Studies in Software Product Quality Improvement The Role of Information Technology Studies in Software Product Quality Improvement RUDITE CEVERE, Dr.sc.comp., Professor Faculty of Information Technologies SANDRA SPROGE, Dr.sc.ing., Head of Department

More information

ASSESSMENT OF SOFTWARE PROCESS MODELS

ASSESSMENT OF SOFTWARE PROCESS MODELS ASSESSMENT OF SOFTWARE PROCESS MODELS Akhilesh Research Scholar, Department of Computer Science, Manav Bharti University, Solan (H.P.) ABSTRACT The field of software engineering is related to the development

More information

Surveying and evaluating tools for managing processes for software intensive systems

Surveying and evaluating tools for managing processes for software intensive systems Master Thesis in Software Engineering 30 Credits, Advanced Level Surveying and evaluating tools for managing processes for software intensive systems Anuradha Suryadevara IDT Mälardalen University, ABB

More information

The Software Process. The Unified Process (Cont.) The Unified Process (Cont.)

The Software Process. The Unified Process (Cont.) The Unified Process (Cont.) The Software Process Xiaojun Qi 1 The Unified Process Until recently, three of the most successful object-oriented methodologies were Booch smethod Jacobson s Objectory Rumbaugh s OMT (Object Modeling

More information

Time Monitoring Tool Software Development Plan. Version <1.1>

Time Monitoring Tool Software Development Plan. Version <1.1> Time Monitoring Tool Software Development Plan Version Revision History Date Version Description Author 10/01/01 1.0 First Draft Sabrina Laflamme 12/01/01 1.1 Completion of Document John Lemon Page

More information

Software Development Methodologies

Software Development Methodologies Software Development Methodologies Lecturer: Raman Ramsin Lecture 15 Agile Methodologies: AUP 1 Agile Unified Process (AUP) Proposed by Ambler as a simplified version of the Rational Unified Process (RUP).

More information

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Year 2014, Vol. 1, issue 1, pp. 49-56 Available online at: http://journal.iecuniversity.com TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Singh RANDEEP a*, Rathee AMIT b a* Department of

More information

CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS)

CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS) CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS) Prescriptive Process Model Defines a distinct set of activities, actions, tasks, milestones, and work products that are required to engineer high quality

More information

Basic Unified Process: A Process for Small and Agile Projects

Basic Unified Process: A Process for Small and Agile Projects Basic Unified Process: A Process for Small and Agile Projects Ricardo Balduino - Rational Unified Process Content Developer, IBM Introduction Small projects have different process needs than larger projects.

More information

The Spiral development model is a risk-driven process model generator. It

The Spiral development model is a risk-driven process model generator. It 1.1 Methodology Research 1.1.1 Spiral Model The Spiral development model is a risk-driven process model generator. It is used to guide multi-stakeholder concurrent engineering of software-intensive systems.

More information

Lecture 8. Systems engineering L E C T U R E. SIMILAR process. Zuzana Bělinová. Faculty of Transportation Sciences, CTU in Prague

Lecture 8. Systems engineering L E C T U R E. SIMILAR process. Zuzana Bělinová. Faculty of Transportation Sciences, CTU in Prague L E C T U R E 8 SIMILAR process LECTURE 8 - OVERVIEW Theoretical foundations of many methodologies - Typical SE process SYSTEMS ENGINEERING BASIC FACTS Systems Engineering is responsible for creating a

More information

Managing Small Software Projects - An Integrated Guide Based on PMBOK, RUP, and CMMI

Managing Small Software Projects - An Integrated Guide Based on PMBOK, RUP, and CMMI Managing Small Software Projects - An Integrated Guide Based on PMBOK, RUP, and CMMI César Cid Contreras M.Sc. Prof. Dr. Henrik Janzen Published at the South Westphalia University of Applied Sciences,

More information

CONTENTS Preface xv 1 Introduction

CONTENTS Preface xv 1 Introduction Preface xv 1 Introduction 1 1.1 Introduction to Software Project Management, 1 1.2 Objectives of This Chapter, 2 1.3 Why Managing and Leading Software Projects Is Difficult, 2 1.3.1 Software Complexity,

More information

Systems Engineering with RUP: Process Adoption in the Aerospace/ Defense Industry

Systems Engineering with RUP: Process Adoption in the Aerospace/ Defense Industry March 2004 Rational Systems Engineering with RUP: Process Adoption in the Aerospace/ Defense Industry Why companies do it, how they do it, and what they get for their effort By Dave Brown, Karla Ducharme,

More information

SE464/CS446/ECE452 Software Life-Cycle and Process Models. Instructor: Krzysztof Czarnecki

SE464/CS446/ECE452 Software Life-Cycle and Process Models. Instructor: Krzysztof Czarnecki SE464/CS446/ECE452 Software Life-Cycle and Process Models Instructor: Krzysztof Czarnecki 1 Some of these slides are based on: Lecture slides by Ian Summerville accompanying his classic textbook software

More information

A Comparison Between Five Models Of Software Engineering

A Comparison Between Five Models Of Software Engineering 94 A Comparison Between Five Models Of Software Engineering Nabil Mohammed Ali Munassar 1 and A. Govardhan 2 1 Ph.D Student of Computer Science & Engineering Jawahrlal Nehru Technological University Kuktapally,

More information

CHAPTER. Software Process Models

CHAPTER. Software Process Models CHAPTER Software Process Models 4 Chapter Objectives Introduce the generic concept of software engineering process models. Discuss the three traditional process models. Waterfall Incremental Spiral Discuss

More information

Master of Business Administration

Master of Business Administration Four business-critical themes are central to Curry College s Master in Business Administration (MBA). The unique framework for the model of business excellence integrates: I. Leadership and Ethics II.

More information

Development models. 1 Introduction. 2 Analyzing development models. R. Kuiper and E.J. Luit

Development models. 1 Introduction. 2 Analyzing development models. R. Kuiper and E.J. Luit Development models R. Kuiper and E.J. Luit 1 Introduction We reconsider the classical development models: the Waterfall Model [Bo76], the V-Model [Ro86], the Spiral Model [Bo88], together with the further

More information

Knowledge-Based Systems Engineering Risk Assessment

Knowledge-Based Systems Engineering Risk Assessment Knowledge-Based Systems Engineering Risk Assessment Raymond Madachy, Ricardo Valerdi University of Southern California - Center for Systems and Software Engineering Massachusetts Institute of Technology

More information

PROJECT MANAGEMENT PLAN TEMPLATE < PROJECT NAME >

PROJECT MANAGEMENT PLAN TEMPLATE < PROJECT NAME > PROJECT MANAGEMENT PLAN TEMPLATE < PROJECT NAME > Date of Issue: < date > Document Revision #: < version # > Project Manager: < name > Project Management Plan < Insert Project Name > Revision History Name

More information

Many people have provided us with valuable insights on the challenge of integrating systems and software engineering, especially at the OSD/USC

Many people have provided us with valuable insights on the challenge of integrating systems and software engineering, especially at the OSD/USC Many people have provided us with valuable insights on the challenge of integrating systems and software engineering, especially at the OSD/USC workshop in October 2007. We would particularly like to thank

More information

Software Engineering. What is a system?

Software Engineering. What is a system? What is a system? Software Engineering Software Processes A purposeful collection of inter-related components working together to achieve some common objective. A system may include software, mechanical,

More information

Software Development Process and Activities. CS 490MT/5555, Fall 2015, Yongjie Zheng

Software Development Process and Activities. CS 490MT/5555, Fall 2015, Yongjie Zheng Software Development Process and Activities CS 490MT/5555, Fall 2015, Yongjie Zheng Software Process } A set of activities that leads to the production of a software product } What product we should work

More information

(Refer Slide Time: 01:52)

(Refer Slide Time: 01:52) Software Engineering Prof. N. L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture - 2 Introduction to Software Engineering Challenges, Process Models etc (Part 2) This

More information

Software Engineering

Software Engineering 1 Software Engineering Lecture 2: Software Life Cycles Stefan Hallerstede Århus School of Engineering 25 August 2011 2 Contents Naive Software Development Code & Fix Towards A Software Process Software

More information

IOM433 Creative Information Systems Analysis and Design Spring 2006 T/Th 2-3:50 HOH406 (Labs meet in HOH401)

IOM433 Creative Information Systems Analysis and Design Spring 2006 T/Th 2-3:50 HOH406 (Labs meet in HOH401) IOM433 Creative Information Systems Analysis and Design Spring 2006 T/Th 2-3:50 HOH406 (Labs meet in HOH401) Faculty: Ann Majchrzak Phone: 213-740-4023 Email: majchrza@usc.edu Office: HOH 400E Office Hours:

More information

Evaluation and Integration of Risk Management in CMMI and ISO/IEC 15504

Evaluation and Integration of Risk Management in CMMI and ISO/IEC 15504 Evaluation and Integration of Risk Management in CMMI and ISO/IEC 15504 Dipak Surie, Email : ens03dse@cs.umu.se Computing Science Department Umea University, Umea, Sweden Abstract. During software development,

More information

Syllabus. REQB Certified Professional for Requirements Engineering. Foundation Level

Syllabus. REQB Certified Professional for Requirements Engineering. Foundation Level Syllabus REQB Certified Professional for Requirements Engineering Version 2.1 2014 The copyright to this edition of the syllabus in all languages is held by the Global Association for Software Quality,

More information

2/25/2012. [5] http://www.segvn.org/forum

2/25/2012. [5] http://www.segvn.org/forum MSc. NguyễnThị Thu Trang, trangntt@soict.hut.edu.vn http://soict.hut.edu.vn/~trangntt Department of Software Engineering [1] ISO/IEC FDIS 12207, Systems and software engineering Software life cycle processes.

More information

Software Engineering and Quality Assurance Comparison of Tools and Techniques used by Universities

Software Engineering and Quality Assurance Comparison of Tools and Techniques used by Universities Proceedings of Student/Faculty Research Day, CSIS, Pace University, May 5 th, 2006 Software Engineering and Quality Assurance Comparison of Tools and Techniques used by Universities Srinivas Vittal, Raghuvarma

More information

Software Quality Development and Assurance in RUP, MSF and XP - A Comparative Study

Software Quality Development and Assurance in RUP, MSF and XP - A Comparative Study Software Quality Development and Assurance in RUP, MSF and XP - A Comparative Study Wolfgang Zuser Vienna University of Technology wolfgang.zuser@inso.tuwien.ac.at Stefan Heil Capgemini Consulting Austria

More information

Automated Software Testing Economics: A White Paper

Automated Software Testing Economics: A White Paper Automated Software Testing Economics: A White Paper Contents Automated Software Testing Economics 1 Automated Software Testing Case Study 2 Benefits of Automated Software Testing 4 About Master Key Consulting

More information

A. Waterfall Model - Requirement Analysis. System & Software Design. Implementation & Unit Testing. Integration & System Testing.

A. Waterfall Model - Requirement Analysis. System & Software Design. Implementation & Unit Testing. Integration & System Testing. Processing Models Of SDLC Mrs. Nalkar Sanjivani Baban Asst. Professor, IT/CS Dept, JVM s Mehta College,Sector 19, Airoli, Navi Mumbai-400708 Nalkar_sanjivani@yahoo.co.in Abstract This paper presents an

More information

Software Engineering. Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti

Software Engineering. Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti Software Engineering Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical

More information

Management. Project. Software. Ashfaque Ahmed. A Process-Driven Approach. CRC Press. Taylor Si Francis Group Boca Raton London New York

Management. Project. Software. Ashfaque Ahmed. A Process-Driven Approach. CRC Press. Taylor Si Francis Group Boca Raton London New York Software Project Management A Process-Driven Approach Ashfaque Ahmed CRC Press Taylor Si Francis Group Boca Raton London New York CRC Press is an imprint of the Taylor St Francis Croup, an Informa business

More information

Certified Software Quality Engineer (CSQE) Body of Knowledge

Certified Software Quality Engineer (CSQE) Body of Knowledge Certified Software Quality Engineer (CSQE) Body of Knowledge The topics in this Body of Knowledge include additional detail in the form of subtext explanations and the cognitive level at which the questions

More information