FdSc Computing and Internet Technology FULL-TIME YEAR 1 UNIT DIRECTORY Unit Title: COMPUTER SYSTEMS Level : C Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE and CO-REQUISITE UNITS None AIMS The aim is to examine the components of computers, their architecture, functioning and integration. The learner will develop understanding of operating systems as resource manager, user interface, and hardware abstraction. The concepts and practices of simple point-to-point communications will be introduced within the framework of laboratory tasks. Computer and laboratory safety concerns will also be introduced and understanding of the value of data security and countermeasures to IT professionals investigated. INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 1. Understand data formats of simple and structured entities. 2. Choose appropriate descriptions of the functioning and architecture of the major components of a computer. 3. Understand physical and logical structures on a disk drive. 4. Relate the control of basic components of the computing hardware to the operations of computer software, including operating system processes. 5. Understand simple communications principles in simple and multiplexed computer links. 6. Be able to formulate a coherent preventative maintenance programme and have knowledge of the principles that underlie computer safety. 7. Design and carry out simple experiments on computer systems. LEARNING AND TEACHING METHODS The context of the unit is the single-processor, single-user computer, typically single-processing (not multi-processing) though it covers the interaction of a single process with operating system processes and additionally forms the introduction to basic networking In terms of the Computing subject benchmark, the unit brings together material from Architecture, Computer Communications and Operating Systems. Learners work through a set of experiments in computer laboratories. They are given an experiment reporting framework, but take responsibility for the content of the report and level of analysis that it shows. They learn the importance of a) good experimental work, and b) good experimental reporting. They study the basic components, architecture and functioning of computers, progressing through the year to understand the way that each component contributes to the overall functionality provided to computer users. The needs and requirements of computer security and safety are emphasised and interwoven within this study. Indicative Styles Learners undertake a series of laboratory tasks that investigate the behaviour of computer hardware and communication protocols. These tasks are carried out on personal computers, and allow learners to apply the conceptual knowledge and principles developed in a parallel sequence of lectures. Learners use on-line materials / examples and formative assessment tasks to provide immediate feedback to the learner to indicate their level of attainment. They also take part in interactive virtual activities that model laboratory work on-line. Learners are confronted with trouble-shooting tasks that expose them to common industry-related computing problems dealing with issues such as start-up modes, registry entries, BIOS problems, boot problems, data and file corruption. They use system tools to expose more dynamic information such as the state of hardware components and software settings during program execution. Lectures cover the structure and organisation of computers, to provide an abstract model against which they can view the examples that they work through. Learners carry out exercises building and linking computers and setting up the protocols to enable them to exchange data and configure DHCP and DNS and default gateways. Lectures relate the concepts of communications (which are developed in the Network Systems unit), to the practical activities in seminars. Informal assessment plays an important part in the development of learner ability in this unit. Each student is required to keep a laboratory notebook, and record every experiment. The notebooks are inspected cyclically, a few being marked in each laboratory session, and feedback is given on a) quality of reporting, b) quality of thought/analysis, and c) level of understanding of the topic. Most laboratory sessions enable the learner to observe, discuss and analyse behaviour. Some focus particularly on performance. ASSESSMENT METHODS Intended Learning Outcomes 1 through 6: All of these Intended Learning Outcomes (ILO) are assessed through an examination. At this level the learner is expected broadly to be able to demonstrate understanding over a multiplicity of individual short questions which may be based on scenarios from industrial and commercial environments and require them to choose correct explanations or descriptions as appropriate. Intended Learning Outcomes 1 through 7: Laboratory Notebooks form the in-course assessment. They are formally marked twice in the year, using a cycle from the informal assessment cyclic process. Learners are not told which cycle will be used for the formal assessment, to encourage them to work to a high standard throughout the year. Ability to work practically with computer equipment is the primary focus of this assessment, but it naturally covers all of the other ILOs in terms of understanding of experiment content. Weighting The weighting of in-course assessment, to final assessment is 50:50. INDICATIVE CONTENT Data representation and mathematical operations: Bits, bytes, binary, octal, hexadecimal and decimal, number and character, different word lengths. Conversions to any base. Boolean logic gates. Computer Technology: Processor, bus, primary and secondary memory. BIOS, EPROM, EEPROM, System resources (IRQ, DMA, IO addresses) Installation and set up Operating System Fundaments (process creation & scheduling, memory management, file systems.) System Tools (Regedit, Scandisk, Msconfig, Wscript.exe, Hwinfo.exe, ASD.exe, ERD, Recovery console) Multimedia capability (colour book formats, RAMDAC, PCI vs AGP, video and sound standards) Physical and logical disk formats, space allocation techniques, NTFS, FAT16, FAT32. Input and output. Performance issues: buffering and caching, fragmentation. Communications: Fundamentals of communications, digital and analogue, media, the notion of protocol. Overview and introduction to OSI model. Basics of TCP/IP. Comms utilities (Ipconfig, winipcfg, config, and ifconfig, Tracert, iptrace, and traceroute, Netstat/tpcon, ping) Synchronous and Asynchronous serial transmission, modulation and de-modulation, AT commands, error checking and correction. Networks (circuit and packet switched) Basics of Ethernet - a means of multiplexing. Setting up networks (NIC, IP addresses, DHCP, DNS, Default gateway) Computer and Laboratory Safety: Preventative Maintenance programme. Electrostatic discharge (ESD) Power issues UPS. Troubleshooting methodologies Security principles applied to computers. Hardware, software and data threats. Countermeasures including technical and management solutions. Using Systems tools to ensure data safety and integrity INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Tanenbaum, A. (2005). Structured Computer Organisation (5th Edition). Prentice-Hall. Woodhull, A. & Tanenbaum, A. (2006). Operating Systems: Design and Implementation (3rd Edition). Pearson Prentice-Hall Tanenbaum A., Day, W & Waller, S. (2003). Computer Networks (4nd Edition). Prentice-Hall Comer, D. & Droms, R. (2003). Computer Networks and Internets (4th Edition). Prentice-Hall. Dick, D. (2003) The PC Support Handbook: The Configuration and Systems Guide (11th Edition). Dumbreck Publishing WEB BASED RESOURCES http://www.netbook.cs.purdue.edu http://cisco.netacad.net Unit Title: DATABASE SYSTEMS 1 Level: C Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE and CO-REQUISITE UNITS Programming 1, Systems 1. AIMS To examine and develop a working knowledge of computer-based file and record structures and access methods. To develop an understanding of relational data modelling and manipulation using relational calculus and algebra and to develop a framework, via data analysis and modelling, for robust database design and implementation. INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 1. Explain the organisation of files used by a small-scale, PC-based DBMS. 2. Apply a data analysis process to analyse a given single-user, PC-based application scenario. 3. Demonstrate the use of entity-relationship modelling and normalisation to design a database for a single user, PC-based system and illustrate the design using an appropriate diagramming technique. 4. To understand the difference between good and bad relational data modelling. 5. Translate a design expressed as an entity-relationship model into an equivalent relational data model to answer a given set of queries. 6. Select a number of indexes to meet the performance requirements of a set of queries on a given entity-relationship model. 7. Implement a single-user, PC-based database for a given set of relations (including integrity constraints) to answer a given set of queries. 8. Estimate the size and usage of a given database from a description of a single user, PC-based scenario. LEARNING AND TEACHING METHODS Intellectual, Cognitive and Operational Development The context of this unit is the single-user, PC-based database management system. This unit focuses material from the Database Computing subject benchmark. In this unit learners develop an understanding of how data is stored in singleuser computer systems. They start by studying some simple scenarios about collecting and storing data in a business context. These scenarios are used to introduce the learner to a typical database management system (DBMS) and to help the learner explore different methods of manipulating data using a DBMS. Once the learner understands some of these tools, they are introduced to a number of formal data modelling techniques and they apply them in simple, welldefined scenarios and discuss the difference between good and bad models. Indicative Styles Lectures and laboratory classes include a wide range of case studies that illustrate how data is used in a business context. Many of these case studies are derived from situations with which learners are familiar, for example, small retailers and schools, and the case studies are designed to complement similar examples used on other units of the course. Less familiar case studies are used to help the learners widen their experience of business situations, for example, production companies and sales organisations. The learners develop data analysis and database design skills by studying common data modelling techniques such as entity-relationship modelling. They work in small groups during seminar sessions to apply these skills to variety of well-defined case studies. During group discussions, learners are encouraged to use analysis and design techniques that they have learned in other parts of the course, for example, data flow analysis. Learners are given additional exercises that they work on during their own study times. Learners learn to use a common database management system by working through a series of structured tasks and by additional laboratory-based tutorials. The skills that they develop by completing these tasks are reenforced by building databases for many of the analysis and design case studies that they are given. Lectures are used to explain formal database theory, for example, data modelling and query languages. Many of these lectures are supported by laboratory classes that are intended to highlight the practical application of database theory. For example, learners develop an appreciation of relational algebra by using database systems that use relational algebra and SQL. Exercises are designed to highlight important features of the theoretical material. Feedback on Progress Informal assessment takes place at a number of points during the unit. LO6 is assessed by a number of tests that are designed to help the learner progress through the material. The learner’s progress through the tasks is closely monitored. LO2-4 are assessed in seminars using case studies and other exercises that require the learners to solve problems individually and as part of a group. Learners are required to present their work during the seminars. ILO 1, 5 and 7 are assessed by laboratory exercises that require the learner to create a database that they have designed. ASSESSMENT METHODS Assessment: Learning Outcome 1: This learning outcome will be assessed in a written examination. Assessment: Learning Outcomes 2-4,6 and 8: These learning outcomes are assessed in a single assessment exercise. The exercise requires the learner to solve a data management problem that is given to them in the form of a business scenario. The exercise typically requires the learner to identify the problem contained in the scenario and to design a database to solve the problem. As part of this exercise the learner must build a database system that corresponds to their proposed design. These learning outcomes are also assessed in a written examination. Assessment: Learning Outcomes 5 and 7: These learning outcomes will be assessed in a written examination. Assessment: Integration LO2-4 and 6 are integrated in most problem scenarios. LO1, 5, 6 and 7 are assessed by tasks that require the learner to develop and evaluate a database. Assessment: Weighting The weighting of in-course assessment to final assessment is 50:50. INDICATIVE CONTENT Data and Information: Data and information. Data in a business context. Processing vs storing data. Information systems. Uses of data. Data ownership. The role of data within the organisation. Data and Storage: Data storage methods and concepts (e.g. bits, bytes, fields, records, files, databases) Files and File Access: Using indexing and hashing in physical database design. Critique of physical layout of database structures. Database size and usage estimation. Data Modelling: The difference between physical, logical and conceptual database design. The relational data model (relational algebra and calculus). Data modelling techniques including entity-relationship modelling, functional analysis, normalisation. Using data flow diagrams and other analysis techniques as aids to database design. Database Querying and Manipulation: Using database management systems to construct databases and to implement data models. Querying database systems using visual querying tools and SQL. Data Processing: Using and implementing different data processing techniques. memory and disc memory in data processing. Using main Data Exchange: Data markup languages (e.g. XML), data transformation (e.g. XSL). INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Curtis, G., (2004) Business Information Systems: Analysis, Design and Practice (5th Edition), Financial Times Prentice Hall . Elmasri, R. & Navathe, S. (1999) Fundamentals of Database Design, McGraw Hill. Elmasri, R. & Navathe, S. (2006) Fundamentals of Database Systems (5th Edition). Pearson Addison Wesley Kroenke, D. (2005) Database Processing : Fundamentals, Design and Implementation (10th Edition), Pearson Prentice Hall. Ramakrishnan, R. & Gehrke, J. (2006) Database Management Systems (3rd Edition), McGraw Hill. WEB BASED RESOURCES Database, http://www.intelligententerprise.com/dbframe.shtml. Datamation, http://datamation.earthweb.com/. DBMS Online, http://www.dbmsmag.com/artin403.html. Unit Title: PROGRAMMING 1 Level: C Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE and CO-REQUISITE UNITS Systems 1. AIMS To develop an understanding of fundamental programming concepts and to examine the process of program design, implementation and testing. INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 1. Explain the programming concepts of sequence, iteration and selection and demonstrate them in a single programming language. 2. Design an algorithm to solve a given problem using sequence, iteration and selection. 3. Implement a given algorithm by selecting appropriate variables, data types and programming constructs. 4. Demonstrate a detailed understanding of the syntax of a single programming language. 5. Test and debug a given program by developing and implementing a suitable test strategy and selecting an appropriate set of test data. LEARNING AND TEACHING METHODS Intellectual, Cognitive and Operational Development The context of this unit is fundamental programming constructs demonstrated through procedural programming and structured design. In terms of the Computing subject benchmark, this unit focuses on material from Programming Fundamentals. In this unit learners develop an understanding of fundamental programming constructs (sequence, iteration and selection) and algorithm design. The main approach adopted in laboratories is practical exercises that give the student a lot of practice programming. Practical sessions are structured to provide the correct level of support for all students. Indicative Styles This unit utilises two seminars per week. Learners learn to use a simple programming environment and to edit and compile source code. They learn to recognise the relationship between the organisation of programs and the organisation of the computer, for example, setting up the environment and compiling and executing programs Learners work on programming problems during laboratory classes. Their first programs illustrate simple programming problems that emphasise individual programming constructs but they quickly progress to larger problems. Learners work in small groups to solve programming exercises and they present their algorithm designs during seminars. Feedback on Progress During practical classes learners are given continuous feedback on exercises that they complete. They work on many of the exercises in their own time and the results of these exercises are discussed during laboratory sessions. ASSESSMENT METHODS Assessment: Learning Outcome 1-5: All the learning outcomes are assessed by the students completing a portfolio of work during the unit. The problems in the portfolio get more difficult as the unit progresses. They are given regular feedback on the contents of the portfolio. The learning outcomes will also be assessed in a written examination. Assessment: Weighting The weighting of in-course assessment to final assessment is 50:50. INDICATIVE CONTENT Programming Constructs: Sequence, iteration, selection; variables, data types, procedures, functions, parameter passing. Programming Language: Syntax, semantics, coding standards, documenting code. Algorithm Design: Problem decomposition, top-down design, structured programming, problem representation (eg pseudo-code, flowcharts), abstraction, assessing algorithm designs, good design practices. File and Data Structures: File input/output, file processing, sorting. Arrays, linked lists, queues, stacks. Testing and Debugging: Importance of testing, approaches to testing, test design, generating test data, debugging. Programming Tools: Compilation, compilers, libraries, programming environments. INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Bailey, D. A. (2000) Java Elements: Principles of Programming in Java, McGraw Hill Bailey, D. A. (2002) Java Structures: Data Structures in Java for the Principled Programmer (2nd Edition) McGraw Hill Flanagan, D. (2005) Java in a Nutshell (5th Edition) O’Reilly. Lewis J.& Loftus W., (2006) Java Software Solutions - Foundations of Program Design (5th Edition), Addison-Wesley. McConnell, S. C. (2004) Code Complete (2nd Edition) Microsoft King M. J., & Pardoe, J. P. (1995) Program Design using JSP. MacMillan WEB BASED RESOURCES http://java.sun.com http://www.netbeans.org http://www.bluej.org Unit Title: SYSTEMS 1 Level: C Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE and CO-REQUISITE UNITS None AIMS To develop understanding of the operations of business systems including the communication, storage and processing of data and information and to develop capability to develop solutions to simple business information problems. This involves a) the concepts and practice of modelling business systems using informal and formal techniques, and b) the integration of capabilities needed for the process of system provision such as human computer interface and computer systems architecture design. INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 1. Understand basic business processes and generate ideas for improvement with particular reference to information. 2. Understand how data can be manipulated and presented to assist a business person. 3. Understand the use of measurement to monitor business process. 4. Use formal modelling concepts in logical analysis of (a) simple business process(es) with an understanding of the importance of recognised good practice and quality standards. 5. Design and develop a record-based system to assist a business process, taking into account the needs of the business to collect, store and manipulate data with due regard to relevant legislation such as the Data Protection Act. 6. Appreciate the cycle of system development activity and the roles and responsibilities of the different people involved including the principle duties set out in the rules of professional bodies. LEARNING AND TEACHING METHODS Intellectual, Cognitive and Operational Development The context of the unit is the activities of a single business function, and its interactions with other parts of the business. In terms of the Computing subject benchmark, the unit brings together material from Computer Based Systems, Information Systems and Systems Analysis and Design. During the first term learners work through a series of discussions and modelling exercises progressing from well-defined business tasks constrained to one business department with simple information requirements, to business scenarios with more complex interactions between departments and processing needs. The nature of business data and information flows needed to support business processes are explored through the use of example prototype systems on a personal computer used in stand alone mode. Different styles of graphical representations are explored as vehicles for understanding, design and communication. They study the basic activities of the computer systems development cycle, progressing through the second term to understand the way that each phase contributes to the process of providing a successfully functioning computer system to computer users. They examine the role of systems developers in identifying and extracting business requirements for information processing from the business computer users. Indicative Styles This unit utilises two lectures per week. One covers the business process basics and logistics. The other lecture concentrates on systems, drawing on the process knowledge stream. Learners use different types of graphical representation to understand, record, design and communicate business information processing and business process improvements. They examine a series of computer based information systems running on personal computers, which allows them to apply the conceptual knowledge and principles developed in a parallel sequence of lectures. Learners participate in discussions which examine the information requirements to support business processes, the facilities which computerbased systems can provide to provide and present the information. They experience development of a system, using very simple tools, focusing on the identification of process improvement and the use of information and systems to provide the improvement. Decisions about the system’s design take into account the needs of the business to collect, store and manipulate data with due regard to relevant legislation such as the Data Protection Act. Feedback on Progress: Feedback plays an important part in the development of learner ability in this unit. Each student is expected to keep a file of the exercises and discussions and to make these available in class when requested. Feedback is provided on a) the quality of the document, b) quality of thought/analysis, c) ability to model business processes and d) level of understanding of the topic. ASSESSMENT METHODS Assessment: Intended Learning Outcomes 1 through 4: Students participate in class discussions of business studies, where they have, for example, to identify a process improvement. They take the study away and prepare notes outlining their proposals and justification. In the following week, a few of them present their ideas to the class. Students do not know which of them will be asked to present, and they are randomly selected over repeating cycles. All cycles are marked. The marks from two cycles are made formal. Students are not told which cycles are which. As the year progresses, presentations will adopt a more formal style, and use a wider variety of visual aids. Assessment: Intended Learning Outcomes 2 through 4 and 6: These will be assessed through examination. The examination will be partly based on a case study. Assessment: Intended Learning Outcome 5: Student will carry this out as a formative group assignment. The extended time of the assignment vehicle provides scope for their design and development thinking. Students will work as a team, keeping an individual log and participating in an element which is peer assessed. Assessment: Weighting The weighting of in-course assessment, to final assessment is 50:50. In the incourse assessment the weighting of presentations to assignment will be 50:50. INDICATIVE CONTENT Business Process: Logistics of businesses: what business processes are, information as the trigger to all process and the monitor of process, dependency of management on measurement. The importance of detail. Common processes: trading, stock control, planning and management, resource planning and management. Management approaches: reductionism, just-in-time. Quality management: each business as a system, failure of goal-setting approaches, improvement via radical change and continuous improvement. System software: Screen/form and report generating software tools. Managing with Data: Presentation of data to provide operational and management information. Creating reports and screens from sorted and selected data. What makes a good report/screen, how they assist business people, how they support/enable process improvements, and facilitate the process improvement process itself. Defining measurements for different businesses, or sub-components of businesses. Indicators, simple and calculated, use of index numbers and ratios. Analytical Models: Soft systems thinking and tools. System block diagrams, and process flowcharts. Data flow modelling. Using models to identify process improvements and information requirements. Systems people, business people, and the mutual learning process of system provision. Using models to facilitate/support learning. Systems: Different kinds of system: record-keeping systems through data processing systems. Typical business contexts, and appropriate systems. Systems architectures: batch, interactive, internet-based, mobile, real-time. Systems Requirements and Design: Systems architecture: overall structure, relationships among major components and their interactions, such as humans, hardware and software. Layering and partitioning. Relevant legislation, regulations and standards and the need to comply with such requirements when designing and building computer-based systems. Human Computer interface: Standards & legal requirements, dialogues, direct manipulation and style guides. Input-output design, business process and human factors issues. Introduction to approaches to usability requirements analysis: structured, ethnographic, scenario-based. Usability for different classes of users: novice, expert, people with disabilities. Systems Development Cycle The different activities in the systems development cycle: the activities learned in this unit in context. Appreciate the cycle of system development activity phases, tasks, documentation, deliverables, and the roles and responsibilities of the different people involved including the principle duties set out in the rules of professional bodies such as the BCS Code of Practice and BCS Code of Conduct. Systems development themes: Activities and issues that need to be taken into account across the development cycle such as documentation & standards, feasibility, user participation, communication, client-consultant relationship, documentation and standards, quality management, project management, risk analysis, configuration management. INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Bennett, S. & McRobb, S. (2005) Object Oriented Systems Analysis and Design using UML. McGraw Hill ISBN: 0077110005 Valacich, J. S. & George, J. F. (2005) Essentials of Systems Analysis & Design (3rd Edition). Prentice Hall. ISBN: 0131854623 (Linked to website – see below). Kendall, K. E. & Kendall, J. E. (2004) Systems Analysis and Design (6th Edition), Prentice Hall ISBN: 013127323x (Linked to website – see below). Whitten, J. L. & Bentley, L. D. (2005) Systems Analysis and Design Methods (7th Edition). McGraw-Hill Post, G. V. & Anderson, D. L. (2005) Management Information Systems: solving business problems with information technology (4th Edition). McGraw Hill. Waters, C. D. J. (2001) Operations Management: Producing Goods and Services (2nd Edition). Financial Times Prentice Hall. Ayres, R. (2001) The Essence of Professional Issues in Computing with Communication Skills. Prentice-Hall. Spinello, R. A. (2002) Case Studies in Information and Computer Ethics and Policy (2nd Edition). Prentice-Hall. Journal of Applied Systems Analysis. - Lancaster : University of Lancaster. 0308-9541 Maxey, J., Rowlands, D. George, M. L. & Upton, M., (2005) The Lean Six Sigma Pocket Toolbook: A Quick Reference Guide to 70 Tools for Improving Quality and Speed. McGraw Hill. ISBN: 0071441190 Womack, J. P. & Jones, D. T. (2005) Lean Solutions: How Companies and Customers Can Create Value and Wealth Together. Free Press. ISBN: 0743277783 WEB BASED RESOURCES The following websites will be used as supplementary material and activities: http://cw.prenhall.com/bookbind/pubbooks/valacich/ http://www.prenhall.com/kendall/ http://www.leanstrategies.com/basicblocks.htm British Computer Society for Codes of Conduct Codes of Practice etc: http://www.bcs.org.uk/index.html Association for Computing Machinery for ACM Code of Ethics and Professional Conduct etc: http://www.acm.org/constitution/code.html Unit Title: WEB DEVELOPMENT Level: C Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE & CO-REQUISITE UNITS Programming AIMS To develop a critical view of information presented on the World Wide Web. To introduce and promote confidence in the use of commercial web design programs and evaluate the use of graphics and multimedia and evolving web technologies INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 1. Appreciate the complexity of the Web 2. Demonstrate an understanding of the principles of good web site and web page design 3. Design and construct effective web sites using graphics, multimedia and sound 4. Evaluate available scripting languages 5. Understand the opportunities afforded by new web technologies LEARNING AND TEACHING METHODS Intellectual, Cognitive and Operational Development This unit presents the principles of good web design in the context of evolving web standards and the practical application of these principles through appropriate software tools. The unit focuses mainly on client-side technologies. Indicative Styles The unit will be presented to students using lectures and seminar sessions using worked examples and case studies. Students will examine and evaluate existing web material and create their own. Feedback on progress In addition to feedback for completed assignments, feedback will be provided on formative tasks and case studies. ASSESSMENT METHODS Learning Outcomes 1, 2 and 3 The material covered in these Learning Outcomes will be assessed by the completion of an individual web based assignment. Learning Outcomes 4 and 5 The material covered in these Learning Outcomes will be assessed by an individual 1500 word report. Weighting The weighting of assessments will be 50:50. INDICATIVE CONTENT An Overview of the World Wide Web Internet, history of the World Wide Web, HTTP, HTML, Web Servers and Web Browsers (Clients) URLs and web-applications. Browser plug-ins, Applets. Semantic Web and Web 2.0 concepts. HTML HTML standards, Document structure, Text, Hyperlinks, Images. Tables, Frames, Forms and simple CGI Server-side scripts, Cascading Style Sheets (CSS), separating document style from structure. Web design, usability, accessibility and legal issues HTML editing and validation tools Uploading web content (FTP and WebDav), File (MIME) types Web Graphics Colour, the Web Palette. graphic file formats GIF, JPEG, PNG, Animated graphics creating and editing graphic files placing and aligning imagery mapping an image Multimedia and Sound on the Web audio file formats and compression video file formats and compression including sound and video on web pages Flash, Shockwave, Scalable Vector Multimedia Integration Language (SMIL) Graphics (SVG), Synchronised Client-Side Scripting JavaScript, JScript and ECMAScript VBScript and Active X Java Applets adding executable content adding web functionality to Visual Basic Applications XML & XHTML Document Type Definition (DTD). Well-formed XML. XHTML Examples of XML such as: SMIL, SVG, Mathematical Markup Language (MathML) Wireless Markup Language (WML) Chemical Markup Language (CML) Simple Object Access Protocol (SOAP). INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Niederst, J. (2006) Web Design in a Nutshell: A Desktop Quick Reference (3rd Edition). O’Reilly McFarland, D. (2004) Dreamweaver 8: the Missing Manual. O’Reilly Page, K. A. (2003) Macromedia Dreamweaver MX2004: Training from the Source( 3rd Edition). Macromedia Williamson, H., & Epstein, B. (2002) Dreamweaver in a Nutshell: A Desktop Quick Reference. O’Reilly Neilson, J. (1998) Designing Web usability: The Practice of Simplicity. New Riders Publishing Lie, H. W. & Bos, B (2005) Cascading Style Sheets: Designing for the Web (3rd Edition) Addison-Wesley WEB BASED RESOURCES World Wide Web Consortium http://www.w3c.org Adobe (Macromedia) http://www.adobe.com Internet Explorer http://www.microsoft.com/windows/ie Mozilla & FireFox http://www.mozilla.org Opera http://www.opera.com The Web Developer’s Resource http://www.webmonkey.com Matt’s Script Archive http://www.scriptarchive.com VisiBone http://www.visibone.com Web Accessibility Initiative http://www.w3.org/WAI/ Unit Title: INTERNET TECHNOLOGIES Level: C Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE & CO-REQUISITE UNITS Web Development AIMS To develop the students’ knowledge of a number of current Web industry techniques. Further, to explore and investigate the use of web technologies and their applications INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 1. Demonstrate an understanding of a number of recent Web technologies 2. Appreciate the power of Web technologies and development tools 3. Competently use Web technologies 4. Integrate applications with the Web. LEARNING AND TEACHING METHODS Knowledge and understanding are acquired through a mixture of formal lectures and seminars, computer networked practical areas, laboratory experiments, student-led seminars, work-related exercises and other directed independent learning activities augmented by the utilisation of available software tools and virtual learning environment (VLE) so students have the opportunity to consolidate work by self-tuition. Problem solving skills are further developed using a range of appropriate ‘real’ and ‘theoretical’ case studies together with problem-based and task-based learning scenarios System Week / Final assessment Following the examinations in the summer term, students typically engage in a one week exercise, carried out in teams, known as the System Week. They build a system to solve a business problem, which is an integrative piece of work, involving aspects of the different units of the course. There are no lectures, or seminars. Staff supervise the week. The exercise is deliberately challenging, drawing upon a small number of issues that arise at Level I, and stimulating their interest in the year ahead. The result is an individual Systems Week mark derived from a Group mark moderated to reflect individual contribution. Where the Systems Week is not practicable, e.g. for part-time students, a similar integrative assignment is undertaken towards the end of term over a longer time frame. ASSESSMENT METHODS The Lecture-Seminar Series results in a portfolio of work. It comprises a number of equally weighted items: ILOs 1-3, are assessed by the completion of a group web based assignment and team reports. ILO 4 is assessed by system week (or equivalent final assessment) Weighting The unit is 100% assessed on course-work. The three elements of assessment are weighted as follows Practical: 50% Group Report: 25% Final Assignment/Systems Week Mark: 25% INDICATIVE CONTENT Web Graphics & Animation Flash, Shockwave, Scaleable Vector Graphics, SVG, Authoring/Editing Tools, Pendraw Multimedia Audio file formats and compression Video File formats and compression Synchronised Multimedia Integration Language (SMIL) Authoring/Editing Tools, Integrating multimedia in web pages The Semantic Web, XML XML, Well-formed and Valid XML, XSL XSLT XSL-FO, XPath, XQuery, XLink, XPointer, Document Type Definition DTD, XML DOM, XForms, RDF, RSS, GIS Specialist markup languages VRML, X3D, MathML, Wireless Markup Language WML. Editing and Manipulating XML data. Office tools, XML editors/parsers, Macros, specialist tools. Web Services Platform SOAP (Simple Object Access Protocol) UDDI (Universal Description, Discovery and Integration) WSDL (Web Services Description Language) Vocational-context. Web building Web W3C, Web Browsers, Quality of Service, Semantic Web, Web Careers, Web Hosting, Web Certification INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Erl, T. (2005) Service-Oriented Architecture: Concepts, Technology, and Design. Erl, T. (2005) Service-oriented Architecture: A Field Guide to Integrating XML and Web Services. Harold, E. R. & Means, W.S (2004) XML in a Nutshell (3rd Edition) O’Reilly. Niederst, J. (2006) Web Design in a Nutshell: A Desktop Quick Reference (3 rd Edition). O’Reilly. Curbera, F. et al. (2005) Web Services Platform Architecture: SOAP, WSDL, WS-Policy, WS-Addressing, WS-Bpel, WS-Reliable Messaging and More WEB BASED RESOURCES World Wide Web Consortium http://www.w3c.org W3 schools http://www.w3schools.com The Web Developer’s Resource http://www.webmonkey.com Matt’s Script Archive http://www.scriptarchive.com VisiBone http://www.visibone.com O’Reilly XML.com http://www.xml.com FdSc Computing and Internet Technology FULL-TIME YEAR 2 UNIT DIRECTORY Unit Title: WORK BASED PROJECT Level; I Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE and CO-REQUISITE UNITS This unit is the final integrative unit and thus provides students with the opportunity to draw upon and combine the skills and knowledge developed in other units of the course, as appropriate, in order to provide a solution to the business problem undertaken as their project. It consequently enables students to enhance their employability and demonstrate this to prospective employers as evidenced by the outcomes of their project AIMS 1. To provide a learning experience that enables students to integrate, apply and evaluate skills and knowledge from all parts of the course and work in a ‘real-world’ environment. 2. To provide the experience of defining and analysing real business problems through direct links with local industry. 3. To provide the experience of solving real business problems through project management in an industry context and to encourage self motivation through liaison with a local company employees. 4. To provide a systematic approach, from problem identification to the proposals of appropriate courses of action for a specific area to meet the needs of a local industrial project. 5. To develop the student's technical, documentation and presentation skills. INTENDED LEARNING OUTCOMES At the end of this unit the student will be is expected to: 1. Apply knowledge and skills from different parts of the course in an integrative manner in the solution of a real business problem. 2. 3. Use acquired consultancy skills, liaison skills and problem solving skills to achieve an appropriate understanding of a real business problem in the context of local industry and to present one or a range of possible solutions. Create and maintain appropriate project documentation. 4. Make a Project presentation. 5. Perform a quality assurance review of a project. TEACHING AND LEARNING The overarching aim of the course is to prepare the students to begin a career in the field of commercial or business computing. It provides the opportunity to develop skills in several key areas, both business and technical. If these skills are to be effectively deployed the student must be given the opportunity to practice their use in an integrative manner to solve business problems. The students are given an opportunity to practice these skills in a safe environment as a culmination of their level C work in the Systems Week. This unit provides the vehicle by which students are encouraged and enabled to further develop their skills in a real life environment. Specifically it 1. Enables the student to apply skills taught during the course to a real-life problem 2. Gives the student the opportunity to integrate these skills to develop a solution for their clients problem to an agreed brief 3. Is carried out in a real-life, live, environment which provides the valuable work experience which is a vital element of the course. The project thus provides work-experience in a manner which can be carefully monitored and in which the student can be encouraged to reflect on their management and conduct of the project undertaken. CONTROL OF PROJECTS Staff closely monitor the project-teams and their progress throughout the year, with an individual project supervisor responsible for monitoring each team's progress. The project manager is responsible for overall control and co-ordination of all projects. The project manager will ensure that students are aware of the format, standards and deadlines for the project. They also act as a moderator in ensuring even standards of assessment. In order to assure the quality of the project work undertaken each team is required to produce, in addition to the documents required at the end of the project, 1. the terms of reference for the project, which must be signed by a representative of the host organisation, the project supervisor and the group members 2. an interim report 3. a log of all the activities and meetings undertaken by the project team Further, each project group is required to complete a control sheet for their project supervisor indicating the tasks undertaken since the last meeting with the supervisor and the tasks to be undertaken before the next meeting. The supervisor must sign this control sheet. ASSESSMENT Each project team is required to produce: 1. An interim report (including terms of reference) or staged viva (ILOs 1&2) 30% 2. Final report, log of all meetings and communications and an oral presentation (ILO’s 1,3,4) 70% The oral presentation consists of a formal talk/discussion given by the whole team in the presence of the project manager, project supervisor. Representatives from the local industry/host company will also be invited to the presentation. All members of the audience are encouraged to address questions to individual members of the project team. The project team members will be assessed under the following headings: 1. Technical Merit 2. Management of the project 3. Individual development of the student 4. Documentation standard 5. Standard of oral presentation 6. User satisfaction PROJECT SELECTION Over past years the programme has attracted very many live projects from local industry. The organisations range in size from small businesses employing under ten people to large multinational companies employing many thousands of people. The organisations are drawn from both the public and private sectors and include both service and manufacturing industries. The projects are carefully selected to require some 100-120 hours of the group's time. Projects are chosen by the students from the range of 'live' projects on offer at that time from local companies and with the guidance of the project manager. The projects may be in a specific area of Business Information Technology or be inter-disciplinary. At the start of Level I students are grouped into project teams (typically 1-4 students, depending on the nature of the project) and each team is then responsible for the successful completion of their chosen project. One particular area of difference between projects relates to the required end-product. Depending on the complexity of the problem, students are usually required to produce a working system. Unit Title: NETWORK DESIGN Level : I Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE and CO-REQUISITE UNITS Computer Systems, Programming 1 AIMS The aim is to examine the goals and design of computer communications networks and the models developed to aid the understanding of these networks. The concepts and practices of computer networks will be introduced to provide a framework for consideration of communication, traffic and security aspects and the technologies available. To examine the opportunities and problems opened up by such technologies. INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 1. Understand the functions of the principal components of computer networks. 2. Understand the concepts of protocol and layering, and apply them to networks. 3. Design and carry out performance and behaviour experiments on computer networks. 4. Compare and contrast alternative solutions of structured cabling. 5. Understand class-based network addressing and subnetworks. 6. Understand the principles of encryption as applied to computer networks. 7. Design a computer network that links to the Internet. LEARNING AND TEACHING METHODS Lectures are used to present subject topics and perspectives. Learners work through a series of experiments in computer laboratories. They are given a practical framework guidance and take responsibility for the content of their reports and level of analysis. Laboratory experiments are used for learners to work through experiments and exercises on networking equipment to reinforce their theoretical understanding. Learners use formative assessment tasks to provide immediate feedback to the learner. ASSESSMENT METHODS ILOs 1 through 6 All of these Intended Learning Outcomes are assessed through an examination. At this level, the learner is expected broadly to be able to demonstrate an understanding over a multiplicity of individual short questions which may be based on scenarios from industrial or commercial environments and require them to choose correct explanations or descriptions. ILOs 1 through 6 are assessed through in-course, individual reports in laboratory notebooks. ILO 7 is assessed through an in-course assignment. Weighting The weighting of in-course assessment, to final assessment is 50:50. Within the coursework, the weighting of design assignment to laboratory notebooks is 40:10. INDICATIVE CONTENT This unit utilizes two lectures per week. Network technology: Ethernet technology and performance, other LAN technologies. Monitoring Network traffic. How operating systems use LAN connections. Networked file systems: NFS, SAMBA. Internetworking: Basic protocols, IP, TCP and UDP. Architecture of IP, its functioning and characteristics. Packet structure, congestion control, associated protocols such as ARP, BOOTP, DHCP. Architecture of TCP, its functioning and characteristics. Connections, sliding window, error-checking. Flow control, congestion control. TCP as a software multiplexer. UDP, its purposes and architecture and characteristics. Classful networks, subnetworks, IP addressing and their purposes. Higher Level Protocols: HTTP and FTP. Server architectures, browser architectures. Security: Principles of security. Threats, attacks, counter-measures. Models for security. Encryption, symmetric and asymmetric, modulus arithmetic and public key systems. Digital signatures and certificates. Secure Sockets Layer and Transaction Layer Security. Management: Tools for monitoring and managing networks, security risks and responsibilities of IT managers. INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Cisco Networking Academy Program First-Year Companion Guide (2002) Tanenbaum, A. S. (2005) Computer Networks. Prentice-Hall International Spurgeon, C. E. (2000) Ethernet The Definitive Guide. O’Reilly Comer, D. (2003) Computer Networks and Internets (4th Edition). Prentice-Hall. Comer, D. (2005) Internetworking with TCP/IP, Vol 1, 4th Ed. Prentice-Hall. Stern, H. (2001) Managing NFS and NIS (2nd Edition). O'Reilly. Rescorla, E. (2001) SSL and TLS. Addison-Wesley. Spinello, R.A., (2002) Case Studies in Information and Computer Ethics and Policy (2nd Edition). Prentice-Hall. WEB BASED RESOURCES http://www.netbook.cs.purdue.edu http://www.bcs.org.uk/index.html http://www.anixter.com http://www.ieee.org Unit Title: PROGRAMMING 2 Level : I Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE AND CO-REQUISITE UNITS Programming1, Systems1, Systems 2 AIMS The aim of this unit is to build on Level C Programming1 and examine Object Oriented concepts covering design, programming and testing. More complex applications will be developed exploring database connectivity, GUI and web interfaces. The unit will also consider a number of programming languages and asses their benefits in differing contexts. INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 1. Demonstrate a detailed understanding of the syntax of a single object oriented programming language 2. Demonstrate an awareness of other programming languages 3. Design an algorithm for a given problem scenario, including connecting to a database and interface design 4. Design an object model for a given algorithm 5. Implement a programme corresponding to a given implementation object model 6. Develop and apply a relevant testing strategy to a given programme. LEARNING AND TEACHING METHODS Intellectual, Cognitive and Operational Development The context of this unit is Object Oriented programming constructs demonstrated through use of an object oriented programming language and object design. This unit builds upon the basic programming constructs introduced in Programming1, and refocuses the constructs into an Object Oriented paradigm. Learners will, using increasingly complex scenarios, design, build and test programs. Learners will be encouraged to become more self supporting in this process, using on-line documentation as an independent resource to explore the practice of Object Oriented coding. Indicative Style This unit utilised two seminars per week. Both the lectures and seminars will present increasingly complex problems and explore the possible resolutions through design and coding. Learners will explore the concept of ‘design as a vehicle for communication’ by developing an algorithm and passing it to others to code. Learners will build and comment programmes which will be used by the whole seminar group, so reinforcing the lecture topics of re-usability and code documentation. Each learner will be expected to complete a number of seminar tasks each week, learners will be able to monitor their own progress against successful completion of these tasks. A number of these tasks will be submitted as a formal assessment. ASSESSMENT METHODS Intended Learning Outcome 1: In order to assess the level of understanding of Object Oriented coding concepts and the extent to which students can apply these concepts a number of seminar tasks will be requested for formal assessment. The emphasis here being on practice which can be more easily quantified in a coding assessment as opposed to an exam. Intended Learning Outcome 3, 4, 5 and 6 Learners will be given a scenario for which they have to design and build an application and then test the resulting solution. The emphasis is on the process of Object Oriented design and its relationship to the building process. Intended Learning Outcome 2 through 6: The conceptual elements of the majority of the learning outcomes can be assessed through written work and will be assessed in an exam. Whilst fragments of code can be requested to illustrate a concept, it is unlikely that learning outcome 1 would be covered in such an assessment. Weighting The weighting of the in-course assessment to final assessment is 50:50. Within the coursework, the weighting of the scenario assessment to the seminar task assessment is 30:20. INDICATIVE CONTENT Object Oriented Concepts Classes, objects and object interaction, Encapsulation, Inheritance, Polymorphism Code design OO techniques such as class diagrams, pseudo code, refactoring, ownership and copying of code, maintainability and documentation Testing strategies Developing test plans, executing test plans, producing test data sets, different testing strategies Error Handling Dealing with exceptions, communicating errors to users Database connectivity Database connection protocols (e.g. ODBC, JDBC), executing queries, handling results, performance issues HCI Element of good interface design, usability principles Information Systems and Web development Interface design, event handling, web interaction protocols, remote objects, client and server side programming, data processing INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Horstmann, C. & Cornell, G. (2004) Core Java 2 Vol 1: Fundamentals (7th Edition), Sun Microsystems Horstmann, C. & Cornell, G. (2005) Core Java 2 Vol 11: Advanced Features, Sun Microsystems Lewis, J. & Loftus, W. (2006) - Java Software Solutions: Foundations of Program Design, 5th Edition, Addison-Wesley. Fowler, M. (2000) Refactoring. Addison Wesley Fowler, M. (2004) UML Distilled: A Brief Guide to the Standard Object Modeling Language. Addison Wesley Forester, T and Morrison, P (1995) Computer Ethics: Cautionary Tails and Ethical Dilemmas in Computing (2nd Edition) MIT Press, Cambridge, MA Barnes, D.J. and Kölling, M. (2006) Objects First with Java: A Practical Introduction using BlueJ (3rd Edition) Prentice Hall. WEB BASED RESOURCES http://java.sun.com/ http://java.sun.com/j2se/javadoc/ http://www.extremeprogramming.org/ http://www.bluej.org http://greenfoot.org Unit Title: SYSTEMS 2 Level : I Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE and CO-REQUISITE UNITS Systems 1 AIMS To provide a framework and apply techniques for the object oriented analysis and design of systems for business process improvement. Additionally to explore the problems associated with traditional systems development and examine other approaches and frameworks. This involves a) examining different development environments including CASE tools and prototyping, and b) development of different computer system architectures, which provide business improvements for operational and management information. INTENDED LEARNING OUTCOMES At the end of the unit, the student will be able to: 1. Understand and evaluate the various concepts and techniques of Object Oriented Analysis (OOA) and Object Oriented design (OOD). 2. Apply Object Oriented Analysis and Design techniques to a given business information context. 3. Utilise both an object oriented CASE tool and prototyping in the systems development process. 4. Select a methodology to suit a given environment and process. 5. Criticise a given systems development process in terms of its management and methods. 6. Design computer system architectures and human computer interfaces, which provide business improvements for scenarios with complex interactions between departments and integrated processing needs. 7. Discern similarities between sub-systems and application components utilising ideas of standard frameworks, components, design patterns. LEARNING AND TEACHING METHODS Intellectual, Cognitive and Operational Development The context of the unit is the activities of a small to medium business enterprise, and its interactions with other businesses. In terms of the Computing subject benchmark, the unit brings together material from (i) Computer Based Systems, (ii) Information Systems and (iii) Systems Analysis and Design. During the first term learners are presented with the concepts and modelling techniques of object oriented analysis and design. They apply the modelling techniques to analyse and communicate business tasks which require interaction between business departments and /or external agents. The nature of business data and information flows needed to support business processes are examined through the use of example prototype systems on a personal computer network. Different styles of object oriented graphical representations are explored as integrated vehicles for understanding, design and communication. They study the detailed activities of the computer systems development cycle, building on the simple model presented in the first year unit Systems 1, to develop an understanding of the structure, processes, and techniques of several different development methods. They examine the process of identifying and assessing the suitability of different systems development methods in a given project environment. Indicative Styles This unit utilises two seminars per week. Learners use different types of object oriented graphical representations to understand, record, design and communicate business information processing and business process improvements. They examine a series of computer based information systems running on personal computers, which allows them to apply the conceptual knowledge and principles developed in the lectures. Learners participate in discussions which examine the information requirements to support business processes and the design of computerbased systems to provide and present the information across departments and between the business and external agents. They experience development of the design of a system, using a subset of object oriented techniques, focusing on the identification of process improvement and the use of information and systems to provide the improvement. Learners take part in discussions which examine and compare the work breakdown structure, processes and techniques of a selection of systems development methodologies to manage the development of computer-based systems. They explore the benefits, drawbacks and suitability of systems development methodologies within particular project contexts. Feedback on Progress: Feedback plays an important part in the development of learner ability in this unit. Each student is expected to keep a file of the exercises and discussions and to make these available in class when requested. Feedback is provided on a) the quality of the document, b) quality of thought/analysis, c) ability to model business processes using object-oriented concepts and techniques, and d) level of understanding of the topic. ASSESSMENT METHODS Assessment: Intended Learning Outcome 2, 5 and 6: Students participate in class exercises and discussions of business design activities, where they have, for example, to model existing business activities, system requirements and identify process improvements. In the following week, a few of them present their ideas to the class. Students do not know which of them will be asked to present, and they are randomly selected over repeating cycles. All cycles are marked. The marks from two cycles are made formal. Students are not told which cycles are which. The presentations adopt a formal style, and use a variety of visual aids. Assessment: Intended Learning Outcomes 1 through 7: These will be assessed through examination. The examination will be partly based on a case study. Assessment: Intended Learning Outcome 1 through 3: Student will carry this out as a formative group assignment. The extended time of the assignment vehicle provides scope for their design and development thinking. Students will work as a team, keeping an individual log and participating in an element which is peer assessed. Assessment: Weighting The weighting of in-course assessment, to final assessment is 50:50. weighting of presentations to assignment will be 20:30. INDICATIVE CONTENT Object oriented concepts and techniques: The Object oriented concepts such as classes, inheritance, encapsulation and polymorphism, issues on reuse. Object oriented modelling techniques such as a selection of those from the Unified Modelling Language (UML) e.g. Class diagrams, Use Case Diagrams, Object interaction diagrams, Collaboration Diagrams, State Transition diagrams etc. CASE software: Drawing, data dictionary and reporting facilities for object oriented techniques and methods. Managing with Data: Presentation of data to provide operational and management information in an inter-departmental/inter-business context. Creating reports and screens from sorted and selected data. Defining measurements for different businesses, or sub-components of businesses. Systems Requirements and Design: Systems architecture, human computer interface and input-output design for complex interactions and integrated processing needs. The need to comply with relevant legislation, regulations and standards requirements when designing and building computer-based systems. Development Methods: The different activities in a selection of systems development methods: structure, philosophy, objectives, scope, techniques and their interaction within the different phases or iterations. The needs for professional good practice at every phase and in each role. Modelling the systems/software development process: overview of modelling techniques from methodologies such as Object-Oriented Analysis and Design e.g. Unified Process with UML, structured systems methodologies e.g. SSADM, Soft Systems Methodologies e.g. SSM; prototyping approaches such as the Dynamic Systems Development Method (DSDM). Introduction to the evaluation & selection of development methodologies using approaches such as feature and contingency analysis. Need for professional standards & conduct in undertaking studies and providing recommendations. Project Management - the dependency of project planning on methodology work breakdown and structure. Overview of Design patterns, components and frameworks: similarities between subsystems, re-use of business/application components at different levels. INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED - MAIN TEXTS Bennett S., & McRobb S. (2005). Object Oriented Systems Analysis and Design using UML (3rd Edition). McGraw Hill. ISBN: 0077110005. Bell, S. & Wood-Harper, A. (1998). Rapid Information Systems Development: a non-specialist’s guide to Analysis and design in an imperfect world. McGraw Hill. Post, G. V. & Anderson, D.L. (2005) Management Information Systems: solving business problems with information technology (4th Edition). McGraw Hill. Spinello, R. A. (2002). Case Studies in Information and Computer Ethics and Policy. (2nd Edition) Prentice-Hall. Schwaber, K. (2004). Agile Project Management with SCRUM. Microsoft Press. ISBN: 073561993X ADDITIONAL TEXTS Priestley, M. (2003) Practical Object –Oriented Design with UML (2nd Edition). McGraw Hill. Quatrani T., (2002) Visual Modelling with Rational ROSE 2002 and UML.(3 rd Edition) Addison Wesley. Pilone, D. & Pitman, N. (2005) UML 2.0 in a Nutshell. O’Reilly. Kruchten, P. ( 2003) The Rational Unified Process: an introduction. (3 rd Edition) Addison Wesley Stapleton, J. (2002) DSDM, Business Focused Development (2nd Edition) Addison Wesley Bainbridge, I. (1999) Software Licensing (2nd Edtion) CLT Professional Bainbridge, I. (2004) Introduction to Computer Law (5th Edition). Longman Schneier, B. (2004) Secrets and Lies: Digital Security in a Networked World. Wiley Spinello, R. A. (1997) Case Studies in Information and Computer Ethics. Prentice-Hall. Already listed in this section. See Above Journal of Applied Systems Analysis. - Lancaster: University of Lancaster. 0308-9541 WEB BASED RESOURCES The following indicative websites will be used as supplementary material and activities: 1. The Rational site: http://www.rational.com http://www.rational.com/leadership/index.jsp http://www.rational.com/products/whitepapers/334.jsp 2. Rational Edge magazine (from Rational): http://www.therationaledge.com/ 3. Systems Developer magazine: http://www.sdmagazine.com/articles/ 4. DSDM organisation: http://www.dsdm.org/ 5. SSADM international user group: http://www.cscs.wmin.ac.uk/~ssadm/main.html 6. British Computer Society for Codes of Conduct Codes of Practice etc: http://www.bcs.org.uk/index.html 7. Association for Computing Machinery for ACM Code of Ethics and Professional Conduct etc: http://www.acm.org/constitution/code.html http://www.agile.org http://www.agilemanagement.net Unit Title: INTERNET APPLICATION DEVELOPMENT Level : I Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE and CO-REQUISITE UNITS Web Development, Database Systems 1 and Programming 1 AIMS To develop a critical understanding of a range web-server technologies together with practical experience of their installation and configuration. Use of server-side processing and scripting languages to code dynamic internet applications and interact with web-based database systems. INTENDED LEARNING OUTCOMES At the end of this unit the learner is expected to be able to: 1. Select, install, and configure a range of appropriate web-server technologies for hosting internet applications. 2. Demonstrate an ability to use server-side processing for coding dynamic web-applications and interacting with database servers. 3. Compare server-side processing abilities used in ILO 2 above. LEARNING AND TEACHING METHODS Intellectual, Cognitive and Operational Development This unit extends the learners experience gained in the E-Commerce unit to evaluating and using to a range of proprietary and open-source server-side technologies for developing Internet Applications. Indicative Styles This unit will be presented through lectures and workshops using exemplar materials and case studies. It will use a mixture of individual and group work. Feedback on progress In addition to formal feedback for completed assignments, feedback will be provided for formative tasks and case studies. Group work will involve both formal and informal peer feedback and evaluation. Informal feedback from lecturers will be provided during assignment work involving the development of an e-commerce system. ASSESSMENT Learning Outcome 1 This is assessed by a group practical and evaluation report. Learning Outcome 2 This is assessed by an individual practical. Learning Outcome 3 This is assessed by an individual 1500 word report. Weighting The weighting of assessments is equal. INDICATIVE CONTENT Webserver technologies History and comparison of webserver technology, Microsoft IIS and Apache as most widely used webservers. Cross-platform and cross-technology interoperability Microsoft IIS Windows, ISAPI, ASP with scripting languages, focusing on VBScript and JavaScript. interaction with databases (Access, SQL Server) via ODBC, ADO OLE/DB Apache UNIX/Linux and Windows, CGI Java, PHP and Perl for server-side scripting. interaction with databases (Oracle, MySQL, PostgreSQL) via SQL and ODBC LAMP (Linux, Apache, MySQL PHP) and WAMP((Windows, Apache, MySQL PHP) platforms ZOPE The ZOPE web application framework: Web server, Web-based interface, object database, relational database integration, scripting language support. Zope objects, dynamic content (DTML), building applications, users & security, searching and categorising content, relational database connectivity. INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Guelich, S. Gundavaram, S. & Birznieks, G. (2000) CGI programming with Perl. O’Reilly & Associates DuBois, P. (2005) MySQL (3rd Edition) Developer’s Library Pelletier, M & Latteier, A (2001) The Zope Book. New Riders WEB RESOURCES http://www.microsoft.com http://www.apache.org http://www.perl.com http://www.php.net http://www.mysql.org http://www.nusphere.com http://www.zope.org http://java.sun.com Unit Title: HUMAN COMPUTER INTERACTION Level : I Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE & CO-REQUISITE UNITS Work-based Project AIMS To inform the learner of the major issues in HCI and provide a critical understanding of the psychological knowledge of relevance to HCI. The tools and techniques available to analyse, design and evaluate user-centred webbased systems will be considered. INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 1. Apply underlying concepts of HCI into the stages of systems development. 2. Apply concepts of HCI to the design and implementation of useable and accessible Graphical User Interfaces, including web-based interfaces. 3. Communicate an understanding of how recent developments in HCI technology are impacting evolving interface design. 4. Communicate an understanding of the contribution of psychology to HCI. LEARNING AND TEACHING METHODS Intellectual, Cognitive and Operational Development This unit deals with aspects of the Human Computer Interface using a variety of research based and practical deign approaches. Indicative Styles In this unit the material will be presented in a mixture of lectures and seminars. These will use exemplar and case-study material. Students will follow a list of directed topics and will be required to conduct supporting research and preparation. Where appropriate, these will be related to topics and scenarios developed in other Computing and Internet Technology units, particularly Programming 2, Internet Application Development and the Project. Feedback on progress In addition to formal feedback on completed assignments, feedback is provided for formative problems and case studies. ASSESSMENT METHODS Learning Outcomes 1, 2 (and 4) These are assessed by a 3000 word evaluation report based on the system produced for the Project unit. Learning Outcomes 3 and 4 These are assessed by individual presentations on a topic of relevant research related to ILOs 3 and 4. Weighting The weighting of the assessments will be 50: 50. INDICATIVE CONTENT HCI Related Development: Developments in technology: workstation environments related processing and storage requirements Developments in HCI: virtual machines, command line input, concept of 'look and feel' The 'user': expert, regular, occasional, novice Development of systems: hypertext, event driven systems, implications of developments on hardware. HCI: Psychological considerations: memory, perception, cognition and the consequences on the design of HCI Health & safety considerations: ergonomics, RSI, legal implications Cost implications: training, effectiveness of system, architectural requirements HCI Prototypes: Modelling the interface: mapping the system functionality to the conceptual model Analysis e.g. storyboarding, user needs analysis Design: rules for good HCI design, help, documentation Application of HCI: Incorporation of good HCI design to graphical user interfaces Incorporation of good HCI design to web based applications Web usability and accessibility, legal framework, alternative technologies: screen readers, voice-activated systems. Adding the 3rd Dimension to the Human Computer Interface. Virtual Reality Modelling Language (VRML). VRML 1, VRML 2/97, X3D. Other 3D technologies Embedding VRML/X3D into Web Pages VRML/X3D viewing and editing tools. INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Hill, S. (1995) A Practical Introduction to the Human Computer Interface in a Semester. Thomson Learning Preece, J. (1994) Human Computer Interaction. Addison-Wesley Dix, A., Abowd, G. D. & Beale, R. (2006) Human-Computer Interaction (4th Edition) Prentice Hall WEB BASED RESOURCES HCI Bibliography http://www.hcibib.org Web Accessibility Initiative http://www.w3c.org/WAI/ Web3D Consortium http://www.web3d.org Web3D Guide http://web3d.vapourtech.com Parallel Graphics http://www.parallelgraphics.com FreeWRL http://freewrl.sourceforge.net/index.html Others will be introduced during the year. Their addresses are not stable. FdSc Computing and Internet Technology PART-TIME YEAR 1 UNIT DIRECTORY Unit Title: COMPUTER SYSTEMS Level : C Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE and CO-REQUISITE UNITS None AIMS The aim is to examine the components of computers, their architecture, functioning and integration. The learner will develop understanding of operating systems as resource manager, user interface, and hardware abstraction. The concepts and practices of simple point-to-point communications will be introduced within the framework of laboratory tasks. Computer and laboratory safety concerns will also be introduced and understanding of the value of data security and countermeasures to IT professionals investigated. INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 1. Understand data formats of simple and structured entities. 2. Choose appropriate descriptions of the functioning and architecture of the major components of a computer. 3. Understand physical and logical structures on a disk drive. 4. Relate the control of basic components of the computing hardware to the operations of computer software, including operating system processes. 5. Understand simple communications principles in simple and multiplexed computer links. 6. Be able to formulate a coherent preventative maintenance programme and have knowledge of the principles that underlie computer safety. 7. Design and carry out simple experiments on computer systems. LEARNING AND TEACHING METHODS The context of the unit is the single-processor, single-user computer, typically single-processing (not multi-processing) though it covers the interaction of a single process with operating system processes and additionally forms the introduction to basic networking In terms of the Computing subject benchmark, the unit brings together material from Architecture, Computer Communications and Operating Systems. Learners work through a set of experiments in computer laboratories. They are given an experiment reporting framework, but take responsibility for the content of the report and level of analysis that it shows. They learn the importance of a) good experimental work, and b) good experimental reporting. They study the basic components, architecture and functioning of computers, progressing through the year to understand the way that each component contributes to the overall functionality provided to computer users. The needs and requirements of computer security and safety are emphasised and interwoven within this study. Indicative Styles Learners undertake a series of laboratory tasks that investigate the behaviour of computer hardware and communication protocols. These tasks are carried out on personal computers, and allow learners to apply the conceptual knowledge and principles developed in a parallel sequence of lectures. Learners use on-line materials / examples and formative assessment tasks to provide immediate feedback to the learner to indicate their level of attainment. They also take part in interactive virtual activities that model laboratory work on-line. Learners are confronted with trouble-shooting tasks that expose them to common industry-related computing problems dealing with issues such as start-up modes, registry entries, BIOS problems, boot problems, data and file corruption. They use system tools to expose more dynamic information such as the state of hardware components and software settings during program execution. Lectures cover the structure and organisation of computers, to provide an abstract model against which they can view the examples that they work through. Learners carry out exercises building and linking computers and setting up the protocols to enable them to exchange data and configure DHCP and DNS and default gateways. Lectures relate the concepts of communications (which are developed in the Network Systems unit), to the practical activities in seminars. Informal assessment plays an important part in the development of learner ability in this unit. Each student is required to keep a laboratory notebook, and record every experiment. The notebooks are inspected cyclically, a few being marked in each laboratory session, and feedback is given on a) quality of reporting, b) quality of thought/analysis, and c) level of understanding of the topic. Most laboratory sessions enable the learner to observe, discuss and analyse behaviour. Some focus particularly on performance. ASSESSMENT METHODS Intended Learning Outcomes 1 through 6: All of these Intended Learning Outcomes (ILO) are assessed through an examination. At this level the learner is expected broadly to be able to demonstrate understanding over a multiplicity of individual short questions which may be based on scenarios from industrial and commercial environments and require them to choose correct explanations or descriptions as appropriate. Intended Learning Outcomes 1 through 7: Laboratory Notebooks form the in-course assessment. They are formally marked twice in the year, using a cycle from the informal assessment cyclic process. Learners are not told which cycle will be used for the formal assessment, to encourage them to work to a high standard throughout the year. Ability to work practically with computer equipment is the primary focus of this assessment, but it naturally covers all of the other ILOs in terms of understanding of experiment content. Weighting The weighting of in-course assessment, to final assessment is 50:50. INDICATIVE CONTENT Data representation and mathematical operations: Bits, bytes, binary, octal, hexadecimal and decimal, number and character, different word lengths. Conversions to any base. Boolean logic gates. Computer Technology: Processor, bus, primary and secondary memory. BIOS, EPROM, EEPROM, System resources (IRQ, DMA, IO addresses) Installation and set up Operating System Fundaments (process creation & scheduling, memory management, file systems.) System Tools (Regedit, Scandisk, Msconfig, Wscript.exe, Hwinfo.exe, ASD.exe, ERD, Recovery console) Multimedia capability (colour book formats, RAMDAC, PCI vs AGP, video and sound standards) Physical and logical disk formats, space allocation techniques, NTFS, FAT16, FAT32. Input and output. Performance issues: buffering and caching, fragmentation. Communications: Fundamentals of communications, digital and analogue, media, the notion of protocol. Overview and introduction to OSI model. Basics of TCP/IP. Comms utilities (Ipconfig, winipcfg, config, and ifconfig, Tracert, iptrace, and traceroute, Netstat/tpcon, ping) Synchronous and Asynchronous serial transmission, modulation and de-modulation, AT commands, error checking and correction. Networks (circuit and packet switched) Basics of Ethernet - a means of multiplexing. Setting up networks (NIC, IP addresses, DHCP, DNS, Default gateway) Computer and Laboratory Safety: Preventative Maintenance programme. Electrostatic discharge (ESD) Power issues UPS. Troubleshooting methodologies Security principles applied to computers. Hardware, software and data threats. Countermeasures including technical and management solutions. Using Systems tools to ensure data safety and integrity INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Tanenbaum, A. (2005). Structured Computer Organisation (5th Edition). Prentice-Hall. Woodhull, A. & Tanenbaum, A. (2006). Operating Systems: Design and Implementation (3rd Edition). Pearson Prentice-Hall Tanenbaum A., Day, W & Waller, S. (2003). Computer Networks (4nd Edition). Prentice-Hall Comer, D. & Droms, R. (2003). Computer Networks and Internets (4th Edition). Prentice-Hall. Dick, D. (2003) The PC Support Handbook: The Configuration and Systems Guide (11th Edition). Dumbreck Publishing WEB BASED RESOURCES http://www.netbook.cs.purdue.edu http://cisco.netacad.net Unit Title: PROGRAMMING 1 Level: C Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE and CO-REQUISITE UNITS Systems 1. AIMS To develop an understanding of fundamental programming concepts and to examine the process of program design, implementation and testing. INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 6. Explain the programming concepts of sequence, iteration and selection and demonstrate them in a single programming language. 7. Design an algorithm to solve a given problem using sequence, iteration and selection. 8. Implement a given algorithm by selecting appropriate variables, data types and programming constructs. 9. Demonstrate a detailed understanding of the syntax of a single programming language. 10. Test and debug a given program by developing and implementing a suitable test strategy and selecting an appropriate set of test data. LEARNING AND TEACHING METHODS Intellectual, Cognitive and Operational Development The context of this unit is fundamental programming constructs demonstrated through procedural programming and structured design. In terms of the Computing subject benchmark, this unit focuses on material from Programming Fundamentals. In this unit learners develop an understanding of fundamental programming constructs (sequence, iteration and selection) and algorithm design. The main approach adopted in laboratories is practical exercises that give the student a lot of practice programming. Practical sessions are structured to provide the correct level of support for all students. Indicative Styles This unit utilises two seminars per week. Learners learn to use a simple programming environment and to edit and compile source code. They learn to recognise the relationship between the organisation of programs and the organisation of the computer, for example, setting up the environment and compiling and executing programs Learners work on programming problems during laboratory classes. Their first programs illustrate simple programming problems that emphasise individual programming constructs but they quickly progress to larger problems. Learners work in small groups to solve programming exercises and they present their algorithm designs during seminars. Feedback on Progress During practical classes learners are given continuous feedback on exercises that they complete. They work on many of the exercises in their own time and the results of these exercises are discussed during laboratory sessions. ASSESSMENT METHODS Assessment: Learning Outcome 1-5: All the learning outcomes are assessed by the students completing a portfolio of work during the unit. The problems in the portfolio get more difficult as the unit progresses. They are given regular feedback on the contents of the portfolio. The learning outcomes will also be assessed in a written examination. Assessment: Weighting The weighting of in-course assessment to final assessment is 50:50. INDICATIVE CONTENT Programming Constructs: Sequence, iteration, selection; variables, data types, procedures, functions, parameter passing. Programming Language: Syntax, semantics, coding standards, documenting code. Algorithm Design: Problem decomposition, top-down design, structured programming, problem representation (eg pseudo-code, flowcharts), abstraction, assessing algorithm designs, good design practices. File and Data Structures: File input/output, file processing, sorting. Arrays, linked lists, queues, stacks. Testing and Debugging: Importance of testing, approaches to testing, test design, generating test data, debugging. Programming Tools: Compilation, compilers, libraries, programming environments. INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Bailey, D. A. (2000) Java Elements: Principles of Programming in Java, McGraw Hill Bailey, D. A. (2002) Java Structures: Data Structures in Java for the Principled Programmer (2nd Edition) McGraw Hill Flanagan, D. (2005) Java in a Nutshell (5th Edition) O’Reilly. Lewis J.& Loftus W., (2006) Java Software Solutions - Foundations of Program Design (5th Edition), Addison-Wesley. McConnell, S. C. (2004) Code Complete (2nd Edition) Microsoft King M. J., & Pardoe, J. P. (1995) Program Design using JSP. MacMillan WEB BASED RESOURCES http://java.sun.com http://www.netbeans.org http://www.bluej.org Unit Title: SYSTEMS 1 Level: C Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE and CO-REQUISITE UNITS None AIMS To develop understanding of the operations of business systems including the communication, storage and processing of data and information and to develop capability to develop solutions to simple business information problems. This involves a) the concepts and practice of modelling business systems using informal and formal techniques, and b) the integration of capabilities needed for the process of system provision such as human computer interface and computer systems architecture design. INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 7. Understand basic business processes and generate ideas for improvement with particular reference to information. 8. Understand how data can be manipulated and presented to assist a business person. 9. Understand the use of measurement to monitor business process. 10. Use formal modelling concepts in logical analysis of (a) simple business process(es) with an understanding of the importance of recognised good practice and quality standards. 11. Design and develop a record-based system to assist a business process, taking into account the needs of the business to collect, store and manipulate data with due regard to relevant legislation such as the Data Protection Act. 12. Appreciate the cycle of system development activity and the roles and responsibilities of the different people involved including the principle duties set out in the rules of professional bodies. LEARNING AND TEACHING METHODS Intellectual, Cognitive and Operational Development The context of the unit is the activities of a single business function, and its interactions with other parts of the business. In terms of the Computing subject benchmark, the unit brings together material from Computer Based Systems, Information Systems and Systems Analysis and Design. During the first term learners work through a series of discussions and modelling exercises progressing from well-defined business tasks constrained to one business department with simple information requirements, to business scenarios with more complex interactions between departments and processing needs. The nature of business data and information flows needed to support business processes are explored through the use of example prototype systems on a personal computer used in stand alone mode. Different styles of graphical representations are explored as vehicles for understanding, design and communication. They study the basic activities of the computer systems development cycle, progressing through the second term to understand the way that each phase contributes to the process of providing a successfully functioning computer system to computer users. They examine the role of systems developers in identifying and extracting business requirements for information processing from the business computer users. Indicative Styles This unit utilises two lectures per week. One covers the business process basics and logistics. The other lecture concentrates on systems, drawing on the process knowledge stream. Learners use different types of graphical representation to understand, record, design and communicate business information processing and business process improvements. They examine a series of computer based information systems running on personal computers, which allows them to apply the conceptual knowledge and principles developed in a parallel sequence of lectures. Learners participate in discussions which examine the information requirements to support business processes, the facilities which computerbased systems can provide to provide and present the information. They experience development of a system, using very simple tools, focusing on the identification of process improvement and the use of information and systems to provide the improvement. Decisions about the system’s design take into account the needs of the business to collect, store and manipulate data with due regard to relevant legislation such as the Data Protection Act. Feedback on Progress: Feedback plays an important part in the development of learner ability in this unit. Each student is expected to keep a file of the exercises and discussions and to make these available in class when requested. Feedback is provided on a) the quality of the document, b) quality of thought/analysis, c) ability to model business processes and d) level of understanding of the topic. ASSESSMENT METHODS Assessment: Intended Learning Outcomes 1 through 4: Students participate in class discussions of business studies, where they have, for example, to identify a process improvement. They take the study away and prepare notes outlining their proposals and justification. In the following week, a few of them present their ideas to the class. Students do not know which of them will be asked to present, and they are randomly selected over repeating cycles. All cycles are marked. The marks from two cycles are made formal. Students are not told which cycles are which. As the year progresses, presentations will adopt a more formal style, and use a wider variety of visual aids. Assessment: Intended Learning Outcomes 2 through 4 and 6: These will be assessed through examination. The examination will be partly based on a case study. Assessment: Intended Learning Outcome 5: Student will carry this out as a formative group assignment. The extended time of the assignment vehicle provides scope for their design and development thinking. Students will work as a team, keeping an individual log and participating in an element which is peer assessed. Assessment: Weighting The weighting of in-course assessment, to final assessment is 50:50. In the incourse assessment the weighting of presentations to assignment will be 50:50. INDICATIVE CONTENT Business Process: Logistics of businesses: what business processes are, information as the trigger to all process and the monitor of process, dependency of management on measurement. The importance of detail. Common processes: trading, stock control, planning and management, resource planning and management. Management approaches: reductionism, just-in-time. Quality management: each business as a system, failure of goal-setting approaches, improvement via radical change and continuous improvement. System software: Screen/form and report generating software tools. Managing with Data: Presentation of data to provide operational and management information. Creating reports and screens from sorted and selected data. What makes a good report/screen, how they assist business people, how they support/enable process improvements, and facilitate the process improvement process itself. Defining measurements for different businesses, or sub-components of businesses. Indicators, simple and calculated, use of index numbers and ratios. Analytical Models: Soft systems thinking and tools. System block diagrams, and process flowcharts. Data flow modelling. Using models to identify process improvements and information requirements. Systems people, business people, and the mutual learning process of system provision. Using models to facilitate/support learning. Systems: Different kinds of system: record-keeping systems through data processing systems. Typical business contexts, and appropriate systems. Systems architectures: batch, interactive, internet-based, mobile, real-time. Systems Requirements and Design: Systems architecture: overall structure, relationships among major components and their interactions, such as humans, hardware and software. Layering and partitioning. Relevant legislation, regulations and standards and the need to comply with such requirements when designing and building computer-based systems. Human Computer interface: Standards & legal requirements, dialogues, direct manipulation and style guides. Input-output design, business process and human factors issues. Introduction to approaches to usability requirements analysis: structured, ethnographic, scenario-based. Usability for different classes of users: novice, expert, people with disabilities. Systems Development Cycle The different activities in the systems development cycle: the activities learned in this unit in context. Appreciate the cycle of system development activity phases, tasks, documentation, deliverables, and the roles and responsibilities of the different people involved including the principle duties set out in the rules of professional bodies such as the BCS Code of Practice and BCS Code of Conduct. Systems development themes: Activities and issues that need to be taken into account across the development cycle such as documentation & standards, feasibility, user participation, communication, client-consultant relationship, documentation and standards, quality management, project management, risk analysis, configuration management. INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Bennett, S. & McRobb, S. (2005) Object Oriented Systems Analysis and Design using UML. McGraw Hill ISBN: 0077110005 Valacich, J. S. & George, J. F. (2005) Essentials of Systems Analysis & Design (3rd Edition). Prentice Hall. ISBN: 0131854623 (Linked to website – see below). Kendall, K. E. & Kendall, J. E. (2004) Systems Analysis and Design (6th Edition), Prentice Hall ISBN: 013127323x (Linked to website – see below). Whitten, J. L. & Bentley, L. D. (2005) Systems Analysis and Design Methods (7th Edition). McGraw-Hill Post, G. V. & Anderson, D. L. (2005) Management Information Systems: solving business problems with information technology (4th Edition). McGraw Hill. Waters, C. D. J. (2001) Operations Management: Producing Goods and Services (2nd Edition). Financial Times Prentice Hall. Ayres, R. (2001) The Essence of Professional Issues in Computing with Communication Skills. Prentice-Hall. Spinello, R. A. (2002) Case Studies in Information and Computer Ethics and Policy (2nd Edition). Prentice-Hall. Journal of Applied Systems Analysis. - Lancaster : University of Lancaster. 0308-9541 Maxey, J., Rowlands, D. George, M. L. & Upton, M., (2005) The Lean Six Sigma Pocket Toolbook: A Quick Reference Guide to 70 Tools for Improving Quality and Speed. McGraw Hill. ISBN: 0071441190 Womack, J. P. & Jones, D. T. (2005) Lean Solutions: How Companies and Customers Can Create Value and Wealth Together. Free Press. ISBN: 0743277783 WEB BASED RESOURCES The following websites will be used as supplementary material and activities: http://cw.prenhall.com/bookbind/pubbooks/valacich/ http://www.prenhall.com/kendall/ http://www.leanstrategies.com/basicblocks.htm British Computer Society for Codes of Conduct Codes of Practice etc: http://www.bcs.org.uk/index.html Association for Computing Machinery for ACM Code of Ethics and Professional Conduct etc: http://www.acm.org/constitution/code.html Unit Title: WEB DEVELOPMENT Level: C Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE & CO-REQUISITE UNITS Programming AIMS To develop a critical view of information presented on the World Wide Web. To introduce and promote confidence in the use of commercial web design programs and evaluate the use of graphics and multimedia and evolving web technologies INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 6. Appreciate the complexity of the Web 7. Demonstrate an understanding of the principles of good web site and web page design 8. Design and construct effective web sites using graphics, multimedia and sound 9. Evaluate available scripting languages 10. Understand the opportunities afforded by new web technologies LEARNING AND TEACHING METHODS Intellectual, Cognitive and Operational Development This unit presents the principles of good web design in the context of evolving web standards and the practical application of these principles through appropriate software tools. The unit focuses mainly on client-side technologies. Indicative Styles The unit will be presented to students using lectures and seminar sessions using worked examples and case studies. Students will examine and evaluate existing web material and create their own. Feedback on progress In addition to feedback for completed assignments, feedback will be provided on formative tasks and case studies. ASSESSMENT METHODS Learning Outcomes 1, 2 and 3 The material covered in these Learning Outcomes will be assessed by the completion of an individual web based assignment. Learning Outcomes 4 and 5 The material covered in these Learning Outcomes will be assessed by an individual 1500 word report. Weighting The weighting of assessments will be 50:50. INDICATIVE CONTENT An Overview of the World Wide Web Internet, history of the World Wide Web, HTTP, HTML, Web Servers and Web Browsers (Clients) URLs and web-applications. Browser plug-ins, Applets. Semantic Web and Web 2.0 concepts. HTML HTML standards, Document structure, Text, Hyperlinks, Images. Tables, Frames, Forms and simple CGI Server-side scripts, Cascading Style Sheets (CSS), separating document style from structure. Web design, usability, accessibility and legal issues HTML editing and validation tools Uploading web content (FTP and WebDav), File (MIME) types Web Graphics Colour, the Web Palette. graphic file formats GIF, JPEG, PNG, Animated graphics creating and editing graphic files placing and aligning imagery mapping an image Multimedia and Sound on the Web audio file formats and compression video file formats and compression including sound and video on web pages Flash, Shockwave, Scalable Vector Multimedia Integration Language (SMIL) Graphics (SVG), Synchronised Client-Side Scripting JavaScript, JScript and ECMAScript VBScript and Active X Java Applets adding executable content adding web functionality to Visual Basic Applications XML & XHTML Document Type Definition (DTD). Well-formed XML. XHTML Examples of XML such as: SMIL, SVG, Mathematical Markup Language (MathML) Wireless Markup Language (WML) Chemical Markup Language (CML) Simple Object Access Protocol (SOAP). INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Niederst, J. (2006) Web Design in a Nutshell: A Desktop Quick Reference (3 rd Edition). O’Reilly McFarland, D. (2004) Dreamweaver 8: the Missing Manual. O’Reilly Page, K. A. (2003) Macromedia Dreamweaver MX2004: Training from the Source( 3rd Edition). Macromedia Williamson, H., & Epstein, B. (2002) Dreamweaver in a Nutshell: A Desktop Quick Reference. O’Reilly Neilson, J. (1998) Designing Web usability: The Practice of Simplicity. New Riders Publishing Lie, H. W. & Bos, B (2005) Cascading Style Sheets: Designing for the Web (3rd Edition) Addison-Wesley WEB BASED RESOURCES World Wide Web Consortium http://www.w3c.org Adobe (Macromedia) http://www.adobe.com Internet Explorer http://www.microsoft.com/windows/ie Mozilla & FireFox http://www.mozilla.org Opera http://www.opera.com The Web Developer’s Resource http://www.webmonkey.com Matt’s Script Archive http://www.scriptarchive.com VisiBone http://www.visibone.com Web Accessibility Initiative http://www.w3.org/WAI/ FdSc Computing and Internet Technology PART-TIME YEAR 2 UNIT DIRECTORY Unit Title: DATABASE SYSTEMS 1 Level: C Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE and CO-REQUISITE UNITS Programming 1, Systems 1. AIMS To examine and develop a working knowledge of computer-based file and record structures and access methods. To develop an understanding of relational data modelling and manipulation using relational calculus and algebra and to develop a framework, via data analysis and modelling, for robust database design and implementation. INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 9. Explain the organisation of files used by a small-scale, PC-based DBMS. 10. Apply a data analysis process to analyse a given single-user, PC-based application scenario. 11. Demonstrate the use of entity-relationship modelling and normalisation to design a database for a single user, PC-based system and illustrate the design using an appropriate diagramming technique. 12. To understand the difference between good and bad relational data modelling. 13. Translate a design expressed as an entity-relationship model into an equivalent relational data model to answer a given set of queries. 14. Select a number of indexes to meet the performance requirements of a set of queries on a given entity-relationship model. 15. Implement a single-user, PC-based database for a given set of relations (including integrity constraints) to answer a given set of queries. 16. Estimate the size and usage of a given database from a description of a single user, PC-based scenario. LEARNING AND TEACHING METHODS Intellectual, Cognitive and Operational Development The context of this unit is the single-user, PC-based database management system. This unit focuses material from the Database Computing subject benchmark. In this unit learners develop an understanding of how data is stored in singleuser computer systems. They start by studying some simple scenarios about collecting and storing data in a business context. These scenarios are used to introduce the learner to a typical database management system (DBMS) and to help the learner explore different methods of manipulating data using a DBMS. Once the learner understands some of these tools, they are introduced to a number of formal data modelling techniques and they apply them in simple, welldefined scenarios and discuss the difference between good and bad models. Indicative Styles Lectures and laboratory classes include a wide range of case studies that illustrate how data is used in a business context. Many of these case studies are derived from situations with which learners are familiar, for example, small retailers and schools, and the case studies are designed to complement similar examples used on other units of the course. Less familiar case studies are used to help the learners widen their experience of business situations, for example, production companies and sales organisations. The learners develop data analysis and database design skills by studying common data modelling techniques such as entity-relationship modelling. They work in small groups during seminar sessions to apply these skills to variety of well-defined case studies. During group discussions, learners are encouraged to use analysis and design techniques that they have learned in other parts of the course, for example, data flow analysis. Learners are given additional exercises that they work on during their own study times. Learners learn to use a common database management system by working through a series of structured tasks and by additional laboratory-based tutorials. The skills that they develop by completing these tasks are reenforced by building databases for many of the analysis and design case studies that they are given. Lectures are used to explain formal database theory, for example, data modelling and query languages. Many of these lectures are supported by laboratory classes that are intended to highlight the practical application of database theory. For example, learners develop an appreciation of relational algebra by using database systems that use relational algebra and SQL. Exercises are designed to highlight important features of the theoretical material. Feedback on Progress Informal assessment takes place at a number of points during the unit. LO6 is assessed by a number of tests that are designed to help the learner progress through the material. The learner’s progress through the tasks is closely monitored. LO2-4 are assessed in seminars using case studies and other exercises that require the learners to solve problems individually and as part of a group. Learners are required to present their work during the seminars. ILO 1, 5 and 7 are assessed by laboratory exercises that require the learner to create a database that they have designed. ASSESSMENT METHODS Assessment: Learning Outcome 1: This learning outcome will be assessed in a written examination. Assessment: Learning Outcomes 2-4,6 and 8: These learning outcomes are assessed in a single assessment exercise. The exercise requires the learner to solve a data management problem that is given to them in the form of a business scenario. The exercise typically requires the learner to identify the problem contained in the scenario and to design a database to solve the problem. As part of this exercise the learner must build a database system that corresponds to their proposed design. These learning outcomes are also assessed in a written examination. Assessment: Learning Outcomes 5 and 7: These learning outcomes will be assessed in a written examination. Assessment: Integration LO2-4 and 6 are integrated in most problem scenarios. LO1, 5, 6 and 7 are assessed by tasks that require the learner to develop and evaluate a database. Assessment: Weighting The weighting of in-course assessment to final assessment is 50:50. INDICATIVE CONTENT Data and Information: Data and information. Data in a business context. Processing vs storing data. Information systems. Uses of data. Data ownership. The role of data within the organisation. Data and Storage: Data storage methods and concepts (e.g. bits, bytes, fields, records, files, databases) Files and File Access: Using indexing and hashing in physical database design. Critique of physical layout of database structures. Database size and usage estimation. Data Modelling: The difference between physical, logical and conceptual database design. The relational data model (relational algebra and calculus). Data modelling techniques including entity-relationship modelling, functional analysis, normalisation. Using data flow diagrams and other analysis techniques as aids to database design. Database Querying and Manipulation: Using database management systems to construct databases and to implement data models. Querying database systems using visual querying tools and SQL. Data Processing: Using and implementing different data processing techniques. memory and disc memory in data processing. Using main Data Exchange: Data markup languages (e.g. XML), data transformation (e.g. XSL). INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Curtis, G., (2004) Business Information Systems: Analysis, Design and Practice (5th Edition), Financial Times Prentice Hall . Elmasri, R. & Navathe, S. (1999) Fundamentals of Database Design, McGraw Hill. Elmasri, R. & Navathe, S. (2006) Fundamentals of Database Systems (5th Edition). Pearson Addison Wesley Kroenke, D. (2005) Database Processing : Fundamentals, Design and Implementation (10th Edition), Pearson Prentice Hall. Ramakrishnan, R. & Gehrke, J. (2006) Database Management Systems (3rd Edition), McGraw Hill. WEB BASED RESOURCES Database, http://www.intelligententerprise.com/dbframe.shtml. Datamation, http://datamation.earthweb.com/. DBMS Online, http://www.dbmsmag.com/artin403.html Unit Title: INTERNET TECHNOLOGIES Level: C Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE & CO-REQUISITE UNITS Web Development AIMS To develop the students’ knowledge of a number of current Web industry techniques. Further, to explore and investigate the use of web technologies and their applications INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 5. Demonstrate an understanding of a number of recent Web technologies 6. Appreciate the power of Web technologies and development tools 7. Competently use Web technologies 8. Integrate applications with the Web. LEARNING AND TEACHING METHODS Knowledge and understanding are acquired through a mixture of formal lectures and seminars, computer networked practical areas, laboratory experiments, student-led seminars, work-related exercises and other directed independent learning activities augmented by the utilisation of available software tools and virtual learning environment (VLE) so students have the opportunity to consolidate work by self-tuition. Problem solving skills are further developed using a range of appropriate ‘real’ and ‘theoretical’ case studies together with problem-based and task-based learning scenarios System Week / Final assessment Following the examinations in the summer term, students typically engage in a one week exercise, carried out in teams, known as the System Week. They build a system to solve a business problem, which is an integrative piece of work, involving aspects of the different units of the course. There are no lectures, or seminars. Staff supervise the week. The exercise is deliberately challenging, drawing upon a small number of issues that arise at Level I, and stimulating their interest in the year ahead. The result is an individual Systems Week mark derived from a Group mark moderated to reflect individual contribution. Where the Systems Week is not practicable, e.g. for part-time students, a similar integrative assignment is undertaken towards the end of term over a longer time frame. ASSESSMENT METHODS The Lecture-Seminar Series results in a portfolio of work. It comprises a number of equally weighted items: ILOs 1-3, are assessed by the completion of a group web based assignment and team reports. ILO 4 is assessed by system week (or equivalent final assessment) Weighting The unit is 100% assessed on course-work. The three elements of assessment are weighted as follows Practical: 50% Group Report: 25% Final Assignment/Systems Week Mark: 25% INDICATIVE CONTENT Web Graphics & Animation Flash, Shockwave, Scaleable Vector Graphics, SVG, Authoring/Editing Tools, Pendraw Multimedia Audio file formats and compression Video File formats and compression Synchronised Multimedia Integration Language (SMIL) Authoring/Editing Tools, Integrating multimedia in web pages The Semantic Web, XML XML, Well-formed and Valid XML, XSL XSLT XSL-FO, XPath, XQuery, XLink, XPointer, Document Type Definition DTD, XML DOM, XForms, RDF, RSS, GIS Specialist markup languages VRML, X3D, MathML, Wireless Markup Language WML. Editing and Manipulating XML data. Office tools, XML editors/parsers, Macros, specialist tools. Web Services Platform SOAP (Simple Object Access Protocol) UDDI (Universal Description, Discovery and Integration) WSDL (Web Services Description Language) Vocational-context. Web building Web W3C, Web Browsers, Quality of Service, Semantic Web, Web Careers, Web Hosting, Web Certification INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Erl, T. (2005) Service-Oriented Architecture: Concepts, Technology, and Design. Erl, T. (2005) Service-oriented Architecture: A Field Guide to Integrating XML and Web Services. Harold, E. R. & Means, W.S (2004) XML in a Nutshell (3rd Edition) O’Reilly. Niederst, J. (2006) Web Design in a Nutshell: A Desktop Quick Reference (3 rd Edition). O’Reilly. Curbera, F. et al. (2005) Web Services Platform Architecture: SOAP, WSDL, WS-Policy, WS-Addressing, WS-Bpel, WS-Reliable Messaging and More WEB BASED RESOURCES World Wide Web Consortium http://www.w3c.org W3 schools http://www.w3schools.com The Web Developer’s Resource http://www.webmonkey.com Matt’s Script Archive http://www.scriptarchive.com VisiBone http://www.visibone.com O’Reilly XML.com http://www.xml.com Unit Title: NETWORK DESIGN Level : I Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE and CO-REQUISITE UNITS Computer Systems, Programming 1 AIMS The aim is to examine the goals and design of computer communications networks and the models developed to aid the understanding of these networks. The concepts and practices of computer networks will be introduced to provide a framework for consideration of communication, traffic and security aspects and the technologies available. To examine the opportunities and problems opened up by such technologies. INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 8. Understand the functions of the principal components of computer networks. 9. Understand the concepts of protocol and layering, and apply them to networks. 10. Design and carry out performance and behaviour experiments on computer networks. 11. Compare and contrast alternative solutions of structured cabling. 12. Understand class-based network addressing and subnetworks. 13. Understand the principles of encryption as applied to computer networks. 14. Design a computer network that links to the Internet. LEARNING AND TEACHING METHODS Lectures are used to present subject topics and perspectives. Learners work through a series of experiments in computer laboratories. They are given a practical framework guidance and take responsibility for the content of their reports and level of analysis. Laboratory experiments are used for learners to work through experiments and exercises on networking equipment to reinforce their theoretical understanding. Learners use formative assessment tasks to provide immediate feedback to the learner. ASSESSMENT METHODS ILOs 1 through 6 All of these Intended Learning Outcomes are assessed through an examination. At this level, the learner is expected broadly to be able to demonstrate an understanding over a multiplicity of individual short questions which may be based on scenarios from industrial or commercial environments and require them to choose correct explanations or descriptions. ILOs 1 through 6 are assessed through in-course, individual reports in laboratory notebooks. ILO 7 is assessed through an in-course assignment. Weighting The weighting of in-course assessment, to final assessment is 50:50. Within the coursework, the weighting of design assignment to laboratory notebooks is 40:10. INDICATIVE CONTENT This unit utilizes two lectures per week. Network technology: Ethernet technology and performance, other LAN technologies. Monitoring Network traffic. How operating systems use LAN connections. Networked file systems: NFS, SAMBA. Internetworking: Basic protocols, IP, TCP and UDP. Architecture of IP, its functioning and characteristics. Packet structure, congestion control, associated protocols such as ARP, BOOTP, DHCP. Architecture of TCP, its functioning and characteristics. Connections, sliding window, error-checking. Flow control, congestion control. TCP as a software multiplexer. UDP, its purposes and architecture and characteristics. Classful networks, subnetworks, IP addressing and their purposes. Higher Level Protocols: HTTP and FTP. Server architectures, browser architectures. Security: Principles of security. Threats, attacks, counter-measures. Models for security. Encryption, symmetric and asymmetric, modulus arithmetic and public key systems. Digital signatures and certificates. Secure Sockets Layer and Transaction Layer Security. Management: Tools for monitoring and managing networks, security risks and responsibilities of IT managers. INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Cisco Networking Academy Program First-Year Companion Guide (2002) Tanenbaum, A. S. (2005) Computer Networks. Prentice-Hall International Spurgeon, C. E. (2000) Ethernet The Definitive Guide. O’Reilly Comer, D. (2003) Computer Networks and Internets (4th Edition). Prentice-Hall. Comer, D. (2005) Internetworking with TCP/IP, Vol 1, 4th Ed. Prentice-Hall. Stern, H. (2001) Managing NFS and NIS (2nd Edition). O'Reilly. Rescorla, E. (2001) SSL and TLS. Addison-Wesley. Spinello, R.A., (2002) Case Studies in Information and Computer Ethics and Policy (2nd Edition). Prentice-Hall. WEB BASED RESOURCES http://www.netbook.cs.purdue.edu http://www.bcs.org.uk/index.html http://www.anixter.com http://www.ieee.org Unit Title: INTERNET APPLICATION DEVELOPMENT Level : I Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE and CO-REQUISITE UNITS Web Development, Database Systems 1 and Programming 1 AIMS To develop a critical understanding of a range web-server technologies together with practical experience of their installation and configuration. Use of server-side processing and scripting languages to code dynamic internet applications and interact with web-based database systems. INTENDED LEARNING OUTCOMES At the end of this unit the learner is expected to be able to: 4. Select, install, and configure a range of appropriate web-server technologies for hosting internet applications. 5. Demonstrate an ability to use server-side processing for coding dynamic web-applications and interacting with database servers. 6. Compare server-side processing abilities used in ILO 2 above. LEARNING AND TEACHING METHODS Intellectual, Cognitive and Operational Development This unit extends the learners experience gained in the E-Commerce unit to evaluating and using to a range of proprietary and open-source server-side technologies for developing Internet Applications. Indicative Styles This unit will be presented through lectures and workshops using exemplar materials and case studies. It will use a mixture of individual and group work. Feedback on progress In addition to formal feedback for completed assignments, feedback will be provided for formative tasks and case studies. Group work will involve both formal and informal peer feedback and evaluation. Informal feedback from lecturers will be provided during assignment work involving the development of an e-commerce system. ASSESSMENT Learning Outcome 1 This is assessed by a group practical and evaluation report. Learning Outcome 2 This is assessed by an individual practical. Learning Outcome 3 This is assessed by an individual 1500 word report. Weighting The weighting of assessments is equal. INDICATIVE CONTENT Webserver technologies History and comparison of webserver technology, Microsoft IIS and Apache as most widely used webservers. Cross-platform and cross-technology interoperability Microsoft IIS Windows, ISAPI, ASP with scripting languages, focusing on VBScript and JavaScript. interaction with databases (Access, SQL Server) via ODBC, ADO OLE/DB Apache UNIX/Linux and Windows, CGI Java, PHP and Perl for server-side scripting. interaction with databases (Oracle, MySQL, PostgreSQL) via SQL and ODBC LAMP (Linux, Apache, MySQL PHP) and WAMP((Windows, Apache, MySQL PHP) platforms ZOPE The ZOPE web application framework: Web server, Web-based interface, object database, relational database integration, scripting language support. Zope objects, dynamic content (DTML), building applications, users & security, searching and categorising content, relational database connectivity. INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Guelich, S. Gundavaram, S. & Birznieks, G. (2000) CGI programming with Perl. O’Reilly & Associates DuBois, P. (2005) MySQL (3rd Edition) Developer’s Library Pelletier, M & Latteier, A (2001) The Zope Book. New Riders WEB RESOURCES http://www.microsoft.com http://www.apache.org http://www.perl.com http://www.php.net http://www.mysql.org http://www.nusphere.com http://www.zope.org http://java.sun.com FdSc Computing and Internet Technology PART-TIME YEAR 3 UNIT DIRECTORY Unit Title: WORK BASED PROJECT Level; I Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE and CO-REQUISITE UNITS This unit is the final integrative unit and thus provides students with the opportunity to draw upon and combine the skills and knowledge developed in other units of the course, as appropriate, in order to provide a solution to the business problem undertaken as their project. It consequently enables students to enhance their employability and demonstrate this to prospective employers as evidenced by the outcomes of their project AIMS 6. To provide a learning experience that enables students to integrate, apply and evaluate skills and knowledge from all parts of the course and work in a ‘real-world’ environment. 7. To provide the experience of defining and analysing real business problems through direct links with local industry. 8. To provide the experience of solving real business problems through project management in an industry context and to encourage self motivation through liaison with a local company employees. 9. To provide a systematic approach, from problem identification to the proposals of appropriate courses of action for a specific area to meet the needs of a local industrial project. 10. To develop the student's technical, documentation and presentation skills. INTENDED LEARNING OUTCOMES At the end of this unit the student will be is expected to: 6. Apply knowledge and skills from different parts of the course in an integrative manner in the solution of a real business problem. 7. 8. Use acquired consultancy skills, liaison skills and problem solving skills to achieve an appropriate understanding of a real business problem in the context of local industry and to present one or a range of possible solutions. Create and maintain appropriate project documentation. 9. Make a Project presentation. 10. Perform a quality assurance review of a project. TEACHING AND LEARNING The overarching aim of the course is to prepare the students to begin a career in the field of commercial or business computing. It provides the opportunity to develop skills in several key areas, both business and technical. If these skills are to be effectively deployed the student must be given the opportunity to practice their use in an integrative manner to solve business problems. The students are given an opportunity to practice these skills in a safe environment as a culmination of their level C work in the Systems Week. This unit provides the vehicle by which students are encouraged and enabled to further develop their skills in a real life environment. Specifically it 4. Enables the student to apply skills taught during the course to a real-life problem 5. Gives the student the opportunity to integrate these skills to develop a solution for their clients problem to an agreed brief 6. Is carried out in a real-life, live, environment which provides the valuable work experience which is a vital element of the course. The project thus provides work-experience in a manner which can be carefully monitored and in which the student can be encouraged to reflect on their management and conduct of the project undertaken. CONTROL OF PROJECTS Staff closely monitor the project-teams and their progress throughout the year, with an individual project supervisor responsible for monitoring each team's progress. The project manager is responsible for overall control and co-ordination of all projects. The project manager will ensure that students are aware of the format, standards and deadlines for the project. They also act as a moderator in ensuring even standards of assessment. In order to assure the quality of the project work undertaken each team is required to produce, in addition to the documents required at the end of the project, 4. the terms of reference for the project, which must be signed by a representative of the host organisation, the project supervisor and the group members 5. an interim report 6. a log of all the activities and meetings undertaken by the project team Further, each project group is required to complete a control sheet for their project supervisor indicating the tasks undertaken since the last meeting with the supervisor and the tasks to be undertaken before the next meeting. The supervisor must sign this control sheet. ASSESSMENT Each project team is required to produce: 3. An interim report (including terms of reference) or staged viva (ILOs 1&2) 30% 4. Final report, log of all meetings and communications and an oral presentation (ILO’s 1,3,4) 70% The oral presentation consists of a formal talk/discussion given by the whole team in the presence of the project manager, project supervisor. Representatives from the local industry/host company will also be invited to the presentation. All members of the audience are encouraged to address questions to individual members of the project team. The project team members will be assessed under the following headings: 7. Technical Merit 8. Management of the project 9. Individual development of the student 10. Documentation standard 11. Standard of oral presentation 12. User satisfaction PROJECT SELECTION Over past years the programme has attracted very many live projects from local industry. The organisations range in size from small businesses employing under ten people to large multinational companies employing many thousands of people. The organisations are drawn from both the public and private sectors and include both service and manufacturing industries. The projects are carefully selected to require some 100-120 hours of the group's time. Projects are chosen by the students from the range of 'live' projects on offer at that time from local companies and with the guidance of the project manager. The projects may be in a specific area of Business Information Technology or be inter-disciplinary. At the start of Level I students are grouped into project teams (typically 1-4 students, depending on the nature of the project) and each team is then responsible for the successful completion of their chosen project. One particular area of difference between projects relates to the required end-product. Depending on the complexity of the problem, students are usually required to produce a working system. Unit Title: PROGRAMMING 2 Level : I Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE AND CO-REQUISITE UNITS Programming1, Systems1, Systems 2 AIMS The aim of this unit is to build on Level C Programming1 and examine Object Oriented concepts covering design, programming and testing. More complex applications will be developed exploring database connectivity, GUI and web interfaces. The unit will also consider a number of programming languages and asses their benefits in differing contexts. INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 7. Demonstrate a detailed understanding of the syntax of a single object oriented programming language 8. Demonstrate an awareness of other programming languages 9. Design an algorithm for a given problem scenario, including connecting to a database and interface design 10. Design an object model for a given algorithm 11. Implement a programme corresponding to a given implementation object model 12. Develop and apply a relevant testing strategy to a given programme. LEARNING AND TEACHING METHODS Intellectual, Cognitive and Operational Development The context of this unit is Object Oriented programming constructs demonstrated through use of an object oriented programming language and object design. This unit builds upon the basic programming constructs introduced in Programming1, and refocuses the constructs into an Object Oriented paradigm. Learners will, using increasingly complex scenarios, design, build and test programs. Learners will be encouraged to become more self supporting in this process, using on-line documentation as an independent resource to explore the practice of Object Oriented coding. Indicative Style This unit utilised two seminars per week. Both the lectures and seminars will present increasingly complex problems and explore the possible resolutions through design and coding. Learners will explore the concept of ‘design as a vehicle for communication’ by developing an algorithm and passing it to others to code. Learners will build and comment programmes which will be used by the whole seminar group, so reinforcing the lecture topics of re-usability and code documentation. Each learner will be expected to complete a number of seminar tasks each week, learners will be able to monitor their own progress against successful completion of these tasks. A number of these tasks will be submitted as a formal assessment. ASSESSMENT METHODS Intended Learning Outcome 1: In order to assess the level of understanding of Object Oriented coding concepts and the extent to which students can apply these concepts a number of seminar tasks will be requested for formal assessment. The emphasis here being on practice which can be more easily quantified in a coding assessment as opposed to an exam. Intended Learning Outcome 3, 4, 5 and 6 Learners will be given a scenario for which they have to design and build an application and then test the resulting solution. The emphasis is on the process of Object Oriented design and its relationship to the building process. Intended Learning Outcome 2 through 6: The conceptual elements of the majority of the learning outcomes can be assessed through written work and will be assessed in an exam. Whilst fragments of code can be requested to illustrate a concept, it is unlikely that learning outcome 1 would be covered in such an assessment. Weighting The weighting of the in-course assessment to final assessment is 50:50. Within the coursework, the weighting of the scenario assessment to the seminar task assessment is 30:20. INDICATIVE CONTENT Object Oriented Concepts Classes, objects and object interaction, Encapsulation, Inheritance, Polymorphism Code design OO techniques such as class diagrams, pseudo code, refactoring, ownership and copying of code, maintainability and documentation Testing strategies Developing test plans, executing test plans, producing test data sets, different testing strategies Error Handling Dealing with exceptions, communicating errors to users Database connectivity Database connection protocols (e.g. ODBC, JDBC), executing queries, handling results, performance issues HCI Element of good interface design, usability principles Information Systems and Web development Interface design, event handling, web interaction protocols, remote objects, client and server side programming, data processing INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Horstmann, C. & Cornell, G. (2004) Core Java 2 Vol 1: Fundamentals (7th Edition), Sun Microsystems Horstmann, C. & Cornell, G. (2005) Core Java 2 Vol 11: Advanced Features, Sun Microsystems Lewis, J. & Loftus, W. (2006) - Java Software Solutions: Foundations of Program Design, 5th Edition, Addison-Wesley. Fowler, M. (2000) Refactoring. Addison Wesley Fowler, M. (2004) UML Distilled: A Brief Guide to the Standard Object Modeling Language. Addison Wesley Forester, T and Morrison, P (1995) Computer Ethics: Cautionary Tails and Ethical Dilemmas in Computing (2nd Edition) MIT Press, Cambridge, MA Barnes, D.J. and Kölling, M. (2006) Objects First with Java: A Practical Introduction using BlueJ (3rd Edition) Prentice Hall. WEB BASED RESOURCES http://java.sun.com/ http://java.sun.com/j2se/javadoc/ http://www.extremeprogramming.org/ http://www.bluej.org http://greenfoot.org Unit Title: SYSTEMS 2 Level : I Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE and CO-REQUISITE UNITS Systems 1 AIMS To provide a framework and apply techniques for the object oriented analysis and design of systems for business process improvement. Additionally to explore the problems associated with traditional systems development and examine other approaches and frameworks. This involves a) examining different development environments including CASE tools and prototyping, and b) development of different computer system architectures, which provide business improvements for operational and management information. INTENDED LEARNING OUTCOMES At the end of the unit, the student will be able to: 8. Understand and evaluate the various concepts and techniques of Object Oriented Analysis (OOA) and Object Oriented design (OOD). 9. Apply Object Oriented Analysis and Design techniques to a given business information context. 10. Utilise both an object oriented CASE tool and prototyping in the systems development process. 11. Select a methodology to suit a given environment and process. 12. Criticise a given systems development process in terms of its management and methods. 13. Design computer system architectures and human computer interfaces, which provide business improvements for scenarios with complex interactions between departments and integrated processing needs. 14. Discern similarities between sub-systems and application components utilising ideas of standard frameworks, components, design patterns. LEARNING AND TEACHING METHODS Intellectual, Cognitive and Operational Development The context of the unit is the activities of a small to medium business enterprise, and its interactions with other businesses. In terms of the Computing subject benchmark, the unit brings together material from (i) Computer Based Systems, (ii) Information Systems and (iii) Systems Analysis and Design. During the first term learners are presented with the concepts and modelling techniques of object oriented analysis and design. They apply the modelling techniques to analyse and communicate business tasks which require interaction between business departments and /or external agents. The nature of business data and information flows needed to support business processes are examined through the use of example prototype systems on a personal computer network. Different styles of object oriented graphical representations are explored as integrated vehicles for understanding, design and communication. They study the detailed activities of the computer systems development cycle, building on the simple model presented in the first year unit Systems 1, to develop an understanding of the structure, processes, and techniques of several different development methods. They examine the process of identifying and assessing the suitability of different systems development methods in a given project environment. Indicative Styles This unit utilises two seminars per week. Learners use different types of object oriented graphical representations to understand, record, design and communicate business information processing and business process improvements. They examine a series of computer based information systems running on personal computers, which allows them to apply the conceptual knowledge and principles developed in the lectures. Learners participate in discussions which examine the information requirements to support business processes and the design of computerbased systems to provide and present the information across departments and between the business and external agents. They experience development of the design of a system, using a subset of object oriented techniques, focusing on the identification of process improvement and the use of information and systems to provide the improvement. Learners take part in discussions which examine and compare the work breakdown structure, processes and techniques of a selection of systems development methodologies to manage the development of computer-based systems. They explore the benefits, drawbacks and suitability of systems development methodologies within particular project contexts. Feedback on Progress: Feedback plays an important part in the development of learner ability in this unit. Each student is expected to keep a file of the exercises and discussions and to make these available in class when requested. Feedback is provided on a) the quality of the document, b) quality of thought/analysis, c) ability to model business processes using object-oriented concepts and techniques, and d) level of understanding of the topic. ASSESSMENT METHODS Assessment: Intended Learning Outcome 2, 5 and 6: Students participate in class exercises and discussions of business design activities, where they have, for example, to model existing business activities, system requirements and identify process improvements. In the following week, a few of them present their ideas to the class. Students do not know which of them will be asked to present, and they are randomly selected over repeating cycles. All cycles are marked. The marks from two cycles are made formal. Students are not told which cycles are which. The presentations adopt a formal style, and use a variety of visual aids. Assessment: Intended Learning Outcomes 1 through 7: These will be assessed through examination. The examination will be partly based on a case study. Assessment: Intended Learning Outcome 1 through 3: Student will carry this out as a formative group assignment. The extended time of the assignment vehicle provides scope for their design and development thinking. Students will work as a team, keeping an individual log and participating in an element which is peer assessed. Assessment: Weighting The weighting of in-course assessment, to final assessment is 50:50. weighting of presentations to assignment will be 20:30. INDICATIVE CONTENT Object oriented concepts and techniques: The Object oriented concepts such as classes, inheritance, encapsulation and polymorphism, issues on reuse. Object oriented modelling techniques such as a selection of those from the Unified Modelling Language (UML) e.g. Class diagrams, Use Case Diagrams, Object interaction diagrams, Collaboration Diagrams, State Transition diagrams etc. CASE software: Drawing, data dictionary and reporting facilities for object oriented techniques and methods. Managing with Data: Presentation of data to provide operational and management information in an inter-departmental/inter-business context. Creating reports and screens from sorted and selected data. Defining measurements for different businesses, or sub-components of businesses. Systems Requirements and Design: Systems architecture, human computer interface and input-output design for complex interactions and integrated processing needs. The need to comply with relevant legislation, regulations and standards requirements when designing and building computer-based systems. Development Methods: The different activities in a selection of systems development methods: structure, philosophy, objectives, scope, techniques and their interaction within the different phases or iterations. The needs for professional good practice at every phase and in each role. Modelling the systems/software development process: overview of modelling techniques from methodologies such as Object-Oriented Analysis and Design e.g. Unified Process with UML, structured systems methodologies e.g. SSADM, Soft Systems Methodologies e.g. SSM; prototyping approaches such as the Dynamic Systems Development Method (DSDM). Introduction to the evaluation & selection of development methodologies using approaches such as feature and contingency analysis. Need for professional standards & conduct in undertaking studies and providing recommendations. Project Management - the dependency of project planning on methodology work breakdown and structure. Overview of Design patterns, components and frameworks: similarities between subsystems, re-use of business/application components at different levels. INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED - MAIN TEXTS Bennett S., & McRobb S. (2005). Object Oriented Systems Analysis and Design using UML (3rd Edition). McGraw Hill. ISBN: 0077110005. Bell, S. & Wood-Harper, A. (1998). Rapid Information Systems Development: a non-specialist’s guide to Analysis and design in an imperfect world. McGraw Hill. Post, G. V. & Anderson, D.L. (2005) Management Information Systems: solving business problems with information technology (4th Edition). McGraw Hill. Spinello, R. A. (2002). Case Studies in Information and Computer Ethics and Policy. (2nd Edition) Prentice-Hall. Schwaber, K. (2004). Agile Project Management with SCRUM. Microsoft Press. ISBN: 073561993X ADDITIONAL TEXTS Priestley, M. (2003) Practical Object –Oriented Design with UML (2nd Edition). McGraw Hill. Quatrani T., (2002) Visual Modelling with Rational ROSE 2002 and UML.(3rd Edition) Addison Wesley. Pilone, D. & Pitman, N. (2005) UML 2.0 in a Nutshell. O’Reilly. Kruchten, P. ( 2003) The Rational Unified Process: an introduction. (3 rd Edition) Addison Wesley Stapleton, J. (2002) DSDM, Business Focused Development (2nd Edition) Addison Wesley Bainbridge, I. (1999) Software Licensing (2nd Edtion) CLT Professional Bainbridge, I. (2004) Introduction to Computer Law (5th Edition). Longman Schneier, B. (2004) Secrets and Lies: Digital Security in a Networked World. Wiley Spinello, R. A. (1997) Case Studies in Information and Computer Ethics. Prentice-Hall. Already listed in this section. See Above Journal of Applied Systems Analysis. - Lancaster: University of Lancaster. 0308-9541 WEB BASED RESOURCES The following indicative websites will be used as supplementary material and activities: 1. The Rational site: http://www.rational.com http://www.rational.com/leadership/index.jsp http://www.rational.com/products/whitepapers/334.jsp 2. Rational Edge magazine (from Rational): http://www.therationaledge.com/ 3. Systems Developer magazine: http://www.sdmagazine.com/articles/ 4. DSDM organisation: http://www.dsdm.org/ 5. SSADM international user group: http://www.cscs.wmin.ac.uk/~ssadm/main.html 6. British Computer Society for Codes of Conduct Codes of Practice etc: http://www.bcs.org.uk/index.html 7. Association for Computing Machinery for ACM Code of Ethics and Professional Conduct etc: http://www.acm.org/constitution/code.html http://www.agile.org http://www.agilemanagement.net Unit Title: HUMAN COMPUTER INTERACTION Level : I Credit Value: 20 ECTS Credit Value: 10 PRE-REQUISITE & CO-REQUISITE UNITS Work-based Project AIMS To inform the learner of the major issues in HCI and provide a critical understanding of the psychological knowledge of relevance to HCI. The tools and techniques available to analyse, design and evaluate user-centred webbased systems will be considered. INTENDED LEARNING OUTCOMES At the end of the unit the learner is expected to be able to: 1. Apply underlying concepts of HCI into the stages of systems development. 2. Apply concepts of HCI to the design and implementation of useable and accessible Graphical User Interfaces, including web-based interfaces. 3. Communicate an understanding of how recent developments in HCI technology are impacting evolving interface design. 4. Communicate an understanding of the contribution of psychology to HCI. LEARNING AND TEACHING METHODS Intellectual, Cognitive and Operational Development This unit deals with aspects of the Human Computer Interface using a variety of research based and practical deign approaches. Indicative Styles In this unit the material will be presented in a mixture of lectures and seminars. These will use exemplar and case-study material. Students will follow a list of directed topics and will be required to conduct supporting research and preparation. Where appropriate, these will be related to topics and scenarios developed in other Computing and Internet Technology units, particularly Programming 2, Internet Application Development and the Project. Feedback on progress In addition to formal feedback on completed assignments, feedback is provided for formative problems and case studies. ASSESSMENT METHODS Learning Outcomes 1, 2 (and 4) These are assessed by a 3000 word evaluation report based on the system produced for the Project unit. Learning Outcomes 3 and 4 These are assessed by individual presentations on a topic of relevant research related to ILOs 3 and 4. Weighting The weighting of the assessments will be 50: 50. INDICATIVE CONTENT HCI Related Development: Developments in technology: workstation environments related processing and storage requirements Developments in HCI: virtual machines, command line input, concept of 'look and feel' The 'user': expert, regular, occasional, novice Development of systems: hypertext, event driven systems, implications of developments on hardware. HCI: Psychological considerations: memory, perception, cognition and the consequences on the design of HCI Health & safety considerations: ergonomics, RSI, legal implications Cost implications: training, effectiveness of system, architectural requirements HCI Prototypes: Modelling the interface: mapping the system functionality to the conceptual model Analysis e.g. storyboarding, user needs analysis Design: rules for good HCI design, help, documentation Application of HCI: Incorporation of good HCI design to graphical user interfaces Incorporation of good HCI design to web based applications Web usability and accessibility, legal framework, alternative technologies: screen readers, voice-activated systems. Adding the 3rd Dimension to the Human Computer Interface. Virtual Reality Modelling Language (VRML). VRML 1, VRML 2/97, X3D. Other 3D technologies Embedding VRML/X3D into Web Pages VRML/X3D viewing and editing tools. INDICATIVE KEY LEARNING RESOURCES LITERATURE BASED Hill, S. (1995) A Practical Introduction to the Human Computer Interface in a Semester. Thomson Learning Preece, J. (1994) Human Computer Interaction. Addison-Wesley Dix, A., Abowd, G. D. & Beale, R. (2006) Human-Computer Interaction (4th Edition) Prentice Hall WEB BASED RESOURCES HCI Bibliography http://www.hcibib.org Web Accessibility Initiative http://www.w3c.org/WAI/ Web3D Consortium http://www.web3d.org Web3D Guide http://web3d.vapourtech.com Parallel Graphics http://www.parallelgraphics.com FreeWRL http://freewrl.sourceforge.net/index.html Others will be introduced during the year. Their addresses are not stable.