Giter Club home page Giter Club logo

drshahizan / software-engineering Goto Github PK

View Code? Open in Web Editor NEW
165.0 3.0 78.0 717.44 MB

This course is designed to give students an introduction to an engineering approach in the development of high-quality software systems. It will discuss the important software engineering concepts in the various types of the common software process models.

HTML 85.73% C++ 0.02% CSS 3.93% Io 0.01% PHP 10.31% Hack 0.01%
software-engineering uml project-management figma

software-engineering's Introduction

Stars Badge Forks Badge Pull Requests Badge Issues Badge GitHub contributors Visitors

Don't forget to hit the โญ if you like this repo.

Software Engineering (WBL)

Course Synopsis

This course is designed to give students an introduction to an engineering approach in the development of high-quality software systems. It will discuss the important software engineering concepts in the various types of the common software process models. The students will also learn the concepts and techniques used in each software development phase including requirements engineering, software design and software testing. This course will also expose the students to utilizing object-oriented method (e.g., UML) and tools in analyzing and designing the software. At the end of this course, students are expected to be able to appreciate most of the common software engineering concepts and techniques as well as producing various software artifacts and deliverables.

Course Learning Outcomes

  1. Apply the fundamental of software engineering, software process, requirements engineering to solve software engineering case studies.
  2. Build suitable software architecture, object-oriented design model and develop test cases in software engineering case studies.
  3. Construct software requirements model, software architecture, object-oriented design model and test cases with state-of-the-art methods and tools for a real-world software engineering problem.
  4. Ability to establish good rapport, interact with others, work effectively in a team and comprehend the interchangeable role of leaders and followers with team members.

๐Ÿ”ฅ Important things

  1. Lecture Notes
  2. Student Information
  3. Task 1: Additional Notes
  4. Lab exercise
  5. Project 1: Student Portfolio Showcase (HTML)
  6. Project 2: Student Portfolio Showcase (Bootstrap)
  7. Student Portfolio Showcase
  8. Book
  9. Software Requirements Document (SRD): Academic Course Registration System
  10. Class exercise: Module 4
  11. ๐Ÿ†• Carry marks

Weekly Schedule

No Module Description 01 02
1 1: Introduction to Software Engineering Software definition, software engineering as a layered technology, types of software, inherent difficulties in software engineering, SE quality focus, Documentation Standard.
2 Proposal A proposal in software engineering is a document that outlines a proposed solution to a problem or need related to software development. It typically includes an overview of the problem, the proposed solution, the benefits and risks of the proposed solution, the resources required to implement the solution, and a plan for implementing and testing the solution.
2 2: Software Process Model Plan Driven or Agile Process Model, general software process model waterfall, incremental, reuse oriented, software process model which cope with change spiral model and Rational Unified Process
3 3: Agile Software Development Agile methods, Agile development techniques, Agile project management, scaling Agile methods
4 4: Requirements Engineering Types of requirements, functional and non-functional requirements, requirements specification, requirements engineering processes
5 UML and tools A UML (Unified Modeling Language) diagram is a visual representation of a system or process that uses standardized symbols and notations to depict the structure, behavior, and relationships between different components of the system. It provides a clear and concise way to communicate and document the design and architecture of a software system, enabling stakeholders to understand and analyze the system's various aspects.
6 5 : Requirements Analysis and modelling ME Use case modelling and specification, domain modelling, activity diagram, sequence diagram, state chart/state machine diagram
7 Figma Learn Figma
8 KRISA Metodologi KRISA meliputi 6 fasa utama yang perlu difahami, diguna pakai dan dilaksanakan oleh agensi. Setiap fasa menerangkan aktiviti, teknik dan pendekatan, serta dokumentasi serahan.
9 6: Architectural Design Architectural design and detailed design, Architectural design decision, architectural view, component diagram in relation to architectural view, architectural pattern: Model-View-Controller (MVC), layered, repository, client server and pipe filter
10 7: Object-Oriented Detailed Design Relationships among analysis, design and implementation, object-oriented design using UML, object-oriented design principles, elaborating UML diagrams from analysis.
11 ๐Ÿ”ฅUML The UML exercise is designed to familiarize students with Unified Modeling Language (UML), a standardized visual modeling language used in software engineering. Through this exercise, students gain hands-on experience in creating UML diagrams, such as class diagrams, sequence diagrams, and use case diagrams. By applying UML, students can effectively analyze, design, and communicate software system structures and behaviors.
12 8: Software verification, validation and testing Introduction to verification and validation, verification and validation planning, software inspections. System testing, Component testing, Test case design, Test Case Design using Black-box and white box
13 Software Engineering project โ€“ Test case design. Produce testing document that includes all the required test cases
14 Project demonstration and hand over.

Project

No Module Description File
1 Project 1 Student Portfolio Showcase (HTML)
2 Project 2 Student Portfolio Showcase (Bootstrap)
3 Proposal Guideline for Software Engineering Proposal
4 System Documentation System Requirements Specification (SRS), System Design Document (SDD), and System Testing Document (STD).

Submission

No Topic File
1 Proposal
2 System Requirements Specification (SRS)
3 System Design Descriptions (SDD)
4 System Test Descriptions (STD)
5 Project

Tools

Diagrams are visual representations of information or data that help convey complex concepts, processes or systems in a clear and concise manner. Flowcharts are diagrams that use shapes and arrows to illustrate the steps in a process or algorithm [More info...].

No Tools File
1 Figma
2 Draw.io
3 Github Pages
4 Behance
5 Visual Studio Code
6 Bootstrap Studio
7 Carbon

Contribution ๐Ÿ› ๏ธ

Please create an Issue for any improvements, suggestions or errors in the content.

You can also contact me using Linkedin for any other queries or feedback.

Visitors

software-engineering's People

Contributors

akim730 avatar alovey1014 avatar ariffdanish avatar arinifthh avatar bernicelimjx avatar camilytang avatar danialharriz avatar daniallllllll avatar drshahizan avatar jesslyn19 avatar jialegoh avatar jingyong14 avatar kohlihui avatar kohxuan avatar lowyingxi avatar nicholas0377 avatar nrulerina avatar nuraleysha avatar nurfarahadibah avatar oishylea avatar shuyu03 avatar thevanraju avatar tiewrong avatar wannursofea avatar wei2030 avatar wernjie0713 avatar yan-qing09 avatar ychongyi avatar yutongchai avatar zw-weng avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

software-engineering's Issues

Meeting with stakeholder 1

Meeting with Stakeholders

Stakeholder: ENCIK AMRAN BIN MD YUSOF (Owner of Deen Corner)/ PUAN NOOR AZIRA BINTI JAMAL (Assistant of Deen Corner)

Venue : Arked Angkasa
Date : 3 May 2023
Time : 11 am

Outcome:
-Problems

1-Increased demand for contactless food ordering and delivery: With social distancing measures in place, students may be hesitant to dine in at the university's dining facilities.

-Solution

1-Online ordering and pickup: The food ordering system could allow students to place their orders online and specify a pickup time, which would help to spread out the customer traffic and minimize the number of people waiting in line at the dining facilities.

2-Time slot reservations: The system could also allow students to reserve a specific time slot for their meals, which would further help to regulate customer traffic and ensure that the dining facilities are not overcrowded at any given time.

Image

SRS document

Planning SRS Document

Date : 10 May 2023

  1. Introduction: Provide an overview of the project, its purpose, and the intended audience for the SRS document.
  2. Product Overview: Describe the high-level features and functions of the software product or system being developed.
  3. Product Perspective: Explain how the software product fits into the overall system or environment, including interfaces with external systems or components
  4. User Requirements: Clearly define the needs and expectations of the users, describing the system's intended functionality from their perspective.
  5. System Requirements: Outline the technical requirements and constraints that the system must adhere to, such as hardware, software, performance, and security requirements.
  6. Functional Requirements: Specify the detailed functionalities and behaviors of the system, including use cases, scenarios, and user interactions.
  7. Non-functional Requirements: Document the quality attributes or characteristics of the system, such as reliability, scalability, usability, performance, and security.
  8. External Interface Requirements: Define the interfaces and interactions between the system and external entities, such as other systems, hardware devices, or users.
  9. Design Constraints: Identify any specific design limitations or constraints that the development team must consider during the system's implementation.
  10. Assumptions and Dependencies: List any assumptions made during the requirements gathering process and dependencies on other systems or components
  11. Data Requirements: Describe the data inputs, outputs, storage, and processing requirements of the system, including data formats and structures
  12. User Documentation: Specify the documentation requirements for end-users, such as user manuals, help files, or training materials.
  13. System Models: Include relevant system models, such as diagrams, flowcharts, or prototypes, to aid in understanding the system's structure and behavior.
  14. Testing Requirements: Define the testing approach, strategies, and criteria for verifying and validating the system against its requirements.
  15. Project Timeline and Deliverables: Outline the project schedule, milestones, and expected deliverables related to the requirements phase.

Progression SRS Document

Date : 12 May 2023

This is a glimpse of our progression about SRS

This is our SRS document link do not hesitate to review it : https://docs.google.com/document/d/14Op3OWK0iBtBDUwBAI8gOes2rO57twQe

Image
Image
Image
Image
Image
Image

Find stakeholder

Deciding who's is our stakeholder for our system that called Student Feedback System in Faculty of Computing, University Technology Malaysia.

1st meeting with stakeholder 1 (KTDI Administration)

We have interviewed Mr Hamdan Bin Abd Ghani as our stakeholder on 20/04/2023.
He is Hostel Administration stakeholder and position as Senior Assistant Administrative Officer in KTDI.

Below is our meeting details via Google Meet online with Mr Hamdan:

Image

Attached are the information we got from Mr Hamdan about the current accommodation system in KTDI:

Image

Image

Image

Meeting with stakeholder 3 (KTDI Fellow Council)

We have done a discussion with one of the KTDI fellow, Ts. Dr. Hadafi Fitri Bin Mohd Latip to understand the current manual KTDI merits system and overview quota active application form specifically for hostel application.

Photo with Ts. Dr. Hadafi Fitri Bin Mohd Latip:

Image

UML Diagram

Creating UML Diagram

Date : 11 May 2023
Task :

  1. Create UseCase diagram
  2. Create Class diagram
  3. Create Sequence diagram

UseCase Diagram
Image

Class Diagram

Sequence Diagram

Image

Find stakeholder

After make some discussion with our group members, we are agree to have seven stakeholders to make the Food Ordering System at Arked Angkasa, UTM. Each stakeholders have their own role and responsibility. Here is the list of our stakeholders:

  1. PUAN MUNIRAH ABU BAKAR as Owner of "Sdap Kithchen"
  2. MOHD. 'ALA BIN MOHD ANUAR as Assistant of "Sdap Kithen"
  3. ENCIK AMRAN BIN MD YUSOF as Owner of "Deen Corner"
  4. NOOR AZIRA BINTI JAMALI as Assistant of "Deen Corner"
  5. MUHAMMAD HARITH BIN MOHD KAMAL (CIVIL ENGINEERING)
  6. MUHAMMAD WAFFI QAYYUM BIN DIN (SOFTWARE ENGINEERING)
  7. MUHAMMAD FAIZUN NAI'M BIN MD.FAUZAN (CIVIL ENGINEERING)

Proposal discussion

Create a complete proposal after having a detail discussion with members and stakeholder.
We are going to include our system's background, scope, system architecture and etc in our proposal.

Proposal

Date: 3 May 2023

Task: Proposal

We have done our proposal that consisted of 12 elements which are executive summary, background, objectives, scope, software process model, budget, system architecture, risks assessment, resources, technical specifications, timeline and deliverables and conclusion.
Here is the link View Proposal Submission

Image

Meeting with stakeholder 2 (Students)

We have interviewed Hayden Huan Kee Jiun and Oh Kai Xuan as a KTDI resident for one of our project stakeholder (student) by giving the feedbacks for the current KTDI accommodation system and providing the ideas for the upgraded accommodation system.

2nd meeting with stakeholder 1 (KTDI Administration)

We have done a second meeting with KTDI Assistant Administrative Officer (Mr Hamdan Bin Abd Ghani) as our KTDI Administration stakeholder to update the overview of the proposed KTDI room application and allocation system.

Meeting outcome:

  • Room allocation:
    Image

Image
Image

SRS documentation

We have done a System Requirements Specification (SRS) document to provide our client, Kolej Tun Dr Ismail (KTDI) a clear view of user and system requirements.

Planning meeting

Discussion about project and progression.

Date : 1 May 2023
Time : 9.00 pm - 10.00 pm
Attendance :

  • Muhammad Ariff Danish Bin Hashnan
  • Muhammad Iman Firdaus Bin Baharuddin
  • Muhammad Safwan Bin Mohd Azmi
  • Muhammad Danial Hakim Bin Syahrulnizam
  • Che Marhumi Bin Che Ab Rahim

Objective

  1. Planning on who will be the Stakeholders.
  2. Assign each member scope of project.

Outcome

  1. List of Stakeholders.
  2. List of Job that need to be done by each member and their role.
  3. Estimated date for each task.

Image

Meeting with stakeholder 4

Make an interview with our fourth stakeholder, Encik. Masnawi Bin Miskam

Time & Date : 4.15 p.m. (15 May 2023)
Venue : Online Platform via Google Meet

Image

Meeting with stakeholder 4

Make an interview with our fourth stakeholder, Encik Masnawi Bin Miskam

Time & Date : 4:15 a.m. (15 May 2023)
Venue : Online Platform via Google Meet

Image

Problem 1: Lack of Student Details for Administrators

  • Administrators in the academic consultation system do not have access to sufficient information about students.
  • There is a lack of detailed student profiles, including relevant personal information and health-related details.

Solution:

  1. Comprehensive Student Profile:
  • Develop a comprehensive student profile feature within the academic consultation system.
  • Allow administrators to access and update detailed information about students, including personal information, academic records, health conditions, emergency contacts, and other relevant data.

Prepare Questions

Questions :

What are your current challenges with the package delivery system on campus?
What features would you like to see in a new package delivery system for the university?
How frequently do you send and receive packages on campus?
Have you ever experienced any issues with package theft or loss on campus?
How important is package tracking and delivery status updates to you?
Would you be willing to pay a fee for expedited package delivery?
How do you currently manage package pickup and delivery scheduling?
What do you think would be the biggest benefits of a new delivery service system for the university?
How would you rate the current package delivery system on campus in terms of convenience, reliability, and efficiency?
Do you have any additional suggestions or feedback for the development team working on the new delivery service system?

Create UML Diagram

Create Use case Diagram,Class Diagram,Sequence diagram and Activity Diagram for SRS document

Meeting with stakeholder 2

Meeting with Stakeholders

Stakeholder: Puan Munirah Abu Bakar

Venue : Arked Angkasa
Date : 3 May 2023
Time : 11 am

Outcome:
-Problems

1-Increased demand for contactless food ordering and delivery: With social distancing measures in place, students may be hesitant to dine in at the university's dining facilities.

-Solution

1-Online ordering and pickup: The food ordering system could allow students to place their orders online and specify a pickup time, which would help to spread out the customer traffic and minimize the number of people waiting in line at the dining facilities.

2-Time slot reservations: The system could also allow students to reserve a specific time slot for their meals, which would further help to regulate customer traffic and ensure that the dining facilities are not overcrowded at any given time.

Image

Image

Project planning

Project Planning

  1. Discuss and decide on which system to do
    (decide to do Student Attendance System)

  2. Do research and find information to understand more about Student Attendance System

  3. Distribute the work

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.