SlideShare a Scribd company logo
1 of 39
Download to read offline
About           Aims            Time           CSLP            SELP        Aim           Developing   Speciļ¬cs




                                               Computer Science Large Practical
                                                             and
                                              Software Engineering Large Practical


                                                                     Stephen Gilmore

                                                             Friday 21st September, 2012
                                                                  School of Informatics




Computer Science Large Practical and Software Engineering Large Practical                                  1 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         About this lecture


               This is an introductory lecture explaining two of this yearā€™s large
               practicals.
                        Computer Science Large Practical (CSLP) ā€” described here
                        Software Engineering Large Practical (SELP) ā€” described here
                        Artiļ¬cial Intelligence Large Practical (AILP) ā€” described elsewhere
               These slides and a more detailed handout will be available from the
               course web pages after the lecture.
                        http://www.inf.ed.ac.uk/teaching/courses/cslp/
                        http://www.inf.ed.ac.uk/teaching/courses/selp/

               Please ask questions at any time.




Computer Science Large Practical and Software Engineering Large Practical                          2 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         Restrictions

               The CSLP and the SELP are third-year undergraduate courses.
               They are only available to third-year undergraduate students.
               The CSLP and the SELP are not available to visiting undergraduate
               students, or to fourth-year undergraduate students and MSc
               students, who have their own individual projects.
               Third-year undergraduate students should choose at most one
               large practical, as allowed by their degree regulations.
                        On most degrees a large practical is compulsory.
                        On some degrees (typically combined Honours) you can do the
                        System Design Project instead, or additionally.
               See the Degree Programme Tables (DPT) in the Degree Regulations
               and Programmes of Study (DRPS) for your degree for clariļ¬cation.
                        http://www.drps.ed.ac.uk/12-13/dpt/drps_inf.htm



Computer Science Large Practical and Software Engineering Large Practical                          3 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         About these courses




               The CS and SE Large Practicals are individual programming
               projects.
               They run throughout the ļ¬rst semester.
               They are assessed by coursework only ā€” no examination papers.




Computer Science Large Practical and Software Engineering Large Practical                          4 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         How are these courses diļ¬€erent from others?

         Because the large practicals are on a larger scale than the
         programming courseworks which you have done previously there is
               a set of requirements (rather than a speciļ¬cation);
               a design element to the course; and
               more scope for creativity.



         The large practicals try to prepare you for
                 The System Design Project (in the second semester)
                 The Individual Project (in fourth year).




Computer Science Large Practical and Software Engineering Large Practical                          5 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         How much time should I spend?




         100 hours, all in Semester 1, of which
               8 hours lecture/demonstrating
               92 hours practical work, of which
                        70 hours non-timetabled assessed assignments
                        22 hours private study/reading/other




Computer Science Large Practical and Software Engineering Large Practical                          6 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         How much time is that really?



         You can think of this as approximately one day per week in ļ¬rst
         semester.
               you work 7 hours in one day (9:00ā€“5:00, say, with an hour for lunch)
               there are 13 weeks remaining in ļ¬rst semester (Week 2 to Week 14)
               7 Ɨ 13 = 91 hours




Computer Science Large Practical and Software Engineering Large Practical                          7 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         Managing your time




         It is unlikely that you will want to arrange your work on your large
         practical as one day where you do nothing else, but one day per
         week all semester is the amount of work that you should do for
         the course.




Computer Science Large Practical and Software Engineering Large Practical                          8 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         Scheduling work




         Course lecturers have been asked not to let deadlines overlap
         Weeks 11ā€“14 because students are expected to be concentrating
         on their large practical in that time.




Computer Science Large Practical and Software Engineering Large Practical                          9 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         Deadlines


         The CS and SE Large Practicals are in two parts:


                  Part 1 Thursday 25th October, 2012 at 16:00
                  Part 2 Thursday 20th December, 2012 at 16:00


         Part 1 is zero-weighted: it is just for feedback.

         Part 2 is worth 100% of the marks.




Computer Science Large Practical and Software Engineering Large Practical                         10 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         Scheduling work



               It is not necessary to keep working on the project right up to the
               deadline.
               For example, if you are travelling home for Christmas you might
               wish to submit the project early.
               In this case you need to ensure that you start the project early.
               The coursework handin is electronic so it is possible to submit
               remotely.




Computer Science Large Practical and Software Engineering Large Practical                         11 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         Early submission credit


               In order to motivate good project management, planning, and
               eļ¬ƒcient software development, the CSLP and the SELP reserve
               marks above 90% for work which is submitted early (speciļ¬cally,
               one week before the deadline for Part 2).
               Work submitted less than a week before the deadline does not
               qualify as an early submission, and the mark for this work will be
               capped at 90%. Thus, the mark may be 90%, but it may not be
               higher than this.
               Regardless of when it is submitted, every submission is assessed in
               exactly the same way, but submissions which attract a mark of
               above 90% which were not submitted early have this mark brought
               down to 90%.




Computer Science Large Practical and Software Engineering Large Practical                         12 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs




                The Computer Science Large Practical




Computer Science Large Practical and Software Engineering Large Practical                         13 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         The Computer Science Large Practical




               The requirement for the Computer Science Large Practical is to
               create an command-line application implemented in Objective-C.
               The purpose of the application is to implement a stochastic
               discrete-event simulator for chemical reactions.




Computer Science Large Practical and Software Engineering Large Practical                         14 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         Why simulation?



               Stochastic simulation is an important tool to help understand the
               chemical and biochemical processes which are constantly underway
               in all living things.
               Simulation is leading the way in scientiļ¬c breakthroughs in
               medicine, farming and veterinary science, with demonstrable
               beneļ¬ts for the health and wellbeing of humans, plants and animals.
               Simulation is important in many other ļ¬elds also, such as aerospace,
               aviation, transport, logistics, healthcare, and many others.




Computer Science Large Practical and Software Engineering Large Practical                         15 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         Why Objective-C?



               Learning a new programming language deepens our understanding
               of computer science.
               Using Objective-C exposes us to concepts which we would not see in
               Java or Haskell.
               Increases your employability by adding another programming
               language to your CV.
               Objective-C is becoming more popular so we can keep up with
               trends in programming languages.




Computer Science Large Practical and Software Engineering Large Practical                         16 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         The Objective-C Programming Language
         By some measures of programming language popularity,
         Objective-C is thought to be the worldā€™s third most popular
         programming language (behind C and Java, just ahead of C++).




Computer Science Large Practical and Software Engineering Large Practical                         17 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         How do we simulate chemical reactions?

               Chemical reactions change the concentration of chemical species
               such as proteins because molecules are created, altered, combined,
               broken apart, or destroyed.
                         ā€¢ + ā€¢ ā†’ ā€¢ ā€” red and yellow make an orange molecule
                         ā€¢ ā†’ ā€¢ + ā€¢ ā€” an orange molecule breaks into a red and a yellow
                         ā€¢ ā†’ ā€” a blue molecule is destroyed
                         ā†’ ā€¢ ā€” a green molecule is created

               The simulation of these processes takes place one reaction event at
               a time.
               The simulation tracks the number of molecules of each species and
               terminates when no other reaction can ļ¬re, or when a pre-deļ¬ned
               simulation end-time has been reached.



Computer Science Large Practical and Software Engineering Large Practical                         18 / 39
About           Aims            Time           CSLP            SELP           Aim          Developing      Speciļ¬cs


         What should the simulator do?
         Your simulator should convert a reaction script into a time-series
         output expressed as a comma-separated value ļ¬le with a header
         which identiļ¬es the species in each column of the output.


                                                                                              # t     X
              # simulate to a stop-time of 10 seconds                                         0.00,   100
              t = 10                                                                          0.01,   98
                                                                                              0.02,   97
              # decay reaction rate d is 1                                                    0.03,   96
              d = 1.0                                                                         0.04,   95
                                                                       Your simulator         0.05,   95
              # 100 molecules of X initially                    ā‡’        written in     ā‡’     0.06,   93
              X = 100                                                   Objective-C           0.07,   91
                                                                                              0.08,   90
              # X decays to nothing, or disappears
                                                                                                .      .
              d : X ->                                                                          .      .
                                                                                                .      .
                               model.txt
                                                                                              model.csv




Computer Science Large Practical and Software Engineering Large Practical                                      19 / 39
About              Aims                                Time                                CSLP                  SELP   Aim   Developing   Speciļ¬cs


         Computer Science Large Practical


               Computer Science Large Practical
               2012/2013
               Professor Stephen Gilmore
               School of Informatics

               Issued on: Friday 21st September, 2012



               Introduction
               The requirement for the Computer Science Large Practical is to create an command-line appli-
               cation implemented in Objective-C. The purpose of the application is to implement a stochastic
               discrete-event simulator for chemical reactions.
                                                           ā€”
                                                                   Full coursework description available today at
                                                                   ā€”
                   Stochastic simulation is an important tool to help understand the chemical and biochemical
               processes which are constantly underway in all living things. Simulation is leading the way in
               scientiļ¬c breakthroughs in medicine, farming and veterinary science, with demonstrable beneļ¬ts

                                                                   http://www.inf.ed.ac.uk/teaching/
               for the health and wellbeing of humans, plants and animals. Simulation is important in many
               other ļ¬elds also, such as aerospace, transport, logistics, healthcare, and many others.
                                                           ā€”       ā€”


                                                                   courses/cslp/
                  Chemical reactions change the concentration of chemical species such as proteins because
               molecules are created, altered, combined, broken apart, or destroyed. The simulation of these
               processes takes place one reaction event at a time. The simulation tracks the number of
               molecules of each species and terminates when no other reaction can ļ¬re, or when a pre-deļ¬ned
               simulation end-time has been reached.
                                                           ā€”       ā€”
                   We are concerned here with exact stochastic simulation, in which each reaction event is sim-
               ulated. Other stochastic simulation algorithms exist, called approximate simulation algorithms.
               These estimate the eļ¬€ect of numerous reaction events in order to speed up a simulation, but we
               will not be concerned with these here.
                                                           ā€”       ā€”
                  Reaction events change one chemical species into another. For example, the reaction event f ,
                                                       f :E+S ā†’C
               describes a collision between a molecule of enzyme (E) and a molecule of substrate (S) to
               produce a molecule of a compound (C). We write E + S to mean ā€œE and Sā€, not ā€œE plus Sā€.

                                                               1




Computer Science Large Practical and Software Engineering Large Practical                                                                      20 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs




              The Software Engineering Large Practical




Computer Science Large Practical and Software Engineering Large Practical                         21 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         The Software Engineering Large Practical




               The requirement for the Software Engineering Large Practical is to
               create an app implemented in Java and XML for the Android phone.
               The purpose of the app is to develop a prototype system to help
               students to decide who they should vote for in student elections.




Computer Science Large Practical and Software Engineering Large Practical                         22 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         How will we test this?




                                               You might not have an Android phone, but
                                               thatā€™s OK. We will use an Eclipse-based
                                               emulator to run our code. The emulator runs
                                               on Windows, Linux, Ubuntu and Mac OS X.




Computer Science Large Practical and Software Engineering Large Practical                         23 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         Android development with Eclipse




Computer Science Large Practical and Software Engineering Large Practical                         24 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         The Android emulator




Computer Science Large Practical and Software Engineering Large Practical                         25 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         Industrial relevance of the SELP




               Employers like to see evidence of practical skills acquisition, and use
               of state-of-the-art tools.
               The Software Engineering Large Practical uses the state-of-the-art
               Android Development Toolkit in Eclipse, as used by professional
               developers targeting the Android phone.




Computer Science Large Practical and Software Engineering Large Practical                         26 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         Smartphone sales
         More smartphones sold in the UK run the Android operating
         system than any other OS.




Computer Science Large Practical and Software Engineering Large Practical                         27 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         Smartphone sales worldwide




Computer Science Large Practical and Software Engineering Large Practical                         28 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         Smartphone sales worldwide




Computer Science Large Practical and Software Engineering Large Practical                         29 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         What is the app to do?


               In a student election, candidates nominate themselves for an oļ¬ƒce.
               For EUSA, these oļ¬ƒces include President, Vice President
               (Academic Aļ¬€airs), Vice President (Societies and Activities), Vice
               President (Services), and others.
               Candidates reļ¬‚ect on the issues which are important to them and
               make promises to the student body on what they will do about
               these issues if elected to oļ¬ƒce.
               Candidates can submit photographs of themselves and election
               statements explaining what they want to achieve in the hope of
               persuading people to vote for them.




Computer Science Large Practical and Software Engineering Large Practical                         30 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         What is the app to do?


               In addition to their online materials, candidates make and display
               posters to publicise their campaign.
               These are displayed on lamp posts, railings and hoardings in Bristo
               Square, George Square and at the West Mains entrance to Kingā€™s
               Buildings.
               Although student elections are important, and the correct procedure
               should be followed to ensure fair and transparent elections, the
               printing and hanging of hundreds of posters in public spaces around
               Edinburgh has been criticised recently as being environmentally
               unfriendly, aesthetically unpleasing, and somewhat old-fashioned.




Computer Science Large Practical and Software Engineering Large Practical                         31 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         The problem: aesthetically unpleasing




Computer Science Large Practical and Software Engineering Large Practical                         32 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         The problem: environmentally unfriendly




Computer Science Large Practical and Software Engineering Large Practical                         33 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         The problem: old-fashioned




Computer Science Large Practical and Software Engineering Large Practical                         34 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         Another problem: security




Computer Science Large Practical and Software Engineering Large Practical                         35 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         Another problem: security




Computer Science Large Practical and Software Engineering Large Practical                         36 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         The solution: an Android app



               The information on candidates is obtained by download of an XML
               document.
               Users of the app should be able to rate election candidates on a
               scale from zero to ļ¬ve stars and, if they are certain not to vote for
               them, to delete candidates entirely.
               When the user has decided who to vote for they can use the app to
               send a private email and a public tweet.




Computer Science Large Practical and Software Engineering Large Practical                         37 / 39
About              Aims                                Time                                 CSLP                  SELP   Aim   Developing   Speciļ¬cs


         Software Engineering Large Practical


               Software Engineering Large Practical
               2012/2013
               Professor Stephen Gilmore
               School of Informatics

               Issued on: Friday 21st September, 2012



               Introduction
               The requirement for the Software Engineering Large Practical is to create an app implemented
               in Java and XML for the Android phone. The purpose of the app is to develop a prototype
               system to help students to decide who they should vote for in student elections.

                                                           ā€”
                                                                   Full coursework description available today at
                                                                   ā€”

                   In a student election, candidates nominate themselves for an oļ¬ƒce. For EUSA, these oļ¬ƒces
               include President, Vice President (Academic Aļ¬€airs), Vice President (Societies and Activities),

                                                                   http://www.inf.ed.ac.uk/teaching/
               Vice President (Services), and others. Candidates reļ¬‚ect on the issues which are important to
               them and make promises to the student body on what they will do about these issues if elected
               to oļ¬ƒce. Candidates can submit photographs of themselves and election statements explaining
               what they want to achieve in the hope of persuading people to vote for them.

                                                                   courses/selp/
                  ā€¢ Photographs are made available in JPEG format with a maximum size of 2Mb. Images
                    are at a resolution of 120 pixels wide by 150 pixels high.

                  ā€¢ The number of words allowed in the election statement varies by oļ¬ƒce but is never more
                    than 450 words.

               The photograph and statement are made available on the election website.

                                                           ā€”       ā€”

               In addition to their online materials, candidates make and display posters to publicise their
               campaign. These are displayed on lamp posts, railings and hoardings in Bristo Square, George
               Square and at the West Mains entrance to Kingā€™s Buildings. Although student elections are
               important, and the correct procedure should be followed to ensure fair and transparent elections,
               the printing and hanging of hundreds of posters in public spaces around Edinburgh has been
               criticised recently as being environmentally unfriendly, aesthetically unpleasing, and somewhat
               old-fashioned.


                                                               1




Computer Science Large Practical and Software Engineering Large Practical                                                                       38 / 39
About           Aims            Time           CSLP            SELP        Aim   Developing   Speciļ¬cs


         Questions?




         Ask now or email Stephen.Gilmore@ed.ac.uk




Computer Science Large Practical and Software Engineering Large Practical                         39 / 39

More Related Content

Viewers also liked

Call Wave Corporate Governance Nominating Committee Charter
Call Wave Corporate Governance Nominating Committee CharterCall Wave Corporate Governance Nominating Committee Charter
Call Wave Corporate Governance Nominating Committee CharterManya Mohan
Ā 
Assignment #9: Tactics
Assignment #9: TacticsAssignment #9: Tactics
Assignment #9: TacticsJoĆ£o Ramos
Ā 
ApresentaĆ§Ć£o Mister Colibri
ApresentaĆ§Ć£o Mister ColibriApresentaĆ§Ć£o Mister Colibri
ApresentaĆ§Ć£o Mister Colibrivictornery
Ā 
Information Victoria - online developments for and with citizens
Information Victoria - online developments for and with citizensInformation Victoria - online developments for and with citizens
Information Victoria - online developments for and with citizenseGovernment Resource Centre
Ā 
ąø‚ą¹‰ąø²ąø£ąø²ąøŠąøąø²ąø£ąøžąø„ą¹€ąø£ąø·ąø­ąø™ąøŖąø²ąø”ąø±ąøąøŖąø²ąø¢ IT ąø•ąø­ąø™ąø—ąøµą¹ˆ 2
ąø‚ą¹‰ąø²ąø£ąø²ąøŠąøąø²ąø£ąøžąø„ą¹€ąø£ąø·ąø­ąø™ąøŖąø²ąø”ąø±ąøąøŖąø²ąø¢ IT ąø•ąø­ąø™ąø—ąøµą¹ˆ 2ąø‚ą¹‰ąø²ąø£ąø²ąøŠąøąø²ąø£ąøžąø„ą¹€ąø£ąø·ąø­ąø™ąøŖąø²ąø”ąø±ąøąøŖąø²ąø¢ IT ąø•ąø­ąø™ąø—ąøµą¹ˆ 2
ąø‚ą¹‰ąø²ąø£ąø²ąøŠąøąø²ąø£ąøžąø„ą¹€ąø£ąø·ąø­ąø™ąøŖąø²ąø”ąø±ąøąøŖąø²ąø¢ IT ąø•ąø­ąø™ąø—ąøµą¹ˆ 2siriporn pongvinyoo
Ā 
Poema
PoemaPoema
Poemaatilahab
Ā 

Viewers also liked (7)

Call Wave Corporate Governance Nominating Committee Charter
Call Wave Corporate Governance Nominating Committee CharterCall Wave Corporate Governance Nominating Committee Charter
Call Wave Corporate Governance Nominating Committee Charter
Ā 
Assignment #9: Tactics
Assignment #9: TacticsAssignment #9: Tactics
Assignment #9: Tactics
Ā 
ApresentaĆ§Ć£o Mister Colibri
ApresentaĆ§Ć£o Mister ColibriApresentaĆ§Ć£o Mister Colibri
ApresentaĆ§Ć£o Mister Colibri
Ā 
Information Victoria - online developments for and with citizens
Information Victoria - online developments for and with citizensInformation Victoria - online developments for and with citizens
Information Victoria - online developments for and with citizens
Ā 
Service SA - Channel Management
Service SA - Channel ManagementService SA - Channel Management
Service SA - Channel Management
Ā 
ąø‚ą¹‰ąø²ąø£ąø²ąøŠąøąø²ąø£ąøžąø„ą¹€ąø£ąø·ąø­ąø™ąøŖąø²ąø”ąø±ąøąøŖąø²ąø¢ IT ąø•ąø­ąø™ąø—ąøµą¹ˆ 2
ąø‚ą¹‰ąø²ąø£ąø²ąøŠąøąø²ąø£ąøžąø„ą¹€ąø£ąø·ąø­ąø™ąøŖąø²ąø”ąø±ąøąøŖąø²ąø¢ IT ąø•ąø­ąø™ąø—ąøµą¹ˆ 2ąø‚ą¹‰ąø²ąø£ąø²ąøŠąøąø²ąø£ąøžąø„ą¹€ąø£ąø·ąø­ąø™ąøŖąø²ąø”ąø±ąøąøŖąø²ąø¢ IT ąø•ąø­ąø™ąø—ąøµą¹ˆ 2
ąø‚ą¹‰ąø²ąø£ąø²ąøŠąøąø²ąø£ąøžąø„ą¹€ąø£ąø·ąø­ąø™ąøŖąø²ąø”ąø±ąøąøŖąø²ąø¢ IT ąø•ąø­ąø™ąø—ąøµą¹ˆ 2
Ā 
Poema
PoemaPoema
Poema
Ā 

Similar to Introduction to the CSLP and the SELP

4 Scheduling Monitoring
4 Scheduling Monitoring4 Scheduling Monitoring
4 Scheduling Monitoringtuomasniinimaki
Ā 
Developing project objectives and Execution plan in Economy management
Developing project objectives and Execution plan in Economy management Developing project objectives and Execution plan in Economy management
Developing project objectives and Execution plan in Economy management Nzar Braim
Ā 
Software Mangineeringment
Software MangineeringmentSoftware Mangineeringment
Software MangineeringmentProf. Amir Tomer
Ā 
3wis_2.pdf
3wis_2.pdf3wis_2.pdf
3wis_2.pdfaustdali
Ā 
Final prescription vs prediction
Final prescription vs predictionFinal prescription vs prediction
Final prescription vs predictionProModel Corporation
Ā 
SDL-LAB-MANUAL-CS606-common-for-all-the-faculties.pdf
SDL-LAB-MANUAL-CS606-common-for-all-the-faculties.pdfSDL-LAB-MANUAL-CS606-common-for-all-the-faculties.pdf
SDL-LAB-MANUAL-CS606-common-for-all-the-faculties.pdfpriyanshuurkade
Ā 
Pg certificate
Pg certificatePg certificate
Pg certificatedkhari
Ā 
Computation Lab 03 19 09 Olin
Computation Lab 03 19 09 OlinComputation Lab 03 19 09 Olin
Computation Lab 03 19 09 Olinbchar
Ā 
Small team scrum and kanban
Small team scrum and kanbanSmall team scrum and kanban
Small team scrum and kanbanDavid Daniel
Ā 
Computer science curriculum based on Program learning outcomes and objectives
Computer science curriculum based on Program learning outcomes and objectivesComputer science curriculum based on Program learning outcomes and objectives
Computer science curriculum based on Program learning outcomes and objectivesJawad Khan
Ā 
Pmo, project objectives and project life cycles
Pmo, project objectives and project life cyclesPmo, project objectives and project life cycles
Pmo, project objectives and project life cyclesSoftServe
Ā 
BCS302- Digital Design and computer organization -VTU-2022 scheme-Expectation...
BCS302- Digital Design and computer organization -VTU-2022 scheme-Expectation...BCS302- Digital Design and computer organization -VTU-2022 scheme-Expectation...
BCS302- Digital Design and computer organization -VTU-2022 scheme-Expectation...ciyamala kushbu
Ā 
Obc 2011
Obc 2011Obc 2011
Obc 2011obepsp
Ā 
System Development Life Cycle Models
System Development Life Cycle ModelsSystem Development Life Cycle Models
System Development Life Cycle ModelsPavithran Anthonipillai
Ā 
CSE202.pptx
CSE202.pptxCSE202.pptx
CSE202.pptxJoyBoy45
Ā 
Why Scrum Why Now
Why Scrum Why NowWhy Scrum Why Now
Why Scrum Why Nowmtoppa
Ā 

Similar to Introduction to the CSLP and the SELP (20)

Brochure curriculum (1)
Brochure curriculum (1)Brochure curriculum (1)
Brochure curriculum (1)
Ā 
4 Scheduling Monitoring
4 Scheduling Monitoring4 Scheduling Monitoring
4 Scheduling Monitoring
Ā 
Developing project objectives and Execution plan in Economy management
Developing project objectives and Execution plan in Economy management Developing project objectives and Execution plan in Economy management
Developing project objectives and Execution plan in Economy management
Ā 
Software Mangineeringment
Software MangineeringmentSoftware Mangineeringment
Software Mangineeringment
Ā 
3wis_2.pdf
3wis_2.pdf3wis_2.pdf
3wis_2.pdf
Ā 
Final prescription vs prediction
Final prescription vs predictionFinal prescription vs prediction
Final prescription vs prediction
Ā 
SDL-LAB-MANUAL-CS606-common-for-all-the-faculties.pdf
SDL-LAB-MANUAL-CS606-common-for-all-the-faculties.pdfSDL-LAB-MANUAL-CS606-common-for-all-the-faculties.pdf
SDL-LAB-MANUAL-CS606-common-for-all-the-faculties.pdf
Ā 
Xp methadology
Xp methadologyXp methadology
Xp methadology
Ā 
Pg certificate
Pg certificatePg certificate
Pg certificate
Ā 
Resume
ResumeResume
Resume
Ā 
Computation Lab 03 19 09 Olin
Computation Lab 03 19 09 OlinComputation Lab 03 19 09 Olin
Computation Lab 03 19 09 Olin
Ā 
Small team scrum and kanban
Small team scrum and kanbanSmall team scrum and kanban
Small team scrum and kanban
Ā 
Computer science curriculum based on Program learning outcomes and objectives
Computer science curriculum based on Program learning outcomes and objectivesComputer science curriculum based on Program learning outcomes and objectives
Computer science curriculum based on Program learning outcomes and objectives
Ā 
Pmo, project objectives and project life cycles
Pmo, project objectives and project life cyclesPmo, project objectives and project life cycles
Pmo, project objectives and project life cycles
Ā 
Scheduling
SchedulingScheduling
Scheduling
Ā 
BCS302- Digital Design and computer organization -VTU-2022 scheme-Expectation...
BCS302- Digital Design and computer organization -VTU-2022 scheme-Expectation...BCS302- Digital Design and computer organization -VTU-2022 scheme-Expectation...
BCS302- Digital Design and computer organization -VTU-2022 scheme-Expectation...
Ā 
Obc 2011
Obc 2011Obc 2011
Obc 2011
Ā 
System Development Life Cycle Models
System Development Life Cycle ModelsSystem Development Life Cycle Models
System Development Life Cycle Models
Ā 
CSE202.pptx
CSE202.pptxCSE202.pptx
CSE202.pptx
Ā 
Why Scrum Why Now
Why Scrum Why NowWhy Scrum Why Now
Why Scrum Why Now
Ā 

More from Stephen Gilmore

Feedback on Part 1 of the CSLP
Feedback on Part 1 of the CSLPFeedback on Part 1 of the CSLP
Feedback on Part 1 of the CSLPStephen Gilmore
Ā 
Feedback on Part 1 of the Software Engineering Large Practical
Feedback on Part 1 of the Software Engineering Large PracticalFeedback on Part 1 of the Software Engineering Large Practical
Feedback on Part 1 of the Software Engineering Large PracticalStephen Gilmore
Ā 
Arrays in Objective-C
Arrays in Objective-CArrays in Objective-C
Arrays in Objective-CStephen Gilmore
Ā 
More Stochastic Simulation Examples
More Stochastic Simulation ExamplesMore Stochastic Simulation Examples
More Stochastic Simulation ExamplesStephen Gilmore
Ā 
Testing Android apps with Robotium
Testing Android apps with RobotiumTesting Android apps with Robotium
Testing Android apps with RobotiumStephen Gilmore
Ā 
Common Java problems when developing with Android
Common Java problems when developing with AndroidCommon Java problems when developing with Android
Common Java problems when developing with AndroidStephen Gilmore
Ā 
Quick quiz on Objective-C
Quick quiz on Objective-CQuick quiz on Objective-C
Quick quiz on Objective-CStephen Gilmore
Ā 
Getting started with Xcode
Getting started with XcodeGetting started with Xcode
Getting started with XcodeStephen Gilmore
Ā 
Working with databases in Android
Working with databases in AndroidWorking with databases in Android
Working with databases in AndroidStephen Gilmore
Ā 
Crash Course in Objective-C
Crash Course in Objective-CCrash Course in Objective-C
Crash Course in Objective-CStephen Gilmore
Ā 
SELP: Debugging, AVDs and Manifests
SELP: Debugging, AVDs and ManifestsSELP: Debugging, AVDs and Manifests
SELP: Debugging, AVDs and ManifestsStephen Gilmore
Ā 
The Stochastic Simulation Algorithm
The Stochastic Simulation AlgorithmThe Stochastic Simulation Algorithm
The Stochastic Simulation AlgorithmStephen Gilmore
Ā 
Beginning Android Development
Beginning Android DevelopmentBeginning Android Development
Beginning Android DevelopmentStephen Gilmore
Ā 
Computer Science Large Practical coursework
Computer Science Large Practical courseworkComputer Science Large Practical coursework
Computer Science Large Practical courseworkStephen Gilmore
Ā 
Software Engineering Large Practical coursework
Software Engineering Large Practical courseworkSoftware Engineering Large Practical coursework
Software Engineering Large Practical courseworkStephen Gilmore
Ā 
Fixing errors in Android Java applications
Fixing errors in Android Java applicationsFixing errors in Android Java applications
Fixing errors in Android Java applicationsStephen Gilmore
Ā 
Feedback on Part 1 of the Individual Practical
Feedback on Part 1 of the Individual PracticalFeedback on Part 1 of the Individual Practical
Feedback on Part 1 of the Individual PracticalStephen Gilmore
Ā 
Creating and working with databases in Android
Creating and working with databases in AndroidCreating and working with databases in Android
Creating and working with databases in AndroidStephen Gilmore
Ā 
Continuing Android development
Continuing Android developmentContinuing Android development
Continuing Android developmentStephen Gilmore
Ā 
Project management for the individual practical
Project management for the individual practicalProject management for the individual practical
Project management for the individual practicalStephen Gilmore
Ā 

More from Stephen Gilmore (20)

Feedback on Part 1 of the CSLP
Feedback on Part 1 of the CSLPFeedback on Part 1 of the CSLP
Feedback on Part 1 of the CSLP
Ā 
Feedback on Part 1 of the Software Engineering Large Practical
Feedback on Part 1 of the Software Engineering Large PracticalFeedback on Part 1 of the Software Engineering Large Practical
Feedback on Part 1 of the Software Engineering Large Practical
Ā 
Arrays in Objective-C
Arrays in Objective-CArrays in Objective-C
Arrays in Objective-C
Ā 
More Stochastic Simulation Examples
More Stochastic Simulation ExamplesMore Stochastic Simulation Examples
More Stochastic Simulation Examples
Ā 
Testing Android apps with Robotium
Testing Android apps with RobotiumTesting Android apps with Robotium
Testing Android apps with Robotium
Ā 
Common Java problems when developing with Android
Common Java problems when developing with AndroidCommon Java problems when developing with Android
Common Java problems when developing with Android
Ā 
Quick quiz on Objective-C
Quick quiz on Objective-CQuick quiz on Objective-C
Quick quiz on Objective-C
Ā 
Getting started with Xcode
Getting started with XcodeGetting started with Xcode
Getting started with Xcode
Ā 
Working with databases in Android
Working with databases in AndroidWorking with databases in Android
Working with databases in Android
Ā 
Crash Course in Objective-C
Crash Course in Objective-CCrash Course in Objective-C
Crash Course in Objective-C
Ā 
SELP: Debugging, AVDs and Manifests
SELP: Debugging, AVDs and ManifestsSELP: Debugging, AVDs and Manifests
SELP: Debugging, AVDs and Manifests
Ā 
The Stochastic Simulation Algorithm
The Stochastic Simulation AlgorithmThe Stochastic Simulation Algorithm
The Stochastic Simulation Algorithm
Ā 
Beginning Android Development
Beginning Android DevelopmentBeginning Android Development
Beginning Android Development
Ā 
Computer Science Large Practical coursework
Computer Science Large Practical courseworkComputer Science Large Practical coursework
Computer Science Large Practical coursework
Ā 
Software Engineering Large Practical coursework
Software Engineering Large Practical courseworkSoftware Engineering Large Practical coursework
Software Engineering Large Practical coursework
Ā 
Fixing errors in Android Java applications
Fixing errors in Android Java applicationsFixing errors in Android Java applications
Fixing errors in Android Java applications
Ā 
Feedback on Part 1 of the Individual Practical
Feedback on Part 1 of the Individual PracticalFeedback on Part 1 of the Individual Practical
Feedback on Part 1 of the Individual Practical
Ā 
Creating and working with databases in Android
Creating and working with databases in AndroidCreating and working with databases in Android
Creating and working with databases in Android
Ā 
Continuing Android development
Continuing Android developmentContinuing Android development
Continuing Android development
Ā 
Project management for the individual practical
Project management for the individual practicalProject management for the individual practical
Project management for the individual practical
Ā 

Recently uploaded

Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsKarinaGenton
Ā 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
Ā 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
Ā 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
Ā 
call girls in Kamla Market (DELHI) šŸ” >ą¼’9953330565šŸ” genuine Escort Service šŸ”āœ”ļøāœ”ļø
call girls in Kamla Market (DELHI) šŸ” >ą¼’9953330565šŸ” genuine Escort Service šŸ”āœ”ļøāœ”ļøcall girls in Kamla Market (DELHI) šŸ” >ą¼’9953330565šŸ” genuine Escort Service šŸ”āœ”ļøāœ”ļø
call girls in Kamla Market (DELHI) šŸ” >ą¼’9953330565šŸ” genuine Escort Service šŸ”āœ”ļøāœ”ļø9953056974 Low Rate Call Girls In Saket, Delhi NCR
Ā 
ā€œOh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
ā€œOh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...ā€œOh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
ā€œOh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
Ā 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
Ā 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
Ā 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfSumit Tiwari
Ā 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
Ā 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
Ā 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
Ā 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
Ā 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
Ā 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
Ā 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
Ā 

Recently uploaded (20)

Model Call Girl in Bikash Puri Delhi reach out to us at šŸ”9953056974šŸ”
Model Call Girl in Bikash Puri  Delhi reach out to us at šŸ”9953056974šŸ”Model Call Girl in Bikash Puri  Delhi reach out to us at šŸ”9953056974šŸ”
Model Call Girl in Bikash Puri Delhi reach out to us at šŸ”9953056974šŸ”
Ā 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its Characteristics
Ā 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
Ā 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
Ā 
Staff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSDStaff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSD
Ā 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
Ā 
call girls in Kamla Market (DELHI) šŸ” >ą¼’9953330565šŸ” genuine Escort Service šŸ”āœ”ļøāœ”ļø
call girls in Kamla Market (DELHI) šŸ” >ą¼’9953330565šŸ” genuine Escort Service šŸ”āœ”ļøāœ”ļøcall girls in Kamla Market (DELHI) šŸ” >ą¼’9953330565šŸ” genuine Escort Service šŸ”āœ”ļøāœ”ļø
call girls in Kamla Market (DELHI) šŸ” >ą¼’9953330565šŸ” genuine Escort Service šŸ”āœ”ļøāœ”ļø
Ā 
ā€œOh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
ā€œOh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...ā€œOh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
ā€œOh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
Ā 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
Ā 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
Ā 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Ā 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
Ā 
CĆ³digo Creativo y Arte de Software | Unidad 1
CĆ³digo Creativo y Arte de Software | Unidad 1CĆ³digo Creativo y Arte de Software | Unidad 1
CĆ³digo Creativo y Arte de Software | Unidad 1
Ā 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Ā 
Model Call Girl in Tilak Nagar Delhi reach out to us at šŸ”9953056974šŸ”
Model Call Girl in Tilak Nagar Delhi reach out to us at šŸ”9953056974šŸ”Model Call Girl in Tilak Nagar Delhi reach out to us at šŸ”9953056974šŸ”
Model Call Girl in Tilak Nagar Delhi reach out to us at šŸ”9953056974šŸ”
Ā 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
Ā 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
Ā 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
Ā 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
Ā 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
Ā 

Introduction to the CSLP and the SELP

  • 1. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Computer Science Large Practical and Software Engineering Large Practical Stephen Gilmore Friday 21st September, 2012 School of Informatics Computer Science Large Practical and Software Engineering Large Practical 1 / 39
  • 2. About Aims Time CSLP SELP Aim Developing Speciļ¬cs About this lecture This is an introductory lecture explaining two of this yearā€™s large practicals. Computer Science Large Practical (CSLP) ā€” described here Software Engineering Large Practical (SELP) ā€” described here Artiļ¬cial Intelligence Large Practical (AILP) ā€” described elsewhere These slides and a more detailed handout will be available from the course web pages after the lecture. http://www.inf.ed.ac.uk/teaching/courses/cslp/ http://www.inf.ed.ac.uk/teaching/courses/selp/ Please ask questions at any time. Computer Science Large Practical and Software Engineering Large Practical 2 / 39
  • 3. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Restrictions The CSLP and the SELP are third-year undergraduate courses. They are only available to third-year undergraduate students. The CSLP and the SELP are not available to visiting undergraduate students, or to fourth-year undergraduate students and MSc students, who have their own individual projects. Third-year undergraduate students should choose at most one large practical, as allowed by their degree regulations. On most degrees a large practical is compulsory. On some degrees (typically combined Honours) you can do the System Design Project instead, or additionally. See the Degree Programme Tables (DPT) in the Degree Regulations and Programmes of Study (DRPS) for your degree for clariļ¬cation. http://www.drps.ed.ac.uk/12-13/dpt/drps_inf.htm Computer Science Large Practical and Software Engineering Large Practical 3 / 39
  • 4. About Aims Time CSLP SELP Aim Developing Speciļ¬cs About these courses The CS and SE Large Practicals are individual programming projects. They run throughout the ļ¬rst semester. They are assessed by coursework only ā€” no examination papers. Computer Science Large Practical and Software Engineering Large Practical 4 / 39
  • 5. About Aims Time CSLP SELP Aim Developing Speciļ¬cs How are these courses diļ¬€erent from others? Because the large practicals are on a larger scale than the programming courseworks which you have done previously there is a set of requirements (rather than a speciļ¬cation); a design element to the course; and more scope for creativity. The large practicals try to prepare you for The System Design Project (in the second semester) The Individual Project (in fourth year). Computer Science Large Practical and Software Engineering Large Practical 5 / 39
  • 6. About Aims Time CSLP SELP Aim Developing Speciļ¬cs How much time should I spend? 100 hours, all in Semester 1, of which 8 hours lecture/demonstrating 92 hours practical work, of which 70 hours non-timetabled assessed assignments 22 hours private study/reading/other Computer Science Large Practical and Software Engineering Large Practical 6 / 39
  • 7. About Aims Time CSLP SELP Aim Developing Speciļ¬cs How much time is that really? You can think of this as approximately one day per week in ļ¬rst semester. you work 7 hours in one day (9:00ā€“5:00, say, with an hour for lunch) there are 13 weeks remaining in ļ¬rst semester (Week 2 to Week 14) 7 Ɨ 13 = 91 hours Computer Science Large Practical and Software Engineering Large Practical 7 / 39
  • 8. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Managing your time It is unlikely that you will want to arrange your work on your large practical as one day where you do nothing else, but one day per week all semester is the amount of work that you should do for the course. Computer Science Large Practical and Software Engineering Large Practical 8 / 39
  • 9. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Scheduling work Course lecturers have been asked not to let deadlines overlap Weeks 11ā€“14 because students are expected to be concentrating on their large practical in that time. Computer Science Large Practical and Software Engineering Large Practical 9 / 39
  • 10. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Deadlines The CS and SE Large Practicals are in two parts: Part 1 Thursday 25th October, 2012 at 16:00 Part 2 Thursday 20th December, 2012 at 16:00 Part 1 is zero-weighted: it is just for feedback. Part 2 is worth 100% of the marks. Computer Science Large Practical and Software Engineering Large Practical 10 / 39
  • 11. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Scheduling work It is not necessary to keep working on the project right up to the deadline. For example, if you are travelling home for Christmas you might wish to submit the project early. In this case you need to ensure that you start the project early. The coursework handin is electronic so it is possible to submit remotely. Computer Science Large Practical and Software Engineering Large Practical 11 / 39
  • 12. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Early submission credit In order to motivate good project management, planning, and eļ¬ƒcient software development, the CSLP and the SELP reserve marks above 90% for work which is submitted early (speciļ¬cally, one week before the deadline for Part 2). Work submitted less than a week before the deadline does not qualify as an early submission, and the mark for this work will be capped at 90%. Thus, the mark may be 90%, but it may not be higher than this. Regardless of when it is submitted, every submission is assessed in exactly the same way, but submissions which attract a mark of above 90% which were not submitted early have this mark brought down to 90%. Computer Science Large Practical and Software Engineering Large Practical 12 / 39
  • 13. About Aims Time CSLP SELP Aim Developing Speciļ¬cs The Computer Science Large Practical Computer Science Large Practical and Software Engineering Large Practical 13 / 39
  • 14. About Aims Time CSLP SELP Aim Developing Speciļ¬cs The Computer Science Large Practical The requirement for the Computer Science Large Practical is to create an command-line application implemented in Objective-C. The purpose of the application is to implement a stochastic discrete-event simulator for chemical reactions. Computer Science Large Practical and Software Engineering Large Practical 14 / 39
  • 15. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Why simulation? Stochastic simulation is an important tool to help understand the chemical and biochemical processes which are constantly underway in all living things. Simulation is leading the way in scientiļ¬c breakthroughs in medicine, farming and veterinary science, with demonstrable beneļ¬ts for the health and wellbeing of humans, plants and animals. Simulation is important in many other ļ¬elds also, such as aerospace, aviation, transport, logistics, healthcare, and many others. Computer Science Large Practical and Software Engineering Large Practical 15 / 39
  • 16. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Why Objective-C? Learning a new programming language deepens our understanding of computer science. Using Objective-C exposes us to concepts which we would not see in Java or Haskell. Increases your employability by adding another programming language to your CV. Objective-C is becoming more popular so we can keep up with trends in programming languages. Computer Science Large Practical and Software Engineering Large Practical 16 / 39
  • 17. About Aims Time CSLP SELP Aim Developing Speciļ¬cs The Objective-C Programming Language By some measures of programming language popularity, Objective-C is thought to be the worldā€™s third most popular programming language (behind C and Java, just ahead of C++). Computer Science Large Practical and Software Engineering Large Practical 17 / 39
  • 18. About Aims Time CSLP SELP Aim Developing Speciļ¬cs How do we simulate chemical reactions? Chemical reactions change the concentration of chemical species such as proteins because molecules are created, altered, combined, broken apart, or destroyed. ā€¢ + ā€¢ ā†’ ā€¢ ā€” red and yellow make an orange molecule ā€¢ ā†’ ā€¢ + ā€¢ ā€” an orange molecule breaks into a red and a yellow ā€¢ ā†’ ā€” a blue molecule is destroyed ā†’ ā€¢ ā€” a green molecule is created The simulation of these processes takes place one reaction event at a time. The simulation tracks the number of molecules of each species and terminates when no other reaction can ļ¬re, or when a pre-deļ¬ned simulation end-time has been reached. Computer Science Large Practical and Software Engineering Large Practical 18 / 39
  • 19. About Aims Time CSLP SELP Aim Developing Speciļ¬cs What should the simulator do? Your simulator should convert a reaction script into a time-series output expressed as a comma-separated value ļ¬le with a header which identiļ¬es the species in each column of the output. # t X # simulate to a stop-time of 10 seconds 0.00, 100 t = 10 0.01, 98 0.02, 97 # decay reaction rate d is 1 0.03, 96 d = 1.0 0.04, 95 Your simulator 0.05, 95 # 100 molecules of X initially ā‡’ written in ā‡’ 0.06, 93 X = 100 Objective-C 0.07, 91 0.08, 90 # X decays to nothing, or disappears . . d : X -> . . . . model.txt model.csv Computer Science Large Practical and Software Engineering Large Practical 19 / 39
  • 20. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Computer Science Large Practical Computer Science Large Practical 2012/2013 Professor Stephen Gilmore School of Informatics Issued on: Friday 21st September, 2012 Introduction The requirement for the Computer Science Large Practical is to create an command-line appli- cation implemented in Objective-C. The purpose of the application is to implement a stochastic discrete-event simulator for chemical reactions. ā€” Full coursework description available today at ā€” Stochastic simulation is an important tool to help understand the chemical and biochemical processes which are constantly underway in all living things. Simulation is leading the way in scientiļ¬c breakthroughs in medicine, farming and veterinary science, with demonstrable beneļ¬ts http://www.inf.ed.ac.uk/teaching/ for the health and wellbeing of humans, plants and animals. Simulation is important in many other ļ¬elds also, such as aerospace, transport, logistics, healthcare, and many others. ā€” ā€” courses/cslp/ Chemical reactions change the concentration of chemical species such as proteins because molecules are created, altered, combined, broken apart, or destroyed. The simulation of these processes takes place one reaction event at a time. The simulation tracks the number of molecules of each species and terminates when no other reaction can ļ¬re, or when a pre-deļ¬ned simulation end-time has been reached. ā€” ā€” We are concerned here with exact stochastic simulation, in which each reaction event is sim- ulated. Other stochastic simulation algorithms exist, called approximate simulation algorithms. These estimate the eļ¬€ect of numerous reaction events in order to speed up a simulation, but we will not be concerned with these here. ā€” ā€” Reaction events change one chemical species into another. For example, the reaction event f , f :E+S ā†’C describes a collision between a molecule of enzyme (E) and a molecule of substrate (S) to produce a molecule of a compound (C). We write E + S to mean ā€œE and Sā€, not ā€œE plus Sā€. 1 Computer Science Large Practical and Software Engineering Large Practical 20 / 39
  • 21. About Aims Time CSLP SELP Aim Developing Speciļ¬cs The Software Engineering Large Practical Computer Science Large Practical and Software Engineering Large Practical 21 / 39
  • 22. About Aims Time CSLP SELP Aim Developing Speciļ¬cs The Software Engineering Large Practical The requirement for the Software Engineering Large Practical is to create an app implemented in Java and XML for the Android phone. The purpose of the app is to develop a prototype system to help students to decide who they should vote for in student elections. Computer Science Large Practical and Software Engineering Large Practical 22 / 39
  • 23. About Aims Time CSLP SELP Aim Developing Speciļ¬cs How will we test this? You might not have an Android phone, but thatā€™s OK. We will use an Eclipse-based emulator to run our code. The emulator runs on Windows, Linux, Ubuntu and Mac OS X. Computer Science Large Practical and Software Engineering Large Practical 23 / 39
  • 24. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Android development with Eclipse Computer Science Large Practical and Software Engineering Large Practical 24 / 39
  • 25. About Aims Time CSLP SELP Aim Developing Speciļ¬cs The Android emulator Computer Science Large Practical and Software Engineering Large Practical 25 / 39
  • 26. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Industrial relevance of the SELP Employers like to see evidence of practical skills acquisition, and use of state-of-the-art tools. The Software Engineering Large Practical uses the state-of-the-art Android Development Toolkit in Eclipse, as used by professional developers targeting the Android phone. Computer Science Large Practical and Software Engineering Large Practical 26 / 39
  • 27. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Smartphone sales More smartphones sold in the UK run the Android operating system than any other OS. Computer Science Large Practical and Software Engineering Large Practical 27 / 39
  • 28. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Smartphone sales worldwide Computer Science Large Practical and Software Engineering Large Practical 28 / 39
  • 29. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Smartphone sales worldwide Computer Science Large Practical and Software Engineering Large Practical 29 / 39
  • 30. About Aims Time CSLP SELP Aim Developing Speciļ¬cs What is the app to do? In a student election, candidates nominate themselves for an oļ¬ƒce. For EUSA, these oļ¬ƒces include President, Vice President (Academic Aļ¬€airs), Vice President (Societies and Activities), Vice President (Services), and others. Candidates reļ¬‚ect on the issues which are important to them and make promises to the student body on what they will do about these issues if elected to oļ¬ƒce. Candidates can submit photographs of themselves and election statements explaining what they want to achieve in the hope of persuading people to vote for them. Computer Science Large Practical and Software Engineering Large Practical 30 / 39
  • 31. About Aims Time CSLP SELP Aim Developing Speciļ¬cs What is the app to do? In addition to their online materials, candidates make and display posters to publicise their campaign. These are displayed on lamp posts, railings and hoardings in Bristo Square, George Square and at the West Mains entrance to Kingā€™s Buildings. Although student elections are important, and the correct procedure should be followed to ensure fair and transparent elections, the printing and hanging of hundreds of posters in public spaces around Edinburgh has been criticised recently as being environmentally unfriendly, aesthetically unpleasing, and somewhat old-fashioned. Computer Science Large Practical and Software Engineering Large Practical 31 / 39
  • 32. About Aims Time CSLP SELP Aim Developing Speciļ¬cs The problem: aesthetically unpleasing Computer Science Large Practical and Software Engineering Large Practical 32 / 39
  • 33. About Aims Time CSLP SELP Aim Developing Speciļ¬cs The problem: environmentally unfriendly Computer Science Large Practical and Software Engineering Large Practical 33 / 39
  • 34. About Aims Time CSLP SELP Aim Developing Speciļ¬cs The problem: old-fashioned Computer Science Large Practical and Software Engineering Large Practical 34 / 39
  • 35. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Another problem: security Computer Science Large Practical and Software Engineering Large Practical 35 / 39
  • 36. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Another problem: security Computer Science Large Practical and Software Engineering Large Practical 36 / 39
  • 37. About Aims Time CSLP SELP Aim Developing Speciļ¬cs The solution: an Android app The information on candidates is obtained by download of an XML document. Users of the app should be able to rate election candidates on a scale from zero to ļ¬ve stars and, if they are certain not to vote for them, to delete candidates entirely. When the user has decided who to vote for they can use the app to send a private email and a public tweet. Computer Science Large Practical and Software Engineering Large Practical 37 / 39
  • 38. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Software Engineering Large Practical Software Engineering Large Practical 2012/2013 Professor Stephen Gilmore School of Informatics Issued on: Friday 21st September, 2012 Introduction The requirement for the Software Engineering Large Practical is to create an app implemented in Java and XML for the Android phone. The purpose of the app is to develop a prototype system to help students to decide who they should vote for in student elections. ā€” Full coursework description available today at ā€” In a student election, candidates nominate themselves for an oļ¬ƒce. For EUSA, these oļ¬ƒces include President, Vice President (Academic Aļ¬€airs), Vice President (Societies and Activities), http://www.inf.ed.ac.uk/teaching/ Vice President (Services), and others. Candidates reļ¬‚ect on the issues which are important to them and make promises to the student body on what they will do about these issues if elected to oļ¬ƒce. Candidates can submit photographs of themselves and election statements explaining what they want to achieve in the hope of persuading people to vote for them. courses/selp/ ā€¢ Photographs are made available in JPEG format with a maximum size of 2Mb. Images are at a resolution of 120 pixels wide by 150 pixels high. ā€¢ The number of words allowed in the election statement varies by oļ¬ƒce but is never more than 450 words. The photograph and statement are made available on the election website. ā€” ā€” In addition to their online materials, candidates make and display posters to publicise their campaign. These are displayed on lamp posts, railings and hoardings in Bristo Square, George Square and at the West Mains entrance to Kingā€™s Buildings. Although student elections are important, and the correct procedure should be followed to ensure fair and transparent elections, the printing and hanging of hundreds of posters in public spaces around Edinburgh has been criticised recently as being environmentally unfriendly, aesthetically unpleasing, and somewhat old-fashioned. 1 Computer Science Large Practical and Software Engineering Large Practical 38 / 39
  • 39. About Aims Time CSLP SELP Aim Developing Speciļ¬cs Questions? Ask now or email Stephen.Gilmore@ed.ac.uk Computer Science Large Practical and Software Engineering Large Practical 39 / 39