Java Software Development Units 12-14

Description

Java Software Development Flashcards on Java Software Development Units 12-14, created by nina.evangelou on 18/09/2013.
nina.evangelou
Flashcards by nina.evangelou, updated more than 1 year ago
nina.evangelou
Created by nina.evangelou about 11 years ago
65
0

Resource summary

Question Answer
animate agent An independently acting cause of change in the human environment. design for all
design heuristic A piece of relatively concrete advice for designing a user interface: a rule of thumb that may not always be applicable, but is frequently useful.
design rationale Documentation of a designer’s suggested improvement to a user interface, in the context of a particular design heuristic.
effectiveness (in the context of a user interface) How well the user interface enables the user to get the right thing done.
efficiency (in the context of a user interface) How much of a resource has to be expended for a user to get a job done via the user interface.
heuristic evaluation An assessment of a user interface with reference to particular design heuristics.
information flow The input from the user and the output from the system.
initial widget table A table setting out the information flow and the widgets to be used in the initial prototype screen for a particular use case.
NASA TLX (Task Load Index) tool A tool that measures a user’s impression of their workload when carrying out some task, based on a multidimensional rating procedure that calculates an overall workload score based on a weighted average of ratings on six subscales: frustration, mental demands, physical demands, temporal demands, own performance and effort.
Reasoning by class An innate form of human reasoning, derived from a form of reasoning about animals, which can be described as follows. If we observe that just one animal of a particular unfamiliar type has a certain kind of behaviour (e.g. bites, flies, lays eggs), then it is a fairly good assumption that any other animal of that type will do the same.
Reasoning by inheritance An innate form of human reasoning, derived from a form of reasoning about animals, which can be described as follows. If we are given the single piece of information that one type of animal (animal A) is a special kind of another animal (animal B) then any time we encounter animal A, we will know that it can do everything that animal Bs do, and probably some extra things.
Sketchpad The first computer system to make a substantial contribution to the discipline of HCI, implemented by Ivan Sutherland in 1962 as part of his PhD thesis
storyboard A diagrammatic representation of a user interface, which may show the navigation through screens.
tabbed screen One of a set of screens, each with a tab at the top. To move from one screen to another, the tab of the desired screen is clicked on
think-aloud A simple usability testing technique which involves the user speaking aloud what they are thinking when using the user interface to perform tasks.
universal access An approach to development whose key idea is that effort should be expended to find simple ways in which small changes to a system could make it more widely accessible
usability Refers to how easily and quickly a product enables users to achieve their goals, how quickly users learn to use the product’s interface and what the users’ attitude is towards the interface. The ISO 9241 (Part 11) definition of usability is: The extent to which a product can be used by specified users to achieve specified goals [tasks] with effectiveness, efficiency, and satisfaction in a specified context of use.
usability testing Assessing the usability of an interface.
user-centred approach An approach to developing software which focuses on what users find easy and what they find difficult.
user interface designer A software developer whose particular responsibility is the user interface.
user needs analysis document A record of the results of user needs analysis, containing information about users, tasks and situations, and giving user interface designers a concrete basis on which to work.
user satisfaction (in the context of a user interface) How satisfied the user is in interacting with the system via the user interface
Xerox Star A landmark computer system in HCI history, which laid the foundations of modern GUI interfaces and was associated with seminal user interface design ideas.
Abstract Windowing Toolkit (AWT) Java classes, defined in the package java.awt, including classes implementing events and layout managers.
container A Swing component which contains other visual components. Every Swing GUI must have a top-level container in which the rest of the GUI components are nested.
event (in a GUI) Something that happens when a user interacts with a GUI; typically initiated by a mouse operation, although the keyboard also generates events. In Java an object is created to represent each event that occurs. Code must be associated with an event in order that the system can react appropriately to it.
event handler method A method in which event handling code is written
event handling code Code that specifies the action to be taken in response to a particular event.
helper method A private method that exists simply to assist the work of another method in the same class
layout manager A Java object that controls how Swing components can be laid out in a container.
listener An instance of the class in which a handler method is implemented.
persistence The ability of a system to save state from one execution to the next.
scroll pane A widget that displays scrollbars as and when they are required. If there are too many items, a vertical scroll bar will automatically appear. If an item is too wide, a horizontal scrollbar will automatically appear.
structured English A description of code which has some of the structure of code but without the syntax of a programming language
Swing Java classes, defined in the package java.swing, used for programming GUIs.
top-level container A component which is the overall container for the components in a GUI.
visual component A Java implementation of a widget
agile method An approach to software development typically involving a small team working on an ambitious project, operating outside normal company policies and to a tight schedule.
architecture A term used in different ways in software engineering, the common theme being concentration on the overall organisation of a system: viewing the system in some abstract, high-level way, ignoring smaller details.
business domain tier In a tiered architecture, a tier corresponding to the core system. This contains the parts of the system specific to a business area, which process data and generate information.
client–server architecture A logical architecture consisting of two tiers: a client and a server.
computer architecture A view of the different computer elements that a system uses – hardware elements such as different processors and so on.
concurrency control Regulating access to shared data to prevent problems associated with concurrent access.
concurrent access (to a system) Simultaneous use of a system by two or more users or clients.
dependency There is a dependency, or usage, between two components when elements in one component rely on, or in some way use, elements in the other.
deployment How the various components that go to make up a distributed system are physically arranged, i.e. what physical computer or computers each part of the software runs on, and how these computers communicate.
deployment diagram A diagram illustrating how a system’s components are deployed.
design pattern n A tried and tested outline design applicable across a range of software systems, describing a recurring theme in elegant and respected designs. Typically, the description takes the form of a ‘solution’ which can be applied to a ‘problem’ which may arise in different contexts. Design patterns are commonly classified as structural (concerned with the system’s structure), creational (concerned with how objects are created), or behavioural (concerned with interactions within the system).
distributed system A system involving more than one computer connected by a network.
Dynamic Systems Development Method (DSDM) A significant form of RAD devised by the not-for-profit organisation DSDM Consortium
eXtreme Programming (XP) An example of an agile method
façade class s A class added to a component, as described by the Façade pattern, to provide a primary means of interaction with the component. In M256, such a class is termed the coordinating class.
façade object An instance of a façade class. In M256, such an object is termed the coordinating object
Façade pattern An example of a structural design pattern
information system A system which involves calculating and providing information for the user.
lock A means of providing uninterrupted access to an object.
logical architecture A view of a system’s software which is concerned with the organisation of the software classes into larger components, and which concentrates on how the overall system is constructed from major components, how the components are connected and how they work together
model–view separation principle A software design principle which states not only that the business domain (the ‘model’) and the user interface (the ‘view’) should be separate entities, but that the business domain should not depend on the user interface
multi-user system A system which several users may access via different computers.
network architecture A view of how the different computers involved in a system are connected.
open source software Software developed using open source software development.
open source software development An approach to software development whose key feature is that source code is made publicly available on a website, free for anybody to copy, modify and use (subject to licence agreements).
package diagram A diagram illustrating a system’s components and their dependencies.
Publish–Subscribe pattern An example of a behavioural design pattern.
rapid application development (RAD) A software development method based on time boxing.
Rational Unified Process (RUP) A description of a set of iterative software development methods having in common a set of ‘best practice’ elements. The RUP was devised by the software development experts who were also involved in developing the UML.
Remote Method Invocation (RMI) A Java mechanism that allows a program to send messages to a Java object which is in a different JVM and running on a different computer.
serialisable (object) A serialisable object is one whose class implements the Serializable interface and can therefore be represented in a way that enables it to be stored in a file (i.e. persist) or sent over a network.
singleton An object that is the only instance of its class, as described by the Singleton pattern.
Singleton pattern An example of a creational design pattern.
storage tier In a tiered architecture, a tier which provides a persistent data-storage mechanism, such as a database. Also known as the back end of the system.
three-layered architecture or three-tiered architecture A logical architecture consisting of three tiers: a user interface tier, a business domain tier and a storage tier. Also known as a three-layered architecture.
tier An element in a system’s logical architecture. Also known as a layer. A tier can be considered as a component with distinct responsibilities such that: c a lower tier has lower-level responsibilities; c higher tiers have responsibilities that are increasingly specific to the business area; c higher tiers may depend on lower tiers but not vice versa.
tiered architecture A logical architecture which is structured as a series of tiers.
timeboxing The practice of partitioning the timescale of a software development project into timeboxes, each corresponding to an iterative cycle and in each of which requirements are prioritised. Timeboxing is a key feature of RAD.
user interface tier In a tiered architecture, a tier giving a ‘view’ of the information provided by the system, using windows, spreadsheets, forms etc. Also known as the front end of the system.
Show full summary Hide full summary

Similar

Java Software Development Units 4-5
nina.evangelou
Java Software Development Unit 2
nina.evangelou
Java Software Development Unit 3
nina.evangelou
Java Software Development Units 6-9
nina.evangelou
Java Software Development Units 10-11
nina.evangelou
Java Software Development  Unit 1
nina.evangelou
Java Software Development Units 4-5
kjkljlkjlkj lkjlkjlkjlk
Java Software Development  Unit 1
Diana Lăcrămioara Danciu
B2:keeping healthy
justbuysomemilk
Themes in Lord of the Flies
lowri_luxton