FotoGazmic Software (From left to right: Chad Zbinden, Josey Baker, Rob Mills, Myra Bergman, Tinate Dejtiranukul)

Slides:



Advertisements
Similar presentations
P5, M1, D1.
Advertisements

Systems Analysis, Prototyping and Iteration Systems Analysis.
Word Lesson 8 Increasing Efficiency Using Word
Objective Understand web-based digital media production methods, software, and hardware. Course Weight : 10%
Working with Huge Digital Prototypes: Autodesk Inventor Large-Assembly Best Practices Dan Miles INCAT Autodesk Practice Manager =
Using Visual Basic 6.0 to Create Web-Based Database Applications
A Guide to Oracle9i1 Creating an Integrated Database Application Chapter 8.
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
The ICE Tool Feng Wen Qi Yuan Kin Wah Leung. Presentation Overview  Project goal  Interactive GUI  Introduce image enhancement techniques  Integration.
Cambodia-India Entrepreneurship Development Centre - : :.... :-:-
Installing software on personal computer
A Billiards Point of Sale Application Christopher Ulmer CS 470 Final Presentation.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Microsoft Visual Basic 2005 CHAPTER 1 Introduction to Visual Basic 2005 Programming.
Chapter 1 Variables in the Web Design Environment.
© 2003, Cisco Systems, Inc. All rights reserved. CSIDS 4.0—11-1 Chapter 11 Enterprise IDS Management.
6/1/2001 Supplementing Aleph Reports Using The Crystal Reports Web Component Server Presented by Bob Gerrity Head.
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
Systems Analysis and Design in a Changing World, 6th Edition
WorkPlace Pro Utilities.
GroundsOpsStaff (Last Updated 9/9/2010) A Grounds Operations and Staffing Computer Application Based on APPA Operational Guidelines for Grounds Management.
 2002 Prentice Hall. All rights reserved. 1 Introduction to Visual Basic.NET,.NET Framework and Visual Studio.NET Outline 1.7Introduction to Visual Basic.NET.
Microsoft Office Illustrated Introductory, Premium Edition with Word 2003 Getting Started.
Getting Started with Application Software
Using Visual Basic 6.0 to Create Web-Based Database Applications
Final Presentation – CS 425 Aaron O'Banion Todd Astroth Chris Cobb Matt Stowe Mark Williams.
At A Glance VOLT is a freeware, platform independent tool set that coordinates cross-mission observation planning and scheduling among one or more space.
Tutorial 121 Creating a New Web Forms Page You will find that creating Web Forms is similar to creating traditional Windows applications in Visual Basic.
Grob Systems, Inc., the customer, requires an industrial computer system that will have a function of acquiring raw data, processing the data, presenting.
ICONICS ActiveX ToolWorX V 6.1.
Microsoft Office XP Illustrated Introductory, Enhanced Started with Word 2002 Getting.
Copyright © 2010 Wolters Kluwer Health | Lippincott Williams & Wilkins Introduction to Windows Chapter 2.
1 R.O.M.P Robot Orientation Mapping Project (Project Plan) Team Evolution Peri Subrahmanya: Lead Designer Michael Lazar: Project Manager Sean Hogan: Lead.
FotoGazmic Software Project Plan Senior Project: CS 425 Spring 2003.
Introduction to Making Multimedia
FreeShell Live Final Presenation Jonathan Birch | Greg Chabala | Bryan Kimbro | Mark Sparks.
Group 2 : Team Battleship Team Members: Zhen Cai Christopher Campbell Justin Doll Jason Miller Nicholas Rimer Raeginald Timones.
Microsoft Visual Basic 2005 BASICS Lesson 1 A First Look at Microsoft Visual Basic.
ECE450 - Software Engineering II1 ECE450 – Software Engineering II Today: Introduction to Software Architecture.
Connecting with Computer Science2 Objectives Learn how software engineering is used to create applications Learn some of the different software engineering.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
Nathan Mikeska Richard Carney Neil Alfredson Brian Navarro.
CS 499 Final Presentation Aaron Drake - Project Manager/Lead Documenter Dale Mansholt - Lead Designer Jon Scruggs - Lead Analyst/Lead Tester Travis Svehla.
Click to add text Systems Analysis, Prototyping and Iteration.
Chapter 5 Introduction To Form Builder. Lesson A Objectives  Display Forms Builder forms in a Web browser  Use a data block form to view, insert, update,
Creating a Java Application and Applet
Oman College of Management and Technology Course – MM Topic 7 Production and Distribution of Multimedia Titles CS/MIS Department.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Autodesk Inventor 2011 Essentials Plus Instructor’s Name.
Understanding Web-Based Digital Media Production Methods, Software, and Hardware Objective
Creating Web Pages in Word. Sharing Office Files Online Many Web pages are created using the HTML programming language. Web page editors are software.
11 DEPLOYING AN UPDATE MANAGEMENT INFRASTRUCTURE Chapter 6.
Architecture Review 10/11/2004
Introduction to Visual Basic. NET,. NET Framework and Visual Studio
Working in the Forms Developer Environment
Digital Images / Write Copy CUFIMA01A Produce And Manipulate Digital Images CUFWRT05A Write Content And/Or Copy.
Microsoft Visual Basic 2005 BASICS
Introduction to Visual Basic 2008 Programming
MVC and other n-tier Architectures
IEEE Std 1074: Standard for Software Lifecycle
Microsoft Word 2003 Illustrated Complete
Chapter 10 Development of Multimedia Project
Ch 15 –part 3 -design evaluation
Software life cycle models
Chapter 2: The Linux System Part 1
Objective Understand web-based digital media production methods, software, and hardware. Course Weight : 10%
LonMaker® Turbo Editions New Features
Pair Programming Assistant
Teaching slides Chapter 6.
Case Study 1 By : Shweta Agarwal Nikhil Walecha Amit Goyal
Presentation transcript:

FotoGazmic Software (From left to right: Chad Zbinden, Josey Baker, Rob Mills, Myra Bergman, Tinate Dejtiranukul)

Client & End User Professor Bernard Waxman

Upper Management Professor Xudong Yu

Organization Plan Myra Bergman Lead Analyzer Dr. Bernard Waxman Client Dr. Xudong Yu Upper Management Josey Baker Lead Documenter Robert Mills Project Leader Tinate Dejtiranukul Lead Tester Chad Zbinden Lead Designer

Purpose of the System Image Enhancement Image Enhancement Color & Density Color & Density Select Portions of the Image and Identify Select Portions of the Image and Identify Predetermined List of Object Types Predetermined List of Object Types Automatically Detect an 18% Gray Card Automatically Detect an 18% Gray Card

Gray Card A card that reflects a known percentage of the light falling on it. A card that reflects a known percentage of the light falling on it. Has a neutral gray finish that has an 18 percent reflectance. Has a neutral gray finish that has an 18 percent reflectance. Used to provide a known gray tone in color work. Used to provide a known gray tone in color work.

Gray Card Correction Original ImageCorrected Image This example shows the Global Enhancement correction applied to the main image.

Objectives and Success Criteria Document, Design, Implement, and Produce Document, Design, Implement, and Produce Software can Run on any PC that meets the Hardware Requirements Software can Run on any PC that meets the Hardware Requirements Simplify the Task of Color and Density Correction Simplify the Task of Color and Density Correction Enhance the Overall Quality of Digital Image Enhance the Overall Quality of Digital Image

Functional Requirements Graphical User Interface Graphical User Interface Open, Read, Display, and Save TIFF images Open, Read, Display, and Save TIFF images Preview Feature Preview Feature One Level Undo Feature One Level Undo Feature Correction Correction Automatic and Manual Corrections Automatic and Manual Corrections Single selection or multiple selections Single selection or multiple selections Full Amount or Percentage of Suggested Correction Full Amount or Percentage of Suggested Correction Entire Image or Selected Portion(s) Entire Image or Selected Portion(s)

Functional (cont.) Selection Tool Selection Tool Pixel Group, Ellipse, or Rectangle Pixel Group, Ellipse, or Rectangle Identify the Area Identify the Area Predetermined List of Object Types Predetermined List of Object Types Suggested Correction Suggested Correction Stored RGB Values Stored RGB Values

Functional (cont.) Image Display Image Display Default—1 to 1 Default—1 to 1 Display Options Display Options Zoom Capability Zoom Capability Scroll Bars Scroll Bars

Nonfunctional Requirements User Interface and Human Factors User Interface and Human Factors Simple, User-friendly Graphical Interface Simple, User-friendly Graphical Interface Tool Selection Palette Tool Selection Palette Integrated Help System Integrated Help System Documentation Documentation Well Documented Well Documented Hardware Consideration Hardware Consideration IBM compatible IBM compatible 1 Ghz Pentium IV, 256 MB Ram 1 Ghz Pentium IV, 256 MB Ram 24-bit true color, 1280x graphics card 24-bit true color, 1280x graphics card

Nonfunctional (cont.) Performance Characteristics Performance Characteristics Perform Corrections in a Timely Manner Perform Corrections in a Timely Manner Error Handling and Extreme Conditions Error Handling and Extreme Conditions Program Should NOT Crash Program Should NOT Crash Appropriate Error Messages Appropriate Error Messages

Nonfunctional (cont.) Quality Issues Quality Issues High Quality Corrected Images High Quality Corrected Images Minimal Distortion Minimal Distortion Aesthetically Correct Aesthetically Correct Density and Color Density and Color System Modifications System Modifications Easy to Modify Without Major Changes to System Design Easy to Modify Without Major Changes to System Design Possibility for Further Development Possibility for Further Development

Use Case Model

Assistance InterfaceEnhance View File Control Client PC Architecture

Subsystems File Control File Control Initialize system variables Initialize system variables Open, close, and save images Open, close, and save images Undo the last action Undo the last action Exit Exit

Subsystems (cont.) View View Display an image to the screen Display an image to the screen Zoom functionality Zoom functionality Scrolling functionality Scrolling functionality

Subsystems (cont.) Enhance Enhance Manual and auto enhancement functionality Manual and auto enhancement functionality Find Gray Card Find Gray Card Selection tools Selection tools Pixel group Pixel group Ellipse Ellipse Rectangle Rectangle Draw, Identify, and Average selections Draw, Identify, and Average selections Global or local change Global or local change Correction factor Correction factor

Subsystems (cont.) Assistance Assistance Integrated help feature Integrated help feature Reference Reference

Subsystem Decomposition

Persistent Data Management All persistent data is stored using a file system. All persistent data is stored using a file system. TIFF files are used to store the images files. TIFF files are used to store the images files. RGB values for the predetermined object types are stored in a text file containing markup tags. RGB values for the predetermined object types are stored in a text file containing markup tags.

Stored Objects File Grass 131, 157, 59 Caucasion Skin Average 200, 145, 120 Indian Skin Average 175, 115, 65 African Skin Light 191, 140, 110 African Skin Medium 170, 135, 90 African Skin Dark 115, 80, 70

Main Interface

Main interface with a TIFF image loaded.

Find Gray Card

Select Gray Card Allows user to manually select gray card

Auto Enhance Preview Dynamically displays preview of changes as the slider control is moved.

Manual Enhance Preview Dynamically displays preview of changes as the slider control is moved.

Manual Enhance Preview Dynamically displays local and global change as radio button is changed.

Process Plan Evolutionary Delivery Evolutionary Delivery Client Client Early Prototype Early Prototype Early Discovery Early Discovery Difficulties with Specific Features Difficulties with Specific Features Delivery Delivery Product with the Most Important Functionality Product with the Most Important Functionality No room for extension of deadline No room for extension of deadline

Process Plan (cont.)

Schedules

Schedules (cont.)

Implementation

Implementation (cont.) Development Platform Development Platform Microsoft Visual C Microsoft Visual C User Interface User Interface Microsoft Foundation Class Microsoft Foundation Class Underlying system Underlying system C++ C++ CxImage Library CxImage Library Open source libraries for image processing Open source libraries for image processing

Demonstration FotoGazmic Software FotoGazmic Software

Module Testing Performed numerous test cases on each code module Performed numerous test cases on each code module Documented test cases and results Documented test cases and results Lead tester in charge Lead tester in charge

Integration Testing Individual Components Individual Components Assessed Dependencies of Modules Assessed Dependencies of Modules

System Testing Ensured Functional and Nonfunctional Requirements Ensured Functional and Nonfunctional Requirements Included Functional and Performance Testing Included Functional and Performance Testing

Acceptance Testing Internal Acceptance Test Internal Acceptance Test Team Members Team Members Acceptance Test with Client Acceptance Test with Client

Deployment & Training Installation Plan Installation Plan We did not install the FotoGazmic software package on any of the clients’ computers. We did not install the FotoGazmic software package on any of the clients’ computers. Source code and a compiled executable are available on our project web site. Source code and a compiled executable are available on our project web site. Full documentation of the software is provided. Full documentation of the software is provided. Installation is accomplished using a standard setup package. Installation is accomplished using a standard setup package.

Deployment & Training (cont.) For FotoGazmic users, we have created: For FotoGazmic users, we have created: An integrated help system An integrated help system

Retrospective Thoughts We needed better version control We needed better version control Evolutionary delivery worked extremely well Evolutionary delivery worked extremely well Dividing the project among team members worked well Dividing the project among team members worked well We learned a lot about software development & project planning We learned a lot about software development & project planning Creating a system from the ground up was quite difficult! Creating a system from the ground up was quite difficult!

Questions?