Software Engineering Tools and Methods Presented by: Mohammad Enamur Rashid(2009-1-96-04) Mohammad Rashim Uddin(2009-1-96-008) Masud Ur Rahman(2009-1-96-009)

Slides:



Advertisements
Similar presentations
Chapter 5 Development and Evolution of User Interface
Advertisements

Software Quality Assurance Plan
Prescriptive Process models
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
1 Software Processes A Software process is a set of activities and associated results which lead to the production of a software product. Activities Common.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Software Project Management
1 Chapter 4 - Part 1 Software Processes. 2 Software Processes is: Coherent (logically connected) sets of activities for specifying, designing, implementing,
Chapter 2 – Software Processes Lecture 1 1Chapter 2 Software Processes.
Software Processes Coherent sets of activities for specifying, designing, implementing and testing software systems.
Irwin/McGraw-Hill Copyright © 2000 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS5th Edition.
Lesson-12 Information System Development-2
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Process Models.
©Ian Sommerville 2000 Software Engineering, 6th edition Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing.
Irwin/McGraw-Hill Copyright © 2000 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS5th Edition.
1 SWE Introduction to Software Engineering Lecture 5.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
CASE Tools CIS 376 Bruce R. Maxim UM-Dearborn. Prerequisites to Software Tool Use Collection of useful tools that help in every step of building a product.
L ECTURE 2 S OFTWARE P ROCESSES 1. O BJECTIVES To describe outline process models for requirements engineering, software development, testing and evolution.
DITSCAP Phase 2 - Verification Pramod Jampala Christopher Swenson.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Configuration Management
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Chapter 3 Software Processes.
©Ian Sommerville 1995 Software Engineering, 5th edition. Chapter 22Slide 1 Verification and Validation u Assuring that a software system meets a user's.
Guide to the Software Engineering Body of Knowledge Chapter 1 - Introduction.
Chapter 2 The process Process, Methods, and Tools
1 CSE 2102 CSE 2102 CSE 2102: Introduction to Software Engineering Ch9: Software Engineering Tools and Environments.
Software Processes Sumber dari : cc.ee.ntu.edu.tw/~farn/courses/SE/ch4.ppt.
Software Models (Cont.) 9/22/2015ICS 413 – Software Engineering1 -Component-based software engineering -Formal Development Model.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
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.
Programų kūrimo priemonės Software Development Tools P175M025 4 semestas E.Karčiauskas + T.Blažauskas.
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 1 Slide 1 Software Processes (Chapter 3)
Topic (1)Software Engineering (601321)1 Introduction Complex and large SW. SW crises Expensive HW. Custom SW. Batch execution.
Software Processes lecture 8. Topics covered Software process models Process iteration Process activities The Rational Unified Process Computer-aided.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Chapter 2: Software Process Omar Meqdadi SE 2730 Lecture 2 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 3 Slide 1 Software Processes l Coherent sets of activities for specifying, designing,
Odyssey A Reuse Environment based on Domain Models Prepared By: Mahmud Gabareen Eliad Cohen.
Overview of Formal Methods. Topics Introduction and terminology FM and Software Engineering Applications of FM Propositional and Predicate Logic Program.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
An Introduction to Software Engineering
Software Design Process
Developed by Reneta Barneva, SUNY Fredonia The Process.
Requirements Engineering-Based Conceptual Modelling From: Requirements Engineering E. Insfran, O. Pastor and R. Wieringa Presented by Chin-Yi Tsai.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Modelling the Process and Life Cycle. The Meaning of Process A process: a series of steps involving activities, constrains, and resources that produce.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
ANALYSIS PHASE OF BUSINESS SYSTEM DEVELOPMENT METHODOLOGY.
PI2134 Software Engineering IT Telkom.  Layered technology  Software Process  Generic Process (by Pressman)  Fundamental activities (by Sommerville)
Irwin/McGraw-Hill Copyright © 2000 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS5th Edition.
A framework that describes the activities performed at each stage of a software development project. A life-cycle or a software process is the organisational.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
CS 310 Ch 4: Software Processes Software process: a set of activities that lead to a software system specification design and implementation validation.
1 Process activities. 2 Software specification Software design and implementation Software validation Software evolution.
CIS 375 Bruce R. Maxim UM-Dearborn
Chapter3:Software Processes
Software Project Configuration Management
Chapter 11: Software Configuration Management
Software Processes (a)
Verification and Validation Unit Testing
Chapter 11: Software Configuration Management
Chapter 2 Software Processes
Presentation transcript:

Software Engineering Tools and Methods Presented by: Mohammad Enamur Rashid( ) Mohammad Rashim Uddin( ) Masud Ur Rahman( ) Farhana Haq Bilashi( ) EAST WEST UNIVERSITY, BANGLADESH

INTRODUCTION  Software Engineering Methods are intended to make software engineering more systematic.  Software development environment are the computer based tools that are intended to assist the software life cycle processes.  Tools are often designed to support particular software engineering methods.

Software Engineering Tools and Methods  Software Engineering tools represent a set of management and technical tools to support software development, usually integrated in a coherent framework  Methods usually provide a notation and vocabulary, procedures for performing identifiable tasks, and guidelines for checking both the process and the product.

Software Engineering Tools  Software Engineering tools evolve rapidly and continiously.In this paper they describe some particular tools.  These are  Software Design Tools  Software Construction Tools  Software Requirement Tools  Software Testing Tools  Software Maintenance Tools  Software Configuration Management Tools  Software Engineering Management Tools  Software Engineering Process Tools  Software Quality Tools  Infrastructure Support Tools  Miscellaneous Tools Issues

Software Requirements Tools  These Tools are classified into two categories  Requirements modeling tools  Requirement traceability tools  Requirements modeling tools These tools are used for eliciting, analyzing, specifying, and validating software requirements  Requirement traceability tools Since they are also relevant in other life cycle processes, they are presented separately from the requirements modeling tools.

Software Design Tools  Creating Software Designs  Checking Software Designs.

Software Construction Tools  These tools are concerned with  Production of the program representation  Translation of the program representation  These tools are  Program Editors Creation and Modification Of Programs  Compiler and Code generators Non Interactive translators of source code  Interpreters Provide Software execution through emulation  Debugger Support Construction Process

Software Testing Tools  These tools are categorized as  Test generators assist in the development of test cases.  Test execution frameworks enable the execution of test cases in a controlled environment where the behavior of the object under test is observed.  Test evaluation tools assessment of the results of test execution, helping to determine whether or not the observed behavior conforms to the expected behavior.  Test management tools Managing software testing process.  Performance analysis tools measuring and analyzing software performances

Software Maintenance Tools  These tools are categorized as  Comprehension tools assist in the human comprehension of programs. Ex:Animators  Reengineering tools examination and alteration of the subject software to reconstitute it in a new form  Reverse engineering tools Assist the process by working backwards from an existing product

Software Configuration Management Tools  These tools are categorized as  Tracking used in connection with the problem-tracking issues associated with a particular software product  Version management involved in the management of multiple versions of a product  Release tools. used to manage the tasks of software release and build

Software Engineering Management Tools  These are categorized as  Project Planning and Tracking used in software project effort measurement and cost estimation, as well as project scheduling  Risk Management used in identifying, estimating, and monitoring risks.  Measurement. assist in performing the activities related to the software measurement program

Software Engineering Process Tools  These are categories as  Process modeling tools These tools are used to model and investigate software engineering processes.  Process management tools provide support for software engineering management.  Process-centered software engineering environments incorporate information on the software life cycle processes and guide and monitor the user according to the defined process.  Integrated CASE environments Integrated computer-aided software engineering tools or environments covering multiple phases of the software engineering life cycle belong

Software Quality Tools  These are categories as  Review and Audit tools used to support reviews and audits  Static Analysis tools used to analyze software artifacts, such as syntactic and semantic analyzers, as well as data, control flow, and dependency analyzers

Miscellaneous Tool Issues  This are categories as  Tool Integration Techniques Used to make individual tools cooperate Integration techniques are applied  Meta-tools Meta-tools generate other tools; compiler-compilers are the classic example.  Tool Evaluation Evolve new tool

Software Engineering Methods  Methods usually provide a notation and vocabulary, procedures for performing identifiable tasks, and guidelines for checking both the process and the product  These are categorized as  Heuristic methods dealing with informal approaches.  Formal methods dealing with mathematically based approaches.  Prototyping methods dealing with software engineering approaches based on various forms of prototypings

Heuristic Methods  These are categories as  Structured methods The system is built from a functional viewpoint, starting with a high-level view and progressively refining this into a more detailed design.  Data-oriented methods the starting points are the data structures that a program manipulates rather than the function it performs  Object-oriented methods The system is viewed as a collection of objects rather than functions  Domain-specific methods includes specialized methods for developing systems which involve real-time, safety, or security aspects

Formal Methods  These are categorized as  Specification languages and notations This topic concerns the specification notation or language used. Specification languages can be classified as model-oriented, property-oriented, or behavior-oriented  Refinement This topic deals with how the method refines (or transforms) the specification into a form which is closer to the desired final form of an executable program.  Verification/Proving properties: This topic covers the verification properties that are specific to the formal approach, including both theorem proving and model checking

Prototyping Methods  These are categorized as  Prototyping styles The prototyping styles topic identifies the various approaches: throwaway, evolutionary, and executable specification  Prototyping targets Examples of the targets of a prototyping method may be requirements, architectural design, or the user interface  Prototyping evaluation techniques This topic covers the ways in which the results of a prototype exercise are used.s