Presentation is loading. Please wait.

Presentation is loading. Please wait.

PROC-1 1. Software Development Process. PROC-2 A Process Software Development Process User’s Requirements Software System Unified Process: Component Based.

Similar presentations


Presentation on theme: "PROC-1 1. Software Development Process. PROC-2 A Process Software Development Process User’s Requirements Software System Unified Process: Component Based."— Presentation transcript:

1 PROC-1 1. Software Development Process

2 PROC-2 A Process Software Development Process User’s Requirements Software System Unified Process: Component Based Development –Components for implementation –Interfaces for interconnection

3 PROC-3 Activities in System Development Requirements Testing Analysis Design Implementation System

4 PROC-4 Versions of a Project Full requirements are not given at start Full requirements are not known Full development may take several years StartVersion 1Version 2Version 3... Requirements Testing AnalysisDesign Implementation System

5 PROC-5 Incremental Development Reasons: Requirements are not very clear Requirement changes in the mean time Feedback will help “steer” the project Feedback helps new requirements Each stage adds new functionality Stage nStage 3Stage 2Stage 1... Release Time Save Add / Remove spokes wheel

6 PROC-6 Prototyping Illustrates the working of system Focuses on properties requiring insight Allows experimentation “Seeing it” promotes opinion & clarification Can play with it to understand system dynamics Not a product - just a demo Rapid Prototyping : quick functioning model Build it - See it - Dump it

7 PROC-7 Reuse Put together set of available components to develop system Components are finest level of granularity for reuse Components: Units that provide some functionality Powerful and useful Well defined interfaces Simple to find, understand & use Wide application Can be used to build other components Flexible to change Alteration must be to single component / module Cost effective

8 PROC-8 Methodology Tools Process Method Architecture

9 PROC-9 Architecture, Method, Process & Tool Architecture: Types of model that can be built and characteristic of each model What makes the components? Method: Sequence of Steps to realize the goal Based on the underlying architecture Simplifies development for a given architecture

10 PROC-10 Architecture, Method, Process & Tool Process: Scaling up of the Method Industrialization of a Method Activities for the entire lifetime of a product Must be specialized into other processes Tools: Computer - aided Systems Engineering (CASE) Provides automation for documentation Effective to communicate Easy to flow from one activity to another Improves productivity

11 PROC-11 Development Approach Waterfall Method Spiral Method Incremental and Iterative Development Need a Mature Repeatable Development Process

12 PROC-12 Waterfall Method Requirements Analysis Design Implementation &Testing Integration Maintenance

13 PROC-13 Fountain Method Requirements Specification Analysis Design Implementation &Testing Integration Maintenance

14 PROC-14 Spiral Method Analysis Requirements Specification Integration Design Implementation & Unit Testing

15 PROC-15 Iterative and Incremental Life Cycle Neither top-down nor bottom-up Successive Refinement of the OO Architecture –Apply Experience & Results to next iteration Booch’s Approach: Micro Development Process (Spiral) Macro Development Process (Waterfall)

16 PROC-16 Micro Development Process Represents Daily Activity of Developers Identify Classes and Objects Identify Class and Object Relationships Specify Class and Object Interfaces and Implementation Identify Class and Object Semantics

17 PROC-17 Macro Development Process Controlling Framework for Micro Process Helps Assess Risk and Make Early Corrections Activities on the Scale of Weeks to Months Conceptualization Analysis Design Evolution Maintenance

18 PROC-18 Function / data Methods Treat Functions & data as being separate Structured Analysis and Design Technique Functions : Active, describes behavior Data : Passive holder of information Function Data...

19 PROC-19 Function / data Methods : Problems Difficult to maintain Hard to handle different data format –spilled with Switch-CASE statements Poor readability Change to data structure results in change to several functions Unstable - small modifications result in major changes

20 PROC-20 Object - Oriented Development Functions and data highly integrated More understandable More flexible to modifications Stable - modifications are localized

21 PROC-21 Object - Oriented Analysis Activities: –Finding the objects –Organizing the objects –Describing object interaction –Defining operations on the objects –Defining the object’s internals Obtain understanding of system based on functional requirements Considers functional requirements & data as integrated objects

22 PROC-22 OOA Activities Finding the Objects –Nouns in problem statement –Easy to find objects difficult to know what is relevant –Find essential objects Organizing the Objects –Exploring similarity between classes of objects –Organizing Classes into hierarchy Inheritance Whole / part Association

23 PROC-23 OOA Activities continued Object Interaction –Scenarios or use cases provide insight - which objects work together –Helps to define Object interface Operations on Objects –Simple primitive operations based on the interface –Avoid creating complex objects Object Implementation / Internals –Information to be held, alternate ways of storing –Number of instances of the object –Attributes may be inherited

24 PROC-24 OO Design & Implementation Analysis model Designed & Implemented Take care of restrictive demands memory, response time, etc. Traceability of Objects Create & use Components

25 PROC-25 Object - Oriented Testing Integration is not very painful Help broadening unit testing to larger units Integration testing comes in earlier stages Inheritance poses a bit of challenge in testing

26 PROC-26 The Unified Process Use-case Driven Architecture Centric Iterative and Incremental

27 PROC-27 Use-Case Driven Remember the User?! –What does the user want and need from the system Use-case –interaction by the user and the system’s response –captures functional requirements Use-case Model –All use-cases make up complete functional model What does the system do for each user? What do you do with it?

28 PROC-28 Use-case Model Use-case Model Drives the development process Developers Create design & implementation model Check models for conformance Testers Test to ensure use case implementation


Download ppt "PROC-1 1. Software Development Process. PROC-2 A Process Software Development Process User’s Requirements Software System Unified Process: Component Based."

Similar presentations


Ads by Google