220 likes | 482 Views
Web Enabled Databases. Anatomy of a project. summary. This lecture looks at what makes this type of student project into a good project Choosing a good title Making a good proposal Reviewing technology Choice of business focus. Reminder of Deliverables. The initial report.
E N D
Web Enabled Databases Anatomy of a project Web Enabled Databases
summary • This lecture looks at what makes this type of student project into a good project • Choosing a good title • Making a good proposal • Reviewing technology • Choice of business focus Web Enabled Databases
Reminder of Deliverables Software development
The initial report • Current project status • draft write up of the research done so far, including references. • Any changes to project objectives and an updated project plan • Any project outcomes e.g. choice of development methodology, programming environment Software development
Your title • Take care about the title you choose for the project. • It should indicate that you are doing some background investigation of the Web-enabled database area, not just building a system. • The technology/systems/literature review can often help with the title Web Enabled Databases
Improving your title • Poor - Building a web enabled library system database • Better - Investigation of role based access in a web enabled database using a library system as an example • Poor - Creating a web enabled hair dresser booking system • Better - Use of software design patterns in the creation of a web application using a hair dresser booking exemplar • Poor - A web enabled pizza ordering system • Better - An investigation into suggestive product composition using a web based pizza ordering system demonstrator. • Better - Scheduling and load balancing for distributed JIT production using a web based pizza ordering system demonstrator Web Enabled Databases
proposals • Your project proposal should have contained a list of 3-5 major objectives of your project. • Objectives are tasks that require specific activities and their completion will always result in specific deliverables • e.g. literature/technology review, • data analysis, • design, • implementation, • testing and • validation Web Enabled Databases
Keep up to date • Project proposals are “work in progress”, especially at the beginning of a project, so update them when needed. • Remember when you do the evaluation, to go through each of these objectives, and comment on how successfully you have achieved them. Web Enabled Databases
methodology • Choose a software engineering methodology and follow it, e.g. iterative prototyping • (this can be a helpful method since it allows you to match your learning curve to the project by implementing simple features first). • Make sure you produce good design documentation (e.g. dataflow diagrams, ERD’s, Use Cases, Sequence Diagrams). Web Enabled Databases
A good project will aim to demonstrate a variety of programming and design techniques, It will avoid finishing with a number of screens which in essence all do the same thing e.g. data capture, data display. Examples of extended functionality would be: User logins and different access rights Flexible user-controlled search mechanisms Automation of business functions Intelligence or analysis of data general principles Web Enabled Databases
Choice of service • A key decision is the choice of business/service – try to use your own interests or contacts; possibly some work experience (e.g. online DJ booking service, or a Somali poetry site). • You must have a specific focus – this is not difficult as there are many examples on the Web to help trigger your ideas. • Aim to choose an area that is distinctive. Use some of your project time to work on this by doing research and individual reading. Web Enabled Databases
Open source • There are a large number of freely available open source codes that implement standard web/e-commerce applications such as • retailers, • appointment schedulers, • calendar managers, • forums, • help desks, • customer relation managers, content managers, • content syndicators, etc., etc. • There is absolutely no point in re-inventing or re-implementing the wheel although wheels may be used in your project. • Make sure that you reference open source material and don’t forget to describe (your contribution) how you selected, integrated and tested it. Web Enabled Databases
the basics … • Go through the standard design procedures for a relational database. • Research the business processes so that a good detailed data model can be worked out. • The model needs to be normalised. This is really important. • If your database has got obvious design problems then you risk failure. Web Enabled Databases
Review properly • Review the choice of technologies and sample some of the literature relating to your project (try typing the project title into Google Scholar, or the ACM Database). • Refer to the Literature Review Lecture for detailed guidance. Web Enabled Databases
technology • Decide how to implement the database – Oracle, SQLServer, Access, MySQL; • Decide how to implement interaction with the Web client – Java, C#, VB.NET, Javascript, VBScript, SQL, ASP, PHP, XHTML etc. • These decisions should match your project objectives as each choice of technology has specific limitations/advantages and there is no “one size fits all”. • Since this is a distributed application expect some frustration with the implementation. • Some choices require more low level programming than others. Web Enabled Databases
evaluation • Evaluate your project. You will find it helpful to have read some general articles on DBMS and the Web. • You can add value to your project work by relating it carefully to specific issues that came up in your research • user interface design, • Web service standards, • WebML, Web 3.0 • usability, security, maintainability. Web Enabled Databases
add a dash of pepper … • a computer science project should include a non-trivial question of professional or academic interest to computer science • a business oriented degree project should incorporate a critical evaluation of a key business issue Web Enabled Databases
High scoring features • A realistic data model; if you only have a single many-to-many relationship to break then it is far too simple and you have not spent enough time thinking through the processes • ordering, booking, contracting, • making appointments, browsing data, • invoicing, submitting, registering …. • Your model should make a good attempt at representing the semantic complexity of the data (the practical outcome is usually a good number, say 10, of carefully related tables in 3NF). Web Enabled Databases
cont … • Some interesting functionality via the Web browser, requiring you to • write and test procedures of your own, • or to successfully integrate and extend any open source code you have acquired • Typical examples might be • asynchronous behaviours, • support for accessibility, • support for multiple client platform types, • use of MING or programmatically generated shockwave, etc., etc.). Web Enabled Databases
cont … • Some academic interest, in that you are exploring or investigating an area or application that is relatively recent or novel and not simply a well trodden path. • e.g. (circa 2006) • semantic web, web ontologies, AJAX, rich internet applications, accessibility, e-learning, design patterns) Web Enabled Databases
cont … • Either some extensive data gathering activity e.g. interviewing specific people, or researching specific markets (e.g. in certain types of commercial websites, web services). • Or a good literature survey in which you have discussed a relevant topical issue and related it to the project development and evaluation. Web Enabled Databases
conclusion • A good project must integrate your reading and research with a well designed and featured implementation that is properly evaluated Web Enabled Databases