Software Engineering Tools and Methods

18 slides
0.17 MB

Similar Presentations

Presentation Transcript


Software Engineering Tools and MethodsPresented by: Mohammad Enamur Rashid(2009-1-96-04) Mohammad Rashim Uddin(2009-1-96-008) Masud Ur Rahman(2009-1-96-009) Farhana Haq Bilashi(2009-1-96-002) EAST WEST UNIVERSITY, BANGLADESH


INTRODUCTIONSoftware 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 MethodsSoftware 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 ToolsThese 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 ToolsThese 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 ToolsThese 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 ToolsThese 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 ToolsThese 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 ToolsThese 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 IssuesThis 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 MethodsMethods 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 MethodsThese 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 MethodsThese 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 MethodsThese 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

Browse More Presentations

Last Updated: 8th March 2018

Recommended PPTs