Systems Development Essentials using Agile

Course Code: SSDE

Duration: 3 days

 
 

(Course includes examination fee)

Course Overview

The Systems Development Essentials using Agile course is aimed at both existing and prospective systems developers as well as Business Analysts wishing to gain an overview of the issues and concepts involved in developing quality solutions that satisfy business requirements, using Agile approaches. The course studies a number of systems development life cycles, both defined and evolutionary, and examines the context in which different lifecycles could be applied before focusing in detail on an Agile approach.

Key areas include:

  • Examining how the systems development effort can be organised (defined, development & deployed).
  • Distinguishing between different lifecycles approaches such as linear and evolutionary.
  • Exploring various agile approaches (SCRUM, XP, DSDM, RUP) and considering the roles and principles for each.
  • Understanding requirements, stakeholders and roles in an agile environment.
  • Interpreting UML techniques such as use cases and class diagrams and understanding their application in agile development.
  • Considering techniques that support iterative development such as prototyping, hothousing and scenarios.
  • Testing in an agile environment.
  • Approaches for implementation, deployment and support of the system.

Course Content

Introduction

  • Characteristics of software quality
  • The purposes, objectives and tasks of systems development
  • Roles and responsibilities in systems development
  • Technical and interpersonal skills of the business analysts and solution developers

Systems architecture

  • Enterprise, systems and infrastructure levels of architecture
  • Inputs at an enterprise level
  • Inputs at system and infrastructure level
  • Model Driven Architecture

Development approaches

  • Bespoke development
  • Commercial off the shelf (COTS) software package solutions
  • Configuring and customising COTS software package solutions
  • Component-based systems development
  • Service-based solutions and other approaches
  • Evolutionary prototyping

Systems development lifecycles

  • Waterfall model
  • V model
  • Incremental model
  • Spiral (evolutionary) model
  • Advantages and disadvantages of each approach
  • Selection of an appropriate development approach

Methods and approaches

  • Detailed study of the Agile approach including life cycle, deliverables and roles
  • Iterative systems development using the DSDM Atern methodology
  • Other agile development methodologies (The Unified Process (UP), Scrum, eXtreme Programming)

Modelling techniques

  • Models of the Unified Modeling Language (UML)
  • Interpretation and principles of:
    • Use case diagram
    • Use case description
    • Class diagram
    • State machine diagram
  • Validating models using a CRUD matrix

Requirements in an Agile environment

  • Fact finding approaches:
    • Workshops
    • Interviewing
    • Questionnaires
    • Scenario analysis, storyboarding, user stories and hot-housing
    • Model office and focus groups
  • Functional requirements definition
  • Non-functional requirements definition
  • Documenting & prioritising requirements
  • Human aspects of systems investigation and introducing change

Iterative systems development

  • Features of iterative development approach
  • Prototyping
  • Categories of prototype
  • Timeboxing
  • Prototype development plans

Systems design, implementation and maintenance

  • Design principles and constraints (legal, ethical, financial)
  • Systems deployment and hand over
  • Post-implementation reviews
  • Different types of maintenance
  • Estimation and development planning

Quality assurance

  • Definitions of software quality
  • The V model
  • Requirements-driven testing
  • Static testing: types of walkthrough and inspection
  • Post-project reviews

CASE and CAST tools

  • Features of Computer-aided Software Engineering (CASE) and Computer-aided Software Testing tools (CAST)
  • Life-cycle coverage
  • Requirements traceability
  • Advantages and disadvantages of software development support tools

BCS certificates

This course prepares delegates to sit the one-hour, open book, examination leading to the certificate in Systems Development Essentials offered by BCS, The Chartered Institute for IT. The certificate is a core module in the BCS Diploma in Solution Development and is also a specialist practitioner module in the BCS Diploma in Business Analysis.



Last Edited: May 2016

Public Scheduled Events

Classroom & Live Virtual Instructor-Led Training

Duration: 3 days

Price: £1,295.00 exc. VAT 

Start Date Options Spaces  
04 Jan 2021 StayAhead Classroom Courses available  Spaces Book Now 
15 Mar 2021 StayAhead Classroom Courses available  Spaces Book Now 
 

Live Virtual Classroom

 
Join live instructor-led classroom training from the comfort of your home or office.
All the convenience and benefits of the classroom experience without the hassle and costs of travel and accommodation.
 
 



Our Customers Include

 
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
 
 



Our Course Curriculum

 
 
 

Boot_Group_Buttons... No Values @@@@ 50 @@@@ Full Group

Error Occurred While Processing Request The web site you are accessing has experienced an unexpected error.
Please contact the website administrator.


The following information is meant for the website developer for debugging purposes.
Error Occurred While Processing Request

Variable THEGROUP is undefined.

 
The error occurred in D:/Inetpub/vhosts/stayahead.com/httpdocs/eventschedule/Boot_Group_Buttons2018.cfm: line 47
Called from D:/Inetpub/vhosts/stayahead.com/httpdocs/eventschedule2018/Page_Insert_OurCourses.cfm: line 352
Called from D:/Inetpub/vhosts/stayahead.com/httpdocs/eventschedule2018/SA_Page_Body.cfm: line 232
Called from D:/Inetpub/vhosts/stayahead.com/httpdocs/eventschedule/outline.cfm: line 123
45 : 
46 : 						<CFIF ParameterExists(TheFullGroup)>
47 : 								Full Group  <cfoutput>#TheGroup#</cfoutput></h2>
48 : 						<CFELSEIF ParameterExists(TheGroup)>
49 : 								The Group  <cfoutput>#TheGroup#</cfoutput></h2>

Resources:

Browser   ColdFusion
Remote Address   92.60.102.10
Referrer  
Date/Time   03-Jan-21 05:46 PM
Stack Trace
at cfBoot_Group_Buttons20182ecfm1333949435.runPage(D:/Inetpub/vhosts/stayahead.com/httpdocs/eventschedule/Boot_Group_Buttons2018.cfm:47) at cfPage_Insert_OurCourses2ecfm1374457951.runPage(D:/Inetpub/vhosts/stayahead.com/httpdocs/eventschedule2018/Page_Insert_OurCourses.cfm:352) at cfSA_Page_Body2ecfm447858172.runPage(D:/Inetpub/vhosts/stayahead.com/httpdocs/eventschedule2018/SA_Page_Body.cfm:232) at cfoutline2ecfm1180318823.runPage(D:/Inetpub/vhosts/stayahead.com/httpdocs/eventschedule/outline.cfm:123)

coldfusion.runtime.UndefinedVariableException: Variable THEGROUP is undefined.
	at coldfusion.runtime.CfJspPage._get(CfJspPage.java:389)
	at coldfusion.runtime.CfJspPage._get(CfJspPage.java:351)
	at coldfusion.runtime.CfJspPage._autoscalarize(CfJspPage.java:1468)
	at cfBoot_Group_Buttons20182ecfm1333949435.runPage(D:\Inetpub\vhosts\stayahead.com\httpdocs\eventschedule\Boot_Group_Buttons2018.cfm:47)
	at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:247)
	at coldfusion.tagext.lang.IncludeTag.handlePageInvoke(IncludeTag.java:736)
	at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:572)
	at coldfusion.runtime.CfJspPage._emptyTcfTag(CfJspPage.java:3011)
	at cfPage_Insert_OurCourses2ecfm1374457951.runPage(D:\Inetpub\vhosts\stayahead.com\httpdocs\eventschedule2018\Page_Insert_OurCourses.cfm:352)
	at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:247)
	at coldfusion.tagext.lang.IncludeTag.handlePageInvoke(IncludeTag.java:736)
	at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:572)
	at coldfusion.runtime.CfJspPage._emptyTcfTag(CfJspPage.java:3011)
	at cfSA_Page_Body2ecfm447858172.runPage(D:\Inetpub\vhosts\stayahead.com\httpdocs\eventschedule2018\SA_Page_Body.cfm:232)
	at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:247)
	at coldfusion.tagext.lang.IncludeTag.handlePageInvoke(IncludeTag.java:736)
	at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:572)
	at coldfusion.runtime.CfJspPage._emptyTcfTag(CfJspPage.java:3011)
	at cfoutline2ecfm1180318823.runPage(D:\Inetpub\vhosts\stayahead.com\httpdocs\eventschedule\outline.cfm:123)
	at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:247)
	at coldfusion.tagext.lang.IncludeTag.handlePageInvoke(IncludeTag.java:736)
	at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:572)
	at coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:65)
	at coldfusion.filter.IpFilter.invoke(IpFilter.java:45)
	at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:495)
	at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:42)
	at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40)
	at coldfusion.filter.PathFilter.invoke(PathFilter.java:153)
	at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:94)
	at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)
	at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38)
	at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:58)
	at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38)
	at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22)
	at coldfusion.filter.CachingFilter.invoke(CachingFilter.java:62)
	at coldfusion.CfmServlet.service(CfmServlet.java:219)
	at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89)
	at sun.reflect.GeneratedMethodAccessor52.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:483)
	at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:288)
	at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:285)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAsPrivileged(Subject.java:549)
	at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:320)
	at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:175)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:297)
	at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
	at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:191)
	at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:187)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:186)
	at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42)
	at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)
	at sun.reflect.GeneratedMethodAccessor54.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:483)
	at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:288)
	at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:285)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAsPrivileged(Subject.java:549)
	at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:320)
	at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:260)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
	at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
	at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:191)
	at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:187)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:186)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:494)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:458)
	at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:196)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:745)