Lean Enterprise Academy - Home What is use case? - Definition from WhatIs.com A use case is a methodology used in system analysis to identify, clarify, and organize system requirements. The use case is made up of a set of possible sequences of interactions between systems and users in a particular environment and related to a particular goal. It consists of a group of elements (for example, classes and interfaces) that can be used together in a way that will have an effect larger than the sum of the separate elements combined. A use case (or set of use cases) has these characteristics: Organizes functional requirementsModels the goals of system/actor (user) interactionsRecords paths (called scenarios) from trigger events to goalsDescribes one main flow of events (also called a basic course of action), and possibly other ones, called exceptional flows of events (also called alternate courses of action)Is multi-level, so that one use case can use the functionality of another one. This was last updated in April 2007 Email Alerts More News and Tutorials
Activity Diagrams: What They Are and How to Use Them In its basic form, an activity diagram is a simple and intuitive illustration of what happens in a workflow, what activities can be done in parallel, and whether there are alternative paths through the workflow. Activity diagrams as defined in the Unified Modeling Language1 are derived from various techniques to visually illustrate workflows; see, for example, Johansson et al.2. And much of the basis for the definition of the activity diagram notation is found in Martin and Odell.3. In the Rational Unified Process4, we talk about how you can use activity diagrams to visualize the workflow of a business use case. Historically, activity diagramming techniques have mostly been used in the business process modeling domain, but this article will also briefly discuss how you can use it in the system modeling domain. The purpose of this article is to show how you can use activity diagrams within the Rational Unified Process for business modeling as well as system modeling. Click to enlarge 1. 2.
Using Spikes The XP practice of ‘spiking’ has been around for a while but there isn’t a whole lot written about it. Why Spike? The XP site states that the purpose of a spike is “to figure out answers to tough technical or design problems”. An aid to design Design sessions can be difficult to focus. Expand knowledge Pulling in information from the outside world, searching for similar problems and the solutions used to tackle them exposes the team to new ways of thinking, new techniques and new technologies. Generate ideas Often the effort involved in figuring out potential solutions generates new understanding and insight that can be applied to other areas of how we work and the systems we create. Prevent stalling Spiking can be used to invest time and thought into developing countermeasures to known upcoming issues so that they can be tackled in a controlled way. Safely cover more ground Explore the problem space and try out different possible solutions without the risk of disrupting the work of others. When
Chapter 21: Designing Web Applications For more details of the topics covered in this guide, see Contents of the Guide. In this chapter, you will learn the general design considerations and key attributes for a Web application. This includes the guidelines for a layered structure; guidelines for performance, security, and deployment; and the key patterns and technology considerations. A Web application is an application that can be accessed by the users through a Web browser or a specialized user agent. Figure 1 The typical structure of a Web application The presentation layer usually includes UI and presentation logic components; the business layer usually includes business logic, business workflow and business entities components, and optionally a façade; and the data layer usually includes data access and service agent components. Partition your application logically. For more information on general design considerations, see Chapter 17 "Crosscutting Concerns." Application Request Processing Authentication Authorization Caching
Activity Diagram in UML Identifying the activities and transitions for managing course information The course administrator is responsible for managing course information in the Courseware Management System. As part of managing the course information, the course administrator carries out the following activities: Check if course existsIf course is new, proceed to the "Create Course" stepIf course exists, check what operation is desired—whether to modify the course or remove the courseIf the modify course operation is selected by the course administrator, the "Modify Course" activity is performedIf the remove course operation is selected by the course administrator, the "Remove Course" activity is performed In the first step in this Activity diagram, the system determines whether the course that is to be managed is a new course or an existing course. This completes the activities involved in managing course information carried out by the course administrator. UML Activity diagram Summary About the Authors Mandar S.
Feature Injection: three steps to success Feature Injection is a business analysis process framework that allows teams to exploit the value of the traditional business analysis techniques in projects involving frequent iterative deliveries, such as the ones implemented using agile and lean processes. It focuses test-driven-development and behaviour-driven-development on delivering business value and ensures that a team only builds features and projects that deliver value, avoiding the wastes of scope creep and just-in-case code. This article is a high level introduction of Feature Injection and related techniques. Why should you care about Feature Injection? Imagine that you are working for the IT department of an online store that sells books and consumer electronics, and the VP of marketing starts a new project to integrate with a third party sales analytics solution. Three steps of Feature Injection Feature Injection was discovered through practice rather than designed as a process. Hunt the value. Hunt the value
Extreme Programming: A Gentle Introduction. Creating Use Case Diagrams In the previous two articles, you saw a brief review of the nine UML diagrams and what kind of tools can be used to model UML diagrams. Now that you have the clear , you'll start to learn about the the nine UML diagrams. In this article, you'll explore the Use case diagram. Basics of Use Case Diagrams Before starting off today's article, iti is worth revisiting the definition of use a case diagram, as described in the first article. The Use case diagram is used to identify the primary elements and processes that form the system. The above statement pretty much sums up what a use case diagram is primarily made up of—actors and use cases. A use case diagram captures the functional aspects of a system. So who should normally be involved in the creation of use cases? Elements of a UML Use Case Diagram A use case diagram is quite simple in nature and depicts two types of elements: one representing the business processes and the other representing the business roles. Page 1 of 4
SOLID (object-oriented design) In computer programming, SOLID (Single responsibility, Open-closed, Liskov substitution, Interface segregation and Dependency inversion) is a mnemonic acronym introduced by Michael Feathers for the "first five principles" named by Robert C. Martin[1][2] in the early 2000s[3] that stands for five basic principles of object-oriented programming and design. The principles when applied together intend to make it more likely that a programmer will create a system that is easy to maintain and extend over time.[3] The principles of SOLID are guidelines that can be applied while working on software to remove code smells by causing the programmer to refactor the software's source code until it is both legible and extensible.
20 Things I Learned About Browsers and the Web IllustrationChristoph Niemann Writers/EditorsMin Li Chan, Fritz Holznagel, Michael Krantz Project CuratorMin Li Chan & The Google Chrome Team DesignFiPaul Truong DevelopmentFi Very Special Thanks To Brian Rakowski, Ian Fette, Chris DiBona, Alex Russell, Erik Kay, Jim Roskind, Mike Belshe, Dimitri Glazkov, Henry Bridge, Gregor Hochmuth, Jeffrey Chang, Mark Larson, Aaron Boodman, Wieland Holfelder, Jochen Eisinger, Bernhard Bauer, Adam Barth, Cory Ferreria, Erik Arvidsson, John Abd-Malek, Carlos Pizano, Justin Schuh, Wan-Teh Chang, Vangelis Kokkevis, Mike Jazayeri, Brad Chen, Darin Fisher, Johanna Wittig, Maxim Lobanov, Marion Fabing Nicolas, Jana Vorechovska, Daniele De Santis, Laura van Nigtevegt, Wojtek Cyprys, Dudley Carr, Richard Rabbat, Ji Lee, Glen Murphy, Valdean Klump, Aaron Koblin, Paul Irish, John Fu, Chris Wright, Sarah Nahm, Christos Apartoglou, Meredith Papp, Eric Antonow, Eitan Bencuya, Jay Nancarrow, Ben Lee, Gina Weakley, Linus Upson, Sundar Pichai & The Google Chrome Team