Iterations and Phases. Phases. An RUP Case Study. Models and Workflows. Bringing It All Together... Workflows. Stuart Anderson

Similar documents
ENRS: an Object Oriented Approach. By Faris Kateb

NHS Information Standards Board

Project Request and Approval Process

Sharing of MOHH Approach to EA

Clinical Risk Management: Agile Development Implementation Guidance

Software Requirements Specification

When and Where to Apply the Family of Architecture- Centric Methods

CSE255 Introduction to Databases - Fall 2007 Semester Project Overview and Phase I

Why Isn t Someone Coding Yet (WISCY)? Avoiding Ineffective Requirements

Outsourced Product Development

Section 132 of the Mental Health Act 1983 Procedure for Informing Detained Patients of their Legal Rights

At a very high level, the Additional Funds financial aid certification process consisted of the following manual business steps:

DOD INSTRUCTION DEPOT SOURCE OF REPAIR (DSOR) DETERMINATION PROCESS

Project Management for Proposal Managers

SOFTWARE REQUIREMENTS SPECIFICATION Hospital Management System

GRANTfinder Special Feature

Requirements for the Mentcare system

Introduction to GRIP Governance for Railway Investment Projects

REQUEST FOR EXPRESSIONS OF INTEREST AFRICAN DEVELOPMENT BANK. Avenue Joseph Anoma, 01 B.P. 1387, Abidjan, CÔTE d'ivoire

Patient Unified Lookup System for Emergencies (PULSE) System Requirements

Using the Systems Engineering Method to Design A System Engineering Major at the United States Air Force Academy

Informing Patients of their Rights under Section 132

EU registry on industrial sites

Component Description Unit Topics 1. Introduction to Healthcare and Public Health in the U.S. 2. The Culture of Healthcare

SUPREME COURT OF NEW JERSEY. It is ORDERED that the attached amendments to Rules 4:74-7 and 4:74-

Admission to Hospital under Part II of the Mental Health Act 1983 and Mental Capacity Act 2005 Deprivation of Liberty Safeguards.

WHAT YOU NEED TO KNOW ABOUT YOUR LEGAL RIGHTS UNDER THE MENTAL HEALTH ACT

ERA Status Report: Design and Implementation Status of the NIH Commons

Supervised Community Treatment and Community Treatment Orders (S17(a)) Policy

WJEC LEVEL 3 APPLIED CERTIFICATE AND DIPLOMA IN HEALTH AND SOCIAL CARE

POLICY FOR THE IMPLEMENTATION OF SECTION 132 OF THE MENTAL HEALTH ACT (MHA) 1983 AS AMENDED BY THE MHA 2007:

CanSat Competition PDR and CDR Guide

MENTAL HEALTH (SCOTLAND) BILL

Policy: L5. Patients Leave Policy (non Broadmoor) Version: L5/01. Date ratified: 8 th August 2012 Title of originator/author:

Capability Integration

Community Health Partnerships (CHPs) Scheme of Establishment for Glasgow City Community Health and Social Care Partnerships

Information on Mental Health Law in Tennesseee. taken from TCA Annotated. There may be other legislation on the subject worth reviewing.

Mental Health Act 2007: Workshop. Approved Clinicians and Responsible Clinicians. Participant Pack

GOOD PRACTICE GUIDE. The Adults with Incapacity Act in general hospitals and care homes

The Concept of C2 Communication and Information Support

Matching System for Creative Projects and Freelance Workers: PaylancerHK

FREE Know your rights

INVERCLYDE COMMUNITY HEALTH AND CARE PARTNERSHIP - DRAFT SCHEME OF ESTABLISHMENT

Section 117 Policy The Mental Health Act 1983

Technical Charter (the Charter ) for. ONAP Project a Series of LF Projects, LLC

Trigger / Timing / Frequency: When a new award is received by the University and OSP determines that the award can be accepted.

VMware AirWatch Guide for the Apple Device Enrollment Program (DEP) Using Apple's DEP to automatically enroll new devices with AirWatch MDM

Unless this copy has been taken directly from the Trust intranet site (Pandora) there is no assurance that this is the most up to date version

Request for Proposal NYISO SGIG DBA RFP #: 12-7 NYISO DOE Smart Grid Investment Grant - Database Administrator Issued: February 2, 2012

Project Initiation Document

INTRODUCTION SOLUTION IMPLEMENTATION BENEFITS SUCCESS FACTORS LESSONS LEARNED. First phase of NEHR launched, with 15 care organisations

Core competencies for the care of acutely ill and injured children and young people. May 2006

Mission Threads: Bridging Mission and Systems Engineering

Northern Ireland Social Care Council. NISCC (Registration) Rules 2017

CHAIRMAN OF THE JOINT CHIEFS OF STAFF INSTRUCTION

VMware AirWatch Guide for the Apple Device Enrollment Program (DEP) Using Apple's DEP to automatically enroll new devices with AirWatch MDM

Quick Guide to A3 Problem Solving

V. RESPONSIBILITIES OF CSB:

NUMBER Department of Defense INSTRUCTION ASD(C3I)

REQUEST FOR STATEMENTS OF QUALIFICATIONS FOR ARCHITECTURAL PROGRAMMING SERVICES

Report No. D July 30, Data Migration Strategy and Information Assurance for the Business Enterprise Information Services

Page 1 of 5 ADMINISTRATIVE POLICY AND PROCEDURE

Certification of Employee Time and Effort

Proposal for a CG Educational Content Online Submission and Reviewing System

icardea Project: Personalized Adaptive Care Planner

CWE TM COMPATIBILITY ENFORCEMENT

NSERC Management Response: Evaluation of NSERC s Discovery Program

Author: Kelvin Grabham, Associate Director of Performance & Information

Guide to Advance Statement

UNIVERSITY OF TEXAS MD ANDERSON CANCER CENTER ODYSSEY FELLOWSHIP PROGRAM AND OUTSTANDING RESEARCH PUBLICATION AWARDS GUIDELINES

Nicolas H. Malloy Systems Engineer

Department of Defense DIRECTIVE

Level 2 and 3 Certificate in Preparing to Work in Adult Social Care ( /03)

Section 136: Place of Safety. Hallam Street Hospital Protocol

University of Maine System Grant Management Business Analyst Services - RFP# ADDENDUM #01

Department of Defense DIRECTIVE

Streamlining care processes with a data-driven approach

COMPLIANCE WITH THIS PUBLICATION IS MANDATORY

Colorado CCAR ICD-10 Update Release Notes

Deprivation of Liberty Safeguards A guide for primary care trusts and local authorities

Islanders' Guide to the Mental Health Act

Request for Qualifications: Information Technology Services

NORTH CENTRAL TEXAS COUNCIL OF GOVERNMENTS METROPOLITAN PLANNING ORGANIZATION REQUEST FOR PROPOSALS

NHS Summary Care Record. Guide for GP Practice Staff

Learning Legacy Document STRATEGIC PROJECTS. Innovation Management Procedure. Document Number: CRL1-XRL-Z-GPD-CR

Introduction to Grants Management at the King Baudouin Foundation: Implementing an Integrated Multilingual System

Request for Proposal. WEBSITE DESIGN and CONTENT MANAGEMENT SERVICES

LOS ANGELES COUNTY SHERIFF S DEPARTMENT REQUEST FOR INFORMATION RFI NUMBER 652 SH ONLINE TRAFFIC REPORTS (OLTR)

Policies, Procedures, Guidelines and Protocols

1. Lead Times. 2. Duration and Effective Date

We are the regulator: Our job is to check whether hospitals, care homes and care services are meeting essential standards.

METHODOLOGY - Scope of Work

This factsheet covers:

SBTDC Interview with NASA

GEORGIA DEPARTMENT OF CORRECTIONS Standard Operating Procedures (210.03) Authority: Effective Date: Page 1 of Bryson/Ward 07/15/15 5

CHILD AND FAMILY DEVELOPMENT SERVICE STANDARDS. Caregiver Support Service Standards

Practice Manual 2009 A S TAT E W I D E P R I M A R Y C A R E P A R T N E R S H I P S I N I T I AT I V E. Service coordination publications

A Tivoli Field Guide Maximo for the Nuclear Power Industry Duty Stations (Nuc) Release 7.51

Mental Health Act Policy. Board library reference Document author Assured by Review cycle. Introduction Purpose or aim Scope...

Applying for a Ménière s Society Research Grant

Transcription:

Releases s and Phases An RUP Case Study Inception Elaboration Construction Stuart Anderson Preliminary Architect. Architect. Devel. Devel. Devel. CS2 Software Engineering Note 7. An iteration is a distinct sequence of activities with an established plan and evaluation criteria, resulting in an executable release (internal or external). s and Workflows Business ing Requirements Workflow Analysis Design Workflow Implementation Workflow Test Workflow Business Use-Case Each major workflow describes how to create and maintain a particular model realized by Design implemented by Implementation verified by Test Bringing It All Together... Phases Process Workflows Supporting Workflows Workflows group activities logically Business ing Requirements Analysis & Design Implementation Test Deployment Configuration Mgmt Management Environment Inception Preliminary (s) #1 Elaboration #2 #n Construction #n+1 s In an iteration, you walk through all workflows #n+2 #m #m+1 1

The Problem You have been asked to provide a system that will be used as part of a patient management system in healthcare systems in the UK. The system is intended to manage certain classes of patients with mental health problems. The goal is to manage patients detained against their will under various sections of the Mental Health (Scotland) Act 1984. Problem ctd Under the Mental Health (Scotland) Act a person may be: Detained against their will Given medical treatment against their will Various sections of the act give various powers. For detention to take place, the hospital must be satisfied that: The patient is suffering from a mental disorder, and The disorder is serious enough to need treatment, and For the patient s health and safety or for the protection of others they should be detained The patient can only be treated in a hospital Problem ctd (Sect 24) Patient may be admitted and required to stay for 72 hours (emergency admission). (Sect 25) Patient may be detained in a hospital for 72 hours (emergency detention), A nurse can detain any voluntary patient for up to 2 hours. (Sect 26) After detention under Sect 24 or 25 the consultant psychiatrist may detain the patient for up to a further 28 days (short term detention). (sect 18) The patient can then be detained for a further 6 months, renewable after 6 months and then annually (involves Sheriff court) (full detention). There are other types of detention that are out of scope From Inception to Elaboration After iterations in the Inception phase have: enhanced use cases, improved planning, developed the environment, understood project risk. It is time to move to Elaboration. Inception generates: A vision document. An initial use-case model (10%-20% complete). An initial project glossary. An initial business case. An initial risk assessment. A project plan, showing phases and iterations. A business model, if necessary. One or several prototypes. 2

Lifecycle Objectives Milestone Evaluation Criteria Stakeholder agreement on scope definition and cost/schedule estimates. Requirements understanding as evidenced by the fidelity of the primary use cases. Credibility of the cost/schedule estimates, priorities, risks, and development process. Depth and breadth of any architectural prototype that was developed. Actual expenditures versus planned expenditures. Elaboration : Building an Architectural Prototype Example of an early elaboration iteration. Each iteration involves a full development cycle, involving all the workflows, in this case: Project management: plan the iteration, risk assessment on the plan, set architectural objectives. Requirements: Decide on primary use cases chosen to drive architecture. Understand drivers. Reconsider use cases and risks. Prototype user interface. Use cases: a summary Each use case describes what needs to be done to accomplish the functionality described in the use case. Process is: Establish the system boundary e.g. how much of the legal system is inside the system? Roughly delineate the system boundaries, then actors and use cases refine the definition. Discover Actors: Hospital Administrator, Nurse, Consultant, Doctor, Trust Administrator, Social Worker, GP, Patient, Next-of-Kin, To identify actors ask yourself: Who are the actors? Who: Uses the system? Installs the system? Starts up the system? Maintains the system? Shuts down the system? Gets information from the system? Provides information to the system? What: Other systems use the system? Automatic actions are taken at set intervals? 3

Spelling out Use Cases Identify the names of the use cases by asking: What functions does each actor require to happen? If the systems stores information - which actor provides, uses, modify, delete the information? Does an actor need to be notified if the system changes state in some way? What external events does the system need to know about? Use Cases in the Mental Health Example Register patient as detained under the act, involves hospital administrator, patient, consultant, GP, social worker, Next of Kin. Extend detention, involves hospital administrator, patient, consultant, GP, social worker, sheriff court, Next of Kin. Discharge patient, involves hospital administrator, patient, consultant, GP, social worker, Next of Kin. Change ward, involves consultant, and 2 nurses. Change responsible consultant, involves 2 consultants. Gather statistics, involves Trust Administrator. Monitor ward caseload, Nurse. Monitor doctor caseload, Consultant. Others involving backup, restore, secure access, access control, log-in, log-out, distributed working, Periodic or Timed Use Cases Many systems incorporate timed or periodic events, two common ways of dealing with this are to: Treat time like actors that instigate certain use case. For example, we might introduce an actor for each periodic event and let the actor instigate the event. Treat use cases as time and associate time with all the actions, placing constraints on the times. 1. A title, Use Case Comprises 2. Actors involved, 3. Preconditions describing the circumstances under which the use case is applicable. 4. Flow of events: usually consists of a primary sequence with some description of the alternate sequences that might arise. 5. Postcondition describing the state of the system after the functionality of the use case has been carried out. 4

Use case: Register Patient 1. Register patient. 2. Involves: Hospital Administrator, Consultant, Patient, GP, Social Worker, Next of Kin. 3. Precondition: the patient is not detained under the act but the consultant believes the patient should be detained Register Patient Ctd. 4. Flow of Events: i. Use case starts when the administrator elects to register a patient. ii. The administrator gathers data on the patient, enough to identify the patient and the GP, Social Worker and next of kin. iii. The administrator gets authorisation to section the patient from the consultant (maybe two opinions?). iv. The administrator allocates the patient a ward. v. The administrator allocates the patient to the consultant. vi. The administrator informs GP, social worker, next of kin. 5. Postcondition: patient is added to the list of people detained under the act in the hospital. Use Cases to Drive Architecture We select an initial set of use cases to drive the architectural design. Initially we may choose a small number to get the basic functionality agreed. In the example we might choose: Register patient Extend detention Discharge patient As the basic use cases to drive early architectural design this omits many essential aspects e.g. access control, confidentiality, etc. Understand Drivers Revisit and refine the use cases. Revise the overall collection in the light of the better understood use cases. For example, in our case study, it may become obvious that we need the system to operate across a number of sites and to make data available in real time to the other sites. This will change the structure of the driver use case and may introduce new use cases to handle synchronisation issues. 5

Reconsider Use Cases and Risks Reconsider the use case set chosen as a driver possible modify the set in the light of the revised use cases and revise the iteration plan. Reassess risk in the light of better understanding - in our example, risks might change because: We understand the requirements on distributed data better. We know the system has some real time aspects and these may increase the likelihood of failure and may introduce new risks. Prototype UI Aims to support validation, we can show the user how the key use cases will be reflected in the system allows early feedback. In our case study: May choose a forms-based interface with one screen for each item in the flow of events. Mock up the screens in PowerPoint and use these to illustrate example scenarios for each use case. Building an Architectural Prototype Analysis and design: Identify classes, find subsystems, check use cases. Refine classes, identify architectural elements. Consider implementation mechanism for architectural classes, review how design meets key use cases. Consider distribution and concurrency in the design. Review the architecture. Architectural Prototype: Analysis and Design In the case study the main classes are the class model associated with the patient this includes the basic admin data plus any treatment associated classes. In addition, the collection of patient objects is of prime importance since that is the main repository of patient information. In refining the classes we would look at determining the implementation packages needed to implement the classes. In considering implementation we would explore the middleware and components we might want to use, e.g. the choice of database system and delivery middleware (maybe we want intranet delivery this implies using some web middleware product). Concurrency and distribution will play an important role if the system is distributed round many sites try to decide policies and access protocols maybe this comes for free with the implementation components. 6

Building an Architectural Prototype Implementation: Decide on the implementation strategy for the architectural classes. Implement the architecture classes and integrate. Integrate the implemented classes. Test: Plan integration and system tests. Assess the executable architecture. Project management: Assess the iteration prior to commencing the next elaboration. Case Study: Implementation and Test In the case study: Implementation could be a throw away prototype that does not implement any of the concurrency or distribution. It may have some aspects of the architecture. The UI may be more faithful to the design. Testing may be quite superficial. Summary Early elaboration phase iteration. Aimed at creating an initial version of the architecture. Identify the key use cases to drive the implementation. Elaborate the key use case to deepen understanding. Use these key use cases to drive the architectural design. Implementation issue are taken into account (the architecture has to be realisable 7