TOPIC 2: Software Development Life Cycle

Similar documents
The Seven Habits of Effective Iterative Development

The open source development model has unique characteristics that make it in some

PROCESS USE CASES: USE CASES IDENTIFICATION

Process improvement, The Agile Way! By Ben Linders Published in Methods and Tools, winter

CPS122 Lecture: Identifying Responsibilities; CRC Cards. 1. To show how to use CRC cards to identify objects and find responsibilities

Software Maintenance

Deploying Agile Practices in Organizations: A Case Study

Running Head: STUDENT CENTRIC INTEGRATED TECHNOLOGY

IT4305: Rapid Software Development Part 2: Structured Question Paper

Implementing a tool to Support KAOS-Beta Process Model Using EPF

Module Title: Managing and Leading Change. Lesson 4 THE SIX SIGMA

A Pipelined Approach for Iterative Software Process Model

Introducing New IT Project Management Practices - a Case Study

Nearing Completion of Prototype 1: Discovery

OCR LEVEL 3 CAMBRIDGE TECHNICAL

Generating Test Cases From Use Cases

The Role of Architecture in a Scaled Agile Organization - A Case Study in the Insurance Industry

Document number: 2013/ Programs Committee 6/2014 (July) Agenda Item 42.0 Bachelor of Engineering with Honours in Software Engineering

DIGITAL GAMING & INTERACTIVE MEDIA BACHELOR S DEGREE. Junior Year. Summer (Bridge Quarter) Fall Winter Spring GAME Credits.

Knowledge based expert systems D H A N A N J A Y K A L B A N D E

Different Requirements Gathering Techniques and Issues. Javaria Mushtaq

Practice Examination IREB

Towards a Collaboration Framework for Selection of ICT Tools

Changing User Attitudes to Reduce Spreadsheet Risk

Including the Microsoft Solution Framework as an agile method into the V-Modell XT

Three Strategies for Open Source Deployment: Substitution, Innovation, and Knowledge Reuse

Using Virtual Manipulatives to Support Teaching and Learning Mathematics

Multimedia Courseware of Road Safety Education for Secondary School Students

Emergency Management Games and Test Case Utility:

CREATING SHARABLE LEARNING OBJECTS FROM EXISTING DIGITAL COURSE CONTENT

5.7 Country case study: Vietnam

STANDARD OPERATING PROCEDURES (SOP) FOR THE COAST GUARD'S TRAINING SYSTEM. Volume 7. Advanced Distributed Learning (ADL)

A GENERIC SPLIT PROCESS MODEL FOR ASSET MANAGEMENT DECISION-MAKING

Executive Summary. Sidney Lanier Senior High School

Modeling user preferences and norms in context-aware systems

Virtual Teams: The Design of Architecture and Coordination for Realistic Performance and Shared Awareness

Introduction to Modeling and Simulation. Conceptual Modeling. OSMAN BALCI Professor

Guidelines for Mobilitas Pluss top researcher grant applications

Ministry of Education, Republic of Palau Executive Summary

Institutionen för datavetenskap. Hardware test equipment utilization measurement

PESIT SOUTH CAMPUS 10CS71-OBJECT-ORIENTED MODELING AND DESIGN. Faculty: Mrs.Sumana Sinha No. Of Hours: 52. Outcomes

GCSE English Language 2012 An investigation into the outcomes for candidates in Wales

What is a Mental Model?

Major Milestones, Team Activities, and Individual Deliverables

Intelligent Agents. Chapter 2. Chapter 2 1

A European inventory on validation of non-formal and informal learning

Spinners at the School Carnival (Unequal Sections)

Guidelines for Mobilitas Pluss postdoctoral grant applications

DISTANCE LEARNING OF ENGINEERING BASED SUBJECTS: A CASE STUDY. Felicia L.C. Ong (author and presenter) University of Bradford, United Kingdom

Evaluating the Effectiveness of Mindmapping in Generating Domain Ontologies using OntoREM: The MASCOT Case Study

Position Statements. Index of Association Position Statements

Interactive Innovation Toolkit

Requirements-Gathering Collaborative Networks in Distributed Software Projects

Execution Plan for Software Engineering Education in Taiwan

Knowledge-Based - Systems

Executive summary (in English)

Operational Knowledge Management: a way to manage competence

EDITORIAL: ICT SUPPORT FOR KNOWLEDGE MANAGEMENT IN CONSTRUCTION

Stacks Teacher notes. Activity description. Suitability. Time. AMP resources. Equipment. Key mathematical language. Key processes

Dear Internship Supervisor:

THE APPROVED LIST OF HUMANITIES-SOCIAL SCIENCES COURSES FOR ENGINEERING DEGREES

SEDETEP Transformation of the Spanish Operation Research Simulation Working Environment

DSTO WTOIBUT10N STATEMENT A

GACE Computer Science Assessment Test at a Glance

ABI11111 ABIOSH Level 5 International Diploma in Environmental Sustainability Management

Europeana Creative. Bringing Cultural Heritage Institutions and Creative Industries Europeana Day, April 11, 2014 Zagreb

Nonfunctional Requirements: From Elicitation to Conceptual Models

A Business Process Environment Supporting Collaborative Planning

A MULTI-AGENT SYSTEM FOR A DISTANCE SUPPORT IN EDUCATIONAL ROBOTICS

SPECIALIST PERFORMANCE AND EVALUATION SYSTEM

Rover Races Grades: 3-5 Prep Time: ~45 Minutes Lesson Time: ~105 minutes

Understanding Co operatives Through Research

Juris Doctor. RMIT will inspire you to turn your passion and talent for law into a successful career. JURIS DOCTOR INFORMATION SESSION

Newlands Girls School

Evidence for Reliability, Validity and Learning Effectiveness

Coordinating by looking back? Past experience as enabler of coordination in extreme environment

Chamilo 2.0: A Second Generation Open Source E-learning and Collaboration Platform

AGENDA LEARNING THEORIES LEARNING THEORIES. Advanced Learning Theories 2/22/2016

Memorandum. COMPNET memo. Introduction. References.

Seminar - Organic Computing

(ALMOST?) BREAKING THE GLASS CEILING: OPEN MERIT ADMISSIONS IN MEDICAL EDUCATION IN PAKISTAN

City of Roseville 2040 Comprehensive Plan Scope of Services

Project Leadership in the Future

A Genetic Irrational Belief System

School Leadership Rubrics

Higher education is becoming a major driver of economic competitiveness

Certified Six Sigma - Black Belt VS-1104

Pragmatic Use Case Writing

An Approach for Creating Sentence Patterns for Quality Requirements

Title II of WIOA- Adult Education and Family Literacy Activities 463 Guidance

10.2. Behavior models

Teaching Architecture Metamodel-First

5 Early years providers

Classroom Teacher Primary Setting Job Description

Strategic Practice: Career Practitioner Case Study

THE DEPARTMENT OF DEFENSE HIGH LEVEL ARCHITECTURE. Richard M. Fujimoto

Math Pathways Task Force Recommendations February Background

DG 17: The changing nature and roles of mathematics textbooks: Form, use, access

ICT Strategy of Universities

Designing a Rubric to Assess the Modelling Phase of Student Design Projects in Upper Year Engineering Courses

Transcription:

EKT 421 :SOFTWARE ENGINEERING TOPIC 2: Software Development Life Cycle School of Computer & Communication Engineering Semester: 2-2015/2016

Learning Outcome By the end of this session, you should be able to: 1.Describe various models in the software development process; 2.Explain the importance of software reuse; 3.Identify suitable strategies for application development; and 4.Discuss the non-traditional software development process.

Content 1)Software Development Process Model ; traditional vs non-traditional 2)Software Reuse 3)Strategy for Application Development 4)Non-Traditional Development Process.

TRADITIONAL SPM

CODE-AND-FIX MODEL THIS MODEL WAS FOUND TO BE INADEQUATE BECAUSE: Computers started becoming popular and its application domain extended considerably, from science and engineering to business, industry, service, military, and government. Developers became different from users. Developers spent considerable time and effort to understand user requirements Applications often became so complex and large that the software had to be developed by a group of persons, rather than a single person. Large software products and their development by a group of persons invariably led to frequent malfunctioning of the software products during testing (by the developers) and use (at the user sites). The changing requirements of a customer often called for modification and enhancement of an existing piece of software.

H2O FALL

8 Waterfall model phases There are separate identified phases in the waterfall model: Requirements analysis and definition System and software design Implementation and unit testing Integration and system testing Operation and maintenance The main drawback of the waterfall model is the difficulty of accommodating change after the process is underway. In principle, a phase has to be complete before moving onto the next phase.

9 Waterfall model problems Inflexible partitioning of the project into distinct stages makes it difficult to respond to changing customer requirements. Therefore, this model is only appropriate when the requirements are well-understood and changes will be fairly limited during the design process. Few business systems have stable requirements. The waterfall model is mostly used for large systems engineering projects where a system is developed at several sites. In those circumstances, the plan-driven nature of the waterfall model helps coordinate the work.

VARIATIONS Variations in Software Life Cycle Phases

EVOLUTIONARY

WHAT IS THE DIFFERENCES BETWEEN THROW AWAY AND EVOLUTIONARY? PROTOTYPING Throw away prototyping Evolutionary prototyping

Prototype development May be based on rapid prototyping languages or tools May involve leaving out functionality Prototype should focus on areas of the product that are not wellunderstood; Error checking and recovery may not be included in the prototype; Focus on functional rather than non-functional requirements such as reliability and security

Throw-away prototypes Prototypes should be discarded after development as they are not a good basis for a production system: It may be impossible to tune the system to meet non-functional requirements; Prototypes are normally undocumented; The prototype structure is usually degraded through rapid change; The prototype probably will not meet normal organisational quality standards.

SPIRAL

Spiral model sectors Objective setting Specific objectives for the phase are identified. Risk assessment and reduction Risks are assessed and activities put in place to reduce the key risks. Development and validation A development model for the system is chosen which can be any of the generic models. Planning The project is reviewed and the next phase of the spiral is planned.

Spiral model usage Spiral model has been very influential in helping people think about iteration in software processes and introducing the risk-driven approach to development. In practice, however, the model is rarely used as published for practical software development.

QUESTIONS 1.Name 4 traditional software process models[spm] (C1) l State their differences and similarities l State characteristics of each model l State their weaknesses l How can they be enhanced?

Software Reuse Benefits of Reuse Increased system reliability Reduced overall project risk Effective use of specialist Embodiment of organizational standards in reusable components Reduction in software development time

Questions on REUSE l l Is reuse suitable to be adopted for a development only for a large system? Explain with a flowchart. State the benefits of reuse

Strategy for Application Development

Non-Traditional Development Process

WIN-WIN SPIRAL MODEL l l The WinWin Spiral Model uses Theory W (win-win) to develop software and system requirements, and architectural solutions, as win conditions negotiated among a project's stakeholders (user, customer, developer, maintainer, interfacer). The WinWin negotiation tool is a Unix workstation-based groupware support system that allows stakeholders to enter win conditions, explore their interactions, and

The Rational Unified Process A modern generic process derived from the work on the UML and associated process. Brings together aspects of the 3 generic process models discussed previously. Normally described from 3 perspectives A dynamic perspective that shows phases over time; A static perspective that shows process activities; A practive perspective that suggests good practice.

Phases in the Rational Unified Process

RUP phases Inception Establish the business case for the system. Elaboration Develop an understanding of the problem domain and the system architecture. Construction System design, programming and testing. Transition Deploy the system in its operating environment.

RUP iteration In-phase iteration Each phase is iterative with results developed incrementally. Cross-phase iteration As shown by the loop in the RUP model, the whole set of phases may be enacted incrementally.

QUESTIONS 1. Name the non-traditional SPM 2. Given the following applications/problems, choose the most suitable SPM and justify a) Automated land mower b) Driver-less Vehicle c) Beriani Rice Order & Despatcher d) Pet Cafe Management System e) Kuala Perlis-Langkawi Bridge Monitoring System