CC2008 - Object-Oriented Analysis and Design (2017/18)
|Module specification||Module approved to run in 2017/18, but may be subject to modification|
|Module title||Object-Oriented Analysis and Design|
|Module level||Intermediate (05)|
|Credit rating for module||15|
|School||School of Computing and Digital Media|
|Running in 2017/18||No instances running in the year|
This core module explores the object-oriented (OO) paradigm and its role in system development.It systematically goes through object-oriented system analysis, modeling and design using UML, adapting use-case centric methodology. Throughout the module the students apply UML modelling to substantial and complex case studies to create analysis model and design specification of information systems, supported by appropriate CASE tools.
The module provides development opportunity for graduate attribites A1, A2 and A3. It
builds systematic knowledge of the information systems development process with focus on its development phases.
- The module provides students with an appreciation of OO design principles and the application of the Unified Modeling Language (UML) to the process of system analysis and design (A2).
- It gives students the opportunity to adopt a creative approach in the application of OO principles and to learn modeling methods and techniques to substantial and complex case studies (A3)
- In this module the students will work on prototyping information systems to meet the business requirements specified using UML diagrams (A1,A2).
The major topics of study on this module include:
- OO concepts applied to the modelling of information systems, including encapsulation, polymorphism, inheritance, modularisation, etc.
- UML and its role as a standard modelling notation during the development process
- Requirements gathering
- Use-case analysis
- Data analysis
- Modeling of use-case scenario realisation
- Model reconciliation
- Designing software architectures
- Designing classes and operations
- Designing user interfaces and listeners
- Designing persistent data sources and brokers
- Reusability of the design and component engineering
Learning and teaching
The module will be taught by a combination of lectures, tutorials and workshops, composed of 2 hours lecture, 1 hour tutorial and 1 hour computer lab each week for 11 weeks. The lectures will introduce the main concepts, methods and techniques for performing OO modeling and design. The tutorials will demonstrate application of the analysis and design principles to real-life business cases. In the computer labs the students will apply object-oriented CASE tools and programming IDEs to produce design models and software prototypes after specified scenarios. The information in relation to learning and teaching of the module will be uploaded gradually each week. Student peer support is also available from the module lecturers in their respective office hours.
On successful completion of this module the student will be able to:
1) produce initial OO models based on business specifications and object-oriented principles (A1)
2) apply OO modelling techniques to the design of business information sytems and components (A2)
3) apply systematic procedures, methods and tools for implementing technical solutions using UML and OO programming languages (A3)
4) apply available automated CASE tools for diagrammatic modelling and documentation consistency (A2)
5) explore creative solutions to problems without precise solution and/or with multple alternative solutions (A2, A3)
6) estimate trade-offs, make decisions and critically evaluate their consequences at different stages of software development process (A1, A3)
7) organise and present technical material in a professional manner (A2)
a. Course work consisting of two parts : 50%
Part 1 - an OO model of the user requirements (group work, worth 20%); groups are expected to make an informal presentation of this part of the work around Week 8
Part 2 - a design for the system (individual work, worth 30%)
Each group should submit a single bound document - consisting of Part 1 (group work) and Part 2 (Collection of team members' individual work) in Week 11.
b. Two and a half hours unseen examination: 50%
- Coursework Part 1 (groupwork) is designed to encourage the students to cooperate in producing the initial model of the system as a whole, reinforcing consistency across all aspects of the design
- Coursework Part 2 (individul work) is intended to allow students to progress down their chosen design route and to produce a sample prototype of a system after chosen use case scenario
- The final examination is mainly focused on the following:
* Information system analysis with application of the UML diagrams and
notations for use case scenario realisation
* Object-oriented design of system architecture and components using UML
* Justification of the choice of alternative and critically evaluation of the solutions at different stages of the analysis and design process
The marks on a course work and the marks from the written exam are aggregated into a final mark.
Opportunities for formative feedback
- Feedback is continuously provided at weekly tutorials where lecturers act as facilitators. Students must develop their solutions during the tutorials and workshops where feedback is immediate
- In depth written and verbal feedback is also provided with the first coursework assessment in the middle of the module
Timing of Assessment
- Coursework Part 1 is to be submitted by Week 8
- Coursework Part 2 submission deadline is in Week 11
- The examination takes place during the normal examination timetable
Simon Bennett, Steve McRobb, Ray Farmer. Object-oriented Systems Analysis and Design Using UML 2/e , McGraw-Hill Education (2002); ISBN: 0077098641
Leszek Maciaszek. Requirements Analysis and System Design: Developing Information Systems with UML 3rd ed. Addison Wesley (2007); ISBN: 978-0-321-44036-5
Mark Priesley. Practical Object-Oriented Design with UML. McGraw-Hill (2000); ISBN 0-07-709599-5