6.5 More about actors In the hotel example, you saw two actors in the use case diagram shown in Figure 3 (reproduced below). Why is the actor Guest associated with the use case for making a reservation but not associated with the use cases for checking in and out? The answer comes from an understanding of what happens when someone, a guest, arrives at a hotel. Hotels are service oriented. That is to say, they offer certain services to their guests with the intention of earning money for the business. A hote
6.4 Scenarios The purpose of a use case is to meet the goal of its associated actor(s), such as a guest making a reservation with a hotel. This implies that a use case should include everything that must be done to meet that goal. For example, if it is necessary to check the availability of rooms in the hotel for the desired length of stay before accepting a reservation, then we expect the use case to contain that check. In general, a use case contains a narrative about the flow of events that specifies a
6.2 Actors Iteration is a natural part of the modelling process. It does not matter whether you start by looking for the actors or the use cases. We have chosen to begin with the actors, since it is a way of expressing the system boundary implicitly and identifying the different views that need to be taken into account. In practice, you are likely to find that the actors are to be found in the roles that people play as employees in the problem domain, such as the hotel's receptionist or manager. A
6.1 Use case modelling In this section, we take a closer look at use case modelling, and show you how it can be used to model the requirements for a product that includes the development of a software application or, simply, a system. Use case models act as a discussion tool between the requirements analyst and stakeholders, and offer a common language for agreeing the functions of a proposed system. In this discussion, we shall use the Unified Modelling Language (UML) notation (diagrams) for use cases to re
5.1 More information about modelling techniques The four remaining diagramming techniques are described in separate sections below, which you should now study: 4.1 What is a data flow diagram? A data flow diagram (DFD) is a graphical description of the ebb and flow of data in a given context. A DFD allows you to identify the transformations that take place on data as it moves from input to output in the system. (DFDs pre-date UML diagrams, but still have a complementary role to play in describing systems.) The Case Study below provides an example of a DFD used to describe the Open University's eTMA system (electronic Tutor Marked Assignment system). It uses the Learning outcomes After studying this course, you should be able to: explain why modelling plays a key role in eliciting requirements identify the different kinds of model used in eliciting requirements explain the need for modelling languages interpret a data flow diagram describing a simple process interpret a use case diagram describing a system's response to a business event. Acknowledgements The content acknowledged below is Proprietary (see terms and conditions) and is used under licence. Course image: gothopotam in Flickr made available under Author(s): Conclusion Relational database systems underpin the majority of the managed data storage in computer systems. In this course we have considered database development as an instance of the waterfall model of the software development life cycle. We have seen that the same activities are required to develop and maintain databases that meet user requirements. 1.6.3 Supporting users and user processes Use of a database involves user processes (either application programs or database tools) which must be developed outside of the database development. In terms of the three-schema architecture we now need to address the development of the external schema. This will define the data accessible to each user process or group of user processes. In reality, most DBMSs, and SQL itself, do not have many facilities to support the explicit definition of the external schema. However, by using built-in q 1.6.1 Realising the design So far we have been concerned only with the specification of a logical schema. We now need our database to be created according to the definitions we have produced. For an implementation with a relational DBMS, this will involve the use of SQL to create tables and constraints that satisfy the logical schema description and the choice of appropriate storage schema (if the DBMS permits that level of control). One way to achieve this is to write the appropriate SQL DDL statements into a f 1.6 Implementation Implementation involves the construction of a database according to the specification of a logical schema. This will include the specification of an appropriate storage schema, security enforcement, external schema, and so on. Implementation is heavily influenced by the choice of available DBMS, database tools and operating environment. There are additional tasks beyond simply creating a database schema and implementing the constraints – data must be entered into the tables, issues relating 1.5 Design Database design starts with a conceptual data model and produces a specification of a logical schema; this will usually determine the specific type of database system (network, relational, object-oriented) that is required, but not the detailed implementation of that design (which will depend on the operating environment for the database such as the specific DBMS available). The relational representation is still independent of any specific DBMS; it is another conceptual data model. Our 1.4 Analysis Data analysis begins with the statement of data requirements and then produces a conceptual data model. The aim of analysis is to obtain a detailed description of the data that will suit user requirements so that both high and low level properties of data and their use are dealt with. These include properties such as the possible range of values that can be permitted for attributes such as, in the Open University example for instance, the course code, course title and credit points. 1.1 Introduction In this course we look at an outline of the stages involved in the development of a database. We consider the broader issue of how to decide what should be in a database and how to structure the tables that should be included. Our aim is to give you a basic development method so that you can see how a basic database system is developed. We don't argue that this specific method is the most applicable to any given situation – however, we do consider that this method is straightforward and wil Learning outcomes After studying this course, you should be able to: describe the key points of the waterfall model applied to database development appreciate the roles of various development artefacts, such as the data requirements document, conceptual data model and such like used to communicate between activities in the database development life cycle communicate effectively about aspects of the development of databases. Key skill assessment: Improving your own learning and performance Key skills - making a difference Leadership: external context and culture Am I ready to study in English?
Diagramming Technique Section Use case modelling Use Cases and Activity Diagrams Activity diagrams Use Cases and Activity Diagrams Entity–r
Learning new skills is what makes us human but can we improve how we go about learning new things in new situations? Learning how to learn can help you to understand what works for you and what doesn't when you set out to learn new skills, either for work, your education, training or everyday life. In this free course, Key skill assessment: Improving your own learning and performance, you will learn to recognise, use and adapt your skills confidently and effectively in different situations and
This free course, Key skills - making a difference, focuses on higher level skills. Skills development is complementary to other learning it cannot be done in isolation. The higher level skills in this material aim to raise your awareness of the processes of learning and development other subject-based material must supply the context and motivation for this. Key skills underpin the ability to carry out successfully, and improve on, a wide range of tasks in higher education, employment and w
Through studying this free course, Leadership: external context and culture, you will develop your understanding of the impact of external context and culture on the practice of leadership. The course begins by exploring the nature ‘societal culture’, identifying how culture, at a number of levels, impacts on leadership. We then explore how the external context within which an organisation operates impacts on the factors that leaders need to take account of and consequently the exercise of l
Even if you feel confident using English in everyday situations, studying in English at higher education level might present extra challenges. This free course, Am I ready to study in English?, provides an opportunity for you to reflect on your English language skills through a series of academic exercises. First published on Mon, 24 Oct 2011 as Author(s):