Full document describing all aspects of the curriculum, release 2 (pdf)
Full document describing all aspects of the curriculum, release 2 (pdf)
Full document describing all aspects of the curriculum, release 2 (pdf)
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
SYSTEM MODELLING AND DESIGN (SE-IN-04)AIMS:This module provides <strong>the</strong> student with practical experience <strong>of</strong> <strong>the</strong> issues involved with s<strong>of</strong>twaredevelopment. Specific<strong>all</strong>y, <strong>the</strong> student will work as part <strong>of</strong> team developing s<strong>of</strong>tware from a suppliedspecification and design <strong>document</strong>. The development will take place on an industrial-strengthplatform (e.g. .NET).The basic concepts <strong>of</strong> <strong>the</strong> object-oriented (OO) paradigm and <strong>the</strong> rapid applicationdevelopment (RAD) approach are introduced and an overview <strong>of</strong> <strong>the</strong> means by which systemsrequirements can be captured and modelled is given. The elaboration <strong>of</strong> analysis models into designmodels is covered, taking into consideration both object and systems design issues. The way inwhich test cases are used to ensure quality s<strong>of</strong>tware production is also examined. Throughout,models are developed using <strong>the</strong> Unified modelling language (UML) which has become an industrystandard for OO modelling.The use <strong>of</strong> design patterns is introduced; a range <strong>of</strong> which are applied to <strong>the</strong> specification <strong>of</strong>OO design models. An overview <strong>of</strong> <strong>the</strong> role <strong>of</strong> methodologies in specification is given, with anintroduction to a contemporary systems development methodology (e.g. USDP - Unified S<strong>of</strong>twareDevelopment Process) as a framework for undertaking analysis and design activities.The module will encourage <strong>the</strong> use <strong>of</strong> s<strong>of</strong>tware tools whenever possible in areas such as:collaborative working, product testing, version and <strong>document</strong>ation control. The student will gainexperience <strong>of</strong> s<strong>of</strong>tware development, s<strong>of</strong>tware testing and adaptive maintenance while gainingfamiliarity with a modern development framework. Throughout <strong>the</strong> module <strong>the</strong> student will beencouraged to reflect upon <strong>the</strong> experience gained and keep to maintain a personal set <strong>of</strong> notesLEARNING OUTCOMES:Upon successful completion <strong>of</strong> this module, <strong>the</strong> student will be able to:• map a specification and design into code;• explain <strong>the</strong> main issues involved with collaborative s<strong>of</strong>tware development, testing andmaintenance;• explain <strong>the</strong> object-oriented paradigm and identify <strong>the</strong> significant issues that are addressed whendeveloping object-oriented systems specification models;• construct a set <strong>of</strong> system specification models using an appropriate range <strong>of</strong> object modellingtechniques that represent different perspectives <strong>of</strong> a particular systems development (e.g. buildUML models and describe <strong>the</strong>m by use cases, class diagrams, activity diagrams, interactiondiagrams, state charts and package diagrams);• use a CASE tool to build and <strong>document</strong> analysis and design models in a consistent manner;• describe how analysis and design activities are organized within a leading systems developmentmethodology (e.g. Unified S<strong>of</strong>tware Development Process) and discuss <strong>the</strong> contribution <strong>of</strong> <strong>the</strong>methodology in <strong>the</strong> production <strong>of</strong> quality s<strong>of</strong>tware systems;• describe <strong>the</strong> features <strong>of</strong> a modern s<strong>of</strong>tware development framework that support access control;multi-language programming; version control and <strong>release</strong>.SYLLABUS CONTENT:• The .NET environment: structure; facilities; navigation; services.• The basic concepts <strong>of</strong> <strong>the</strong> object-oriented (OO) paradigm and RAD approach to systemsdevelopment.• Recap traditional fact-finding approaches for systems requirements capture.• An overview <strong>of</strong> <strong>the</strong> use <strong>of</strong> RAD techniques such as JAD (Joint Application Development), usecase and task-scripting.• An overview <strong>of</strong> techniques used for <strong>the</strong> analysis and modelling <strong>of</strong> logical requirements,expressed as UML models.• Systems analysis vs. systems design: moving from an analysis set <strong>of</strong> <strong>document</strong>s to a designmodel.• Introduction to systems design issues: object design (assigning responsibilities, CRC (Class-Responsibility-Collaboration) cards, visibility and designing associations, specifying constraintsand integrity); facilitating reuse (coupling and cohesion); systems design concepts; identifyingdesign goals; s<strong>of</strong>tware architecture (layering and partitioning, packaging subsystems,deployment); interface design (persistent data management strategies, identifying concurrencyand control).http://perun.im.ns.ac.yu/msc-se/ 15