Modiwl ICP-2302:
Software Hut

Ffeithiau’r Modiwl

Rhedir gan School of Computer Science and Electronic Engineering

20 Credyd neu 10 Credyd ECTS

Semester 1 a 2

Trefnydd: Mr Cameron Gray

Amcanion cyffredinol

To provide a theoretical and practical introduction to the process of software engineering.

Cynnwys cwrs

  • Software life cycle; Analysis; Design; Implementation; Testing; Deployment; Models of software development; Extreme Programming

  • Time and cost constraints; Milestones and Deliverables; Options Analysis; Project scheduling – tools and techniques.

  • Requirements Analysis; Requirements Specification; Functional and non-functional requirements; Identification of Use Cases; Use Case Diagrams

  • Use of UML to produce static and dynamic models of a proposed software system.

  • Testing methodologies; Balck and White Box Testing; Unit and System Testing; Regression testing; Test Documentation;

  • Team structures; Group working; SCRUM; Co-ordination of activity; Version control; Programmer productivity; Problem solving.

  • The concept of professionalism; Professional ethics; Legal Isues – Copyright, Computer Misuse, Data Protection; Health and safety; Contracts and Employment Law Environmental issues.

Cyswllt Canlyniad dysgu i Meini Prawf

  threshold

40%

good

60%

excellent

70%

Demonstrate overall understanding of the Software Life Cycle.

Can identify and describe the stages of the software life cycle; can state and describe various models of software development. Demonstrate knowledge of some of the literature relating to the Software Life Cycle. Can critically evaluate and compare competing models of software development; can systematically describe the principles of Extreme Programming.

Apply project-planning techniques to the process of software development.

Use of fundamental project planning techniques; identification of milestones and deliverables. Can undertake contingency planning; demonstrates knowledge of the role of time and cost constraints Effective use of project planning software; identification of critical paths; understand the role of an options analysis;

Analyse customer requirements and produce a requirements document and description of Use Cases.

Can explain the purpose of the analysis process; can distinguish different kinds of requirements; can read and understand Use Case diagrams. Can produce a fully researched solution to the problem at hand, with a full requirements document outlining the requirements in detail. Can produce a well presented requirements document, with a partially researched solution to the customer’s problem.

Create detailed design documents based upon system requirements.

Can read and understand a set of UML diagrams; can produce simple class and object diagrams.. Can produce static and dynamic models for small but complex software systems. Can produce static and dynamic models of simple software systems.

Appreciate the role of testing in software development and make use of a range of testing methodologies.

Can describe a range of testing methodologies; can read and understand test documentation and its purpose. Demonstrates significant knowledge of different forms of testing (e.g. load performance and security testing). Can design and implement a test plan; can produce test documentation.

Work effectively in a software development team.

Demonstrates knowledge of industry standard team structures; can work effectively with others to solve technical and organisational problems Demonstrates knowledge of the literature relating to the management of software development. Can maintain project administration documents; understand and use various systems of version control;

Understand professional issues related to the computing. Know about the legal, social and ethical issues associated with the use of computer technology. Adopt approved professional practices.

Demonstrates a satisfactory level of knowledge of the main concepts and ideas within the subject area. Demonstrate a capacity for taking charge of their own professional development and learning needs. Demonstrates a good level of knowledge of most of the subject area with evidence of depth in specific instances; Can apply appropriate practices within a professional and ethical framework.

Dulliau asesu

Math Enw Disgrifiad Pwysau
Group Project 50
Written Examination 25
Mini Project 12.5
PESTLE Assignments 12.5

Strategaeth addysgu a dysgu

Oriau
Private study 52
Lecture

24 hours over 12 weeks

24
Laboratory

24 hours over 12 weeks (semester 1)

24
Group Project 100

Sgiliau Trosglwyddadwy

  • Llythrennedd - Medrusrwydd mewn darllen ac ysgrifennu drwy amrywiaeth o gyfryngau
  • Rhifedd - Medrusrwydd wrth ddefnyddio rhifau ar lefelau priodol o gywirdeb
  • Defnyddio cyfrifiaduron - Medrusrwydd wrth ddefnyddio ystod o feddalwedd cyfrifiadurol
  • Hunanreolaeth - Gallu gweithio mewn ffordd effeithlon, prydlon a threfnus. Gallu edrych ar ganlyniadau tasgau a digwyddiadau, a barnu lefelau o ansawdd a phwysigrwydd
  • Archwilio - Gallu ymchwilio ac ystyried dewisiadau eraill
  • Adalw gwybodaeth - Gallu mynd at wahanol ac amrywiol ffynonellau gwybodaeth
  • Sgiliau Rhyngbersonol - Gallu gofyn cwestiynau, gwrando'n astud ar atebion a'u harchwilio
  • Dadansoddi Beirniadol & Datrys Problem - Gallu dadelfennu a dadansoddi problemau neu sefyllfaoedd cymhleth. Gallu canfod atebion i broblemau drwy ddadansoddiadau ac archwilio posibiliadau
  • Cyflwyniad - Gallu cyflwyno gwybodaeth ac esboniadau yn glir i gynulleidfa. Trwy gyfryngau ysgrifenedig neu ar lafar yn glir a hyderus.
  • Gwaith Tîm - Gallu cydweithio'n adeiladol ag eraill ar dasg gyffredin, ac/neu fod yn rhan o dîm gweithio o ddydd i ddydd

Sgiliau pwnc penodol

  • Knowledge and understanding of facts, concepts, principles & theories
  • Use of such knowledge in modelling and design
  • Problem solving strategies
  • Analyse if/how a system meets current and future requirements
  • Deploy theory in design, implementation and evaluation of systems
  • Recognise legal, social, ethical & professional issues
  • Knowledge of management techniques to achieve objectives
  • Specify, design or construct computer-based systems
  • Deploy tools effectively
  • Work as a member of a development team
  • Development of general transferable skills
  • Knowledge of systems architecture
  • Specify, deploy, verify and maintain information systems
  • Defining problems, managing design process and evaluating outcomes
  • System Design
  • Knowledge and/or understanding of appropriate scientific and engineering principles
  • Specify, deploy, verify and maintain computer-based systems
  • Principles of appropriate supporting engineering and scientific disciplines

Adnoddau

Goblygiadau o ran adnoddau ar gyfer myfyrwyr

Department supplied infrastructure (software/servers/etc. - no cost to student)

Rhestrau Darllen Bangor (Talis)

http://readinglists.bangor.ac.uk/modules/icp-2302.html

Rhagofynion a Chydofynion

Cyrsiau sy’n cynnwys y modiwl hwn