SNC ESL Database System Paul McEnaney Spring 2010.

Slides:



Advertisements
Similar presentations
C++ Templates. What is a template? Templates are type-generic versions of functions and/or classes Template functions and template classes can be used.
Advertisements

Chapter 29: Integration Jacob Harper. The Integration Approach The order of adding components to a system is crucial Benefits to careful integration –
Software Architecture Prof.Dr.ir. F. Gielen
J4www/jea Week 3 Version Slide edits: nas1 Format of lecture: Assignment context: CRUD - “update details” JSP models.
Software Processes: Traditional CSCI102 - Systems ITCS905 - Systems MCS Systems.
Eclipse[10] MIPSinEclipse. Overview Goal: To provide a friendly development environment for CS students programming in MIPS (particularly CS33 at UCLA),
1 CMSC 132: Object-Oriented Programming II Software Development III Department of Computer Science University of Maryland, College Park.
Ch 10 Prototyping page 1 CS 368 Prototyping an initial version of a software system used to demonstrate concepts, compare design alternatives and to explore.
Problem with Software Requirements are complex The client does not know the functional requirements in advance Requirements may be changing Technology.
Design, Implementation and Maintenance
Story Boards. Creating and using storyboards Storyboards are an essential tool when designing websites. They help keep developers and graphic artists.
Software System Integration
Agile Design and SCRUM Brent M. Dingle, Ph.D. “For the last few centuries, … science has been attempting to break matter down into ever smaller bits, in.
CONTINUOUS INTEGRATION, DELIVERY & DEPLOYMENT ONE CLICK DELIVERY.
Linux Operations and Administration
Object Matching With Faces CS460 Project Presentation By Sam Buyarski.
Comp 245 Data Structures Software Engineering. What is Software Engineering? Most students obtain the problem and immediately start coding the solution.
INFO 637Lecture #81 Software Engineering Process II Integration and System Testing INFO 637 Glenn Booker.
Managing the development and purchase of information systems (Part 1)
Study Skills You have to develop many different types of skills to be a successful student.
Fighting the Database & Winning: Cohort Data & Disaggregation Best Practices Christopher M. Johnson, PhD, Renton Technical College Michelle Andreas, EdD,
Software Engineering 2003 Jyrki Nummenmaa 1 CASE Tools CASE = Computer-Aided Software Engineering A set of tools to (optimally) assist in each.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
Decluttering your Software Development Process Michael Smith TeraTech, Inc.
Reiman Gardens Plant Collections Database (Dec 0806) Reiman Gardens, one of the largest public gardens in Iowa, occupies 14-acres on the Iowa State campus.
Gwynn Fewell CCR – COMPUTER CONTROLLED RAILROAD. PROJECT DEFINITION  Use Mobile Devices to run trains on the CCR (Computer Controlled Railroad)  Build.
Search and Navigation Based on the paper, “Improved Search Engines and Navigation Preference in Personal Information Management” Ofer Bergman, Ruth Beyth-Marom,
Copyright © 2015 – Curt Hill Version Control Systems Why use? What systems? What functions?
Testing. 2 Overview Testing and debugging are important activities in software development. Techniques and tools are introduced. Material borrowed here.
Database What is a database? A database is a collection of information that is typically organized so that it can easily be storing, managing and retrieving.
Programming for Beginners Martin Nelson Elizabeth FitzGerald Lecture 12: Programming Project.
INFO1408 Database Design Concepts Week 15: Introduction to Database Management Systems.
ESL Database Client Paul McEnaney Spring 2010 compsci.snc.edu/cs460/mcenpa.
VISUALIZING TEXT Kristen Kleckner. REQUIREMENTS  “Develop an application that represents complex data sets in visual and understandable ways.”  Requirements.
File and Database Design Class 22. File and database design: 1. Choosing the storage format for each attribute from the logical data model. 2. Grouping.
1 CSCD 326 Data Structures I Software Design. 2 The Software Life Cycle 1. Specification 2. Design 3. Risk Analysis 4. Verification 5. Coding 6. Testing.
Debugging Computer Networks Sep. 26, 2007 Seunghwan Hong.
Coping Skills.
WATERFALL DEVELOPMENT MODEL. Waterfall model is LINEAR development lifecycle. This means each phase must be completed before moving onto the next!!! WHAT.
Introduction to Methods Shirley Moore CS 1401 Spring 2013 cs1401spring2013.pbworks.com April 1, 2013.
Open Solutions for a Changing World™ Copyright 2005, Data Access Worldwide June 6-9, 2005 Key Biscayne, Florida 1 Application Deployment Stephen W. Meeley.
Design and Planning Or: What’s the next thing we should do for our project?
Software Reuse Course: # The Johns-Hopkins University Montgomery County Campus Fall 2000 Session 4 Lecture # 3 - September 28, 2004.
Version Control and SVN ECE 297. Why Do We Need Version Control?
SPI NIGHTLIES Alex Hodgkins. SPI nightlies  Build and test various software projects each night  Provide a nightlies summary page that displays all.
Dillon: CSE470: SYSTEM INTEGRATION 1 Build Plan l Development or integration strategies l Decide the order in which components of the system will be developed.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
* Start coding sooner – Procrastination * Write the documents for later use, not to “just get it done” * Very little code reuse, many people solving the.
Sequential Processing to Update a File Please use speaker notes for additional information!
Get up to speed Save your files in the format that works best Access 2007 uses a new file format and a new file extension. What does that mean to you?
Cramming the night before your exams is NOT the best way to get your best grades… So what should you do instead? If you look at all the work you have done.
INFO 638Lecture #91 Software Project Management Conclude Adaptive Project Framework INFO 638 Glenn Booker.
CS 160 and CMPE/SE 131 Software Engineering April 12 Class Meeting Department of Computer Science Department of Computer Engineering San José State University.
Database Planning Database Design Normalization.
The Database Concept and the Database Management System (DBMS) Databases.
1 Punishment Through Continuous Delivery If it hurts, do it more often…
Copyright Office Material Copyright Request System.
Software Development - Methodologies
Best Practices for Dynamics NAV Administration and Security
the following benefits: documents contained within a PDF Package
Software development life cycle models
Assembler Design Options
Please thank our sponsors!
Remembering lists of values lists
CSE 303 Concepts and Tools for Software Development
CS310 Software Engineering Lecturer Dr.Doaa Sami
Chengyu Sun California State University, Los Angeles
CS 240 – Advanced Programming Concepts
Tiffany Ong, Rushali Patel, Colin Dolese, Joseph Lim
End of day Calculator and special order parts tracking
Presentation transcript:

SNC ESL Database System Paul McEnaney Spring 2010

Project Description

Previous System(s)  Access 2000 Database  Non-normalized / “dirty” data  Difficult to use  Roster issues  CSCI 330 Version  Stronger database design  Good starting foundation

Older Systems Access 2000CSCI 330

Project Goals  Redesign the ESL Database  Mostly done in the CSCI 330 version  Upgrade ESL Database to Access 2007  Develop a client application in C#  Focus on easy retrieval of information  Emphasis on rosters and grades

Solutions  DataGridViews to present information  Quick search for students  Edit classes at the roster level  Not possible in the previous system  Remove “incremental indexes” from DB  Better enforcement of referential integrity

What didn’t get done…  Application support for all database features  Student tests  Student pickups  Support for database path changes  Easier addition of students to rosters

Approach  Start the application from scratch  Highly modular design  Easy for a later project to improve upon the code/design  Rapid prototyping, and frequent meetings with the client  Edit/Refine the prototype  Only throw away irreparable parts

Demonstration

Learning and Development

Strategies  Think before you code  Does fixing this break something ELSE?  Don’t procrastinate  If you find a better way, go back and fix it  Understand WHY things work  Google EVERYTHING  You’ll find lots of “better ways”, some work

Concepts  /*Documentation!*/  ModularCode(& TESTING);  Efficient Code  If it doesn’t have to be in a loop, don’t put it in a loop  Handle Errors

Future Direction  Editing/Adding to rosters  Data input could be simplified  Support more features already included in the database  Maintenance feature  Edit database lookup tables  Edit database file path

A Word to the Wise  Calm down – we were ALL scared  Eating and sleep are IMPORTANT  Take breaks – stress will hurt your life  Start Early, test often  Write down brilliant ideas  Fix that “one more thing” tomorrow, when you’re actually awake and coherent

Questions