Running head: Lab 2 - ICAT Prototype Product Specification Lab 2 - ICAT Prototype Product Specification Team Red Brandon Ripley CS411W Professor Brunelle and Hill March 12 2014 Version 1 1 Lab 2 - ICAT Prototype Product Specification 2 Table of Contents 1. INTRODUCTION .......................................................................................................................3 1.1 Purpose ...................................................................................................................................3 1.2 Scope ......................................................................................................................................4 1.3 Definitions, Acronyms, and Abbreviations ............................................................................4 1.4 References ..............................................................................................................................5 1.5 Overview ................................................................................................................................5 2. GENERAL DESCRIPTION ........................................................................................................7 2.1 Prototype Architecture Description ........................................................................................7 2.2 Prototype Functional Description.........................................................................................10 2.3 External Interfaces ................................................................................................................12 List of Figures Figure 1: Major Functional Component Diagram for ICAT .......................................................... 7 Figure 2: Data Model ...................................................................................................................... 8 Figure 3: Centrality Algorithms ...................................................................................................... 9 Figure 4:Wire Frame - Home Screen ............................................................................................ 10 Figure 5:Wire Frame - Dashboard .................................................Error! Bookmark not defined. Lab 2 - ICAT Prototype Product Specification 3 1. INTRODUCTION Reaching solutions before completely defining and understanding the problem is a major issue and is defined as the Type III error by Mitroff and Featheringham in 1974 (Yadav & Korukonda,1985). The Type III error cause nearly 80% of all human and organizational failures (Yadav & Korukonda, 1985). Resources are been wasted every year on incorrectly defining a problem before trying to solve it. The type III error often occurs due to a linear development process which fails to account for changing problem frames, insufficient analysis of a problem before a solution is reached, and a lack of traceability in the process of solving the problem. 1.1 Purpose ICAT is an interactive software tool used to visualize problem domains. It is a drawing tool with a built-in report generator that aids System Engineers in their attempt to correctly identify a problem. ICAT will allow its users to input different Entities that affect or are affected by the problem. These Entities will then be connected by Forces with varying forms of influence. As a basic drawing tool, it will give users features such as zooming, panning, exporting, and printing. Users will be able to generate reports using the Prominence and Influence algorithms. The main emphasis of the ICAT is to eliminate the Type III error, thus reducing the resources needed to reach a proper solution. The goal is to give confidence to the user in understanding the problem completely, before rushing into a solution for the wrong problem. (This space intentionally left blank.) Lab 2 - ICAT Prototype Product Specification 4 1.2 Scope The ICAT prototype will allow Systems Engineers to create interactive diagrams and a visual representation of Entities and the Forces acting upon them in the scope of a domain. They will be able to take advantage of the Prominence and Influence reports in order to help them during this time consuming first part of development process. The program will also be flexible enough to handle projects with low or high complexity without losing accuracy. 1.3 Definitions, Acronyms, and Abbreviations Attribute: An Entity that represents some quality that exhibits an effect on other Entities. Entity: Objects within the data model; types include: problem, stakeholder, objective, attribute, resource. Force: Constraining or enabling Forces that show influence between Entities. Influence: A measure of the effect that one Entity has on others in the system; also known as out-centrality. Metadata: Data associated with Entities or Forces. Objective: An Entity that represents a goal or target of the real world project. Problem: An Entity that represents the issue or conflict that the solution is designed to address. Prominence : A measure of the effect that other Entities in a system have on a specific Entity; also known as in-centrality. Resource: An Entity that represents a required good or service. Stakeholder: An individual or group affected in some way by the undertaking (Stevens Institute of Technology, 2008). Lab 2 - ICAT Prototype Product Specification 5 Systems Approach: The application of a systematic disciplined engineering approach that considers the system as a whole, its impact on its environment and continues throughout the lifecycle of a project(Stevens Institute of Technology, 2008). Systems Engineering: The orderly process of bringing a system into being using a systems approach(Stevens Institute of Technology, 2008). Type III Error: The type of error described as "giving the right answer to the wrong problem" (Kimball,1957). Workspace: The area within ICAT in which the user edits or views the project. 1.4 References Kimball,A.(1957). Errors of the third kind in statistical consulting. Journal of the American Statistical Association,52(278),133-142. Stevens Institute of Technology.(2008). Core Concepts of Systems Engineering: Glossary. Retrieved from The Center for Innovation in Engineering and Science Education: http://www.ciese.org/curriculum/seproject/glossary.html Yadav, S.B.,& Korukonda, A.(1985). Management of Type III Error in Problem Identification. Interfaces,15(4),55-61. Daniel Cougar(1995). Creative Problem Solving and Opportunity Finding. 178. 1.5 Overview This document details the ICAT prototype software configuration, its external interfaces, capabilities and features. Specific descriptions necessary for the development of the prototype are provided, including descriptions of the hardware, software and the external interface architecture of the ICAT prototype. Key ICAT features are provided with detailed usage Lab 2 - ICAT Prototype Product Specification guidelines and parameters, as well as performance characteristics in terms of outputs, displays and user interaction. (“This space left intentionally blank.”) 6 Lab 2 - ICAT Prototype Product Specification 7 2. General Description ICAT is a graphical analysis tool that will create interactive diagrams depicted from the users' input. It will also keep a log of metadata so that traceability on how a solution was reached can be achieved. ICAT will then generate reports based on the relationships between the Entities and their weight of influence on one another. ICAT follows the motto, "a picture is worth a thousand words," allowing users to visualize their problem. 2.1 Prototype Architecture Description ICAT will be a Java-based program which can be used on any personal computer running the latest version of the Java Runtime Environment. No other hardware will be needed. ICAT's major components contain four main elements as seen in Figure 1. ICAT follows the Model View Controller design principle which will make up three of the main elements. The fourth element pertains to the Analytics Engine which will be responsible for handling all the reports that are generated using Prominence and Influence. Figure 1: Major Functional Component Diagram for ICAT Lab 2 - ICAT Prototype Product Specification 8 The graphical interface presents the user with the tools and canvas needed to interact and create diagrams in ICAT. There are three main features provided when working inside the graphical interface. The user will be presented with the buttons and menus in order to add Entities and Forces to the canvas. The properties window will be provided when adding and editing Entities, in order to better arrange the metadata about that Entity. Last, the canvas will allow the user to mold the diagram to their preference. Another major component is the data model, as seen in Figure 2. The ICAT data model will contain a project made up of Entities and Forces through their vertices and edges. The vertex in the ICAT graph will represent an Entity in a unique problem-space with information pertaining to it. The information the user will input for the Entity is its designation, classification, and some metadata pertaining to the Entity. All Entities will also be given a vector coordinate to be drawn on the canvas. Edges, which are the other set of data in the ICAT, will be referred to as Forces that will have an origin and destination Entity, in which a direction of influence will be derived. Forces will contain a weighted value in which the influence between Entities is determined. An ICAT project is made up of any number of sets of these two data structures, as well as any additional project rotational the user may deem necessary. Figure 2: Data Model Lab 2 - ICAT Prototype Product Specification 9 Another major component is the Controller. Controllers will be used to manage all information that is stored in the data model, along with keeping the data model consistent with what is displayed in the graphical interface. A controller will also be written to interact with the analytics engine by sending information from the data model to the report generator as well as the file system. The final major component that will make up the ICAT is the Analytics Engine. The Analytics Engine will be used to perform advanced mathematical calculations as listed in Figure 3. It then generates a report based on the output of the algorithms. The Prominence algorithm generates an ordered report of Entities based on how many Entities and the weight values of the Forces acting upon them. For example, if an Entity had three strong Forces and Entities affecting it, it would be higher on the report than an Entity with only one medium force and Entity connected to it. The Influence algorithm will also generate a report using the number of Entities and Forces extruding from any given Entity. For example, if an Entity has five Forces protruding from it then it would be much higher on the report than an Entity with only two Forces. If needed, during the generation of these reports, the user will also be able to check the Entities for their visibility and controllability. Figure 3: Centrality Algorithms Lab 2 - ICAT Prototype Product Specification 10 2.2 Prototype Functional Description On start up, the user will be presented with a welcome screen as shown in Figure 4.This screen will give the user the capabilities of starting a new project. As well they will be allowed to search through their previous projects and load a past project. Figure 4: Wire frame - Home Screen After a new project has been started, the user will presented with a new screen in where all the work will be done. The user will be given an empty canvas in which a problem can be added. After the problem is added, the user may then go about adding Entities and Forces. When an Entity or Force is added, the user will then be given a proprieties box to fill out. The system will put a different color to the Entity, in order to show what classification it is considered as shown in Figure 5. At any point the user may edit an Entity or Force by selecting them and editing them through the edit window on the left side of the screen. Lab 2 - ICAT Prototype Product Specification 11 Figure 5: Wire Frame - Dashboard The program will also feature a reports button which will contain both Prominence and Influence. At any point during the creation process of the project, the user will have the ability to run either of these reports which will produce an output in to a specified folder of choice. Before running these reports, the user will be given the ability to toggle the visibility and controllability of an object which will have an impact on how it will be reviewed in the report. The prototype will also have the ability to search for certain Entities through a search bar located at the bottom of the canvas. If used it will search through the Entity titles and move the canvas viewer to that location. The canvas also has the ability to zoom in on certain parts of the diagrams or zoom out in order to encapsulate everything. 2.3 External Interfaces As a standalone java program, the only interface will be the user interface and a standard PC. A GUI will provide the link between the user and the ICAT analytical engine. The user will be presented with buttons and menus in order to interact with the canvas. In order to better help users understand the problem, they may rearrange Entities and Forces however they like within the canvas. Lab 2 - ICAT Prototype Product Specification 12