STAT Product Specification CS 411 October 22, 2013 Ezra Reeves 2 Table of Contents 1. Introduction ........................................................................................................................................... 4 1.1 Purpose.......................................................................................................................................... 4 1.1.1 Problem Statement ................................................................................................................ 4 1.1.2 Solution Statement ................................................................................................................ 4 1.1.3 What Stakeholder Analysis Tool is used for ......................................................................... 5 1.2 Scope ............................................................................................................................................. 5 1.2.1 Allows users to access all steps of cyclic stakeholder analysis and management process ... 5 1.2.2 Tracks stakeholder information and generates all step appropriate visuals .......................... 6 1.2.3 Applies breakthroughs in system of systems engineering research to system problem ........ 6 1.3 Definitions, Acronyms, and Abbreviations ................................................................................... 7 1.4 References ..................................................................................................................................... 7 1.5 Overview ....................................................................................................................................... 8 1.5.1 2. Introduction to the Product Specifications ............................................................................ 8 General Description .............................................................................................................................. 9 2.1 Prototype Architecture Description .............................................................................................. 9 2.1.1 Software ................................................................................................................................ 9 2.1.2 Hardware ............................................................................................................................. 10 2.2 Prototype Functional Description ............................................................................................... 10 2.2.1 Information Flow ................................................................................................................ 10 2.2.2 Meet all feature requirements requested by NCSOSE ........................................................ 10 2.3 User Interface .............................................................................................................................. 11 2.3.1 GUI description ................................................................................................................... 11 2.3.2 Importing projects ............................................................................................................... 11 2.3.3 Exporting projects ............................................................................................................... 11 3 This page intentionally left blank 4 1. Introduction This document is the sole product specifications for the STAT (Stakeholder Analysis Tool) application. The customer for this project is Dr. Patrick Hester and Dr. Kevin Adams. The Product Manager has been identified as Janet Brunelle. Developers have been identified as Brian Russell, Christian Oakley, Ezra Reeves, and Okechukwu Wyche. This project has a start date of January 7, 2012 and an end date of December 6, 2013. The deadline is a hard deadline and cannot be extended. 1.1 Purpose The purpose of this document is to identify all features of the STAT application in their entirety. This document describes in detail every aspect and behavior of the STAT application for development and testing of the application. Any further changes to the design of the applications should be reflected in this document. 1.1.1 Problem Statement When problem solving, stakeholders play a vital role in the success or demise of a project. A better solution is needed to easily identify and analyze stakeholders to maintain situational awareness throughout the problem solving process. 1.1.2 Solution Statement STAT is a software solution that looks to alleviate the currently primitive methods of stakeholder analysis. This tool will encompass identifying, prioritizing, and analyzing stakeholders in a practical, visual environment. 5 1.1.3 What Stakeholder Analysis Tool is used for STAT will be used by organizations to identify which stakeholders of a project the organization should spend time and effort influencing in order to ensure the success of a project. With any project there are constraints on time and resources so it is of the upmost importance both of which are used in the most efficient way. The three big questions that STAT answers are who are the stakeholders, what characteristics do the stakeholders possess, and what course of action should be taken. 1.2 Scope For this project the scope will be a fully functional application with all of the features implemented. 1.2.1 Allows users to access all steps of cyclic stakeholder analysis and management process During the stakeholder analysis process it is necessary for users to update stakeholder information as the stakeholder landscape evolves over the life of the project. Because of this the user must have the ability to access any part of the cycle at any given time. This will play a key role in the design of the graphical interface. The steps of the stakeholder analysis cycle are the following: Brainstorm stakeholders – This step is were all initial information about all stakeholders of a project are entered into the application. Classify stakeholders – In this step each stakeholder is evaluated for power, legitimacy, and urgency. Evaluate stakeholder attitudes – In this step it is determined if stakeholders attitudes fall in the categories of supportive, mixed, or non-supportive. 6 Determine stakeholders situation influence – In this step it is determined which stakeholders have influence over other stakeholders and the degree of that influence. Develop a stakeholder management plan – This step takes all the information from the previous steps and generates a prioritization of stakeholder engagement. Manage stakeholders – This step is where the user of STAT would put the stakeholder management plan to action. This is the only step of the stakeholder cycle that STAT does not preform. 1.2.2 Tracks stakeholder information and generates all step appropriate visuals At each step of the stakeholder cycle STAT will generate diagrams that are visual representations of the stakeholder information at that time. Each visual has a set of attributes that must be defined before that visualization can be generated. When enough of the attributes for a particular stakeholder are generated the appropriate diagram should be updated at that time. 1.2.3 Applies breakthroughs in system of systems engineering research to system problem At the heart of the STAT application will be the methods and algorithms defined by Dr. Patrick Hester and Dr. Kevin Adams for The National Centers for System of Systems Engineering (NCSOSE) at Old Dominion University. They have published a paper, “Stakeholders in Systems Problems." on this topic in the International Journal of System of Systems Engineering which gives a great overview of the theory behind the algorithms that STAT will utilize. The algorithms will allow STAT to generate attributes mathematically that will be used to generate the visuals as well as the Stakeholder Management Plan (SMP). 7 1.3 Definitions, Acronyms, and Abbreviations Stakeholder - Anyone with interest in the project or that can affect the project. A stakeholder can be an individual or an organization. Project - A collaborative effort to accomplish a common goal. Latent – A stakeholder that is capable of becoming important to the project although currently not important. Expectant – Almost an important player in the project but perhaps are not operating at full potential. Definitive – A definite important stakeholder. Power – How much authority a stakeholder carries. Legitimacy – An assumption that actions taken by the stakeholder are proper with in the project. Urgency – How immediate a stakeholder needs attention. STAT – Stakeholder Analysis Tool SMP – Stakeholder Management Plan NCSOSE - National Centers for System of Systems Engineering 1.4 References Hester, Patrick T., Joseph M. Bradley, and Kevin MacG Adams. "Stakeholders in Systems Problems." International Journal of System of Systems Engineering 4th ser. 3.3 (2012): 225-32. Print. 8 1.5 Overview The focus of the design of STAT should be ease of use, speed, and accuracy. The STAT application will be a lightweight easy to navigate application that runs on runs on a number of different operating systems. The application will cover all aspects of the stakeholder analysis cycle from brainstorming to managing developing a stakeholder management plan. At the appropriate step in the stakeholder analysis cycle the proper visualization will be generated. 1.5.1 Introduction to the Product Specifications The following sections contain the technical product specifications for the STAT application. The specifications describe the application in it entirety at a detailed level. Features that are not in the product specifications shall not be implemented in the application. However every feature that is found in the specification shall be implemented in the application. Every feature that is implemented shall be tested with clearly defined test cases. This page intentionally left blank 9 2. General Description STAT is designed to work on as many platforms and architectures as possible. All files that are saved or exported will be in common formats to maximize the number of applications that will natively support the saved files. Just as the diagrams will be saved in a common format the STAT project file that captures all of the project data shall too be in a common format that will allow easy integration with other software. 2.1 Prototype Architecture Description The following section covers the architecture of the STAT application. In this section contains all software and hardware requirements. The software requirements section describes the language that will be used to write the application as well as the format of STAT project file. The hardware requirements describe the hardware that will be required to run the application. 2.1.1 Software Java has been chosen as the language that STAT is to be written in. This is for both its speed of development as well as its ability to run the same code on multiple platforms. The GUI will utilize the Java Swing. Swing was chosen for its wide use and speed of development. The operating system requirements for running the STAT application are Windows, Linux or OS X. Java supports more operating systems than this and STAT may work on them however, these are the only operating systems that will be officially supported. STAT will be a standalone application with no external dependencies on other applications. This means no dependency for network connectivity for servers nor do any databases need to be installed and maintained. STAT project files will be saved in the XML format. XML was chosen for its ease of development as well as its wide adoption will make it easier for other applications to read in order to offer native support of STAT project files. XML files that are encrypted will be encrypted using a 10 standard encryption algorithm for both security and so external applications will be able to decrypt the files with minimal effort. 2.1.2 Hardware Because of the lightweight design of STAT the hardware requirements are minimal. In most all cases the hardware requirements will align with the desktops operating system minimum requirements. However, because STAT is a GUI application a GUI is required so hardware such as a mouse and Monitor are required. After testing project size capabilities of the application are preformed memory requirements will be determined. 2.2 Prototype Functional Description The aim of this project is not to create a prototype that mimics what the actual application would do in the real world but instead implement the actual application. It is felt by the development team that this is a reasonable goal that is achievable within the time given. This means that all specifications in this document will be implemented. 2.2.1 Information Flow STAT will allow the user to access and change the information of stakeholders on one screen as opposed to a wizard type set of screens. This will allow changes to be made quickly and effortlessly. Information about the stakeholders will be entered into the system where it will remain in memory until the project file is saved to disk. 2.2.2 Meet all feature requirements requested by NCSOSE STAT will meet all requirements that were requested by Dr. Hester and Dr. Adams on behalf of NCSOSE. At a high level this means the application is to implement all steps of the stakeholder analysis circle except manage stakeholders which is up to the user to carry out. Other requirements include the ability to change stakeholder attributes all on one screen and the maximization of ease of 11 use. Another requirement is that the algorithms that are used are the algorithms that were supplied to the project as well as how the diagrams and visual aids will be displayed. 2.3 User Interface Because the user interface is the only way a user interacts with the application the user interface is one of the most important components of the STAT application. This also means that the design and ease of navigation are of the up most importance. Because of this a large portion of development will be focused on the graphical interface. 2.3.1 GUI description The STAT application will behave as a standard GUI application with a File menu at the top that allows access to features such as opening project files and saving project files. On the left side will be tabs that will allow access to the different screens of the STAT application in order to allow quick access to all steps of the stakeholder analysis cycle. The interface will be a standard swing interface to reduce development time and reduce bugs associated with a custom user interface skin. 2.3.2 Importing projects The ability to import or open projects will be accessible through the file menu. When a project file is opened an XML file will be read from disk that contains all information that a project is required to save. This includes metadata about a project as well as all information about all stakeholders that needs to be saved. 2.3.3 Exporting projects The ability to export or save projects will be accessible through the file menu. When a project file is saved an XML file will be written to disk that contains all information that a project is required to save. This includes metadata about a project as well as all information about all stakeholders that need to be saved.