• Shuffle
    Toggle On
    Toggle Off
  • Alphabetize
    Toggle On
    Toggle Off
  • Front First
    Toggle On
    Toggle Off
  • Both Sides
    Toggle On
    Toggle Off
  • Read
    Toggle On
    Toggle Off
Reading...
Front

Card Range To Study

through

image

Play button

image

Play button

image

Progress

1/26

Click to flip

Use LEFT and RIGHT arrow keys to navigate between flashcards;

Use UP and DOWN arrow keys to flip the card;

H to show hint;

A reads text to speech;

26 Cards in this Set

  • Front
  • Back

What is a model and what is modelling?

Modelling is a way of thinking about things and ideas in the ‘real world’.



A model, in terms of software development, is an abstract representation of a specification, a design or a system, from a particular point of view. In general, it is a simplification of reality, created in order to understand an aspect or viewpoint of the system in question.

In terms of the development of software systems, what are models? (3 bullet points)


  • A way of understanding the problems involved.



  • An aid to communication among those involved, especially between the developer and the user, as part of some deliverable.



  • A component of the processes used in development activities such as analysis and design.

What is a ‘good model’?

A ‘good model’ is an abstraction that allows those involved to concentrate on the essentials of a complex problem by excluding non-essential details while capturing those of interest.

What are the two kinds of rules that govern the use of a diagram-based modelling language?

There are two distinct kinds of rule:



  • those that determine whether or not a diagram is legal – its syntax



  • those that define what a legal diagram means – its semantics.

  1. What are the required characteristics of a standard modelling language? (5 bullet points).

When choosing a modelling language, it should be:



  • sufficiently expressive


  • easy to learn and use


  • unambiguous


  • widely used


  • supported by suitable tools

Does a modelling language need to be associated with a particular development process?

No, a modelling language does not dictate how it should be used and it is up to a development process to define which notations are appropriate and how they should be used. With experience practitioners tend to pick and mix from different modelling languages and use the notations that are most appropriate to the task – most modelling languages do not provide notations for all types of tasks.

How does a standard modelling language contribute to software development?

A standard modelling language helps when new people join a project – a common modelling language reduces the time needed to enable them to become productive team members. Also, when a modelling language is widely used, it is likely that project components will have been constructed using that language. This makes the software easier and cheaper to maintain.

Should you try to capture everything about a design in a single model?

No, because you will be interested in different aspects of a design at different times, and different models of your design will be built to reflect your interpretations of users’ needs.

What is the difference between a structural (or static) model and a behaviour (or dynamic) model?

A structural model describes the elements of the system and their relationships to other elements.



A behaviour model describes the behaviour of a system over a period of time.

Do the models used in a given development project need to be consistent?

Yes, the whole set of diagrams should contain the different aspects of a single software system, so they should not contradict one another. For example, there must be some consistency checking between the static and dynamic models. This can be automated by a suitable tool.

What is the Unified Process (UP)?

The Unified Process is an iterative and incremental development process for building enterprise systems based on an object-oriented approach, and using UML.

What is timeboxing?

Timeboxing means that a (usually) short fixed period – for example, three to four weeks – is devoted to each development iteration.

What are the four major phases of a UP project?

​A UP project is organised into four major phases:



  1. Inception. The business case is developed, together with an idea of the scope of the system and a rough estimate of the effort required.

  2. Elaboration. The core of the system is developed in an iterative fashion. In this phase all major risks are addressed and resolved, most of the requirements are identified and dealt with, and a more realistic estimate of the effort required is made.

  3. Construction. The final product is constructed, including the remaining lower-risk and easier elements of the system, again in an iterative fashion.

  4. Transition. This includes beta testing and deploying the system.

A system’s architecture includes models that address five different views, what are those views? Briefly explain each one.

 



	
	The use case view contains the basic scenarios that describe the users and the tasks that they need to perform with the aid of a software system. These scenarios are partitioned into use cases, which we will describe in Unit 3.

	

...


  • The use case view contains the basic scenarios that describe the users and the tasks that they need to perform with the aid of a software system. These scenarios are partitioned into use cases, which we will describe in Unit 3.



  • The logical view is concerned with the functional requirements of the software system. What should the software do for its intended users? Typically this involves the construction models that represent the main elements of a system and how they interact. We will discuss these models from Block 2 Unit 5 onwards.



  • The implementation view is concerned with the organisation of the code modules that comprise a software system. Typically it addresses the management of source code, data files and executables.



  • The deployment view is concerned with the relationship between the various executables (and other run-time components) and their intended computer systems.



  • The process view is concerned with aspects of concurrency. What are the processes and threads? How do they interact? It deals with such things as response time, deadlock and fault tolerance.

What are the 7 core activities (phases) that will be used in TM354 (based on UP disciplines) to develop software?

  • Domain modelling



  • Requirements



  • Analysis



  • Design



  • Implementation



  • Testing



  • Deployment

What is the purpose of the domain modelling phase? (i.e. what do we seek to gain an understanding of by domain modelling?)

Domain modelling is concerned with gaining an understanding of the environment in which any system that is designed must operate.

What artefacts (things) are produced during the domain modelling phase? What is the role of each artefact?

During domain modelling, we produce the following artefacts:



  • Initial problem statement – a description of the problem


  • Behaviour model – a description of the business processes and behaviour of the domain



  • Business rules – constraints on the way the behaviour model operates



  • Glossary – definitions of relevant terms



  • Structural domain model – an initial structural model representing the concepts relevant to the domain.

What is the purpose of the requirements phase?

The requirements phase is concerned with establishing and modelling what a software system must do.

What is the Volere template? In what phase of software development is the Volere template used?

The Volere template provides a disciplined way of recording requirements. The requirements phase comes after the domain modelling phase.

What is the purpose of the analysis phase?

In the Analysis phase we start modelling the structure and behaviour of a software solution from a user’s perspective.

What is the purpose of the design phase?

The design phase is concerned with making decisions concerning how a system will meet its specification.

What two artefacts are produced during the design phase? What is each artefact's role?

During design you produce the following artefacts:



  • Structural model, an updated version of the one produced during analysis but with its operations specified


  • Behavioural models, showing how objects in the system will interact and behave internally, and also how functionality will be distributed across the system.

What does UP mean and what are its 2 initial phases?

UP means unified process.



Its 2 initial phases are Inception and elaboration.

What is inception?

Inception is the initial planning phase of development.


What is elaboration?

Elaboration is the phase where most of the analysis and design occur.

What is a sprint?

A sprint is a timeboxed period of a maximum of a month where usable software is delivered.