Group iv MBARARA UNIVERSITY OF SCIENCE AND TECHNOLOGY INSTITUTE OF COMPUTER SCIENCE DEPARTMENT OF COMPUTER SCIENCE COURSE: BACHELOR OF COMPUTER SCIENCE.

Slides:



Advertisements
Similar presentations
Lecture # 2 : Process Models
Advertisements

10 Software Engineering Foundations of Computer Science ã Cengage Learning.
Systems Analysis and Design in a Changing World, 6th Edition
Software Engineering CSE470: Process 15 Software Engineering Phases Definition: What? Development: How? Maintenance: Managing change Umbrella Activities:
SDLC Software Development Life Cycle. SDLC Acronym for system development life cycle. Acronym for system development life cycle. Is the process of developing.
SDLC Group 1 Hang Pham Jared Jelacich Hector Arreola.
Project Scope Management
Agile Software Development. Traditional Software Development 1.Initiation (RFP) 2.Feasibility study Technical – can we build it? Economic – should we.
R R R CSE870: Advanced Software Engineering (Cheng): Intro to Software Engineering1 Advanced Software Engineering Dr. Cheng Overview of Software Engineering.
$100 $200 $300 $400 $500 $100 $200 $300 $400 $500 $100 $200 $300 $400 $500 $100 $200 $300 $400 $500 $100 $200 $300 $400 $500 $100 $200 $300.
Object-oriented Analysis and Design
CS 501: Software Engineering
7M701 1 Software Engineering Software Requirements Sommerville, Ian (2001) Software Engineering, 6 th edition: Chapter 5
Software Engineering General Project Management Software Requirements
1 CSC-3324: Chapter 4 Title: What is a requirement? Mandatory reading: Sommerville 6, 7 th ed., Chap.: 7.
Iterative development and The Unified process
COMP 350: Object Oriented Analysis and Design Lecture 2
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Software Process CS 414 – Software Engineering I Donald J. Bagert Rose-Hulman Institute of Technology December 17, 2002.
7M822 Software Requirements Introduction 7 September 2010.
Organizational Project Management Maturity: Roadmap to Success
1 College of Engineering and Computer Science Computer Science Department CSC 131 Computer Software Engineering Fall 2006 Lecture # 2 Chapter 6 & 7 System.
Introduction to Computer Technology
OHT 2.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Software Quality assurance (SQA) SWE 333 Dr Khalid Alnafjan
Software Development Life Cycle (SDLC)
The Software Development Life Cycle: An Overview
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
Dillon: CSE470: SE, Process1 Software Engineering Phases l Definition: What? l Development: How? l Maintenance: Managing change l Umbrella Activities:
N By: Md Rezaul Huda Reza n
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
Rational Unified Process Fundamentals Module 4: Disciplines II.
Chapter 4 Requirements engineering Chapter 4 – Requirements Engineering Lecture 1 1.
CS CS 5150 Software Engineering Lecture 3 Software Processes 2.
Adaptive Processes © Adaptive Processes Simpler, Faster, Better Software Requirements.
Software Requirements Engineering CSE 305 Lecture-2.
Software Engineering Management Lecture 1 The Software Process.
Software Life Cycle Models. Waterfall Model  The Waterfall Model is the earliest method of structured system development.  The original waterfall model.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
Computers Are Your Future Tenth Edition Chapter 13: Systems Analysis & Design Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall1.
Chapter 2 Iterative, Evolutionary, and Agile You should use iterative development only on projects that you want to succeed. - Martin Fowler 1CS
Systems Analysis and Design in a Changing World, Fourth Edition
Chapter 4 프로세스 모델 Process Models
1 CS 501 Spring 2004 CS 501: Software Engineering Lecture 2 Software Processes.
Requirements Engineering Lesson 2. Terminologies:  Software Acquisition is where requirement engineering significantly meets business strategy.  Software.
Software Engineering Lecture # 1.
Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts.
SOFTWARE PROCESS IMPROVEMENT
Agenda: Overview of Agile testing Difference between Agile and traditional Methodology Agile Development Methodologies Extreme Programming Test Driven.
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
CS223: Software Engineering Lecture 18: The XP. Recap Introduction to Agile Methodology Customer centric approach Issues of Agile methodology Where to.
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
Copyright 2015, Robert W. Hasker. Classic Model Gathering Requirements Specification Scenarios Sequences Design Architecture Class, state models Implementation.
Software Development. The Software Life Cycle Encompasses all activities from initial analysis until obsolescence Analysis of problem or request Analysis.
 System Requirement Specification and System Planning.
Software Engineering cosc 4359 Spring 2017.
Software Development.
Information Technology Project Management – Fifth Edition
Object oriented system development life cycle
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
The V Model The V Model Damian Gordon Damian Gordon.
Software life cycle models
Gathering Systems Requirements
Capability Maturity Model
Lecture # 7 System Requirements
Project Lifecycle and IT Product Life Cycle
Gathering Systems Requirements
Capability Maturity Model
SDLC (Software Development Life Cycle)
Presentation transcript:

Group iv MBARARA UNIVERSITY OF SCIENCE AND TECHNOLOGY INSTITUTE OF COMPUTER SCIENCE DEPARTMENT OF COMPUTER SCIENCE COURSE: BACHELOR OF COMPUTER SCIENCE COURSE UNIT: SOFTWARE DESIGN AND DEVELOPMENT COURSE CODE: CSC1200 LECTURER: MUGONZA ROBERT YEAR: 2013/2014

GROUP KABUGHO DOREEC 2013/BCS/ NIMWESIGA GERALD 2013/BCS/041/PS 3. TUSHABE SEZI 2013/BCS/091/PS 4. ATUKUNDA ALLAN 2013/BCS/012/PS 5. NIWAMANYA DANDY 2013/BCS/026/PS 6. TUKAHEBWA BENARD 2013/BCS/101/PS 7. KALENDE REBECCA 2013/BCS/081/PS 8. MUHANGUZI BRIGHTON 2013/BCS/021/PS 9. IRAGUHA RICHARD 2013/BCS/114/PS 10. ATUHAIRWE CHRISTINE 2013/BCS/023/PS 11.NUWATUMANYA AUTHUR 2013/BCS/016/PS

Moving target It is where the client changes his or her requirements during the software development process.

Requirements A requirement describes a condition or capability to which a system must conform; In systems engineering, a requirement can be a description of what a system must do. Requirements are descriptions of the services that a software system must provide and the constraints under which it must operate Requirements can range from high-level abstract statements of services or system constraints to detailed mathematical functional specifications

Types of Requirement User requirements Statements in natural language plus diagrams of the services that the systems provides and its operational constraints. Written for customers System requirements A structured document setting out detailed descriptions of the system services. Written as a contract between client and contractor

Software specification A detailed software description which can serve as a basis for a design or implementation. Written for developers

Requirements traceability Requirements traceability is a sub-discipline of requirements management within software development and systems engineering.requirements managementsoftware developmentsystems engineering Requirements traceability is concerned with documenting the life of a requirement and providing bi-directional traceability between various associated requirements. It enables users to find the origin of each requirement and track every change that was made to this requirement. For this purpose, it may be necessary to document every change made to the requirement. It has been argued that even the use of the requirement after the implemented features have been deployed and used should be traceable.

Requirements Traceability cont’d Requirements Traceability is concerned with documenting the relationships between requirements and other development artifacts. Its purpose is to facilitate: the overall quality of the product (s) under development the understanding of product under development and its artifact; and the ability to manage change.

Software development process A software development process, also known as a software development lifecycle, is a structure imposed on the development of a software product. developmentsoftware

Agile Development Agile Development –Agility means to have a process in place that will allow us (and urge us) to react on changing business requirements as soon as possible: –To accept that the project's goal is a moving target. Agile means adopting an approach to IT that emphasizes flexibility, responsiveness to change and innovation. –This is achieved through modular and iterative development based on user involvement and feedback:

Agile Development cont’d Compared with traditional tools and methods, agile offers a fundamentally different approach to tackling business problems. Instead of trying to lock down requirements and minimize changes up-front, agile encourages continuous experimentation, improvement and reprioritization. The approach to user involvement also differs fundamentally.

Agile Development comparison with a traditional Waterfall The traditional approach like a strict Waterfall model, after each phase is finished, it proceeds to the next one. Reviews may occur before moving to the next phase which allows for the possibility of changes (which may involve a formal change control process). Reviews may also be employed to ensure that the phase is indeed complete; the phase-completion criteria are often referred to as a "gate" that the project must pass through to move to the next phase. Waterfall discourages revisiting and revising any prior phase once it's complete. But agile encourages a modular approach using short iterations to learn and adapt.

Agile Development cont’d The traditional approach favors heavy user engagement up-front to determine and lock down detailed specifications and at the end to test the final product. In contrast, agile embeds users in the process for the duration of the project, making them an integral part of the development team rather than a company to be consulted.

Software process is the activities involved in the development of the software. Software development process also known as SDLC is a structure imposed on the development of a software product as in embedded real time system based on Siemens 8 automation. Siemens private communication system (PN) has invested in the software process methods of formal inspections, measurements and the project management training. Here are the software process improvement methods used by some of the companies: SIA found in Johnson City, TN used SEPG, CASE, measurements, ISO SME which is found in Danvers MA used inspection, measurement and process definition

QN 2….NO 2 An organization whose goal is to reduce development cycle time should have a high visible measurement of project development schedule time like (3-5) years. Since the selected sites are all involved with the maintaining the mature products as well as developing newer versions of these products. Data collection and analysis can be observed by comparing performance measures calculated for the current development as compared with prior development provided they are doing the work of similar difficulty, as observed development as usual called releases, projects or products with the development organizations. The baseline data should initially be collected for the last major product software release that has been used by the customers in the field for at least one year. Tracking of similar resulting from the previously shared software measurements training across Siemens business units. Identification of the defects found per phase and in total should be countered and debugged in generalized phases, implementations phases which begin when an approved functional specifications is available and a high level design has begun, qualification