BCS Professional Examination 2017 Professional Graduate Diploma. March Examiners Report. System Design Methods. Section A

Similar documents
IT4305: Rapid Software Development Part 2: Structured Question Paper

OCR LEVEL 3 CAMBRIDGE TECHNICAL

Introduction to Simulation

Implementing a tool to Support KAOS-Beta Process Model Using EPF

IBM Software Group. Mastering Requirements Management with Use Cases Module 6: Define the System

MASTER S THESIS GUIDE MASTER S PROGRAMME IN COMMUNICATION SCIENCE

RUBRICS FOR M.TECH PROJECT EVALUATION Rubrics Review. Review # Agenda Assessment Review Assessment Weightage Over all Weightage Review 1

A Pipelined Approach for Iterative Software Process Model

PROCESS USE CASES: USE CASES IDENTIFICATION

Major Milestones, Team Activities, and Individual Deliverables

The Seven Habits of Effective Iterative Development

Including the Microsoft Solution Framework as an agile method into the V-Modell XT

Introduction to Modeling and Simulation. Conceptual Modeling. OSMAN BALCI Professor

Submission of a Doctoral Thesis as a Series of Publications

The Role of Architecture in a Scaled Agile Organization - A Case Study in the Insurance Industry

A systems engineering laboratory in the context of the Bologna Process

Group A Lecture 1. Future suite of learning resources. How will these be created?

CPS122 Lecture: Identifying Responsibilities; CRC Cards. 1. To show how to use CRC cards to identify objects and find responsibilities

Course outline. Code: ICT310 Title: Systems Analysis and Design

Software Development Plan

STUDYING RULES For the first study cycle at International Burch University

Generating Test Cases From Use Cases

Deploying Agile Practices in Organizations: A Case Study

Programme Specification. MSc in International Real Estate

DIGITAL GAMING & INTERACTIVE MEDIA BACHELOR S DEGREE. Junior Year. Summer (Bridge Quarter) Fall Winter Spring GAME Credits.

Software Maintenance

Section 3.4. Logframe Module. This module will help you understand and use the logical framework in project design and proposal writing.

Shared Mental Models

P. Belsis, C. Sgouropoulou, K. Sfikas, G. Pantziou, C. Skourlas, J. Varnas

Computing Curricula -- Software Engineering Volume. Second Draft of the Software Engineering Education Knowledge (SEEK) December 6, 2002

Experiences Using Defect Checklists in Software Engineering Education

Qualification handbook

Maximizing Learning Through Course Alignment and Experience with Different Types of Knowledge

Digital Media Literacy

Unit 7 Data analysis and design

IBM Training Custom Catalog

Guidelines for Project I Delivery and Assessment Department of Industrial and Mechanical Engineering Lebanese American University

Designing a Rubric to Assess the Modelling Phase of Student Design Projects in Upper Year Engineering Courses

PESIT SOUTH CAMPUS 10CS71-OBJECT-ORIENTED MODELING AND DESIGN. Faculty: Mrs.Sumana Sinha No. Of Hours: 52. Outcomes

Module Title: Managing and Leading Change. Lesson 4 THE SIX SIGMA

MSc Education and Training for Development

Stimulating Techniques in Micro Teaching. Puan Ng Swee Teng Ketua Program Kursus Lanjutan U48 Kolej Sains Kesihatan Bersekutu, SAS, Ulu Kinta

M55205-Mastering Microsoft Project 2016

Team Love <3. Because it s all about heart.

ECE-492 SENIOR ADVANCED DESIGN PROJECT

Different Requirements Gathering Techniques and Issues. Javaria Mushtaq

Identifying Novice Difficulties in Object Oriented Design

Guidelines for Writing an Internship Report

TEACHING IN THE TECH-LAB USING THE SOFTWARE FACTORY METHOD *

CONCEPT MAPS AS A DEVICE FOR LEARNING DATABASE CONCEPTS

Process improvement, The Agile Way! By Ben Linders Published in Methods and Tools, winter

Mike Cohn - background

Running Head: STUDENT CENTRIC INTEGRATED TECHNOLOGY

Cal s Dinner Card Deals

Training materials on RePro methodology

University of the Free State Language Policy i

Smarter Balanced Assessment Consortium: Brief Write Rubrics. October 2015

Lecturing Module

Pragmatic Use Case Writing

Geothermal Training in Oradea, Romania

The Political Engagement Activity Student Guide

GACE Computer Science Assessment Test at a Glance

Success Factors for Creativity Workshops in RE

Nearing Completion of Prototype 1: Discovery

DSTO WTOIBUT10N STATEMENT A

Ericsson Wallet Platform (EWP) 3.0 Training Programs. Catalog of Course Descriptions

MODULE 4 Data Collection and Hypothesis Development. Trainer Outline

Project Leadership in the Future

LEGO MINDSTORMS Education EV3 Coding Activities

STANDARD OPERATING PROCEDURES (SOP) FOR THE COAST GUARD'S TRAINING SYSTEM. Volume 7. Advanced Distributed Learning (ADL)

Rubric for Scoring English 1 Unit 1, Rhetorical Analysis

Conceptual Framework: Presentation

Notes on The Sciences of the Artificial Adapted from a shorter document written for course (Deciding What to Design) 1

BSP !!! Trainer s Manual. Sheldon Loman, Ph.D. Portland State University. M. Kathleen Strickland-Cohen, Ph.D. University of Oregon

Assessment. the international training and education center on hiv. Continued on page 4

Lecture 15: Test Procedure in Engineering Design

Residential Admissions Procedure Manual

Emma Kushtina ODL organisation system analysis. Szczecin University of Technology

Ministry of Education, Republic of Palau Executive Summary

ESTABLISHING A TRAINING ACADEMY. Betsy Redfern MWH Americas, Inc. 380 Interlocken Crescent, Suite 200 Broomfield, CO

Johannes Ryser Martin Glinz. SCENT - A Method Employing Scenarios to Systematically Derive Test Cases for System Test.

Institutionen för datavetenskap. Hardware test equipment utilization measurement

DESIGNPRINCIPLES RUBRIC 3.0

Evaluation of Systems Engineering Methods, Processes and Tools on Department of Defense and Intelligence Community Programs - Phase II

General study plan for third-cycle programmes in Sociology

STABILISATION AND PROCESS IMPROVEMENT IN NAB

Prepared by: Tim Boileau

RUBRICS FOR MAJOR PROJECT EVALUATION

USER ADAPTATION IN E-LEARNING ENVIRONMENTS

THE DEPARTMENT OF DEFENSE HIGH LEVEL ARCHITECTURE. Richard M. Fujimoto

With guidance, use images of a relevant/suggested. Research a

The specific Florida Educator Accomplished Practices (FEAP) addressed in this course are:

Modeling user preferences and norms in context-aware systems

CWIS 23,3. Nikolaos Avouris Human Computer Interaction Group, University of Patras, Patras, Greece

Specification of the Verity Learning Companion and Self-Assessment Tool

Standards and Criteria for Demonstrating Excellence in BACCALAUREATE/GRADUATE DEGREE PROGRAMS

Evaluating the Effectiveness of Mindmapping in Generating Domain Ontologies using OntoREM: The MASCOT Case Study

Knowledge-Based - Systems

Guidelines for the Use of the Continuing Education Unit (CEU)

Teaching Literacy Through Videos

Transcription:

BCS Professional Examination 2017 Professional Graduate Diploma March 2017 Examiners Report System Design Methods Section A Basic Elements of System Design Methods 1. a) Discuss how use case and class diagrams can be used to cross-check each other. b) Discuss how data flow diagrams and entity relationship diagrams can be used to cross-check each other. c) The ABC method (see Appendix at end of paper) specifies the development process but it does not prescribe any set of systems modeling techniques. Assuming that you are required to use the Unified Modeling Language (UML) techniques, decide which techniques you would use in different stages of the method. Briefly justify your decisions. (13 marks) a) The following (or suitable alternatives) would be expected: The methods in the class diagram should correspond with the use cases in the use case diagram. There should not be a method that does not correspond to at least one use case, and there should not be a use case that does not correspond to at least one method. b) The following (or suitable alternatives) would be expected: The data stores in the data flow diagram should correspond with the entities in the entity relationship diagram. There should not be an entity that does correspond with a data store. Each data store should correspond with one or more entities. c) The following allocation of UML techniques (or appropriate alternatives) would be expected: Feasibility: Use case diagram (with major use cases), Class diagram (with main classes) (2) Requirements analysis: Use case diagram (detailed), Class diagram (mainly with analysis classes), Sequence diagrams (for all or more complex use cases), possibly State machines/diagrams (for more complex classes) Design: Class diagram, Sequence diagrams, State machines/diagrams all these with extra details introduced by design. Implementation: primarily Component and Deployment diagrams. (2) Activity diagrams could be used in different stages e.g. in early stages to model business processes, and later to specify logic of more complex use cases and class operations. (13 marks)

Part a). Only some candidates provided reasonable and adequate answers. Many answers were irrelevant e.g. some candidates discussed class diagrams and use cases only instead of concentrating on cross-checking. Part b). This part (like part a)) caused many problems. Many answers were irrelevant e.g. some candidates discussed data flow diagrams and entity relationship diagrams only instead of concentrating on cross-checking. Part c). Most candidates answered part c) reasonably well i.e. they discussed an allocation of UML techniques to different stages of the method. However some candidates discussed structured techniques (DFDs, ERDs, etc.) instead. Construction of a Method 2. a) Explain with the aid of diagrams the following software life cycle models: Waterfall, Incremental, Spiral. Explain also how the Spiral model incorporates both the Waterfall and the Incremental approaches. (15 marks) b) Consider the following software life cycle models: Waterfall, Incremental development, Evolutionary prototyping. For each of these life cycle models discuss briefly whether the ABC method process (see Appendix at end of paper) is based on it. Justify your answers. a) Waterfall diagram and brief explanation are required Incremental diagram and brief explanation are required (4) Spiral - diagram and brief explanation are required (4) Waterfall follow the spiral once (2) Incremental track the spiral a number of times, once for each increment (2) (15 marks) b) Waterfall: ABC method is definitely not based on this process. From the diagram it is clear that this is a highly iterative process which delivers software in parts. The waterfall approach is not really iterative and delivers software in one go. Incremental: ABC method is clearly based on this approach. In the incremental approach software is delivered in increments/parts and this involves a number of iterations. Evolutionary prototyping: it involves building prototypes which evolve to the final system. It is therefore an iterative process. However the diagram suggests that prototyping focuses on Requirements analysis (and capture) only. In addition the system is delivered in parts instead of evolving. Conclusion ABC method is not based on this approach. (4)

Part a). Most candidates answered the first section of part a) reasonably well i.e. they explained all three software life cycle models. Some answers however were too detailed and partly irrelevant e.g. detailed discussion of fact gathering techniques, detailed discussion of testing techniques, etc. The second section caused some problems. Only some candidates properly explained how the Spiral model incorporates both the Waterfall and the Incremental approaches. Part b). Many candidates answered this part reasonably well. In particular, they noticed that ABC method is not based on the waterfall approach, but it is based on the incremental approach. Evolutionary prototyping caused some problems. Selecting a Method 3. a) There are a wide variety of systems design techniques available for developing IT systems. Discuss why certain design techniques are more relevant to certain types of IT systems than other design techniques. For example, compare the suitability of different design techniques for developing safety critical systems and business information systems. b) The ABC method (see Appendix at end of paper) is suitable for applications which have certain characteristics. Compare the suitability of this method for developing safety critical systems and business information systems. c) Assume that you are a project manager of three projects with the following characteristics: Project 1. A medium size business application whose requirements can be easily prioritized and grouped. Project 2. A standard business application. You have developed similar systems in the past and expect to develop more in the future. Project 3. A relatively small web-site for a local business. Requirements are vague and are likely to change in the future. Consider also the following software development approaches/models: Waterfall, Incremental, Evolutionary prototyping, Throw-away prototyping and Componentbased development. Which of the above approaches/models would you choose for each of your projects? Your choices should be properly justified. (9 marks) a) Safety critical systems require a high degree of precision in terms of design, in order to attempt to ensure that the system operates in a specified manner. For such systems formal mathematically based systems design approaches may be more appropriate as such design methods can define requirements in an unambiguous manner. (5 marks) Business information systems require detailed design in terms of data and their relationships, and the processing of such data. Systems design approaches that model such requirements for example class diagrams in UML or entity relationship diagrams in structured approaches, as well as use case diagrams from UML or data flow diagrams from structured approaches would be appropriate for the design of such systems. (5 marks)

b) Characteristics of suitable applications: Some requirements are vague (prototyping should be used to clarify them) Requirements can be divided into different priority groups increments/parts Business application Conclusion ABC method is more suitable for business information systems. c) Project 1: Incremental (requirements are grouped, so it is easy to identify increments) Project 2: Component-based development (components of previous systems can be used, and new components can be produced for future projects) Project 3: Evolutionary prototyping (requirements are vague and unstable, so there is a need for rapid prototyping leading to the final product) (3 marks for each correct answer) (9 marks) Part a). This part caused many problems. A lot of candidates discussed methods and life cycle models instead of design techniques. For example, they discussed Agile methods, the waterfall model, etc. Part b). Many candidates answered this part reasonably well. However many answers were unclear and without proper conclusions. Part c). Most candidates answered this part reasonably well. Introducing a Method Section B 4. a) Discuss why both developers and users should be trained in the use of a new systems design method. b) Assume that your software organization has been using a traditional structured method based on the Waterfall approach for many years. Now they want to introduce the new method ABC (see Appendix at end of paper) that incorporates UML. Discuss how introducing the ABC method and UML may impact: (i) (ii) the method users (i.e. developers), the system users. (15 marks) 4. a) Systems developers should be trained in the use of a new systems design method, otherwise they might not use the design techniques within the systems design method accurately, or consistently, and the developers might take longer than necessary to use such techniques. (5 marks) User should be trained in the use of a new systems design method, otherwise it might be difficult for them to check designs, or to provide appropriate feedback to the developers. (5 marks) 4. b) i) Developers should be trained in using an incremental approach and prototyping (as ABC is based on both). As they are not familiar with UML, they should also be given proper training in using UML techniques.

(ii) Users may be required to check and sign off various models and documents specifying user requirements (e.g. use case diagrams, class diagrams). Therefore these new models/diagrams should be explained to them (a basic training should be provided). ABC method is partly based on prototyping which requires a substantial participation from users. ABC method delivers a system in increments/parts. Each increment must be accepted by users. This requires more frequent participation of users. Most candidates answered part a) reasonably well and discussed why training would be required. However, some candidates discussed potential training approaches rather than why the training would be required. Most candidates answered part b) reasonably well and appropriately discussed the likely impact on method users and system users. Evaluation and tuning of a method 5. a) Explain the difference between validation and verification (V&V) in software projects. Suggest various V&V activities and techniques suitable for different stages of the ABC method process (see Appendix at end of paper). Your answer should include a brief justification of your allocation of V&V activities/techniques to the ABC stages. (12 marks) b) Discuss what software tools could support the quality control of design diagrams, program specifications and programs during a software development project. (13 marks) 5. a) Validation: A set of activities that ensure that the phase product which has been delivered is traceable to customer/user requirements i.e. it satisfies customer/user requirements. Verification: A set of activities that ensure that a product emerging from any phase of the development process meets its specification. (2 marks) Requirements analysis: Mainly static techniques can be used such as reviews, inspections, etc. It is also possible to use dynamic validation techniques such as prototyping. (2 marks) Design: mainly static techniques such as reviews. It is also possible to use dynamic techniques (and tools) such as design prototypes, design simulators, etc. Implementation and Testing 1: primarily dynamic techniques such as testing. Possible code inspection and walkthroughs. Integration and Testing 2: Testing 1 primarily involves module testing techniques. Testing 2 involves integration tests and acceptance testing. (2 marks) 5. b) Diagramming tools could be used to create and update relevant design diagrams to a professional standard. (4 marks) CASE tools could assist in creating and updating design diagrams and program specification and could analyse code for complexity and modularity to a professional standard.

(5 marks) Debugging tools could assist in developing program code to a professional standard. Some programming tools could assist in structuring and formatting program code to a professional standard. (4 marks) Most candidates answered part a) reasonably well and allocated appropriate verification and validation activities / techniques to the different stages of the systems design method. Most candidates answered part b) reasonably well and appropriately discussed how the stated software tools could support quality control. However, some candidates discussed different software tools from those stated in the question.