Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
ISU Alumni Association Online Store May05-39 Client: ISU Alumni Association Faculty Advisor: Dr. Srinivas Aluru, CprE Team Members: Keith Dahlby Jordan Jump Andrew Kirpalani Jon Ruhnke Presentation Outline Introductory Material Jon Ruhnke Project Activity Description Keith Dahlby Screenshots, Resources and Schedules Jordan Jump Closure Material Andrew Kirpalani Introductory Material Jon Ruhnke Important Definitions .NET Framework Provides a common set of tools for developers on the Windows platform. ASP Active Server Pages - a Microsoft technology that allows web pages to be dynamically generated. ASP.NET Newest version of ASP, with many significant improvements over “classic” ASP. C# Microsoft-created, object-oriented programming language similar to Java, with many features designed specifically for the .NET Framework. MSDE Microsoft Desktop Engine – Freely redistributable version of Microsoft SQL Server that integrates well with Windows and the .NET Framework. CSS Cascading Style Sheets - a simple format for attaching style information to HTML and XML documents. SVN Subversion - a version control system for controlling access to a software project and it’s files. Acknowledgements Dr. Srinivas Aluru, for his support and guidance as the project advisor. Kate Bruns and the staff at the ISU Alumni Association, for guidance as well as origination of the project. Problem Statement General Problem Statement • ISUAA Online Store exists to promote the university and its alumni • Current implementation is vastly outdated and inefficient • Complete redesign of the storefront and new implementation of administrative tools is needed General Solution Approach • New store and tool suite to be implemented by building upon existing C#, ASP, and .NET knowledge. • Careful focus on efficient database design and centralized control of administration Operating Environment • Served from existing Alumni Association server – Windows 2000 – .NET framework – MSDE database system • Public and Administrative access from any modern web browser on the internet – Internet Explorer, Netscape, etc. Intended Users and Uses Intended Users • Online Store Customers • Alumni Association Staff Intended Uses • Customers – – – – Browse catalog Purchase products Manage shopping cart Complete orders • Administrators – Add, remove, and update products – Process orders – View reports Assumptions Technical Assumptions • • • • User is using a modern web browser User has access to a sufficient Internet connection Client server has sufficient system resources Client server has ASP.NET 1.1 (or later) installed Non-Technical Assumptions • Users have previous experience with online stores • Alumni Association staff have sufficient experience and ability to operate web-based administrative tools Limitations • Access to a dedicated database server – Wanted to use server maintained by the ISU Foundation – Technical difficulties prevented use of the server • System resources available on client’s server • Team members’ proficiency with ASP.NET End Product and Deliverables • Online store capable of: – Presenting merchandise – Accepting orders – Maintaining security • New database that eliminates duplication of work • Comprehensive suite of administrative tools to allow: – Managing product catalog – Easily processing customer orders – Gathering store data Project Activity Description Keith Dahlby Present Accomplishments • Online store with ability to: – Browse product catalog – Add items to a shopping cart • Administrative interface to: – Add categories to the catalog – Add products to the catalog Approaches Considered • Programming Language: C# – Official language supported by ASP.NET – Many built in classes and functions • Database: MSDE – Integrates well with the operating system – Many windows tools available – Seamlessly integrates with ADO.NET • Database: MySQL (not used) – Robust, free, and widely supported – Doesn’t integrate as seamlessly • Platform: Windows 2000 – Windows best supports ASP.NET – Existing server operating system, yet we suggest upgrading to Windows 2003 when possible • Most of these approaches were design constraints from client Project Definition Activities • Requirements and technical considerations initially well-defined by client • Detailed design questions resolved during project design, in consultation with client Research Activities • Database system – Decision between MSDE and MySQL – Considerations: • Integration with Windows 2000 Server and ADO.NET • Interface for database design and configuration • Future upgrade path • ASP.NET – .NET Framework v2.0 – Performance questions: • Caching • Efficient access to database Design Activities Design Constraints • Primary audience using modern web browser with sufficient bandwidth – – – – Internet Explorer 5.0 or later Netscape 6.0 or later Safari Mozilla Firefox • Users with non-traditional or legacy web browsers require a functional user experience • Web applications present inherent limitations on user experience • System resources available on existing client server • Limited to Windows 2000 Server running IIS and ASP.NET Design Activities (cont.) Design Overview Presentation Tier (ASP.NET WebForms) Business Logic Tier (Business Components) Data Access Tier (Data Access Components) Database Design Activities (cont.) Database Schema pictures PK item_categorization ID PK,FK1 PK,FK2 categories category_ID item_ID PK ID FK1 name description featured_ID data item_ID FK1 statuscode PK ID addresses message can_order items item_options PK,FK2 PK,FK1 item_ID option_ID PK ID FK1 vendor_ID description price_nonmember price_member price_atcost statuscode_ID ship_cost_unit ship_cost_base pref_picture_ID FK2 options PK FK1 FK2 ID FK1 order_details order_details_ID option_ID PK ID FK1 order_ID date_processed quantity item_ID choice FK2 contacts PK ID name alumni_number contact_ID ismember orders PK ID FK2 FK1 FK3 customer_ID address_ID_shipping address_ID_billing date_ordered cc_ID FK4 ID email phone_home phone_work phone_mobile fax customers PK string_XML lineitem_options ID address_1 address_2 city state zipcode name contact_name address_ID contact_ID website_address ID PK PK,FK2 PK vendors PK credit_cards PK ID FK1 number date_expiration cc_company_ID credit_card_companies PK ID name Design Activities (cont.) Primary Use Case Implementation Activities • Item Options – Problem: • Custom fields for certain items • Future items with unknown options • Parameter choices affect price – Changes: • Options stored as serialized objects in database • Organized items in the cart by item - Simplifies management of item options - Simplifies administrative metrics • Objects – Problem: • Re-conceptualized object oriented structure needed to better fit presentation requirements – Changes: • Cart Object • Picture Object • CreditCard Object Testing Activities • Testing performed throughout development – Test pages while creating new objects – High-level custom web controls’ boundary conditions tested with sample pages – Database tested with concurrent development of administrative interface pages • Client testing and feedback – Individual components released to staff members • Problems exposed by non-dev users • Feedback acquired • Future testing – Release private version of store to entire ISUAA staff • Comprehensive testing/feedback on a larger scale Other Significant Activities • Alumni member login integration – Lack of proprietary ASP.NET module to retrieve user information – Unable to test member functionality • Site redesign – No styling information provided to group – Unable to match appearance with other Alumni services • Upcoming releases (could enhance implementation) – SQL Server Express 2005 – Visual Studio 2005 – ASP.NET 2.0 Screenshots, Resources, and Schedules Jordan Jump Screenshots • Original Front Page Screenshots (cont.) • Original Item Description Page Screenshots (cont.) • Original Shopping Cart Page Personal Effort Requirements Name Hours Keith Dahlby 200.5 Jordan Jump 171 Andrew Kirpalani 166 Jon Ruhnke 123.5 Total 661 Other Resource Requirements Item Cost Project Poster $75.02 Printing & Copying $10.00 Binding $17.49 Total $102.51 Financial Requirements Item W/O Labor W/ Labor Project Poster $75.02 $75.02 Printing & Copying $10.00 $10.00 Binding $17.49 $17.49 $102.51 $102.51 Materials: Subtotal Labor at $10.00 per hour Keith Dahlby $2005.00 Jordan Jump $1710.00 Andrew Kirpalani $1660.00 Jon Ruhnke $1235.00 $6610.00 Subtotal Total $102.51 $6712.51 Schedule • Fall 2004: Project Schedule Schedule • Fall 2004: Revised Project Schedule Schedule (cont.) • Fall 2004: Project Deliverables Schedule (cont.) • Spring 2005: Project Schedule Schedule (cont.) • Spring 2005: Revised Project Schedule Schedule (cont.) • Spring 2005: Project Deliverables Project Evaluation Project Definition Fully Met Technology Considerations and Selection Exceeded End-product Design Fully Met End-product Implementation Partially Met End-product Testing Partially Met End-product Documentation Not Attempted Project Reporting/Deliverables Fully Met Closing Material Andrew Kirpalani Commercialization • Commercialization for this product is not considered, as it is a specific customized upgrade to an existing system Additional Recommendations • • • • • • Multiple product images Extended category structuring Frequent use of stored procedures Database backup/recreation script Windows Server 2003 upgrade Integration of administrative functionality with administration of other Alumni web applications Lessons Learned What went well? • Meetings with Alumni Association staff • Good brainstorming, solid design • Good scan of technology options, proved useful when original database was found to be inadequate What did not go well? • Slow development early on • Duplication of work due to changes in system Lessons Learned (cont.) What technical knowledge was gained? • New development skills with C# and ASP.NET • Web-based development experience What non-technical knowledge was gained? • Small team development interactions • Long-term project planning What would be done differently? • More discipline and vigilance in adhering to schedule Risk and Risk Management Anticipated potential risks • Loss or corruption of code – SVN • Breakdown of communication – Recurring scheduled meetings and direct contact info Anticipated risks encountered • Second semester communication and missed meetings – Email meeting info, and other avenues of communication Unanticipated risks encountered • Restricted access to ISU network from off-campus – VPN software set up Resultant changes due to unanticipated risks • Use of VPN software, moving to campus location otherwise Closing Summary • • • • • Re-designed Iowa State Alumni Association Online Store Raises money and promotes ISU Attractive and functional storefront Streamlined administrative back-end New efficient database Questions?