1 / 16

UML Approach for Software Engineering

Learn about the Unified Process, a UML approach for software engineering that is use-case driven, architecture-centric, and iterative/incremental.

Télécharger la présentation

UML Approach for Software Engineering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter – 1 THE UNIFIED PROCESS Shishir Gupta

  2. The UML Approach • USECASE DRIVEN • ARCHITECTURE CENTRIC • ITERATIVE & INCREMENTAL

  3. What is Software Engineering • Software development process. • Set of activities needed to transform a user’s requirement into a software system User’s Requirement Software System SOFTWARE DEVELOPMENT PROCESS

  4. Aspects of the Unified Process • Component Based • Software Components (Classes) • Well Defined Interface (Class Methods) • Use-Case Driven • Architecture Centric. • Iterative and Incremental.

  5. Use-Case Driven • A software system is brought into existence to serve its users. • To build a successful system we must know what its users want and need. • The user can represent someone or something. • The user interacts with the system being developed to obtain some utility.

  6. Use-Case Driven • The interaction with the system is called a USE CASE. • USE CASE is functionality of the system which a user a result of value. • All the USE CASEs together make up the USE CASE MODEL.

  7. Login Order Secure Payment Browse Catalog Select Items And quantities Send E-mail to Customer Store Personal Information Send Order to Store Use-Case Driven

  8. Use-Case Driven • What is the system suppose to do for each user? • Focus on User Requirement and not the functions that might be good to have. • It drives the development process. • Developed in tandem with the system architecture.

  9. Architecture Centric • Is a view of the whole design with important characteristics made more visible by leaving details aside. • Helps focus on the right goals such as under-standability, resilience to future changes and reuse. • Addresses the static and dynamic aspect of the system. • Grows out of the need of the enterprise, as sensed by the users, stockholders and as reflected in the Use Cases.

  10. Architecture Centric • Use Case when realized must fit into the architecture. • The architecture must allow the use case, when realized, to fit into it. • Use Cases and architecture must evolve in parallel. • The architecture is designed so as to allow the system to evolve, not only during its initial development but through future generations.

  11. Architecture Centric The architect : Creates an rough outline of the architecture that is not specified in the use cases. A general understanding of the use cases is required. Work with subset of identified use cases, the ones that represent key functions. As the use cases are specified & they mature More architecture is discovered. This in turn leads to maturation of more use cases.

  12. Iterative and Incremental • Divide work into small size mini-projects. • Each mini project is an iteration that results into an increment. • What to implement in an iteration: • Implement use cases that together extends the usability of the product developed so far. • Attempt the use cases which deals with most important risks.

  13. Iterative and Incremental In every iteration the developer : • Identifies and specifies the relevant use cases. • Creates a design using the chosen architecture as a guide. • Implement the design in components. • Verify that components satisfies the use cases

  14. Stages in Software Development Process THE SPIRAL MODEL

  15. Stages in Software Development Process ITERATIONS

  16. Stages in Software Development Process RELEASES

More Related