0% found this document useful (0 votes)
46 views9 pages

Full Stack Software Development Course Outline

Uploaded by

Krupa Janani
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
46 views9 pages

Full Stack Software Development Course Outline

Uploaded by

Krupa Janani
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Department of Information Technology

Madras Institute of Technology, Chromepct, Chennai - 600 044.


IT5041 FULL STACK SOFTWARE DEVELOPMENT
Regulation 2019
Course Outcomes
Date: 13.09.23 | 03.00 4.30 PM
By the end of this course, students will be able to
1. Understand the object-oriented approach in Python.
B 2. Develop GUlapplications with Python.
3. Use the collaborative version control system, git.
4. Package the developed code in Linux and Windows environment.
5. Deploy the developed web application using Flask in real time scenarios such as
AWS.
6. Developer of the industrial software.

7/8 [Link] (Full time) Assessment Test I Maximum Marks 50

PART A (ANSWER ALL) (5X2 = 10)

[Link] Questions Marks CO BL PO


1 What is the full stack development. Mention its advantages. 2 CO1 3
2 CO1 2
2
Specify the number of ways to call the methods of super class without creating an
object to base class.
3. How do you create a constructor in python? Give an example. 2 CO1 3 3
4. Write the difference between method overloading and overriding. 2 CO1 1 3
5. What is magic function in python? Mention its usage. 2 CO1 3

PART B (ANSWER WITH OPTIONS) (2X13 =26)


[Link] Questions Marks CO BL PO
6. Ki)Explain the types of inheritance with one program example. (10) 13 CO1 1,3 3
Kii)Differentiate instance, static and class methods. (3)
(OR)
Ki) With program example, explain the runtime polymorphism in python. (8)
Kii) Brief notes on access modifiers in python. (5)
7. Ki)Write a python program using class and objects to convert words to number 13 CO1 3 3
(without using built-in function/module)
Sample Input:
Two Six Zero Five
Sample Output:
2605 (7)
Kii) Explain the unary operator overloading with program example. (6)
(OR)
(i)Write a python oops program to find the intersection of words between two text
lines.
Sample Input:
Statement 1:Good Morning. Have a Nice day.
Statement 2: Welcome to Chennai. Have a Good day.
Output:
Intersection of Words: 4
Have, a, Good, day. (7)
(ii) Explain the binary operator overloading with program example. (6)
PART C(COMPULSORY) (1X14 =14)
Marks CO BL P0
[Link] Questions
14 CO1 3 3
S. Consider the address book system and implement the following using python.
(a) add the contact (name, number, mail, place)
(b) remove the contact (based on number)
(c) searclh the contact (based on number)
(d) update the contact (based on number)

BL- Bloom's Taxonomy Levels


(1- Remembering 2- Understanding 3 Applying 4 - Analyzing 5 Evaluating 6 - Creating)
CO - Course Outcomes; P0 - Program Outcomes; PI Code - Performance Indicator Code.
Department of Information Technology
Madras Institute of Technology. Chromepct, Chennai -600 044.
IT5041 FULL STACK SOFTNARE DEVELOPMENT
Regulation 2019
Course Outcomes
Date: 07. 11.23 | 3-4.30 PM
By the end of this course, students will be able to
1. Understand the object-oriented approach in Python.
2. Develop GUl applications with Python.
3. Use the collaborative version control system, git.
4. Package the developed code in Linux and Windows environment.
5. Deploy the developed web application using Flask in real time scenarios such as
AWS.
6. Developer of the industrial software.

Assessment II Maximum Marks 50


7/8 [Link] (Full time)

PART A (ANSWER ALL) (5X2 = 10)

[Link] Questions Marks CO BL


1. Write the differences between auto py to exe and pyinstaller. CO4
2 CO2
-2
2. List the UI layouts in wxpython. State the purpose of each.
3. Write awxpython code to change the background color of application window when 2 CO2 3
button is pressed
[Link] the essential elements of wxpython. 2 CO2 2
5. Write a Wxpython code to calculate age (in year) from the birth year. 2 CO2 3

PART B (ANSWER WITH OPTIONS) (2X13 = 26)

[Link] Questions Marks CO BL


6.
(a) With example, explain how to convert python code to executable file (PY to EXE) 13 CO4
in windows. (13)
(OR)
(b) With example, explain how to convert python code to DEB file (PY to DEB) in
debian based linux.
(13)
7. (a) With clear examples, how to create desktop software from python code and how 13 CO2,6| 2
to deploy iton windows. (13)
(OR)
(b) Explain the following dialogs in wxpython with example
(i)TextEntry Dialog
(ii) File Dialog
(iii) Folder Dialog
(iv) Colour Dialog-Change the background color of text box
when selecting a color from Colour Dialog. programmatically
1X14 14)
PART C(COMPULSORY)
Marks CO BL
[Link] Questions CO2 3.4
8. total
) Develop an Image Slider application using wxpython GUI. Consider theclicking
14
number of input images are 10. Update the counter value in text box when
previous and next buttons. (8)

(i)Develop an MCQ based Quiz Application using wxpython GUI


(a)Create quiz for minimum 5 questions
(d) Display the eese. SCoYe (6)

BL Bloom's Taxonomy Levels


(1- Remembering 2- Understanding 3 - Applying 4 - Analyzing 5 Evaluating 6 - Creating)
CO-Course Outcomes;
Department of Information Technology600 044.
Madras Institute ofTechnology, Chromepet, Chennai -
DEVELOPMENT
IT5041 FULLSTACK SOFTWARE
Regulation 2019
Course Outcomes
Date: 13.12.22 |3-4.30 PM
By the end of this course, students will be able to
1. Understand the object-oriented approach in Python.
2. Develop GUI applications with Python.
3. Use the collaborative version control system, git.
4. Package the developed code in Linux and Windows environment.
time scenarios such as
5. Deploy the developed web application using Flask in real
AWS.
6. Developer of the industrial software.

Assessment II Maximum Marks 50


7/8 [Link] (Full time)
PART A (ANSWER ALL) (5X2 = 10)
Marks CO BL PO
[Link] Questions 2 CO2 1
1. Write the differences between auto py to exe and pyinstaller. 2 COS 2 3
2. What is the role of route in flask application? 3 3
2 CO2
3. What are the basic steps required to create a menu application in wxpython. 2 CO2 1 3
4. List the UI layouts in wxpython. State the purpose of each. 2 COS 2 3
5. Write the steps to create a Hello World web application in flask python

PART B (ANSWER WITH OPTIONS) (2X13 = 26)

Marks CO BL PO
[Link] Questions
6. (a) With example, explain how to convert python code to executable file (PY to EXE) 13 CO4 1,2 5
in windows. (13)
(OR)
(a) With example, explain how to convert python code to DEB file (PY to DEB) in
debian based linux. (13)

7. (a) With clear examples, howto create desktop software from python code and how 13 CO2,6 3,4 3,5
to deploy iton windows. (13)
(OR)
(b) () Write wxpython GUI application to create a simple menu system. (7)
(ii) With examples, how to deploy DEB package in ubuntu linux. (6)
PART C(COMPULSORY) (IX14 =14)
Marks CO BL PO
[Link] Questions
14 COS 3.4 3
implement the
S. () Develop a python flask web application to read the text file and
following of file and save them to [Link] file
)Extract the odd contents
[Link] file
(2) Extract the even contents of file and save them to
(3)Display the contents of [Link] and [Link] files. (7)

(iü) Consider the single account based ATM system and implement the following
operations using flask web application
(1)Balance Enquiry
(2) Deposit
(3) Withdrawl. (7)

BL Bloom's Taxonomy Levels


(1- Remembering 2- Understanding 3- Applying 4 - Analyzing 5 - Evaluating 6 - Creating)
CO -Course Outcomes; P0- Program Outcomes; PI Code - Performance Indicator Code.
CHENKAI
AU AMIN
KROLLE 00
025

Roll No.
NOILT0
ANNA UNIVERSITY (UNIVERSITY DEPARTMENTS)
[Link] (FullTime) -END SEMESTER EXAMINATIONS, NOV / DEC2022
Information Technology
Semester VIl
IT5041 & FULL STACK SOFTWARE DEVELOPMENT
(Regulation 2019)
Time: 3hrs [Link]: 100

CO 1 To get an overview of the fullstack software andweb development


CO 2 To understandthe object oriented structure and user interface programming through Python.
CO3 To gain knowledge of web development using Flask Framework.
CO 4 To learn the web application deployment in real time scenarios.
CO 5 To learn to deploy the software in Linux and Windows platforms.
BL- Bloom's Taxonomy Levels
(L1- Remembering, L2 -Understanding, L3 - Applying, L4 -Analysing, L5 -Evaluating, L6 -Creating)

PART- A(10 x2= 20 Marks)


(Answer all Questions)

Q. No Questions Marks CO BL
1 How do you create the customizing behavior method in Python? CO2 L2
2 Differentiate between Python Non-Parameterized Constructor and 2 CO2 L1
Parameterized Constructor.
3 Write the steps to create a button in the GUl application in 2 CO3 L2
wxPython.
List the Git commands. State the purpose of each. 2 CO3 L1
What is the function of route in the flask application? 2 CO3 L1
6 What is a template? Mention its usage. 2 CO3 L2
7 Comparison between ablog and a forum. 2 CO4 L1
Create a Python code that displays Custom error pages. 2 CO4
Why do youcreate standalone executable? 2 CO5 L1
10 Define a test case with an example. 2 CO5 L2

PART- B(5 x13 = 65 Marks)


(Restrict to a maximum of 2 subdivisions)

0. No Questions Marks CO BL
CO2 L3
T1() 0Design and implement a set ofclasses that define the employees
of a hospital: doctor, nurse, administrator, surgeon, receptionist,
janitor, and so on. Include methods in each class that are named
according to the services provided by that person and that print
an appropriate message. Create a main driver class to instantiate
and exercise several of the classes.

(i0) Brief discussion on access modifiers in python with syntax, 4 CO2 L2


OR
PART- C (1 x 15 =15 Marks)
([Link].16 is compulsory)
Q. No Questions Marks CO BL
16. Create a registration form using Flask with database, prompt the 15 CO4 L6
user to enter a name, e-mail address and phone number in the
CO5
form. When the user enters any data and presses the Submit
button to submit the form's contents to the web database,
validation ensures that the user entereda value in each field, that
the entered name does not exXceed 30 characters, and that the e
mail address and phone-number values are in an acceptable
format. Once valid data is submitted, the Flask framework stores
the submitted values in the database. Then, display a message
indicating successful registration and show the user's registration
information at the bottom of the page.

OLLER

OF EXAM
AU

MINZ
CHENNAI

TIO
6 0002 5

Common questions

Powered by AI

Python provides various tools for packaging and deploying applications across different platforms. Tools like PyInstaller and cx_Freeze allow developers to generate standalone executables. While PyInstaller supports packaging applications as EXEs on Windows, it also caters to MacOS and Linux executables. Auto PY to EXE provides a GUI interface to PyInstaller for simplifying executable creation. When deploying on Linux, conversions to DEB packaging via tools like FPM can be used for Debian-based distributions. These tools facilitate application deployment without requiring users to install Python separately .

Building a real-time web application using Flask begins with setting up the application structure, which involves creating models, views, and routes. Deployment on AWS challenges include configuring AWS services like EC2 or Elastic Beanstalk, managing security through IAM roles and security groups, and integrating auxiliary services such as CloudFront or S3. Ensuring scalability through load balancing and auto-scaling, and managing configurations like environment variables are additional complexities. Real-time functionalities may require WebSockets or server-sent events setup, adding to the complexity .

Version control systems like Git are essential in full-stack development as they facilitate collaboration among developers by allowing them to work on the same codebase simultaneously without conflicts. Git provides features such as branch management, which enables developers to develop features independently and merge changes smoothly. It also allows tracking of changes, which is crucial for identifying bugs introduced at a specific time and facilitating rollback to previous stable versions if needed . Additionally, version control systems support continuous integration and deployment workflows .

Flask is lightweight and provides flexibility, enabling developers to select components required for a specific application. It has an intuitive and easy-to-use syntax, making it suitable for small to medium applications. However, Flask's minimalism requires developers to make more decisions on structuring their applications, which can be challenging for larger applications. Its ecosystem is less rich compared to frameworks like Django, and it may require more configuration for adding functionalities such as authentication and scaling .

Deploying a Flask web application to AWS requires additional steps compared to local deployment, such as setting up an EC2 instance, configuring security groups, and possibly using services like AWS Elastic Beanstalk. Key considerations include ensuring scalability, configuring environment variables, and managing dependencies via virtual environments or Docker containers . Security and cost-management also become more critical when deploying on AWS.

wxPython is a set of Python bindings for the wxWidgets C++ library, allowing Python programmers to create programs with a native look and feel on various platforms. The main components include the Frame, which serves as the main application window; Panels, which are used to organize widgets; Sizers, which handle layout management; and Event handling, which manages user interactions . These components work together to provide a flexible and scalable framework for developing GUI applications.

Inheritance allows for the creation of a new class from an existing class, enabling code reuse and hierarchical class relationships. It simplifies maintenance by allowing changes to be made in one place. Polymorphism allows methods to be used in multiple forms; that is, a single interface can represent different data types. This reduces complexity by allowing a single function to operate on different class objects. Both concepts enhance modularity and facilitate the development of extensible and scalable systems . However, improper use can lead to complexities and tightly coupled code structures.

Method overloading refers to the ability to create multiple methods with the same name but different parameters. Python does not directly support method overloading, but similar behavior can be achieved using default arguments or variable-length arguments. Method overriding occurs when a subclass provides a specific implementation of a method that is already defined in its superclass, allowing for polymorphic behavior. An example includes redefining the display method a superclass in a subclass to exhibit different output .

wxPython enhances user experience by providing native-looking GUIs comprehensive with components like wx.Sizers for dynamic and flexible layouts, wx.Panel for consistent application theming, and advanced widgets such as wx.ListCtrl for complex user interactions. It also supports event-driven programming, which allows real-time responses to user inputs, thereby increasing interactivity and responsiveness. The integration of dialogs like wx.FileDialog and wx.ColourDialog contribute to better usability by simplifying tasks such as file selection and color settings .

Auto py to exe is a user-friendly GUI tool that simplifies the process of converting Python scripts to executable files by leveraging PyInstaller under its backend, thus making it accessible for users less familiar with command-line interfaces. PyInstaller, while powerful, requires manual configuration and command-line proficiency, offering more flexibility and options for complex packaging scenarios. Auto py to exe enhances PyInstaller's accessibility but at the cost of reduced configurability for advanced users .

You might also like