Establishing Great Software Development Process(es) for Your Organization. By Dale Mayes
|
|
|
- David Leonard
- 10 years ago
- Views:
Transcription
1 Establishing Great Software Development Process(es) for Your Organization By Dale Mayes Class: ETP-410 Embedded Systems Conference San Francisco 2005
2 Abstract: There are many correlations between good s and good development processes. For instance, although there isn t one that is applicable to every project, there are principles of good s that are. The same is true in development processes. Also, it takes multiple views to adequately describe both architectures and development processes. One of the process views we will examine is a swim lane chart. This view highlights another parallel; good s limit the number of dependencies and interaction points between modules. Your process should as well. We ll start with an introduction to the traditional waterfall, incremental and iterative development models. A quick overview of a classic formal process (DoD-2167a) will establish a common reference for what artifacts are typically created under a formal process. Other factors that add to a project s complexity, and consequently, the need for a more formal process will be ed. Introduction: On the continuum of processes where does your company fall? Unless you are developing a one-off throw away project where you are; the customer, the engineer, and the hardware engineer hopefully you are not working to the extreme left of the spectrum. No process DoD-2167a * * Even if your company does not have a formal development process for their embedded, you can probably identify with some of the following typical process steps. A customer (or marketing) has a concept for the next great thing. The rough customer concepts get refined into robust system level requirements including details on, performance and the desired user interface experience. The system requirements are supplemented with any other external obligations (industry standards, safety agencies, company policies ) The system architecture is selected addressing: Types of I/O needed Number of boards Type of processor(s) Data and program memory needs User interface The system requirements are allocated to the configuration items (hardware boards and microcontrollers) The system requirements that were allocated to are supplemented with additional interface requirements imposed by the hardware or the multiple processors. In other words, if you have two processors in your, how will the processors communicate with each other (protocol) and what data will they exchange. For each processor, a team should create the architecture, identifying the major routines and modules. The following should be estimated: Allocate the processor s total memory budgets (program and data space) across each module. Estimate timing budgets (both real time and cycles consumed) across each module. Validate I/O plans The engineer creates a detailed of the new modules and has them ed by his peers. Class # ETP-410 Page 2 of 10
3 The is then coded following the established house coding standards. The developers perform unit testing of their code. Someone other than the developers verifies the fully integrated. A final validation is performed against the initial system requirements. This typical development sequence correlates pretty well to the classic waterfall methodology. One development task flows into the next task. Traditional Waterfall, Incremental and Iterative methodologies The waterfall model breaks the development process into a series of cascading phases. The analysis and phases consist of a top-down decomposition of the system. The implementation, integration and test phases represent a bottom-up construction. The waterfall model is frequently represented in a V shape, see figure 1. Down the left side of the V is the top-down decomposition of requirements and. Where the system requirements are identified and allocated across the hardware and components or subsystems. Up the right side of the V is the bottom-up construction of the system, encompassing; build, integrate and test. A nice feature of the V representation is that the testing path flows across the V. This represents two things. First, that tests and test plans can be developed in parallel to the implementation. Second, that there are multiple levels of requirements to be tested as the subsystems get integrated. The requirements directly across the V are what should be verified as the subsystems are integrated and ultimately the full system is built. REQUIREMENTS ANALYSIS System Validation against users needs FINAL QULIFICATIONS System Verification plans AND TEST SOFTWARE REQUIREMENTS ANALYSIS Sub-system test plans AN D TEST UNIT TESTING CODING & IMPLEMENTATION Figure 1 - Waterfall or V model Class # ETP-410 Page 3 of 10
4 As the name implies, the waterfall model assumes a one-way cascading progression of tasks. In other words, it assumes all requirements can be fully defined prior to moving on to and the system can be fully ed prior to implementations. The waterfall model assumes parallel development of multiple components that make up a system. For example, if the system phase identifies three microprocessors in the system, there will actually be three simultaneous requirement analysis phases. These parallel development phases will merge back into one development path after each component completes its integration and test phase. A major criticism of the waterfall approach is that it doesn t handle downstream changes or incompleteness well. It simplifies the development process into orderly progression of fully attainable tasks. Another criticism of the waterfall method is that it requires significant development up front. Sometimes this method is referred to as BUFD (Big Up Front Design). One method to overcome this large up front development effort is to incrementally implement the system. In essence, an incremental development runs through the full waterfall cycle for as much of the system as is defined, with the idea that a future pass will add the other functionality. The glossary in Software Requirements Engineering, second edition, published by IEEE in 1997 has the following definition of Incremental development: A development strategy that involves the process of constructing a partial implementation of a total system by slowly adding increased functionality or performance. The initial system is developed through all the system lifecycle stages, from analysis to implementation. This approach reduces the cost incurred before an initial capability is achieved. It also produces an operational system more quickly and thus reduces the possibility that the user s needs will change during the development process. The iterative development models represent another metaphor for the incremental development approach, see figure 2. The iterative model is typically represented by a spiral expanding out from the origin of the x and y- axis to a 100% endpoint. The theory behind the iterative model is that 100% of the requirements cannot be known up front and it is only after an implementation that additional requirements are revealed. The four axis s in figure 2 include; requirements,, code, test. The example in figure 2 represents three iterations to realize a completed system. The first iteration includes the front end system and implementation of the low level. This first iteration of enables the hardware team to test the initial prototypes. The second iteration gets the basic functionality of the product running. The final iteration ensures all the cross-mode interaction, special features, and advanced user interface is fully functioning. Class # ETP-410 Page 4 of 10
5 SOFTWARE SW FOR INITIAL HW TEST SW FOR INITIAL PRODUCT TEST FINAL SW SOFTWARE REQUIREMENTS CODE TEST Figure 2 - Iterative Software Development Model Class # ETP-410 Page 5 of 10
6 DoD-2167a DoD-2167a, Military Standard, Defense System Software Development was released 29 February As stated in the forward of the, This standard establishes uniform requirements for development that are applicable throughout the system life cycle. The requirements of this standard provide the basis for Government insight into a contractor s development, testing, and evaluation efforts. As shown in figure 3, DoD-2167a decomposes a System into Segments, where a Segment consists of one or more Hardware Configuration Items, one or more Computer Software Configuration Items and an Interface Requirements Specification. Typically, a Hardware Configuration Item is a printed circuit board and a Computer Software Configuration Item is a microcontroller. A Computer Software Configuration Item is further decomposed into Computer Software Components (source code files) and then finally Computer Software Units (functions or modules). (SSS) SEGMENT (SSS) SEGMENT (SSS) I (SRS) IRS HWCI (PIDS) HWCI (CIDS) HWCI I (SRS) IRS HWCI CIDS - Critical Item Development Specification - Computer Software Component I - Computer Software Configuration Item - Computer Software Unit HWCI - Hardware Configuration Item IRS - Interface Requirements Specification PIDS - Prime Item Development Specification SRS - Software Requirements Specification SSS - System/Segment Specification Figure 3 - DOD-STD-2167a System Breakdown DoD-2167a applies a waterfall like development method to the decomposed system. Figure 4 shows the deliverable artifacts, s and baselines that are expected from each phase of the development. There is a separate hardware development path that splits off just after the System Design phase and merges back at System Integration and Test phase. Class # ETP-410 Page 6 of 10
7 In DoD-2167a, any artifact that drives downstream work must have a baseline established. This doesn t mean that the s can t change it just means there needs to be a formal way for notifying all interested parties that something has changed. Other factors that add to a project s complexity Generally, military standards are for very complex projects with huge development teams. DoD-2167a is too formal and rigorous for direct application to small projects. It is useful, however, to understand DoD-2167a as one of the extremes in the range of standards. It is also interesting to explore because, DoD-2167a was one of the last prescriptive development processes. In other words, subsequent process work defined objectives for the process to achieved, not an explicit process. This difference in process approaches is analogous to creating good requirements. The focus is on what needs to be done vs. how something is to be done. Embedded tends to have more constraints than other projects. Things like microcontroller selection (limited memory size, limited I/O) and hard timing deadlines lead to a need for more up-front. Figure 5 adds a couple additional dimensions to a DoD-2167a like process. It not only shows the phases and deliverables, but who is involved in creating the. It also identifies dependencies with other development items, like first hardware availability. A Swim lane diagram, also know as a Cross-Functional Flow Chart, is useful for highlighting added complexities which could lead to the need for a more formal process. For instance, more developers and more development groups (hardware,, systems) leads to more interaction between developers and consequently a more formal process. Dispersed development teams also require additional process rigor. Think about in your s, if an output-driver only has one master that master can interface directly with the driver. However, if there are multiple modules that need to change the output, the driver can t know which request to honor; a manager function needs to be introduced to arbitrate between the multiple requests. A more complex embedded system (multiple boards or multiple microprocessors) also leads to a need for a more formal process. Class # ETP-410 Page 7 of 10
8 REQUIREMENTS ANALYSIS SOFTWARE REQUIREMENTS ANALYSIS PRELIMINARY DETAILED CODING AND TESTING AND TESTING I TESTING AND TESTING preliminary system system (prelim ) (detail ) test descriptions (procedures) updated source code DELIVERABLE ARTIFACTS system segment preliminary requirement s requirements test plan test descriptions source code listing test reports operation and operation and operation support and support support s s s preliminary interface requirement interface requirement preliminary interface interface source code version description s development plan product developmental configuration REVIEWS AND AUDITS system require ment system specificat ion prelimin ary critical test readiness I functional & physical configurati on audits BASELINES functional baseline allocated baseline product baseline Figure 4 - DOD-STD-2167A, Development Phases, Deliverable Products, Reviews / Audits, and Baselines Class # ETP-410 Page 8 of 10
9 REQ SYS REQ BUILD INTEGRATE VALIDATE Product Engineering Marketing CONTROL BEHAVIORAL REQUIREMENTS sys other sys & spec other sys & spec AND TESTING BY PROD. ENG. Engineering Software PRELIM. CONTROL top level SOFTWARE TOP LEVEL DETAILED and test plan code, as required CODING AND TESTING BY THE SW DEV. TEAM ELEC. SYS. TESTING Hardware Engineering hw first hw "final" hw Figure 5, Swim Lane Diagram Class # ETP-410 Page 9 of 10
10 Conclusion: The key points from 2167A that should be applied to a typical embedded process: Do a Top Level Design and Review before starting on the Detailed Designs. Do the Detailed Design and Reviews before starting to Code. Create test plans and cases in parallel to developing the code. Unit Test the code as it is developed. Review and Baseline of any that feeds downstream work. With an iterative implementation, appropriately functioning code can be available earlier in the development cycle. Design s are very effective for finding errors. They are also a great way for a group to share best practices and train junior developers. Before you can have an effective, you need to have a ed. Thru this paper and presentation, you should now have an idea of when a more formal process may be needed and what aspects of a formal process make sense to apply in your company. Contacting the Author: The author welcomes questions or comments on this paper and can be reached at: Dale Mayes Founding Member Home Port Engineering LLC rd Court NE Bothell WA [email protected] Phone: (425) Class # ETP-410 Page 10 of 10
How To Develop Software
Software Engineering Prof. N.L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture-4 Overview of Phases (Part - II) We studied the problem definition phase, with which
Software Process for QA
Software Process for QA Basic approaches & alternatives CIS 610, W98 / M Young 1/7/98 1 This introduction and overview is intended to provide some basic background on software process (sometimes called
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
(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
SOFTWARE DEVELOPMENT SD
CONTENTS 1.SOFTWARE-DEFINITION 2.TYPES OF SOFTWARE 3.SOFTWARE DEVELOPMENT 4.SOFTWARE LIFECYCLE 5.WATERFALL MODEL 6.ITERATION MODEL 7.V SHAPED MODEL 8.SPIRAL MODEL SOFTWARE DEVELOPMENT SD MODULE 1 1.SOFTWARE:
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
How To Integrate Software And Systems
September 25, 2014 EFFECTIVE METHODS FOR SOFTWARE AND SYSTEMS INTEGRATION P R E S E N T E D B Y: D R. B O Y D L. S U M M E R S 1 Software Engineer (Quality) Defense and Space The Boeing Company - Seattle,
Software Engineering Reference Framework
Software Engineering Reference Framework Michel Chaudron, Jan Friso Groote, Kees van Hee, Kees Hemerik, Lou Somers, Tom Verhoeff. Department of Mathematics and Computer Science Eindhoven University of
Foundations for Systems Development
Foundations for Systems Development ASSIGNMENT 1 Read this assignment introduction. Then, read Chapter 1, The Systems Development Environment, on pages 2 25 in your textbook. What Is Systems Analysis and
SOFTWARE ENGINEERING INTERVIEW QUESTIONS
SOFTWARE ENGINEERING INTERVIEW QUESTIONS http://www.tutorialspoint.com/software_engineering/software_engineering_interview_questions.htm Copyright tutorialspoint.com Dear readers, these Software Engineering
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,
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
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
Software Development Life Cycle
4 Software Development Life Cycle M MAJOR A J O R T TOPICSO P I C S Objectives... 52 Pre-Test Questions... 52 Introduction... 53 Software Development Life Cycle Model... 53 Waterfall Life Cycle Model...
IV. Software Lifecycles
IV. Software Lifecycles Software processes and lifecycles Relative costs of lifecycle phases Examples of lifecycles and processes Process maturity scale Information system development lifecycle Lifecycle
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 [email protected] Abstract This paper presents an
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
Chap 1. Introduction to Software Architecture
Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)
Software Engineering. Software Engineering. Software Costs
Software Engineering Software Engineering is the science and art of building significant software systems that are: 1) on time 2) on budget 3) with acceptable performance 4) with correct operation. Ian
Software Project Models
INTERNATIONAL JOURNAL OF TECHNOLOGY ENHANCEMENTS AND EMERGING ENGINEERING RESEARCH, VOL 1, ISSUE 4 135 Software Project Models Abhimanyu Chopra, Abhinav Prashar, Chandresh Saini [email protected],
Components Based Design and Development. Unit 2: Software Engineering Quick Overview
Components Based Design and Development Computer Engineering Studies Universidad Carlos III de Madrid Unit 2: Software Engineering Quick Overview Juan Llorens Högskolan på Åland Finland / Universidad Carlos
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
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
And the Models Are 16-03-2015. System/Software Development Life Cycle. Why Life Cycle Approach for Software?
System/Software Development Life Cycle Anurag Srivastava Associate Professor ABV-IIITM, Gwalior Why Life Cycle Approach for Software? Life cycle is a sequence of events or patterns that are displayed in
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
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
Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK
IBM Software Group Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK Jean-Louis Maréchaux Software IT Specialist IBM Rational
3SL. Requirements Definition and Management Using Cradle
3SL Requirements Definition and Management Using Cradle November 2014 1 1 Introduction This white paper describes Requirements Definition and Management activities for system/product development and modification
Module 2. Software Life Cycle Model. Version 2 CSE IIT, Kharagpur
Module 2 Software Life Cycle Model Lesson 4 Prototyping and Spiral Life Cycle Models Specific Instructional Objectives At the end of this lesson the student will be able to: Explain what a prototype is.
Process Methodology. Wegmans Deli Kiosk. for. Version 1.0. Prepared by DELI-cious Developers. Rochester Institute of Technology
Process Methodology for Wegmans Deli Kiosk Version 1.0 Prepared by DELI-cious Developers Rochester Institute of Technology September 15, 2013 1 Table of Contents 1. Process... 3 1.1 Choice... 3 1.2 Description...
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
Principles of Software Engineering: Software Methodologies. COSI 120b, Spring 2005
Principles of Software Engineering: Software Methodologies COSI 120b, Spring 2005 Overview What are methodologies? The methodologies Traditional Incremental Evolutionary Other Conclusions Way Forward What
Software Project Management Plan (SPMP)
Software Project Management Plan (SPMP) The basic template to be used is derived from IEEE Std 1058-1998, IEEE Standard for Software Project Management Plans. The following is a template for the SPMP.
The Impacts Of Agile Development On The System Engineering Process
The Impacts Of Agile elopment On The System Engineering Process 17 th Annual Systems Engineering Conference October 27-30, 2014 Springfield, Virginia Discussion Topics Background What Is Agile elopment
Software Engineering Introduction & Background. Complaints. General Problems. Department of Computer Science Kent State University
Software Engineering Introduction & Background Department of Computer Science Kent State University Complaints Software production is often done by amateurs Software development is done by tinkering or
Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements
Questions? Assignment Why is proper project management important? What is goal of domain analysis? What is the difference between functional and non- functional requirements? Why is it important for requirements
Software Engineering. Objectives. Designing, building and maintaining large software systems
Software Engineering Objectives Designing, building and maintaining large software systems To define software engineering and explain its importance To discuss the concepts of software products and software
The Software Life Cycle. CSE 308: Software Engineering
The Software Life Cycle CSE 308: Software Engineering 1 Life Cycle Models A software life cycle model represents all of the activities and work products necessary to develop a software system Life cycle
Project management. Organizing, planning and scheduling software projects
Project management Organizing, planning and scheduling software projects Ian Sommerville 1995 Software Engineering, 5th edition. Chapter 3 Slide 1 Objectives To introduce software project management and
Background: Business Value of Enterprise Architecture TOGAF Architectures and the Business Services Architecture
Business Business Services Services and Enterprise and Enterprise This Workshop Two parts Background: Business Value of Enterprise TOGAF s and the Business Services We will use the key steps, methods and
Plan-Driven Methodologies
Plan-Driven Methodologies The traditional way to develop software Based on system engineering and quality disciplines (process improvement) Standards developed from DoD & industry to make process fit a
1. Software Engineering Overview
1. Overview 1. Overview...1 1.1 Total programme structure...1 1.2 Topics covered in module...2 1.3 Examples of SW eng. practice in some industrial sectors...4 1.3.1 European Space Agency (ESA), software
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
SECTION 2 PROGRAMMING & DEVELOPMENT
Page 1 SECTION 2 PROGRAMMING & DEVELOPMENT DEVELOPMENT METHODOLOGY THE WATERFALL APPROACH The Waterfall model of software development is a top-down, sequential approach to the design, development, testing
Organising, planning and scheduling software projects. Software management distinctions
Project management Organising, planning and scheduling software projects Software management distinctions The product is intangible The product is uniquely flexible Software engineering is not recognized
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
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
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
Project management. Organizing, planning and scheduling software projects. Objectives. Chapter 3. Chapter 3 Project Management. Learning Objective
Chapter 3 Chapter 3 Project Management Learning Objective...to give an appreciation for and to introduce project management and to place it into context and give some of the fundamentals to project management
Chapter 8 Approaches to System Development
Systems Analysis and Design in a Changing World, sixth edition 8-1 Chapter 8 Approaches to System Development Table of Contents Chapter Overview Learning Objectives Notes on Opening Case and EOC Cases
Engineering Process Software Qualities Software Architectural Design
Engineering Process We need to understand the steps that take us from an idea to a product. What do we do? In what order do we do it? How do we know when we re finished each step? Production process Typical
Codesign: The World Of Practice
Codesign: The World Of Practice D. Sreenivasa Rao Senior Manager, System Level Integration Group Analog Devices Inc. May 2007 Analog Devices Inc. ADI is focused on high-end signal processing chips and
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
International Journal of Advance Research in Computer Science and Management Studies
Volume 2, Issue 12, December 2014 ISSN: 2321 7782 (Online) International Journal of Advance Research in Computer Science and Management Studies Research Article / Survey Paper / Case Study Available online
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
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
Managing TM1 Projects
White Paper Managing TM1 Projects What You ll Learn in This White Paper: Traditional approaches to project management A more agile approach Prototyping Achieving the ideal outcome Assessing project teams
Chakra Vs Spiral Model - A Practical Approach
Chakra - A new era in Software Lifecycle modeling technique R.P.Muthu Assistant Professor, Department of Computer Science Indian Institute of Technology, Bombay. Abstract: Every old thing has to be modified
Appendix 2-A. Application and System Development Requirements
Appendix 2-A. Application and System Development Requirements Introduction AHRQ has set up a Distributed Systems Engineering Lab (DSEL) to support all internal development efforts and provide a facility
USTC Course for students entering Clemson F2013 Equivalent Clemson Course Counts for Clemson MS Core Area. CPSC 822 Case Study in Operating Systems
USTC Course for students entering Clemson F2013 Equivalent Clemson Course Counts for Clemson MS Core Area 398 / SE05117 Advanced Cover software lifecycle: waterfall model, V model, spiral model, RUP and
In this Lecture you will Learn: Development Process. Unified Software Development Process. Best Practice
In this Lecture you will Learn: Development Chapter 5C About the Unified Software Development How phases relate to workflows in an iterative life cycle An approach to system development Major activities
DOCUMENTING THE SOFTWARE DEVELOPMENT PROCESS. June S. Hopkins and Jean M. Jeroow. Litton Data Systems 8000 Woodley Ave. Van Nuys, CA 91406
DOCUMENTNG THE SOFTWARE DEVELOPMENT PROCESS June S. Hopkins and Jean M. Jeroow Litton Data Systems 8000 Woodley Ave. Van Nuys, CA 91406 ABSTRACT The Software Engineering Process Group (SEPG) at the Data
How To Manage Project Management
CS/SWE 321 Sections -001 & -003 Software Project Management Copyright 2014 Hassan Gomaa All rights reserved. No part of this document may be reproduced in any form or by any means, without the prior written
Software Life Cycle Processes
Software Life Cycle Processes Objective: Establish a work plan to coordinate effectively a set of tasks. Improves software quality. Allows us to manage projects more easily. Status of projects is more
Life-Cycle Model. Software Life-Cycle Models. Software Development in Theory. Software Development in Practice
Life-Cycle Model Software Life-Cycle Models Xiaojun Qi It specifies the various phases/workflows of the software process, such as the requirements, analysis (specification), design, implementation, and
Title: Topic 3 Software process models (Topic03 Slide 1).
Title: Topic 3 Software process models (Topic03 Slide 1). Topic 3: Lecture Notes (instructions for the lecturer) Author of the topic: Klaus Bothe (Berlin) English version: Katerina Zdravkova, Vangel Ajanovski
R214 SPECIFIC REQUIREMENTS: INFORMATION TECHNOLOGY TESTING LABORATORY ACCREDITATION PROGRAM
The American Association for Laboratory Accreditation Document Revised: R214: Specific Requirements: Information Technology Testing Laboratory Accreditation July 13, 2010 Program Page 1 of 26 R214 SPECIFIC
Iterative Software Development -
Iterative Software Development - from Theory to Practice Implementing the Unified Software Development Process in RAFAEL Amir Tomer, Boaz Shani, Ely Bonne RAFAEL at a Glance USDP in Rafael - 2 The Waterfall
Applications in Business. Embedded Systems. FIGURE 1-17 Application Types and Decision Types
22 CHAPTER 1 Overview of Software Engineering she may determine his or her degree of confidence in the ES's results. These four application types-transaction, query, DSS, and ES-will be referenced throughout
NOTICE: This publication is available at: http://www.nws.noaa.gov/directives/
Department of Commerce $ National Oceanic & Atmospheric Administration $ National Weather Service NATIONAL WEATHER SERVICE INSTRUCTION 80-304 April 21, 2009 Science and Technology Systems Engineering SOFTWARE
Acknowledgement. Software Engineering. CS 3141: Team Software Project Introduction
CS 3141: Team Software Project Introduction Ali Ebnenasir Department of Computer Science Michigan Technological University Acknowledgement Betty H.C. Cheng Software Engineering Systematic approach for
Chapter 11: Integrationand System Testing
Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 11: Integrationand System Testing Integration Testing Strategy The entire system is viewed as a collection of subsystems (sets
The Plan s Journey From Scope to WBS to Schedule
The Plan s Journey From Scope to WBS to Schedule Presented by: Rick Clare, CBAP, PMP, OCP, CSM PM Centers USA, LLC. 2013 Company Background Consulting and Training (Virtual, Public and Private Training)
Information Systems Analysis and Design CSC340. XXIV. Other Phases
XXIV. Other Phases Implementation Phase Testing and Installation Phase Post-Installation Tasks Course Summary 2004 John Mylopoulos Other Phases -- 1 The Software Lifecycle Revisited Survey project scope
Outline Business Intelligence Roadmap: The Complete Project Lifecycle for Decision-Support Applications
Outline Business Intelligence Roadmap: The Complete Project Lifecycle for Decision-Support Applications Introduction to the BI Roadmap Business Intelligence Framework DW role in BI From Chaos to Architecture
Organizing, planning and scheduling software projects
Project management Organizing, planning and scheduling software projects Ian Sommerville 1995 Modified by Spiros Mancoridis 1998 Software Engineering, 5th edition. Chapter 3 Slide 1 Objectives To introduce
How PRINCE2 Can Complement PMBOK and Your PMP Jay M. Siegelaub Impact Strategies LLC. Abstract. About PRINCE2
How PRINCE2 Can Complement PMBOK and Your PMP Jay M. Siegelaub Impact Strategies LLC Abstract PMBOK is the recognized (de facto) standard of project management knowledge. In the UK and Europe, PRINCE2
SOFTWARE DEVELOPMENT AND DOCUMENTATION
DISTRIBUTION STATEMENT A. Approved for public release; distribution is unlimited. NOT MEASUREMENT SENSITIVE MIL-STD-498 5 December 1994 (PDF version) Superseding DOD-STD-2167A 29 February 1988 DOD-STD-7935A
Software Process and Models
Agenda Software Process Models Plan-driven Process Models Software Process and Models A software process model simplified, abstracted description of a software development process. A model is good for
An Introduction to the ECSS Software Standards
An Introduction to the ECSS Software Standards Abstract This introduces the background, context, and rationale for the creation of the ECSS standards system presented in this course. Addresses the concept
THE APPLICATION OF THE PARETO PRINCIPLE IN SOFTWARE ENGINEERING.
THE APPLICATION OF THE PARETO PRINCIPLE IN SOFTWARE ENGINEERING. Ankunda R. Kiremire 19th October, 2011 1 Introduction The Pareto Principle, or more commonly the 80/20 rule is a relation that describes
The Software Development Life Cycle (SDLC)
Document ID: Version: 2.0 1 / 22 2 TABLE OF CONTENTS INTRODUCTION... 4 THE SDLC WATERFALL... 4 ALLOWED VARIATIONS... 5 OTHER SDLC MODELS... 6 REFERENCES... 7 GENERIC STAGE... 8 KICKOFF PROCESS... 8 INFORMAL
Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53
Preface xvi Part I Introduction and System Engineering 1 Chapter 1 Introduction 2 1.1 What Is Software Engineering? 2 1.2 Why Software Engineering? 3 1.3 Software Life-Cycle Activities 4 1.3.1 Software
SoftwareCostEstimation. Spring,2012
SoftwareCostEstimation Spring,2012 Chapter 3 SOFTWARE COST ESTIMATION DB Liu Software Cost Estimation INTRODUCTION Estimating the cost of a software product is one of the most difficult and error-prone
Testing Automated Manufacturing Processes
Testing Automated Manufacturing Processes (PLC based architecture) 1 ❶ Introduction. ❷ Regulations. ❸ CSV Automated Manufacturing Systems. ❹ PLCs Validation Methodology / Approach. ❺ Testing. ❻ Controls
asuresign Aero (NATEP Grant MA005)
asuresign Aero (NATEP Grant MA005) WP2 Workshop: Identification of Needs for Tool Support in Meeting Aircraft Avionics Systems, Hardware & Software Certification Standards Dr Chris Harper Systems & Safety
PROJECT SCOPE STATEMENT
PROJECT SCOPE STATEMENT Note: Any work not explicitly included in this Project Scope Statement is implicitly excluded from the project. Create links to referenced documents (e.g., Link_To_ ) by using Insert
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
Project Time Management
Project Time Management Plan Schedule Management is the process of establishing the policies, procedures, and documentation for planning, developing, managing, executing, and controlling the project schedule.
8. Master Test Plan (MTP)
8. Master Test Plan (MTP) The purpose of the Master Test Plan (MTP) is to provide an overall test planning and test management document for multiple levels of test (either within one project or across
How To Understand The Business Analysis Lifecycle
Business Analysis Lifecycle by Sergey Korban Aotea Studios Ltd November 2011 Contents Introduction... 3 Business Analysis Lifecycle... 4 Practical Application... 5 Start-Up Phase... 5 Initiation Phase...
Revision History Revision Date 3.0 14.02.10. Changes Initial version published to http://www.isasecure.org
SDLA-312 ISA Security Compliance Institute Security Development Lifecycle Assurance - Security Development Lifecycle Assessment v3.0 Lifecycle Phases Number Phase Name Description PH1 Security Management
SWEN 256 Software Process & Project Management
SWEN 256 Software Process & Project Management Plan: Identify activities. No specific start and end dates. Estimating: Determining the size & duration of activities. Schedule: Adds specific start and end
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,
DO-254 Requirements Traceability
DO-254 Requirements Traceability Louie De Luna, Aldec - June 04, 2013 DO-254 enforces a strict requirements-driven process for the development of commercial airborne electronic hardware. For DO-254, requirements
Chapter 5: Project Scope Management. Information Technology Project Management, Fifth Edition
Chapter 5: Project Scope Management Information Technology Project Management, Fifth Edition What is Project Scope Management? Scope refers to all the work involved in creating the products of the project
System Engineering Plan
Project Documentation Document SPEC-0064 Revision A System Engineering Plan Rob Hubbard, Jeremy Wagner, Larry Daggert, Larry Stepp, Christoph Keller Systems Engineering / Project Management 5 October 2006
